2004-03-09 Masatake YAMATO <jet@gyve.org>
[bpt/emacs.git] / src / ChangeLog
CommitLineData
9a7e95f3
RS
12004-03-04 Richard M. Stallman <rms@gnu.org>
2
04a6e76b
RS
3 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
4
9a7e95f3
RS
5 * window.c (Fdisplay_buffer): Doc fix.
6
7 * buffer.c (Fpop_to_buffer): Doc fix.
8
6c2488df
KS
92004-03-03 Kim F. Storm <storm@cua.dk>
10
11 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
12
d8d95bc7
SM
132004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
14
15 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
16
357589bf
RS
172004-03-02 Richard M. Stallman <rms@gnu.org>
18
19 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
20
409949b5
KH
212004-03-02 Kenichi Handa <handa@m17n.org>
22
23 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
24
d24bc50f
KS
252004-03-02 Kim F. Storm <storm@cua.dk>
26
27 * window.h (struct window): New member overlay_arrow_bitmap.
28
29 * window.c (make_window): Initialize overlay_arrow_bitmap.
30
31 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
32 implement and integrate multiple overlay arrows with redisplay.
33 (syms_of_xdisp): DEFVAR_LISP and initialize it.
34 (last_arrow_position, last_arrow_string): Replace by properties.
35 (Qlast_arrow_position, Qlast_arrow_string)
36 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
37 (syms_of_xdisp): Intern and staticpro them.
38 (overlay_arrow_string_or_property, update_overlay_arrows)
39 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
40 (overlay_arrow_at_row): New functions for multiple overlay arrows.
41 (redisplay_internal): Use them instead of directly accessing
42 Voverlay_arrow_position etc. for multiple overlay arrows.
43 (mark_window_display_accurate): Use update_overlay_arrows.
44 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
45 (try_window_id): Use overlay_arrows_changed_p.
46 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
47 (display_line): Use overlay_arrow_at_row to check multiple
48 overlay arrows, and get relevant overlay-arrow-string and
d8d95bc7 49 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
d24bc50f
KS
50 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
51 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
52
53 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
54 (update_window_fringes): Remove unused code.
55
c1464661
JR
562004-03-01 Jason Rumney <jasonr@gnu.org>
57
58 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
59
a64387ee
JB
602004-03-01 Juanma Barranquero <lektu@terra.es>
61
62 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
63
64 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
65
334faa08
JD
662004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
67
68 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
69 how many colors can be displayed.
70
bb62616f
KH
712004-03-01 Kenichi Handa <handa@m17n.org>
72
73 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
74 correctly.
75
0fd16104
KS
762004-02-28 Kim F. Storm <storm@cua.dk>
77
78 * dispnew.c (update_window): Update header line also if there are
79 no other changes in window (move code after set_cursor label).
80
81 * lisp.h (mark_window_display_accurate): Remove prototype.
82
83 * window.c (window_loop, Fforce_window_update): Force mode line
84 updates by setting prevent_redisplay_optimizations_p and
85 update_mode_lines.
86
b59dd9c8
JD
872004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
88
d8d95bc7 89 * xfns.c (x_window): Fix indentation.
b59dd9c8
JD
90
91 * xterm.c (x_calc_absolute_position): Call x_real_positions
92 to get WM window sizes and use those to calculate position.
d8d95bc7 93 (x_set_offset): Remove code commented out.
b59dd9c8 94
a874691c
MB
952004-02-28 Miles Bader <miles@gnu.org>
96
97 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
98
3e0c6482
KS
992004-02-28 Kim F. Storm <storm@cua.dk>
100
101 * keyboard.c (kbd_buffer_store_event_hold): New function to store
102 an event into kbd fifo, but with special handling of quit event;
103 a quit event is saved for later, and further events are discarded
104 until the saved quit event has been processed.
105 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
106 (gen_help_event): Store help event in kbd fifo.
107 (NREAD_INPUT_EVENTS): Remove.
108 (read_avail_input): Adapt to new read_socket_hook interface.
109 Remove allocation and initialization of local input_event buffer,
110 as read_socket_hook stores events directly in fifo. Allocate and
111 initialize local hold_quit event to handle postponed quit event
112 (and store it if set by kbd_buffer_store_event_hold).
113
114 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
115 (gen_help_event): Fix prototype.
116
a64387ee 117 * macterm.c (XTread_socket): Remove bufp_r and
3e0c6482
KS
118 numcharsp args. Add hold_quit arg.
119 Rework to use just one, local, inev input_event. Store inev
120 directly in fifo using kbd_buffer_store_event_hold.
121
122 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
123 (read_input_waiting): Adapt to new read_socket_hook interface.
124 Remove allocation and initialization of local input_event buffer,
125 as read_socket_hook stores events directly in fifo. Allocate and
126 initialize local hold_quit event to handle postponed quit event
127 (and store it if set by kbd_buffer_store_event_hold).
128
a64387ee 129 * term.c (read_socket_hook): Fix arg list.
3e0c6482
KS
130
131 * termhooks.h (read_socket_hook): Fix prototype.
132
133 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
134 numcharsp args. Add hold_quit arg.
135 Rework to use just one, local, inev input_event. Store inev
136 directly in fifo using kbd_buffer_store_event_hold.
137
138 * w32inevt.h (w32_console_mouse_position): Fix prototype.
139
140 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
141 Add hold_quit arg. Rework to use just one, local, inev
142 input_event. Store inev directly in fifo using
143 kbd_buffer_store_event_hold. Update count in one place.
144 Postpone call to gen_help_event until inev is stored; use new
145 local do_help for this.
146 Remove local emacs_event in handing of ButtonPress event; just use
147 inev instead (so no reason to copy it later).
148
149 * xsmfns.c (x_session_check_input): Remove numchars arg.
150
d8d95bc7
SM
151 * xterm.c (x_focus_changed, x_detect_focus_change):
152 Remove numchars arg. Always store event into bufp arg.
153 Return nothing. Callers changed accordingly.
3e0c6482
KS
154 (glyph_rect): Simplify.
155 (STORE_KEYSYM_FOR_DEBUG): New macro.
156 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
157 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
158 (current_hold_quit) [USE_GTK]: Add.
159 (event_handler_gdk): Adapt to new handle_one_xevent.
160 (handle_one_xevent): Remove bufp_r and numcharsp args.
161 Add hold_quit arg. Rework to use just one, local, inev
162 input_event. Store inev directly in fifo using
163 kbd_buffer_store_event_hold. Update count in one place.
164 Postpone call to gen_help_event until inev is stored; use new
165 local do_help for this.
166 Simplify handling of keysyms (consolidate common code). Fix bug
167 where count was updated with nchars instead of nbytes.
168 Remove local emacs_event in handing of ButtonPress event; just use
169 inev instead (so no reason to copy it later).
170 Remove `out' label. Rename label `ret' to `done'; add various
171 `goto done' to clarify code flow in deeply nested blocks.
172 (x_dispatch_event): Simplify as handle_one_xevent now calls
173 kbd_buffer_store_event itself.
174 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
175 arg. Call handle_one_xevent with new arglist. Store event from
176 x_session_check_input in fifo.
177 [USE_GTK]: Setup current_hold_quit.
178 Decrement handling_signal before unblocking input.
179 (x_initialize) [USE_GTK]: Initialize current_count.
180
181 * xterm.h (x_session_check_input): Fix prototype.
182
e3564461 1832004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
a64387ee 184
d8d95bc7 185 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
a64387ee 186
e3564461
ST
187 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
188 macgui.h).
a64387ee 189
e3564461 190 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
a64387ee 191
e3564461
ST
192 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
193 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
194 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
195 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
196 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
197 (Bitmap): Remove typedef.
198 (Pixmap): Change int to GWorldPtr.
199
d8d95bc7 200 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
a64387ee 201
d8d95bc7
SM
202 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
203 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
204 New #define to extract 16-bit depth color components from unsigned
e3564461
ST
205 long representation.
206 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
207 colors used for masks.
208 (struct mac_display_info): Add color_p. Remove n_cbits.
a64387ee 209
e3564461
ST
210 * macfns.c: Include sys/types.h and sys/stat.h.
211 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
212 Include QuickTime/QuickTime.h.
213 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
214 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
215 functions defined in macterm.c.
216 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
217 (ZPixmap): New #define for compatibility with xfns.c.
218 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
219 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
d8d95bc7
SM
220 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
221 New functions.
e3564461 222 (four_corners_best, x_create_x_image_and_pixmap)
d8d95bc7
SM
223 (x_destroy_x_image, unwind_create_frame, x_disable_image)
224 (x_edge_detection, init_color_table, colors_in_color_table)
e3564461
ST
225 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
226 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
227 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
228 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
229 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
230 long mixup.
231 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
232 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
233 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
234 (x_set_cursor_type, Fxw_color_values, valid_image_p)
235 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
236 (x_alloc_image_color, clear_image_cache, lookup_image)
237 (x_find_image_file, xbm_read_bitmap_file_data)
238 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
239 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
240 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
241 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
242 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
d8d95bc7 243 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
e3564461
ST
244 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
245 #if 0.
246 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
247 #if 0. Free white_relief.gc and black_relief.gc.
d8d95bc7
SM
248 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
249 New functions (from xfns.c).
e3564461
ST
250 (Fx_create_frame): Record unwind_create_frame.
251 (Fxw_display_color_p): Use dpyinfo->color_p.
252 (Fx_display_grayscale_p, Fx_display_planes): Don't use
253 dpyinfo->n_cbits.
254 (Fx_display_color_cells): Use dpyinfo->n_planes;
255 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
256 (Qheuristic, cross_disabled_images, emboss_matrix)
257 (laplace_matrix): New variables (from xfns.c).
258 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
259 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
260 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
d8d95bc7
SM
261 (image_background_transparent): New function (from xfns.c).
262 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
263 (image_load_quicktime): Add declaration.
264 [MAC_OSX] (image_load_quartz2d): Likewise.
265 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
266 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
d8d95bc7 267 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
e3564461
ST
268 (xbm_load_image_from_file, x_laplace_read_row)
269 (x_laplace_write_row, pbm_read_file): Remove functions.
270 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
271 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
272 (colors_in_color_table): Sync with xfns.c (although not used).
273 (lookup_rgb_color): Don't lookup color table. Just do gamma
274 correction.
275 (COLOR_INTENSITY): New #define (from xfns.c).
d8d95bc7
SM
276 (x_disable_image): New function (from xfns.c).
277 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
278 (x_build_heuristic_mask): Sync with xfns.c.
279 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
280 (HAVE_PBM): Remove #ifdef.
281 (pbm_load): Sync with xfns.c. Set img->width and img->height
282 before IMAGE_BACKGROUND.
d8d95bc7 283 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
e3564461
ST
284 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
285 Don't enclose with #if HAVE_PNG.
286 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
d8d95bc7
SM
287 symbol _CGImageCreateWithPNGDataProvider is defined.
288 Otherwise use image_load_quicktime.
e3564461 289 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
d8d95bc7
SM
290 [HAVE_PNG] (png_load): Sync with xfns.c.
291 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
292 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
293 HAVE_JPEG.
294 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
295 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
296 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
297 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
298 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
299 (tiff_image_p, tiff_load): Don't enclose declarations with #if
300 HAVE_TIFF.
301 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
302 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
303 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
d8d95bc7
SM
304 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
305 New functions (from xfns.c).
e3564461 306 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
d8d95bc7 307 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
e3564461
ST
308 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
309 Don't enclose with #if HAVE_GIF.
310 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
311 animated gif. Otherwise use image_load_quicktime.
312 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
313 gif_DrawText to avoid conflict with QuickdrawText.h.
314 [HAVE_GIF] (gif_load): Sync with xfns.c.
315 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
316 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
317 Ghostscript is not supported yet).
318 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
319 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
320 cross_disabled_images (from xfns.c). Remove #if 0 for supported
321 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
322 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
323 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
d8d95bc7
SM
324 HAVE_PNG. Call EnterMovies to support animated gifs.
325 Call init_image_func_pointer to bind a symbol
e3564461 326 _CGImageCreateWithPNGDataProvider if it is defined.
a64387ee 327
d8d95bc7 328 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
e3564461
ST
329 (x_draw_bar_cursor): Sync declaration with xterm.c.
330 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
331 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
332 graphics).
333 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
334 (mac_draw_line_to_pixmap, XCreatePixmap)
335 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
d8d95bc7
SM
336 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
337 New functions.
338 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
339 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
340 Cast bits to char *.
e3564461
ST
341 (reflect_byte): New function (from w32fns.c).
342 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
343 due to byte alignment.
d8d95bc7
SM
344 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
345 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
e3564461
ST
346 (XSetForeground): Remove static (now used in macfns.c).
347 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
348 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
349 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
350 (x_draw_glyph_string_box, x_draw_image_foreground)
351 (x_draw_image_foreground_1, x_draw_image_glyph_string)
352 (x_draw_stretch_glyph_string, x_draw_glyph_string)
353 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
354 Sync with xterm.c.
355 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
356 than the xterm.c version when a strictly horizontal or vertical
357 line is drawn.
358 (XTset_terminal_window): Add static.
359 (x_make_frame_visible): Add UNBLOCK_INPUT.
360 (x_free_frame_resources): New funcion (from xterm.c).
361 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
362 occurs in tool bar area.
d8d95bc7
SM
363 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
364 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
e3564461
ST
365 Initialize image cache.
366 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
367 Enclose unused functions with #if 0.
368 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
369 (decode_mac_font_name): New function to apply code conversions
d8d95bc7 370 from a mac font name to an XLFD font name according to its script code.
e3564461 371 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
d8d95bc7 372 font name to a mac font name according to REGISTRY and ENCODING fields.
e3564461
ST
373 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
374 whose name starts with `.'.
375 (init_font_name_table): Use decode_mac_font_name. Add both
376 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
377 of a font is smJapanese.
378 (mac_do_list_fonts): New function to list fonts that match a given
379 pattern.
380 (x_list_fonts, XLoadQueryFont): Use it.
381 (XLoadQueryFont): Set rbearing field for each variable width
382 character to avoid needless redraw.
383 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
384
446f5f3d
KS
3852004-02-26 Kim F. Storm <storm@cua.dk>
386
af617d0f
KS
387 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
388 as read_socket_hook handler on X aborts if buffer is too small
389 and W32 handler doesn't always check buffer limit.
390
446f5f3d
KS
391 * xdisp.c (handle_single_display_prop): Handle left-fringe and
392 right-fringe similar to a display margin image. Specifically,
393 the characters having the fringe prop are no longer shown, and
394 we use IT_IMAGE/next_element_from_image with image_id = -1 to
395 do this. Set fringe bitmap face_id in it->face_id.
396 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
397 still realize it->face (i.e. the fringe bitmap face).
398
7d8a0b55
MB
3992004-02-25 Miles Bader <miles@gnu.org>
400
401 * xdisp.c (check_it): Check string/string_pos consistency.
402 (init_iterator): Initialize string-related fields properly.
403
4042004-02-11 Miles Bader <miles@gnu.org>
405
406 * xdisp.c (produce_image_glyph): Force negative descents to zero.
407
4082004-02-10 Miles Bader <miles@gnu.org>
409
410 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
411 BLOCK_INPUT can be nested, so it doesn't make much sense.
412
a64387ee 4132004-02-24 Michael Mauger <mmaug@yahoo.com>
ce35edd1
JR
414
415 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
416 (xbm_read_bitmap_data): Use unsigned char for image data.
417
92f5fba2
LT
4182004-02-23 Luc Teirlinck <teirllm@auburn.edu>
419
420 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
421
8565fb3d
JR
4222004-02-22 Jason Rumney <jasonr@gnu.org>
423
424 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
425 correctly over other bitmaps.
426
f8125c39
EZ
4272004-02-21 Eli Zaretskii <eliz@elta.co.il>
428
429 * emacs.c (USAGE1): Split into two halves.
430 (USAGE2): Second half of the old USAGE1.
d8d95bc7
SM
431 (USAGE3): Rename from USAGE2.
432 (USAGE4): Rename from USAGE3.
f8125c39 433
4effffca
EZ
4342004-02-21 Juri Linkov <juri@jurta.org>
435
436 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
437 Fix --multibyte. Move --help, --version to USAGE2. Add alias
438 --file. Fix -f, -l. Sort options. Untabify.
439 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
440
923c1e6f
LT
4412004-02-19 Luc Teirlinck <teirllm@auburn.edu>
442
443 * category.c (Fdefine_category, Fcategory_docstring)
444 (Fget_unused_category, Fset_category_table)
445 (Fcategory_set_mnemonics): Doc fixes.
446
b0e225fd
KS
4472004-02-20 Kim F. Storm <storm@cua.dk>
448
449 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
450 The following changes are relative to the 2004-01-21 revision.
451 (NREAD_INPUT_EVENTS): Define as max number of input events to read
452 in one call to read_socket_hook. Value is 8.
453 (read_avail_input): Separate and rework handling of read_socket_hook
454 and non-read_socket_hook cases. Use smaller input_event buffer
d8d95bc7
SM
455 in read_socket_hook case, and repeat if full buffer is read.
456 Use new local variable 'discard' to skip input after C-g.
b0e225fd
KS
457 In non-read_socket_hook case, just use a single input_event, and
458 call kbd_buffer_store_event on the fly for each character.
459
b15aa9f9
SM
4602004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
461
462 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
463 Remove unused `gu' alternative.
464
83c9aa95
AS
4652004-02-19 Andreas Schwab <schwab@suse.de>
466
467 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
468 warning.
469
cc808173
KS
4702004-02-18 Kim F. Storm <storm@cua.dk>
471
472 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
473 Fix last change.
474
ab90a54d
KS
4752004-02-17 Kim F. Storm <storm@cua.dk>
476
b26f249f
KS
477 * xdisp.c (fast_find_position): Fix return value of new version;
478 it was inverted compared to the 21.1 version.
479 (get_window_cursor_type): Don't look at glyph if NULL.
480 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
0bf7d005 481
ab90a54d
KS
482 * keyboard.c: Rework previous change; it didn't consider that the
483 buf array was allocated on the stack.
484 (prev_read): Remove variable.
485 (read_avail_input_buf): New static event buffer array.
b9568dfc 486 (in_read_avail_input): New static variable to handle re-entrancy.
ab90a54d 487 (read_avail_input): Change buf to pinter to read_avail_input_buf.
b9568dfc
KS
488 Use in_read_avail_input to handle re-entrance; when re-entered,
489 fully initialize and use tmp_buf array instead of read_avail_input_buf.
490 Do not initialize read_avail_input_buf in full here; instead assume it
ab90a54d
KS
491 is always cleared on entry. To ensure that, we clear (just) the
492 entries that were used before we return.
493 (init_keyboard): Initialize read_avail_input_buf here.
494
4e039f3f
EZ
4952004-02-16 Jesper Harder <harder@ifa.au.dk> (tiny change)
496
497 * cmds.c (Fend_of_line): Doc fix.
498
7b5368c1
EZ
4992004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
500
501 * keyboard.c (prev_read): New static variable.
502 (read_avail_input): Use it to zero out only those slots in buf[]
503 that were used last time we were called.
504
ca4bc494
EZ
5052004-02-16 Eli Zaretskii <eliz@elta.co.il>
506
507 * Makefile.in (obj): Move fringe.o from here...
508 (XOBJ, MAC_OBJ): ...to here.
509
159c348e
SE
5102004-02-16 Stephen Eglen <stephen@gnu.org>
511
512 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
513
d2f14999
SM
5142004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
515
b15aa9f9
SM
516 * data.c (Fbyteorder):
517 * fringe.c (Fdefine_fringe_bitmap):
518 * xdisp.c (handle_single_display_prop):
d2f14999
SM
519 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
520
8d50508a
JR
5212004-02-16 Jason Rumney <jasonr@gnu.org>
522
523 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
524
dd4497dc
ST
5252004-02-15 Steven Tamm <steventamm@mac.com>
526
527 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
528 controlling emulation of a three button mouse with option and
529 command keys.
530 (Qreverse, mac_get_enumlated_btn): Handle the emulation
b15aa9f9 531 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
dd4497dc 532
c9159cb3
KS
5332004-02-15 Kim F. Storm <storm@cua.dk>
534
2cc52658
KS
535 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
536
c9159cb3
KS
537 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
538 Perform byte-swapping.
539
12fde2dc
KS
5402004-02-14 Kim F. Storm <storm@cua.dk>
541
542 * dispextern.h (struct draw_fringe_bitmap_params): Change member
543 bits from char to short to facilitate wider bitmaps.
544 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
545 member.
546
547 * fringe.c (struct fringe_bitmap): Change member bits from char to
548 short to facilitate 16 bits wide bitmaps. Modify all standard
549 bitmaps accordingly.
550 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
551 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
552 (draw_fringe_bitmap): Ditto.
553 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
554 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
555 handle up to 16 bits wide bitmaps.
556 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
f21a7192 557 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
12fde2dc
KS
558
559 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
560 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
561 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
562
563 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
564 so it is no longer necessary to expand them here.
565
566 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
567
9d7271e8
KS
5682004-02-12 Kim F. Storm <storm@cua.dk>
569
570 * window.c (Fwindow_fringes): Doc fix.
571
706c1e4f
JD
5722004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
573
574 * xselect.c (x_get_foreign_selection): Add new optional parameter
575 time_stamp.
576 (Fx_get_selection_internal): Ditto, pass time_stamp to
577 x_get_foreign_selection.
578
579 * data.c (Fbyteorder): New function.
580
c2d12b5d
JD
5812004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
582
583 * atimer.c: Move include stdio.h to same place as in other files.
584
585 * region-cache.c: Ditto.
586
587 * sysdep.c: Ditto.
588
589 * xfaces.c: Ditto.
590
4c1947b9
SS
5912004-02-09 Sam Steingold <sds@gnu.org>
592
593 * w32term.c (w32_draw_fringe_bitmap): Fixed a typo in the last patch.
594
82722af3
KS
5952004-02-09 Kim F. Storm <storm@cua.dk>
596
597 * fringe.c: New file. Move original fringe related declarations
598 and code from dispextern.h and xdisp.c here.
599 Rework code to support user defined fringe bitmaps, redefining
600 standard bitmaps, ability to overlay user defined bitmap with
601 overlay arrow bitmap, and add faces to bitmaps.
602 (Voverflow_newline_into_fringe): Declare here.
603 (enum fringe_bitmap_align): New enum.
604 (..._bits): All bitmaps are now defined without bitswapping; that
605 is now done in init_fringe_once (if necessary).
606 (standard_bitmaps): New array with specifications for the
607 standard fringe bitmaps.
608 (fringe_faces): New array.
609 (valid_fringe_bitmap_id_p): New function.
610 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
611 (draw_fringe_bitmap): New function which draws fringe bitmap,
612 possibly overlaying bitmap with cursor in right fringe or the
613 overlay arrow in the left fringe.
614 (update_window_fringes): Do not handle overlay arrow here.
615 Compare and copy fringe bitmap faces.
616 (init_fringe_bitmap): New function.
617 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
618 define and destroy user defined fringe bitmaps.
619 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
620 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
621 (syms_of_fringe): New function. Defsubr new DEFUNs.
622 DEFVAR_LISP Voverflow_newline_into_fringe.
623 (init_fringe_once, init_fringe): New functions.
624 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
4c1947b9 625
82722af3
KS
626 * Makefile.in (obj): Add fringe.o.
627 (fringe.o): New dependencies.
628
629 * dispextern.h (FRINGE_ID_BITS): New definition for number of
630 bits allocated to hold a fringe number. Increase number of bits
631 from 4 to 8 to allow user defined fringe bitmaps.
632 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
633 left_user_fringe_face_id, right_user_fringe_bitmap,
634 right_user_fringe_face_id.
635 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
636 Move to new file fringe.c.
637 (MAX_FRINGE_BITMAPS): Define here.
638 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
639 and overlay_p. Change member which to int.
640 (struct redisplay_interface): New members define_fringe_bitmap
641 and destroy_fringe_bitmap.
642 (valid_fringe_bitmap_id_p): Add prototype.
643 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
644
645 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
646 arrows.
647 (update_frame): Do flush_display if force_flush_display_p to
648 ensure display (specifically fringes) are updated in a timely
649 manner when resizing the frame by dragging the mouse.
650 (update_window_line): Update row if overlay arrow changed.
651 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
652 or overlay arrow changed.
653
654 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
655 syms_of_fringe, and init_fringe.
656
657 * frame.h (struct frame): New member force_flush_display_p.
658
659 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
660 Add prototypes.
661
a3993cc8 662 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
a64387ee 663 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
a3993cc8
KS
664 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
665 Use cursor color for displaying cursor in fringe.
82722af3
KS
666 (x_redisplay_interface): Add null handlers for
667 define_fringe_bitmap and destroy_fringe_bitmap functions.
668
669 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
670 xterm.c to handle overlayed fringe bitmaps and to use cursor color
671 for displaying cursor in fringe.
672 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
673 specific functions to define and destroy fringe bitmaps in fringe_bmp.
674 (w32_redisplay_interface): Add them to redisplay_interface.
675 (w32_term_init): Call w32_init_fringe instead of explicitly
676 defining fringe bitmaps in fringe_bmp array.
677 (x_delete_display): Call w32_reset_fringes instead of explicitly
678 destroying fringe bitmaps in fringe_bmp array.
679
680 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
681 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
682 (continued_bits, continuation_bits, ov_bits, first_line_bits)
683 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
684 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
685 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
686 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
687 Move fringe handling vars and code to new file fringe.c.
688 (handle_display_prop): Handle left-fringe and right-fringe
689 display properties; store user fringe bitmaps in iterator.
690 (move_it_in_display_line_to): Handle cursor in fringe at eob.
691 (clear_garbaged_frames): Set force_flush_display_p if resized.
692 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
693 (display_line): Handle cursor in fringe at eob.
694 (display_line): Set row user fringe bitmaps from iterator.
695
696 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
697 Use cursor color for displaying cursor in fringe.
698 (x_redisplay_interface): Add null handlers for
699 define_fringe_bitmap and destroy_fringe_bitmap functions.
700
030400eb
JD
7012004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
702
703 * macfns.c (Fx_change_window_property): Make doc string and
704 parameters same as for X version.
705
706 * w32fns.c (Fx_change_window_property): Ditto.
707
3af55251
KS
7082004-02-07 Kim F. Storm <storm@cua.dk>
709
ec110e9e
KS
710 * xdisp.c (hscroll_window_tree): Position cursor near to right
711 margin in hscrolled window when jumping to end of line (rather
712 than centering cursor).
713
3af55251
KS
714 * process.c (wait_reading_process_input): Don't do adaptive read
715 buffering if waiting for a specific process.
716
b0c138ce
LT
7172004-02-05 Luc Teirlinck <teirllm@auburn.edu>
718
719 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
720 (Fread_minibuffer, Feval_minibuffer)
721 (Fread_string, Fread_no_blanks_input)
722 (Fcompleting_read): Doc fixes.
723 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
724 completion-regexp-list. Define Qcase_fold_search and staticpro it.
725 (read_minibuf): Fix initial comment.
726 (Ftry_completion, Fall_completions, Ftest_completion): Bind
727 case-fold-serach to the value of completion-ignore-case when
728 checking completion-regexp-list.
729 (Fdisplay_completion_list): Make it handle arguments that are
730 symbols. Doc fix.
731
9676f5ad 7322004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
64d1e373 733
9676f5ad 734 * xterm.h: Add declaration of free_frame_menubar.
64d1e373 735
9676f5ad
JD
736 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
737 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
b0c138ce 738 (Fx_change_window_property): Add declaration of parameters type and
9676f5ad 739 format. Remove unused variable cons.
5b698285
JD
740
741 * xselect.c: Include stdio,h.
742
fc1d15f6
KH
7432004-02-05 Kenichi Handa <handa@m17n.org>
744
ebaff4af
KH
745 * fns.c (Fset_char_table_range): Fix previous change.
746
fc1d15f6
KH
747 * buffer.c (Fset_buffer_multibyte): Fix docstring.
748
9676f5ad
JD
7492004-02-04 Luc Teirlinck <teirllm@auburn.edu>
750
751 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
752
da75761f
SM
7532004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
754
755 * keymap.c (Vmouse_events): Rename from Vmenu_events.
756 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
757
13c5d120
KH
7582004-02-04 Kenichi Handa <handa@m17n.org>
759
760 * fns.c (Fset_char_table_range): Handle charsets ascii,
761 eight-bit-control, and eight-bit-graphic correctly.
762
2883d842
JR
7632004-02-03 Jason Rumney <jasonr@gnu.org>
764
765 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
766
767 * w32fns.c (x_to_w32_font): Likewise.
768
69eff41f
JD
7692004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
770
771 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
772 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
773
774 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
775 ClientMessages.
776
777 * xselect.c: Include termhooks.h and X11/Xproto.h
778 (x_check_property_data, x_fill_property_data)
779 (x_property_data_to_lisp, mouse_position_for_drop)
780 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
da75761f 781 (Fx_send_client_event): Move here from xfns.c.
69eff41f
JD
782 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
783
da75761f 784 * xfns.c (x-send-client-message): Move to xselect.c
69eff41f
JD
785 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
786 OUTER_P.
787 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
788 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
789 if vector_ret_p is true.
790 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
69eff41f 791
dcdbbb5d
EZ
7922004-02-02 Eli Zaretskii <eliz@elta.co.il>
793
794 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
795 basename of FILE relative to it, not FILE itself.
796
09721b31
KH
7972004-02-02 Kenichi Handa <handa@m17n.org>
798
799 * coding.c (coding_restore_composition): Check invalid
800 composition data more rigidly.
801
eb996101
LT
8022004-01-30 Luc Teirlinck <teirllm@auburn.edu>
803
804 * fileio.c (Fread_file_name_internal): Correctly handle the case
805 where insert-default-directory is nil.
806 (Fread_file_name): Always return an empty string if the user exits
807 with an empty minibuffer. Adapt the docstring accordingly.
808 (syms_of_fileio): Adapt the docstring of insert-default-directory
809 to the change in Fread_file_name.
810
a0367d42
EZ
8112004-01-29 Eli Zaretskii <eliz@elta.co.il>
812
813 * alloca.c [!alloca]: Fix the prototype for xfree.
814
13f52ed8
KH
8152004-01-29 Kenichi Handa <handa@m17n.org>
816
817 * fns.c (string_char_to_byte): Optimize for ASCII only string.
818 (string_byte_to_char): Likewise.
819
d57625a0
JR
8202004-01-28 Peter Runestig <peter@runestig.com>
821
822 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
823
a64387ee 8242004-01-27 Steven Tamm <steventamm@mac.com>
911c78b4
ST
825
826 * unexmacosx.c (unexec_copy): Do not copy more than was
827 requested to prevent overwriting during unexec.
828
eb37b8fd
JD
8292004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
830
ce38070a
JD
831 * process.c (sigchld_handler): Add comment about not calling malloc.
832
eb37b8fd
JD
833 * process.h: Add extern to synch_process_termsig.
834
a64387ee 8352004-01-27 Steven Tamm <steventamm@mac.com>
21a3e657 836
da75761f
SM
837 * macterm.c (make_mac_frame, make_mac_terminal_frame):
838 Move setting of scroll bars from make_mac_frame to
839 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
21a3e657 840
d62a265d
RS
8412004-01-26 Richard M. Stallman <rms@gnu.org>
842
843 * search.c (Freplace_match): Handle nonexistent
844 back-references properly.
845
8462004-01-03 Richard M. Stallman <rms@gnu.org>
847
848 * window.c (decode_any_window): New function.
849 (Fwindow_height, Fwindow_width, Fwindow_edges)
850 (Fwindow_pixel_edges, Fwindow_inside_edges)
851 (Fwindow_inside_pixel_edges): Use decode_any_window.
852
ff236419
JD
8532004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
854
855 * process.h: synch_process_termsig new variable.
856
857 * callproc.c: Define synch_process_termsig.
858 (Fcall_process): Initiate synch_process_termsig to zero and
859 check if non-zero and get signal name after subprocess has ended.
860
861 * process.c (sigchld_handler): Set synch_process_termsig
862 if terminated by a signal. synch_process_death setting removed.
863
864 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
865
41b867ea
AS
8662004-01-26 Andreas Schwab <schwab@suse.de>
867
868 * print.c (print_preprocess): Declare size as EMACS_INT to not
869 lose bits.
870 (print_object): Likewise.
871 * alloc.c (Fpurecopy): Likewise.
872
a08084ff
LT
8732004-01-25 Luc Teirlinck <teirllm@auburn.edu>
874
875 * window.c (Fwindow_minibuffer_p): Doc fix.
876
b19ac475
JY
8772004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
878
879 * editfns.c (Fformat): Make both passes accept the same set of flags.
880
fe905025
KH
8812004-01-23 Kenichi Handa <handa@m17n.org>
882
883 * fns.c (Fmd5): If OBJECT is a buffer different from the current
884 one, set buffer to OBJECT temporarily.
885
438fc6c0
SM
8862004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
887
455316e2
SM
888 * keyboard.c (kbd_buffer_gcpro): Remove.
889 (kbd_buffer_store_event, clear_event, Fdiscard_input)
890 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
891 Don't initialize and/or maintain the variable any more. It was made
892 redundant by my commit of 2003-06-15.
893
438fc6c0
SM
894 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
895
5335a4ee
JD
8962004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
897
898 * lisp.h: Add undef DECL_ALIGN.
899
dcdaeebc
SM
9002004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
901
902 * process.c (wait_reading_process_input) [SYNC_INPUT]:
903 Check interrupt_input_pending explicitly.
904
905 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
906
907 * keyboard.c (handle_async_input): New fun,
908 extracted from input_available_signal.
909 (input_available_signal, reinvoke_input_signal): Use it.
910
9076a823
SM
9112004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
912
d7107586
SM
913 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
914
915 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
916 manipulation macros for when tags are in the lower bits.
917 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
918 (DECL_ALIGN): New macro.
919 (DEFUN): Use it.
920
921 * lisp.h [ENABLE_CHECKING]: Don't force union type.
922
923 * s/darwin.h (__attribute__): Remove outdated workaround.
924
925 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
926
927 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
928 Don't check range of malloc address.
929 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
930
9076a823
SM
931 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
932
933 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
934
ba029065
KH
9352004-01-19 Kenichi Handa <handa@m17n.org>
936
937 * fontset.c (fontset_font_pattern): Fix previous change.
938
7af0e8d7
MB
9392004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
940
941 * xdisp.c (Voverflow_newline_into_fringe)
942 (move_it_in_display_line_to, redisplay_internal)
943 (update_window_fringes, redisplay_window, display_line, window):
944 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
945 that it compiles without a window-system.
946 * dispnew.c (direct_output_for_insert, update_window): Likewise.
947
77a9cf69
KS
9482004-01-16 Kim F. Storm <storm@cua.dk>
949
950 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
951
a64387ee 952 * buffer.c (init_buffer_once): Set buffer_defaults and
77a9cf69
KS
953 buffer_local_flags for indicate_buffer_boundaries.
954 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
955 default- variable for it.
956
957 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
958 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
d7107586 959 New members exact_window_width_line_p and cursor_in_fringe_p for
77a9cf69
KS
960 overflowing newlines into right fringe.
961 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
962 and indicate_bottom_line_p for buffer boundaries and scrolling.
963 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
964 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
965 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
966 and HOLLOW_SQUARE_BITMAP.
967 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
968 Add prototypes.
969
970 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
971 instead of related indicator fields.
972 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
973 (direct_output_for_insert): Handle exact width lines like
974 contined lines. Call update_window_fringes.
975 (update_window): Call update_window_fringes.
976 (scrolling_window): Don't skip desired rows with changed bitmaps.
977 Check if fringe bitmaps changes when assigning scrolled rows.
978
979 * xdisp.c (Voverflow_newline_into_fringe): New variable.
980 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
981 (move_it_in_display_line_to): Overflow newline into fringe for
982 rows that are exactly as wide as the window.
983 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
984 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
985 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
986 (fringe_bitmaps): Add new bitmaps.
987 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
988 Select proper bitmap for cursor in fringe when appropriate.
989 Handle alignment of bitmap to top or bottom of row.
990 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
991 done by update_window_fringes.
992 (update_window_fringes, draw_window_fringes): New functions.
993 (redisplay_internal): Call update_window_fringes in case only
994 cursor row is updated.
995 (redisplay_window): Call update_window_fringes.
996 Explicitly call draw_window_fringes if redisplay was done using
997 the current matrix or the overlay arrow is in the window.
998 (try_window_reusing_current_matrix): Mark scrolled rows for
999 fringe update (to update buffer-boundaries / scrolling icons).
1000 (find_last_unchanged_at_beg_row): Handle exact width lines line
1001 continued lines.
1002 (display_line): Overflow newline into fringe for rows that are
1003 exactly as wide as the window. Don't append space for newline
d7107586 1004 in this case.
77a9cf69
KS
1005 (notice_overwritten_cursor): Explicitly clear cursor bitmap
1006 in fringe as if it had been overwritten.
1007 (erase_phys_cursor): Erase cursor bitmap in fringe.
d7107586 1008 (syms_of_xdisp): Mark show-trailing-whitespace and
77a9cf69
KS
1009 void-text-area-pointer as user options.
1010 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
d7107586 1011
77a9cf69
KS
1012 * xterm.c (x_update_window_end): Call draw_window_fringes.
1013 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
1014 in row instead of actually drawing fringe bitmaps.
1015 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
1016 (x_draw_window_cursor): Draw cursor in fringe.
1017
1018 * w32term.c (x_update_window_end): Call draw_window_fringes.
1019 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
1020 in row instead of actually drawing fringe bitmaps.
1021 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
1022 (w32_draw_window_cursor): Draw cursor in fringe.
1023
1024 * macterm.c (x_update_window_end): Call draw_window_fringes.
1025 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
1026 in row instead of actually drawing fringe bitmaps.
1027 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
1028 (mac_draw_window_cursor): Draw cursor in fringe.
1029
a633a954
JD
10302004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1031
1032 * xterm.c (handle_one_xevent): Don't handle characters that are part
1033 of an old style (XLookupString) compose sequence.
1034
80460525
KH
10352004-01-15 Kenichi Handa <handa@m17n.org>
1036
1037 * search.c (Freplace_match): Use make_multibyte_string or
1038 make_unibyte_string according to the buffer multibyteness.
1039
7fc34f85
SM
10402004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
1041
1042 * alloc.c (struct interval_block, struct string_block)
1043 (struct symbol_block, struct marker_block, live_string_p)
1044 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
1045 Better preserve alignment for objects in blocks.
1046 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
1047
1048 * lread.c (defvar_per_buffer): Remove dead declaration.
1049
1050 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
1051 space size.
1052
66070bd1
JD
10532004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1054
1055 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
1056 if a key press should pop down. Only pop down if a key is pressed
1057 outside the menu/dialog.
1058 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
1059 popup_get_selection.
1060 (create_and_show_dialog): Pass 1 for down_on_keypress to
1061 popup_get_selection.
1062
de7515d6
JD
10632004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1064
1065 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
1066 BLOCK/UNBLOCK_INPUT.
1067
160b1b50
JD
10682004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1069
1070 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
1071 specified.
1072
3a9f36e6
KH
10732004-01-08 Kenichi Handa <handa@m17n.org>
1074
1075 * editfns.c (Fformat): Fix '&' to '&&'.
1076
3803eb32
AS
10772004-01-08 Andreas Schwab <schwab@suse.de>
1078
1079 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
1080 size if PSEUDOVECTOR_FLAG is set.
1081
9da88f37
KH
10822004-01-07 Kenichi Handa <handa@m17n.org>
1083
74ac5074
KH
1084 * charset.c (Fdeclare_equiv_charset): Fix docstring.
1085
9da88f37
KH
1086 * fontset.c (fontset_ref_via_base): Fix previous change.
1087
05faee07
KS
10882004-01-07 Kim F. Storm <storm@cua.dk>
1089
1090 * process.c (read_process_output): Only activate adaptive
1091 buffering if we read less than 256 bytes at a time.
1092
634910c8
KS
10932004-01-06 Kim F. Storm <storm@cua.dk>
1094
1095 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
1096 object and image object. Return glyph width and height.
1097 (mode_line_string, marginal_area_string): Ditto.
1098
1099 * dispextern.h (buffer_posn_from_coords, mode_line_string)
1100 (marginal_area_string): Fix prototypes.
1101
1102 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
1103 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
1104 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
1105
1106 * keyboard.c (make_lispy_position): Use modified mode_line_string,
1107 buffer_posn_from_coords, and marginal_area_string functions to
1108 include both string object and image object in the lispy position.
1109 Also add actual glyph width and height to position.
1110 (read_key_sequence): Use real buffer position from mouse
1111 event to find keymap property even when click is in marginal area.
1112
1113 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
1114 mode_line_string and marginal_area_string functions to handle
1115 both string object and image object properties.
d7107586 1116
57951c2e
AS
11172004-01-06 Andreas Schwab <schwab@suse.de>
1118
1119 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
1120 character.
1121
181e6a61
AS
11222004-01-02 Andreas Schwab <schwab@suse.de>
1123
d7107586
SM
1124 * macterm.c (emacs_options, x_initialized, same_x_server):
1125 Remove unused (and duplicated) definitions.
181e6a61 1126
31e0fbdd
KS
11272004-01-02 Kim F. Storm <storm@cua.dk>
1128
1129 * process.h (struct Lisp_Process): New members for adaptive read
1130 buffering: adaptive_read_buffering, read_output_delay, and
1131 read_output_skip.
1132
1133 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
1134 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
1135 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
1136 (process_output_delay_count, process_output_skip): New vars.
1137 (Vprocess_adaptive_read_buffering): New variable.
1138 (make_process): Initialize adaptive read buffering members.
1139 (Fstart_process): Set adaptive_read_buffering member.
1140 (deactivate_process): Cleanup adaptive read buffering.
1141 (wait_reading_process_input): Temporarily omit delayed
1142 subprocesses from the set of file descriptors to read from;
1143 adjust the select timeout if we skipped any subprocesses.
1144 (read_process_output): Increase adaptive read buffering delay if
1145 we read less than a full buffer; reduce delay when we read a
1146 full buffer.
1147 (send_process): Simplify using local Lisp_Process var.
1148 Reset adaptive read buffering delay after write.
1149 (init_process): Initialize process_output_delay_count and
1150 process_output_skip.
1151 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
1152
68c6a789
JR
11532004-01-01 Jason Rumney <jasonr@gnu.org>
1154
d7107586 1155 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
68c6a789 1156
3f70fe82
LT
11572003-12-30 Luc Teirlinck <teirllm@auburn.edu>
1158
1159 * print.c (Ferror_message_string): Add hyperlink in the docstring
1160 to the definition of `signal' in the Elisp manual.
1161 * eval.c (Fsignal): Ditto.
1162
a64387ee 11632003-12-29 James Clark <jjc@jclark.com> (tiny change)
c2be49ed
EZ
1164
1165 * fns.c (internal_equal): Return t for two NaN arguments.
1166
7abd90ea
RS
11672003-12-29 Richard M. Stallman <rms@gnu.org>
1168
1169 * data.c (store_symval_forwarding): Handle setting
1170 default-fill-column, etc., by changing the value in
1171 buffers that use the default.
1172
1173 * minibuf.c (Fset_minibuffer_window): Doc fix.
1174
1175 * fileio.c (choose_write_coding_system): Ignore auto_saving
1176 if using the visited file for auto saves.
1177 (Fwrite_region): Don't update SAVE_MODIFF
1178 if auto-saving in visited file.
1179
3e7cfcdc
KH
11802003-12-29 Kenichi Handa <handa@m17n.org>
1181
1182 * dispextern.h (face_font_available_p): Extern it.
1183
1184 * fontset.c (Voverriding_fontspec_alist): New variable.
1185 (lookup_overriding_fontspec): New function.
d7107586 1186 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
3e7cfcdc
KH
1187 (fontset_font_pattern): Likewise.
1188 (regulalize_fontname): New function.
1189 (Fset_fontset_font): Call regulalize_fontname.
1190 (Fset_overriding_fontspec_internal): New function.
d7107586
SM
1191 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
1192 Defsubr Sset_overriding_fontspec_internal.
3e7cfcdc
KH
1193
1194 * xfaces.c (face_font_available_p): New function.
1195
7abd90ea
RS
11962003-12-28 Richard M. Stallman <rms@gnu.org>
1197
1198 * buffer.c (Fother_buffer): Don't crash if BUF is nil
1199 or if its name is nil.
1200
1201 * buffer.c (Fkill_buffer): Don't delete auto-save file
1202 if it's the same as the visited file.
1203
de1d1a40
LT
12042003-12-28 Luc Teirlinck <teirllm@auburn.edu>
1205
1206 * coding.c (Fcheck_coding_system): Doc fix.
1207
204fb75e
KS
12082003-12-28 Kim F. Storm <storm@cua.dk>
1209
1210 * Makefile.in (eval.o): Depend on dispextern.h.
1211
1212 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
1213 image glyph using image's ascent.
1214 (mode_line_string): Return image glyph as object clicked on.
1215 Adjust y0 for image glyph using image's ascent.
1216
1217 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
1218 (struct glyph): New members, ascent and descent. Used to save
1219 this glyph's ascent and descent, instead of having.
1220 (struct glyph): Declare member face_id using FACE_ID_BITS.
1221 (find_hot_spot): Add prototype.
1222
1223 * keyboard.c (Qimage): Remove extern (now in lisp.h).
1224 (QCmap): Declare extern.
1225 (make_lispy_position): When position is inside image hot-spot,
1226 use hot-spot element's id as posn element.
1227
1228 * lisp.h (IMAGEP): New macro to test for image object type.
1229 (Qimage): Declare extern.
1230
1231 * macfns.c (Qimage): Remove extern (now in lisp.h).
1232 (valid_image_p, parse_image_spec): Use IMAGEP macro.
1233
1234 * macterm.c (Qface, Qmouse_face): Remove unused externs.
1235
1236 * w32fns.c (Qimage): Remove extern (now in lisp.h).
1237 (valid_image_p, parse_image_spec): Use IMAGEP macro.
1238
1239 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
1240
1241 * w32term.c (Qface, Qmouse_face): Remove unused externs.
1242
1243 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
1244 pointer types.
1245 (Qrelative_width, Qalign_to): Remove unused variables.
1246 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
1247 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
1248 image maps.
d7107586 1249 (x_y_to_hpos_vpos): Return glyph relative coordinates through
204fb75e
KS
1250 new dx and dy args.
1251 Remove buffer_only_p arg (always 0). Simplify code accordingly.
1252 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
1253 than row's ascent and height, to get sensible height on tall rows.
1254 (build_desired_tool_bar_string): Remove Qimage extern.
1255 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
1256 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
1257 image glyph is alone on the last line.
1258 (append_glyph, append_composite_glyph, produce_image_glyph)
d7107586 1259 (append_stretch_glyph): Set glyph's ascent and descent.
204fb75e 1260 (on_hot_spot_p): New function to check if position is inside an
d7107586 1261 rectangular, circular, or polygon-shaped image hot-spot,
204fb75e
KS
1262 (find_hot_spot): New function to search for image hot-spot.
1263 (Flookup_image_map): New defun to search for image hot-spot.
1264 (define_frame_cursor1): New aux function to determine frame pointer.
1265 (note_mode_line_or_margin_highlight, note_mouse_highlight):
1266 Handle `pointer' text property and :pointer image property to
1267 control frame pointer shape. Detect image hot-spots for pointer
1268 and help_echo properties. Use define_frame_cursor1.
1269 (note_mouse_highlight): Use Vvoid_text_area_pointer.
1270 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
1271 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
1272
1273 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
1274
1275 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
1276 (Qimage): Remove extern (now in lisp.h).
1277 (valid_image_p, parse_image_spec): Use IMAGEP macro.
1278
1279 * xmenu.c (show_help_event): Remove unused code.
1280
1281 * xterm.c (Qface, Qmouse_face): Remove unused externs.
1282 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
1283 row's ascent and descent, to get a sensible height on tall rows.
1284
fc052137
LT
12852003-12-25 Luc Teirlinck <teirllm@auburn.edu>
1286
1287 * minibuf.c (Fcompleting_read): Undo previous change.
1288
a64387ee 12892003-12-25 Lars Hansen <larsh@math.ku.dk>
b9148500
LH
1290
1291 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
1292 Arguments GCPRO'ed in call to file name handler.
1293
56ffd194
TTN
12942003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
1295
1296 * termcap.c (tgetst1): Scan for "%pN"; if all
1297 N are continuous in [1,9], remove all "%pN".
1298
5202d23d
JD
12992003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1300
f26fab36
JD
1301 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
1302
5202d23d
JD
1303 * xfaces.c (lface_fully_specified_p): Take into account that
1304 MAC OS always have unspecified stipple.
1305
8babaa59
TTN
13062003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
1307
1308 * tparam.c (tparam1): Add handling for `%pN', which
1309 means use param N for the next substitution.
1310
2d176448
TTN
13112003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
1312
1313 * xfaces.c (Fcolor_gray_p): Fix omission bug:
1314 In case `frame' is nil, consult the selected frame.
1315 (Fcolor_supported_p): Likewise.
1316
adb0708c
LT
13172003-12-23 Luc Teirlinck <teirllm@auburn.edu>
1318
000eeb15
LT
1319 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
1320 Doc fixes.
0dc72b11
LT
1321
1322 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
1323 and an integer. Adapt the introductory comment accordingly.
adb0708c
LT
1324 (Fread_from_minibuffer): Delete code moved into read_minibuf.
1325 Doc fix.
1326 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
1327 read_minibuf.
1328 (Fcompleting_read): Delete code moved into read_minibuf.
d7107586 1329 (Ftest_completion): Make it handle obarrays and hash tables correctly.
adb0708c 1330
2e4d132b
KH
13312003-12-03 Kenichi Handa <handa@m17n.org>
1332
1333 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
1334 encoding sequence.
1335
3999c705
KH
13362003-12-01 Kenichi Handa <handa@m17n.org>
1337
1338 * composite.c (syms_of_composite): Don't make the compostion hash
1339 table week.
1340
d344ecbb
LT
13412003-11-30 Luc Teirlinck <teirllm@auburn.edu>
1342
1343 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
1344 * textprop.c (Fget_char_property_and_overlay): New function.
1345 (syms_of_textprop): Defsubr it.
1346
03d6484e
JD
13472003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1348
019b1f0e
JD
1349 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
1350 to compile on terminal configuration.
1351
03d6484e
JD
1352 * fileio.c (Fread_file_name): Check use_file_dialog also before
1353 calling Fx_file_dialog.
1354
1355 * fns.c: use_file_dialog: New variable.
1356 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
1357
442d3fd0
KS
13582003-11-29 Kim F. Storm <storm@cua.dk>
1359
1360 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
1361 (syms_of_msdos): Don't intern and staticpro them.
1362
0f6a07a8
KS
13632003-11-27 Kim F. Storm <storm@cua.dk>
1364
1365 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
1366 coordinates relative to glyph at posn. If glyph is an image,
1367 return that as object at posn. Callers changed.
1368 (mode_line_string, marginal_area_string): Calculate and return
1369 pixel coordinates relative to glyph. Callers changed.
1370
1371 * dispextern.h (buffer_posn_from_coords, mode_line_string)
1372 (marginal_area_string): Fix prototypes.
1373 (window_box_left_offset, window_box_right_offset): Add prototypes.
1374
1375 * frame.h (get_specified_cursor_type, get_window_cursor_type):
1376 Remove prototypes.
1377
1378 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
1379
1380 * keyboard.c (make_lispy_position): Add x and y coordinates
1381 relative to the current glyph as 7th element of position.
1382 If glyph is an image, return it in the object element.
1383 (read_key_sequence): Skip checks for keymap property in cases
1384 where POSN_STRING is not a string (e.g. an image).
1385
1386 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
1387 (Vshow_text_cursor_in_void): New variable.
1388 (glyph_to_pixel_coords): Don't use negative hpos.
1389 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
1390 (append_stretch_glyph): Change ascent arg to be actual value
1391 in pixels rather than ratio to height. Callers changed.
1392 (calc_pixel_width_or_height): New aux function, implementing
1393 pixel based artihmetic for glyph widths and heights.
1394 (produce_stretch_glyph): Use calc_pixel_width_or_height for
1395 :width, :height, :align-to, and :ascent, thus allowing these to
1396 be specified in pixels as well as multiples of characters.
1397 Don't produce stretch glyphs with zero width or height.
1398 (get_specified_cursor_type): Declare static.
1399 (get_window_cursor_type): Declare static. Add glyph arg to be
1400 able to know when cursor is on an image; always substitute
1401 hollow-box cursor for filled-box cursor on images, to avoid
1402 negative images and flicker when blinking the cursor.
1403 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
1404 (note_mode_line_or_margin_highlight): Use non-text cursor rather
1405 than vertical scroll-bar cursor in display margins.
1406 (note_mouse_highlight): Use non-text cursor rather than text
1407 cursor in fringes and over images in the text area.
1408 Use non-text cursor when mouse pointer is outside editable text,
1409 i.e. in the void after end-of-line or end-of-buffer; this was
1410 already done for W32, but is now standard for all systems --
1411 user can toggle show-text-cursor-in-void to get old behaviour.
1412 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
1413 Vdisplay_pixels_per_inch.
1414
00498bfc
AS
14152003-11-25 Andreas Schwab <schwab@suse.de>
1416
1417 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
1418 EMACS_INT to not lose bits.
1419 (Ffillarray): Don't set bits beyond the size of a bool vector.
1420
edaa824d
KS
14212003-11-25 Kim F. Storm <storm@cua.dk>
1422
1423 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
1424 define this defun on systems that cannot use stderr as lvalue.
1425
74d6f539
GM
14262003-11-24 Gerd Moellmann <gerd@gnu.org>
1427
1428 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
1429 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
1430 ld's default is incompatible with unexec.
1431
6a1ff3ba
KS
14322003-11-23 Kim F. Storm <storm@cua.dk>
1433
63dc7c6b
KS
1434 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
1435 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
1436 (Fforce_window_update): New defun.
1437 (syms_of_window): Defsubr it.
1438 (Fset_window_margins, Fset_window_fringes): Doc fix.
1439
6a1ff3ba
KS
1440 * print.c (Fredirect_debugging_output): New defun.
1441 (syms_of_print): Defsubr it.
1442
aef109b7
LT
14432003-11-22 Luc Teirlinck <teirllm@auburn.edu>
1444
1445 * fns.c (Fset_char_table_parent): Doc fix.
1446
6a1ff3ba 14472003-11-22 Kim F. Storm <storm@cua.dk>
63ccbe21
KS
1448
1449 * dispnew.c (buffer_posn_from_coords): Return actual row/column
1450 for glyph clicked on, rather than (unused) pixel positions.
1451 (mode_line_string, marginal_area_string): Change X and Y args to
1452 pointers for returning actual row/column for glyph clicked on.
1453 Simplify and optimize loops.
1454
aef109b7
LT
1455 * dispextern.h (mode_line_string, marginal_area_string):
1456 Update prototypes.
63ccbe21
KS
1457
1458 * keyboard.c (make_lispy_position): New function for generating
1459 mouse click positions from frame and pixel coordinates.
1460 Enhanced to return buffer position and actual row/column for
1461 events outside the text area using updated mode_line_string and
1462 marginal_area_string functions.
1463 Return left-fringe and right-fringe clicks as such, rather than
1464 clicks in text area.
1465 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
1466 pixel_to_glyph_coords, as we never use the results.
1467 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
1468 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
1469 Eliminate unused code in WHEEL_EVENT handling.
1470 (make_lispy_movement): Use make_lispy_position.
1471
1472 * window.c (coordinates_in_window): Remove redundant tests.
1473 Fix returned X pixel value for left-margin.
1474
1475 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
1476 mode_line_string and marginal_area_string parameters.
1477
a64387ee 14782003-11-22 Lars Hansen <larsh@math.ku.dk>
930a9995 1479
d7107586
SM
1480 * w32.c (struct the_group, getgrgid): Add.
1481 * mac.c (struct my_group, getgrgid): Add.
aef109b7 1482
3dbf3426
LT
14832003-11-21 Luc Teirlinck <teirllm@auburn.edu>
1484
1485 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
1486
cae8ddbb 14872003-11-21 Lars Hansen <larsh@math.ku.dk>
ded4064f 1488
d7107586
SM
1489 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
1490 include in call to file name handler. Optionally translate numeric
1491 UID and GID to strings. Update docstring.
1492 (directory_files_internal): Add parameter ID-FORMAT.
1493 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
1494 include in call to file name handler and call to
1495 directory_files_internal. Update Docstring.
1496 (Fdirectory_files): Add dummy parameter in call to
1497 directory_files_internal.
1498 * lisp.h (Qinteger): Add.
1499 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
1500 (Ffile_attributes): Add parameter.
1501 * data.c (Qinteger): Export.
cae8ddbb 1502
2550b848
LT
15032003-11-21 Luc Teirlinck <teirllm@auburn.edu>
1504
3dbf3426 1505 * fns.c (Freverse, Fnreverse): Doc fixes.
2550b848 1506
88380018
KS
15072003-11-19 Kim F. Storm <storm@cua.dk>
1508
1509 * xdisp.c (init_iterator): Initialize it->start to position
1510 before reseating (in case start position is invisible).
1511 (init_to_row_start): Set it->start to row-start.
1512 (redisplay_window): Accept optional_new_start if start position
1513 is invisible (in which case IT_CHARPOS overshoots PT).
1514 (display_line): Setup row->start from it->start (rather than
1515 it->current which is wrong if first char on line is invisible).
1516 When done, reseat it->start to it->current (= start of next row).
1517 (expose_area): Fix exposure of text area when first char (e.g. TAB)
1518 is only partially visible.
1519
1520 * dispextern.h (struct it): New member start.
1521
854c1a59
SM
15222003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
1523
455316e2
SM
1524 * alloc.c (make_float, Fcons): Clear the markbit at init time.
1525 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
1526 of block_index outside of the macro call.
1527 (Fgarbage_collect): Remove null code.
1528
1529 * m/amdx86-64.h: Don't redefine XPNTR.
1530
854c1a59
SM
1531 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
1532 of VALMASK.
1533
1534 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
1535 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
1536 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
1537
1538 * lisp.h (VALMASK): Only define for non-union type.
1539 (MARKBIT): Remove.
1540 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
1541 (XTYPE): Define unconditionally.
1542 (XSETTYPE): Remove one more remnant.
1543 (EQ): Define differently for the union and non-union cases.
1544 (INTMASK): New bit mask.
1545 (struct Lisp_Marker): Move down to prepare for upcoming patch.
1546 (GC_EQ): Delegate to EQ.
1547
1548 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
1549
a0c6ef2d
JD
15502003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1551
1552 * xterm.c (x_window_to_scroll_bar): Move check of display to
1553 where window_id is compared.
1554
859492c4
KS
15552003-11-17 Kim F. Storm <storm@cua.dk>
1556
1557 * dispextern.h (struct it): New member first_vpos.
1558
1559 * xdisp.c (start_display): Set it->first_vpos.
1560 (try_window_id): Use first_vpos to start display in first _text_
1561 line if no reusable lines at start of window with header line.
1562
810f2256
JD
15632003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1564
7c402969 1565 * w32fns.c (XPutPixel):
854c1a59
SM
1566 * w32bdf.c (w32_init_bdf_font):
1567 * sunfns.c (sel_read):
1568 * process.c (Fmake_network_process):
1569 * frame.c (store_frame_param):
1570 * fontset.c (Fset_fontset_font):
1571 * emacs.c (shut_down_emacs):
a64387ee 1572 * ccl.c (ccl_driver): Remove period at end of error message.
7c402969 1573
a32e9bfd
JD
1574 * config.in: Regenerate.
1575
810f2256
JD
1576 * xfns.c (x_window_to_frame, x_any_window_to_frame)
1577 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
1578 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
1579 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
1580 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
1581
1582 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
1583
1584 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
1585 (XTmouse_position, handle_one_xevent): Pass Display* to
1586 x_window_to_scroll_bar.
1587 (x_window_to_scroll_bar): Take a Display* argument.
1588 Check that display for frame is equal to Display* argument.
854c1a59 1589 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
810f2256
JD
1590 x_display_info_for_display instead. Use Display in xev instead
1591 of GDK_DISPLAY.
1592 (x_dispatch_event): Call x_display_info_for_display.
1593 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
1594 (x_connection_closed): Call xg_display_close for GTK.
1595 (x_term_init): Call xg_display_open for additional displays.
1596 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
1597 for GTK.
1598
1599 * xmenu.c (single_menu_item, mouse_position_for_popup)
1600 (x_activate_menubar): Formatting adjustments.
1601
1602 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
1603 adjustments.
1604
1605 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
1606 (xg_display_close, xg_create_default_cursor)
1607 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
1608 handling.
854c1a59
SM
1609 (xg_left_ptr_cursor): Remove.
1610 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
810f2256
JD
1611 cursor here.
1612 (xg_win_to_widget): Take Display* argument, call
1613 gdk_xid_table_lookup_for_display.
1614 (xg_create_frame_widgets, xg_get_file_name, create_menus)
1615 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
1616 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
1617 in FRAME_X_DISPLAY_INFO.
1618 (xg_get_scroll_id_for_window): Take Display* argument.
1619 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
854c1a59 1620 (xg_initialize): Remove xg_left_ptr_cursor.
810f2256
JD
1621
1622 * gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
1623 Display* argument also. Declare xg_display_open,
1624 xg_display_close, xg_create_default_cursor.
1625
0b03cc78
JD
16262003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1627
1628 * xterm.c (x_detect_focus_change): Do not change focus frame for
1629 Enter/LeaveNotify if the current focus frame has explicit focus.
1630
77e688fa
KS
16312003-11-14 Kim F. Storm <storm@cua.dk>
1632
1633 * dispnew.c (update_text_area): Fix redisplay error when hscroll
1634 is active and first glyph is only partially visible.
854c1a59 1635
dd429b03
KH
16362003-11-13 Kenichi Handa <handa@m17n.org>
1637
1638 * xdisp.c (select_frame_for_redisplay): New function.
1639 (redisplay_internal): Record also selected_frame for
1640 unwind_redisplay. Call select_frame_for_redisplay before
1641 redrawing each frame.
1642 (unwind_redisplay): Argument changed to a cons.
1643
6d9266f4
LT
16442003-11-12 Luc Teirlinck <teirllm@auburn.edu>
1645
1646 * fns.c (Fstring_to_multibyte): Doc fix.
1647
80060eb3
KH
16482003-11-11 Kenichi Handa <handa@m17n.org>
1649
1650 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
1651
74305183
JD
16522003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1653
1654 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
1655 program specified positions.
1656
cfda993e
JD
16572003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1658
1659 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
1660
df211069
KH
16612003-11-08 Kenichi Handa <handa@m17n.org>
1662
1663 * Makefile.in (lisp): Add kannada.el.
1664 (shortlisp): Likewise.
1665
4307d534
KH
16662003-11-07 Kenichi Handa <handa@m17n.org>
1667
854c1a59
SM
1668 * coding.c (coding_allocate_composition_data):
1669 Reset coding->composing to COMPOSITION_NO.
4307d534
KH
1670 (coding_restore_composition): Detect invalid composition data.
1671 Give Fstring and Fvector a Lispy integer, not C int.
1672
854c1a59
SM
16732003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
1674
1675 * floatfns.c (Flogb): Don't use VALMASK.
1676
1677 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
1678 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
1679
1680 * lisp.h (XINT): Move the cast to clarify what is going on.
1681 (GCTYPEMASK, XSETTYPE): Remove.
1682 (XGCTYPE): Make it an alias of XTYPE.
1683
d04103a1
JD
16842003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1685
1686 * xterm.c (x_term_init): Fix formatting.
1687
da18b5ac
JD
16882003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1689
1690 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
1691 and xg_did_tearoff.
1692
1693 * gtkutil.c: Remove variable xg_did_tearoff.
1694 (xg_have_tear_offs): New function.
1695 (tearoff_remove): Just decrease xg_detached_menus.
1696 (tearoff_activate): Increase xg_detached_menus and call
1697 tearoff_remove when tearoff is removed.
854c1a59 1698 (xg_keep_popup): Remove function.
da18b5ac
JD
1699 (create_menus): Give add_tearoff_p as argument to recursive
1700 call to create_menus.
1701 (xg_create_widget): Use variables instead of multiple
1702 strcmp. Tell create_menus to create tear off only for
1703 menu bar menus.
1704 (xg_update_menubar): Change title for a detached menu also.
1705 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
1706 of deep_p.
1707 (xg_initialize): Initialize xg_detached_menus, remove
1708 initialization of xg_did_tearoff.
1709
1710 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
1711 xg_have_tear_offs returns non-zero.
1712 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
1713 call to xg_keep_popup.
1714
64d4923e
AC
17152003-11-01 Andrew Choi <akochoi@shaw.ca>
1716
1717 * macterm.c (XTread_socket): Handle menubar selection and grow
1718 window only for mouseDown events.
854c1a59 1719
6cc8bc07
JD
17202003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1721
1722 * xterm.c (x_term_init): For GTK part, increase x_initialized
1723 to check for more than one display. Use error instead of return 0.
1724
043131c4
AC
17252003-10-31 Andrew Choi <akochoi@shaw.ca>
1726
854c1a59 1727 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
043131c4
AC
1728 (copy_dysymtab): Call it.
1729
bdda99a1
LT
17302003-10-31 Luc Teirlinck <teirllm@auburn.edu>
1731
1732 * eval.c (Fdefvaralias): Doc fix.
1733
800f42ff 17342003-10-26 Luc Teirlinck <teirllm@auburn.edu>
0d11571e
LT
1735
1736 * data.c (Fsetplist): Doc fix.
1737
ef35b389
LK
17382003-10-14 Lute Kamstra <lute@gnu.org>
1739
1740 * window.c (Fset_window_fringes): Clarify docstring.
07107abc 1741
ef35b389 17422003-10-14 Kim F. Storm <storm@cua.dk>
854c1a59 1743
07107abc
KS
1744 * window.c (Fset_window_margins): Simplify arg checking.
1745
f7005886
RS
17462003-10-13 Richard M. Stallman <rms@gnu.org>
1747
1748 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
1749 (print_partial_compiled_pattern): Replace assert with a printout.
1750 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
1751
1752 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
1753
1754 * window.c (Fset_window_margins): Allow only integers as args.
1755 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
1756 Doc fixes.
1757
9c0c2af5
LK
17582003-10-13 Lute Kamstra <lute@gnu.org>
1759
1760 * window.c (Fset_window_fringes): Elaborate docstring.
1761
3f080e4e
AC
17622003-10-12 Andrew Choi <akochoi@shaw.ca>
1763
854c1a59 1764 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
a4887377 1765
3f080e4e
AC
1766 * s/darwin.h (GC_MARK_STACK): Define.
1767
0aa513ed
JD
17682003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1769
1770 * window.c (shrink_windows): New function.
1771 (size_window): Call shrink_windows to calculate window sizes when
1772 shrinking frame with more than one window.
1773
6aa8858a
KS
17742003-10-12 Kim F. Storm <storm@cua.dk>
1775
1776 * xdisp.c (compute_fringe_widths): Doc fix.
1777
c2164d91
KH
17782003-10-08 Kenichi Handa <handa@m17n.org>
1779
854c1a59 1780 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
c2164d91 1781
f82ac129
KH
17822003-10-07 Kenichi Handa <handa@m17n.org>
1783
1784 * coding.c (Qcoding_system_define_form): New variable.
1785 (syms_of_coding): Intern and staticpro it.
1786 (Fcheck_coding_system): Try to autoload the definition of
1787 CODING-SYSTEM.
1788
9296c947
LT
17892003-10-05 Luc Teirlinck <teirllm@auburn.edu>
1790
1791 * fns.c (Frequire): Doc fix.
1792
c1f0671a
JD
17932003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1794
3d8c3826
JD
1795 * xfns.c (Fx_send_client_event): New function as a base for
1796 manipulating extended window manager hints.
6dc15d98 1797 (Fx_send_client_event): Remove unused variable s.
3d8c3826 1798
068ae0fd
JD
1799 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
1800 that function is removed.
1801
1802 * xterm.c (x_set_offset): Use move_offset_left/top instead of
1803 x/y_pixels_outer_diff.
1804 (x_check_expected_move): Calculate move_offset_left/top.
1805
1806 * xterm.h (struct x_output): New members: move_offset_top/left.
1807
854c1a59 1808 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
068ae0fd
JD
1809 call x_set_offset directly.
1810
1811 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
1812
96f09305
JD
1813 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
1814
1815 * xterm.c (x_delete_display): Free font names and font_encoder
1816 in dpyinfo->font_table.
1817
854c1a59
SM
1818 * xfns.c (Fx_close_connection): Only call XFreeFont here.
1819 Move xfree of font names to x_delete_display.
96f09305 1820
c1f0671a
JD
1821 * xterm.h (struct x_display_info): New member, wm_type.
1822 (struct x_output): New members, expected_top/left and
1823 check_expected_move.
1824
1825 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
1826 is received.
854c1a59
SM
1827 (handle_one_xevent): Rename x_check_expected_move from
1828 x_check_fullscreen_move.
c1f0671a
JD
1829 (x_set_offset): Only add WM decoration sizes to modified_top/left
1830 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
854c1a59 1831 (x_check_expected_move): Rename from x_check_fullscreen_move.
c1f0671a
JD
1832 Removed fullscreen specific code. Use check_expected_move,
1833 expected_left/top instead. Also, set wm_type.
1834 (x_term_init): Initialize wm_type to unknown.
1835
1836 * frame.c (x_fullscreen_move): Remove addition of WM decoration
1837 sizes to move_x/y.
1838
be2fdba9
KH
18392003-10-03 Kenichi Handa <handa@m17n.org>
1840
1841 * macterm.c (x_load_font): Clear all members of FONTP before start
1842 filling them.
1843
18442003-10-02 Kenichi Handa <handa@m17n.org>
1845
1846 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
1847 before calling find_ccl_program_func. Call find_ccl_program_func
1848 only when fontp->font_encoder is not NULL.
1849
1850 * xterm.c (x_load_font): Clear all members of FONTP before start
1851 filling them.
1852
26a6e439
JPW
18532003-10-03 John Paul Wallington <jpw@gnu.org>
1854
1855 * keymap.c (map_keymap): Don't abort when binding is a vector.
1856
0d4c2dc2
JR
18572003-10-02 Jason Rumney <jasonr@gnu.org>
1858
854c1a59
SM
1859 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
1860 Sync dependencies with Makefile.in.
a63cf46f
JR
1861 (alloca.o): Remove.
1862
0d4c2dc2
JR
1863 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
1864 filling them.
1865
1866 * w32bdf.c (w32_load_bdf_font): Likewise.
1867
ab8f7d5c
RS
18682003-09-30 Richard M. Stallman <rms@gnu.org>
1869
1870 * term.c (set_tty_color_mode): Calculate current_mode_spec
1871 regardless of value of VAL.
1872
854c1a59 1873 * intervals.c (graft_intervals_into_buffer):
ab8f7d5c
RS
1874 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
1875 Handle over_used when splitting UNDER.
1876
a64387ee 18772003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ab8f7d5c
RS
1878
1879 * regex.c (regex_compile): Free the stack when returning from function.
1880
3413f972
KH
18812003-09-28 Kenichi Handa <handa@m17n.org>
1882
1883 * fontset.c (Finternal_char_font): Change return value to
1884 cons (FONT-NAME . GLYPH-CODE).
1885
40409f05
EZ
18862003-09-28 Eli Zaretskii <eliz@elta.co.il>
1887
1888 * term.c (tty_setup_colors): Treat any negative argument as -1.
1889
f98ddc99
KH
18902003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
1891
1892 * process.c (send_process): Delete unused temp_buf.
1893
66c8f1a8
DL
18942003-09-26 Dave Love <fx@gnu.org>
1895
1896 * xterm.c (x_bitmap_mask): Declare.
1897
ca716c26
DL
18982003-09-25 Dave Love <fx@gnu.org>
1899
1900 * Makefile.in (fns.o): Depend on md5.h.
1901
fbe57420
KS
19022003-09-25 Kim F. Storm <storm@cua.dk>
1903
1904 * window.c (set_window_buffer): Fix redisplay problems when
1905 switching between buffers with different display margin widths.
1906
ef6ae4ff
KS
19072003-09-23 Kim F. Storm <storm@cua.dk>
1908
1909 * process.c (set_socket_option): Fix :bindtodevice option.
1910 (Fset_network_process_option): Update process contact list when
1911 setting option succeeds.
1912 (Fmake_network_process): Doc fix.
1913
68e03c1c
DL
19142003-09-23 Dave Love <fx@gnu.org>
1915
7146d1c1 1916 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
68e03c1c 1917
2f809aae
EZ
19182003-09-22 Eli Zaretskii <eliz@elta.co.il>
1919
1920 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
1921 color mode is an integer number (it could be -1).
1922
8fe7d8c8
RS
19232003-09-22 Richard M. Stallman <rms@gnu.org>
1924
1925 * intervals.c (graft_intervals_into_buffer): Correct the main loop
1926 in the case where OVER is longer than UNDER.
1927
2f71b5ea
MY
19282003-09-22 Masatake YAMATO <jet@gyve.org>
1929
7146d1c1 1930 * window.c (Fset_window_scroll_bars): Validate the value of
2f71b5ea 1931 `vertical_type'.
7146d1c1 1932
0c4da023
KS
19332003-09-21 Kim F. Storm <storm@cua.dk>
1934
1935 * frame.c (Vdefault_frame_scroll_bars): New variable.
1936 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
1937 (syms_of_frame): DEFVAR_LISP it, and initialize according to
1938 window-system default scroll bar position.
1939
b648413b
KS
1940 * window.c (Fwindow_scroll_bars): Doc fix.
1941
8f5b9e34
JD
19422003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1943
854c1a59 1944 * xterm.c (x_set_offset): Take window manager decorations into account.
8f5b9e34 1945
b0f23edf
RS
19462003-09-19 Richard M. Stallman <rms@gnu.org>
1947
1948 * atimer.h: Don't include lisp.h.
1949 (P_): Define it here (as well as elsewhere).
1950
1951 * print.c (Fprin1_to_string): Move the PRINTPREPARE
1952 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
1953
1954 * data.c (Fvariable_binding_locus): New function.
1955 (syms_of_data): defsubr it.
1956 (Flocal_variable_p): Delete duplicate call to indirect_variable.
1957
e1283999
DL
19582003-09-18 Dave Love <fx@gnu.org>
1959
ad5f3636
DL
1960 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
1961
e1283999
DL
1962 * process.c (Fnetwork_interface_info): Fix type error.
1963 (Fnetwork_interface_list): Doc fix.
1964 (read_process_output, read_process_output): Delete unused var.
1965
b8c7fd71
KS
19662003-09-17 Kim F. Storm <storm@cua.dk>
1967
1968 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
1969 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
1970 (Fnetwork_interface_info): Check that ifreq struct has required
1971 fields before accessing them; this requires that those fields are
1972 defined as macros, which may be too restrictive on some platforms,
1973 but it is better than failing on other platforms.
1974 (syms_of_process): Only defsubr above fns when included.
1975
11e0a411
DL
19762003-09-17 Dave Love <fx@gnu.org>
1977
1978 * unexalpha.c: Don't include varargs.h.
1979
e9c50801
KS
19802003-09-17 Kim F. Storm <storm@cua.dk>
1981
1982 * process.c (Fset_process_sentinel): Add sentinel to childp plist
1983 for network process.
1984 (socket_options): Add `:' prefix to option names. Add optbit field.
1985 (set_socket_option): Remove no_error arg and special handling of s < 0.
1986 Return 1<<optbit for known option, 0 for unknown.
1987 Do not interpret 0 as false for boolean option (only nil).
1988 Pass failed option and value to report_file_error.
7146d1c1 1989 (Fset_network_process_options): Replace by Fset_network_process_option.
e9c50801
KS
1990 (Fset_network_process_option): New function to set just one option.
1991 (Fmake_network_process): Allow :coding arg to be a cons.
1992 Allow :server arg to be an integer specifying backlog size.
1993 Remove :options arg, and allow options to be specified directly
1994 as :KEY, VALUE pairs. Parse these options before binding socket.
1995 As before, :reuseaddr t is default for a server process, but this
1996 can now be disabled by specifying :reuseaddr nil.
1997 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
1998 (init_process): Availability of network options is now checked with
1999 simpler syntax (featurep 'make-network-process :OPTION); use loop to
2000 setup features.
2001 (syms_of_process): Fix defsubr's for the replaced functions.
2002
a0fc3644
DL
20032003-09-16 Dave Love <fx@gnu.org>
2004
2005 * Makefile.in: Depend on coding.h.
2006
6df2a645
KS
20072003-09-14 Kim F. Storm <storm@cua.dk>
2008
2009 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
2010 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
2011 (syms_of_process): Defsubr them.
2012
2013 * config.in: Regenerate.
7146d1c1
SM
2014
20152003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
2016
2017 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
2018 * m/news-r6.h (XUNMARK): Remove.
2019 * m/mips.h (XUNMARK): Remove.
2020 * m/mips-siemens.h (XUNMARK): Remove.
2021 * m/iris4d.h (XUNMARK): Remove.
2022 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
2023
0930c1a1
SM
20242003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
2025
31003b9e
SM
2026 * lisp.h (VALBITS): Don't remove 1 for the markbit.
2027 (union Lisp_Object): Use unsigned int for types. Remove markbit.
2028 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
2029 (XTYPE): Use unsigned right-shift.
2030 (XMARKBIT, XMARK, XUNMARK): Remove.
2031
0930c1a1
SM
2032 * alloc.c (init_intervals, init_symbol, init_marker):
2033 Don't preallocate anything.
2034 (Fgarbage_collect, mark_object): Ignore the markbit.
2035
2036 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
2037
19bb0fcd 20382003-09-08 Lute Kamstra <lute@gnu.org>
5df034de
LK
2039
2040 * xdisp.c (pint2hrstr): New function.
2041 (decode_mode_spec): Add `%i' and `%I' specs.
2042 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
2043 for `mode-line-format'.
2044
03bb6a06
AS
20452003-09-07 Andreas Schwab <schwab@suse.de>
2046
2047 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
2048 avoid warning.
2049
2063d89c
EZ
20502003-09-07 Eli Zaretskii <eliz@elta.co.il>
2051
0930c1a1 2052 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
2063d89c 2053
ed159bbf
KS
20542003-09-03 Kim F. Storm <storm@cua.dk>
2055
2056 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
2057 change (superseded by 2002-08-30 change); the default blink-off
2058 cursor is now again "no cursor".
2059
fe64a394
JR
20602003-09-01 Jason Rumney <jasonr@gnu.org>
2061
2062 * makefile.w32-in (alloca.o): Remove.
2063 (coding.o): Depend on intervals.h
2064 (emacs.o, bytecode.o): Depend on window.h
2065
c0175e24
DL
20662003-09-01 Dave Love <fx@gnu.org>
2067
2068 * Makefile.in (alloca.o): Remove commands.
2069 (coding.o): Depend on intervals.h composite.h window.h.
2070 (emacs.o): Depend on window.h keyboard.h keymap.h.
2071 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
2072 (bytecode.o): Depend on window.h.
2073
a24d4cb2
JR
20742003-08-31 Jason Rumney <jasonr@gnu.org>
2075
4bc2315e
JR
2076 * w32term.c (w32_per_char_metric): Allow cached metrics to be
2077 returned even when font_type is unknown.
2078
a24d4cb2
JR
2079 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
2080
9d35adc7
JD
20812003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2082
2083 * xterm.c (x_term_init): Initialize new fields in x_display_info.
2084
2085 * xterm.h (struct x_display_info): Add red/green/blue_bits and
2086 *_offset.
2087
2088 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
2089 calculate pixel value.
2090
6f68b035
GM
20912003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
2092
0930c1a1
SM
2093 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
2094 Don't tell redisplay display is accurate when it's actually been
2095 paused for pending input.
6f68b035 2096
4828b4d7
RS
20972003-08-29 Richard M. Stallman <rms@gnu.org>
2098
2099 * dispnew.c (adjust_glyph_matrix): Call window_box
2100 whenever W is nonzero.
2101
2102 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
2103 (Fkill_local_variable, Fmake_variable_frame_local)
0930c1a1 2104 (Flocal_variable_p, Flocal_variable_if_set_p):
4828b4d7
RS
2105 Use indirect_variable to trace thru variable aliases.
2106
2107 * config.in: Updated.
2108
2109 * callint.c (Fcall_interactively): Save and restore
2110 Vthis_command, Vthis_original_command, real_this_command,
2111 and current_kboard->Vlast_command.
2112
2113 * abbrev.c (Fexpand_abbrev): Insert before deleting.
2114
e019878d
GM
21152003-08-29 Gerd Moellmann <gerd@gnu.org>
2116
2117 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
2118
85478bc6
KH
21192003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
2120
0930c1a1 2121 * coding.c (decode_coding_iso2022): Initialize local variable c2.
85478bc6
KH
2122 (decode_coding_sjis_big5): Likewise.
2123
07ce82d3
JR
21242003-08-27 Jason Rumney <jasonr@gnu.org>
2125
d3703de3
JR
2126 * w32.c (sys_pipe): Protect against file descriptor overflow.
2127
ee4a01d1
JR
2128 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
2129
07ce82d3
JR
2130 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
2131
a64387ee 21322003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
72d19c66
LK
2133
2134 * xfns.c (Vgtk_version_string): New variable.
2135 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
2136
5459e42a
EZ
21372003-08-24 Eli Zaretskii <eliz@elta.co.il>
2138
0930c1a1 2139 * term.c (term_init): Remove `const' from buffer_size's declaration.
3d8714e7 2140
5459e42a
EZ
2141 * Makefile.in (msdos.o): Depend on intervals.h.
2142
0930c1a1 2143 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
5459e42a 2144
231d6cfb
JD
21452003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2146
2147 * xterm.h (struct x_display_info): New fields: client_leader_window
2148 and Xatom_wm_client_leader.
2149
2150 * xterm.c (x_initialize): Move call to x_session_initialize to ...
2151 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
2152
2153 * xsmfns.c (create_client_leader_window): New function.
2154 (x_session_initialize): Call create_client_leader_window, take
2155 dpyinfo as argument.
2156
2157 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
2158
2159 * Makefile.in (xsmfns.o): Add more depenedencies.
2160
afa88464
DL
21612003-08-21 Dave Love <fx@gnu.org>
2162
2163 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
2164
f730033e
KH
21652003-08-21 Kenichi Handa <handa@m17n.org>
2166
2167 * term.c (term_init): Fix previous change; don't rely on the
2168 length of `buffer' if TERMINFO is defined.
2169
6dca786c
DL
21702003-08-20 Dave Love <fx@gnu.org>
2171
2172 * atimer.h: Include lisp.h.
2173
2174 * lisp.h (EMACS_LISP_H): New.
2175 (popup_activated_flag): Don't declare.
2176
2177 * alloca.c: Some merging with gnulib. Change logic and doc
2178 concerning (x)malloc/(x)free -- no longer Emacs-specific.
2179 [DO_BLOCK_INPUT]: Don't include lisp.h.
2180 (xmalloc, xfree): Declare.
2181 (malloc): Don't declare.
2182
0930c1a1 2183 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
6dca786c
DL
2184 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
2185 atimer.h, blockinput.h.
2186
2187 * alloc.c (lisp_align_malloc): Change type of `aligned'.
2188
2189 * alloca.s: Removed.
2190
3a06a6d9
RS
21912003-08-19 Gerd Moellmann <gerd@gnu.org>
2192
2193 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
2194 use -lncurses.
2195
2196 * term.c (term_init): Use a buffer of size 4096 for tgetent since
2197 FreeBSD returns something longer than 2044. Abort if the end of
2198 the buffer is overwritten.
2199
27eeee55
MB
22002003-08-19 Miles Bader <miles@gnu.org>
2201
2202 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
2203
2f297815
GM
22042003-08-19 Gerd Moellmann <gerd@gnu.org>
2205
f4446bbf
GM
2206 * alloc.c (lisp_align_malloc): Check for memory full when
2207 allocating ablocks, which also avoids freeing a pointer into an
2208 ablocks structure.
2209
2210 * puresize.h (BASE_PURESIZE): Increase to 1100000.
2211
0930c1a1 2212 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
2f297815 2213
0e7d7aae
RS
22142003-08-16 Richard M. Stallman <rms@gnu.org>
2215
2216 * editfns.c (Fencode_time): Doc fix.
2217
22182003-08-16 David Ponce <david@dponce.com>
2219
2220 * fileio.c (Fwrite_region): Fix conditional expression to issue
2221 the right message.
2222
22232003-08-16 Juri Linkov <juri@jurta.org> (tiny change)
2224
2225 * syntax.c (Fforward_word): Argument changed to optional.
0930c1a1 2226 Set default value to 1.
0e7d7aae 2227
5d551295
KH
22282003-08-15 Kenichi Handa <handa@m17n.org>
2229
2230 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
2231 what autoscaled.
2232 (best_matching_font): Once we find a better scalable font, set
2233 non_scalable_has_exact_height_p to 1.
2234 (try_font_list): Call try_alternative_families to try any family
2235 with the given registry.
2236
1661e56b
AS
22372003-08-09 Andreas Schwab <schwab@suse.de>
2238
f29181dc
AS
2239 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
2240
1661e56b
AS
2241 * print.c (print_string): Fix printing of multibyte string with
2242 nontrivial printcharfun.
2243
465aa50a
JD
22442003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2245
2246 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
2247
2248 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
2249
e430e5ba
KH
22502003-07-31 Kenichi Handa <handa@m17n.org>
2251
2252 * process.c (read_process_output): Return the actually read bytes
2253 instead of the result of decoding.
2254
97e7188e
KH
22552003-07-31 Kenichi Handa <handa@m17n.org>
2256
2257 * xterm.h (struct x_bitmap_record): New member have_mask.
2258
2259 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
2260 to 0.
2261 (x_create_bitmap_from_file): Likewise.
2262 (x_destroy_bitmap): Check have_mask member before freeing a mask.
2263 (x_destroy_all_bitmaps): Likewise.
2264 (x_create_bitmap_mask): Set have_mask member to 1.
2265
b53094d6
RS
22662003-07-30 Richard M. Stallman <rms@gnu.org>
2267
2268 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
2269
631f2082
JD
22702003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2271
2272 * gtkutil.c (xg_mark_data): Update calls to mark_object.
2273
c855f2ca
RS
22742003-07-29 Richard M. Stallman <rms@gnu.org>
2275
2276 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
2277 Conditionalize XIM code on HAVE_XIM.
2278
2279 * fns.c (Fclear_string): New function.
2280 (syms_of_fns): defsubr it.
2281
17e6d491
KH
22822003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
2283
0930c1a1 2284 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
17e6d491 2285
29ea8ae9
SM
22862003-07-22 Stefan Monnier <monnier@cs.yale.edu>
2287
2288 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
2289
2290 * buffer.c (delete_all_overlays): New function.
2291 * buffer.h (delete_all_overlays): Declare.
2292 * coding.c (run_pre_post_conversion_on_str):
2293 * print.c (temp_output_buffer_setup):
2294 * fileio.c (Finsert_file_contents):
2295 * minibuf.c (get_minibuffer): Use it.
2296
1dd7ccf2
AC
22972003-07-22 Andrew Choi <akochoi@shaw.ca>
2298
2299 * unexmacosx.c (unexec_regions_sort_compare):
2300 (unexec_regions_merge): New functions. Sort and merge unexec
2301 regions before dumping them.
2302
f57bd967
DL
23032003-07-22 Dave Love <fx@gnu.org>
2304
2305 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
2306
7cdee936
SM
23072003-07-21 Stefan Monnier <monnier@cs.yale.edu>
2308
2309 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
2310 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
2311 MARKBIT as the gcmarkbit for strings.
2312
e50886d3
RS
23132003-07-21 Richard M. Stallman <rms@gnu.org>
2314
2315 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
2316
29ea8ae9 2317 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
e50886d3
RS
2318 (syms_of_fns): Corresponding change.
2319
2320 * alloc.c (syms_of_alloc): Doc fixes.
2321
23222003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
2323
2324 * s/netbsd.h: Use -Wl syntax.
2325
fdc39b59
RS
23262003-07-17 Richard M. Stallman <rms@gnu.org>
2327
2328 * xterm.c (xim_initialize): Redo 6/24 change.
2329
9c53385f
SM
23302003-07-15 Stefan Monnier <monnier@cs.yale.edu>
2331
2332 * buffer.c (copy_overlays): Use EMACS_INT for positions.
2333 (Fswitch_to_buffer): Don't signal an error when switching to the same
2334 buffer in a dedicated window.
2335
2336 * alloc.c: Use bitmaps for cons, as was done for floats.
2337 (init_float, init_cons): Let the normal code allocate the first block.
2338 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
2339 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
2340 New macros.
2341 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
2342 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
2343 (live_cons_p): Check the pointer is not past the `conses' array.
2344 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
2345 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
2346 (survives_gc_p): Use CONS_MARKED_P and simplify.
2347 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
2348
dde13196
PE
23492003-07-13 Paul Eggert <eggert@twinsun.com>
2350
2351 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
2352 puts it into BSS instead, at least on Solaris 8 and 9.
2353 This is a valid optimization, and it may occur on other platforms,
2354 so Emacs should not assume that initializing a static variable to
2355 zero puts it into data.
2356 * alloc.c (pure, staticvec):
2357 Initialize these arrays to nonzero, so that they're not
2358 put into BSS by that optimization.
2359
a801bc34
SM
23602003-07-13 Stefan Monnier <monnier@cs.yale.edu>
2361
2362 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
2363 (lisp_align_malloc): Use posix_memalign is available.
2364 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
2365 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
2366 for consistency. Update users.
2367
0c8b2afa
RS
23682003-07-13 Richard M. Stallman <rms@gnu.org>
2369
2370 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
2371
668c2ab0
JB
23722003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
2373
2374 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
2375 and use the Gtk+ function gtk_window_icon_from_file if available.
2376
2377 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
2378 handle mask of bitmaps.
2379 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
2380 mask property.
2381 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
2382
2383 * xterm.h (xg_set_icon): New function.
2384
800bebe3
RS
23852003-07-12 Paul Eggert <eggert@twinsun.com>
2386
2387 * unexelf.c (unexec): Consider a section to precede the .bss
2388 section if its addresses overlap that of .bss.
2389
69e38995
RS
23902003-07-12 Richard M. Stallman <rms@gnu.org>
2391
2392 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
2393
2394 * config.in (HAVE_CRTIN): Add #undef.
2395 (INLINE): Really inline only if OPTIMIZE is defined.
2396
2397 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
2398 END_FILES_1.
2399 (START_FILES_1, END_FILES_1): New macros (conditional).
a801bc34 2400 (LD_SWITCH_SYSTEM_TEMACS): Define.
69e38995
RS
2401
2402 * s/openbsd.h: Don't include bsd4-3.h.
a801bc34
SM
2403 (TERMINFO): Define.
2404 (LIBS_TERMCAP): Define.
2405 (LD_SWITCH_SYSTEM): Define (two definitions).
69e38995
RS
2406
2407 * xfns.c: Include libpng/png.h instead of png.h.
2408
f1d0c238
AS
24092003-07-11 Andreas Schwab <schwab@suse.de>
2410
2411 * buffer.c (modify_overlay): Update prototype.
2412 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
2413 Likewise.
2414
5f6bf5fe
SM
24152003-07-09 Stefan Monnier <monnier@cs.yale.edu>
2416
2417 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
2418 (struct interval): Move to intervals.h.
2419 (struct Lisp_Marker): Use EMACS_INT for position info.
2420 (forward_point): Remove prototype of defunct function.
2421 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
2422 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
2423 (syms_of_textprop, set_text_properties): Remove prototypes that are
2424 already in intervals.h.
2425
2426 * intervals.h (struct interval): Move from lisp.h.
2427 Use EMACS_INT for position and size info.
2428
2429 * coding.c: Include intervals.h for Fset_text_properties.
2430
2431 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
2432 position and length information.
2433
2765b457
SM
24342003-07-09 Stefan Monnier <monnier@cs.yale.edu>
2435
2436 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
2437 position and length information.
2438
2410d73a
SM
24392003-07-09 Stefan Monnier <monnier@cs.yale.edu>
2440
2441 Change overlays_after and overlays_before so the overlays themselves
2442 are linked into lists, rather than using cons cells. After all each
2443 Lisp_Misc already occupies 5 words, so we can add a `next' field to
2444 Lisp_Overlay for free and save up one cons cell per overlay (not
2445 to mention one indirection when traversing the list of overlay).
2446
2447 * lisp.h (struct Lisp_Overlay): New field `next'.
2448
2449 * buffer.h (struct buffer): Change overlays_before and overlays_after
2450 from Lisp lists of overlays to pointers to overlays.
2451
2452 * buffer.c (overlay_strings, recenter_overlay_lists):
2453 Fix typo in eassert in last commit.
2454 (unchain_overlay): New function.
2455 (add_overlay_mod_hooklist): Use AREF.
2456 (copy_overlays, reset_buffer, overlays_at, overlays_in)
2457 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
2458 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
2459 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
2460 (report_overlay_modification, evaporate_overlays, init_buffer_once):
2461 Adjust to new type of overlays_(before|after).
2462
2463 * alloc.c (mark_object): Mark the new `next' field of overlays.
2464 (mark_buffer): Manually mark the overlays_(after|before) fields.
2465
2466 * coding.c (run_pre_post_conversion_on_str):
2467 * editfns.c (overlays_around):
2468 * xdisp.c (load_overlay_strings):
2469 * fileio.c (Finsert_file_contents):
2470 * indent.c (current_column):
2471 * insdel.c (signal_before_change, signal_after_change):
2472 * intervals.c (set_point_both):
2473 * print.c (temp_output_buffer_setup): Use new type for
2474 overlays_(before|after).
2475
04812929
SM
24762003-07-08 Stefan Monnier <monnier@cs.yale.edu>
2477
2478 * buffer.c (report_overlay_modification): Don't run hooks while
2479 traversing the list of overlays.
2480
2481 * buffer.h (struct buffer): Use an int for overlay_center.
2482 (overlays_at, evaporate_overlays, recenter_overlay_lists)
2483 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
2484
2485 * buffer.c (reset_buffer, recenter_overlay_lists)
2486 (adjust_overlays_for_insert, adjust_overlays_for_delete)
2487 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
2488 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
2489 (overlays_at, evaporate_overlays, recenter_overlay_lists)
2490 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
2491
2492 * xdisp.c (fast_find_position): Remove unused var.
2493
2494 * cmds.c (Qexpand_abbrev): New sym.
2495 (syms_of_cmds): Initialize it.
2496 (internal_self_insert): Use it to call expand-abbrev.
2497
2e7ecf15
KS
24982003-07-09 Kim F. Storm <storm@cua.dk>
2499
2500 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if emacs
2501 was configured with --without-xim.
42f81f64 2502 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
2e7ecf15 2503
c6de56a0
RS
25042003-07-07 Richard M. Stallman <rms@gnu.org>
2505
2506 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
2507
2508 * alloc.c (Fgarbage_collect): Doc fix.
2509
b93fb365
KH
25102003-07-07 Nozomu Ando <nand@mac.com> (tiny change)
2511
2512 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
2513
bfe1a3f7
SM
25142003-07-06 Stefan Monnier <monnier@cs.yale.edu>
2515
04812929
SM
2516 * minibuf.c (read_minibuf): UNGCPRO before returning.
2517 (Ftry_completion, Fall_completions): Doc fix.
2518
bfe1a3f7
SM
2519 * alloc.c (live_float_p): Check that p is not past the `floats' array,
2520 now that `floats' is not the last element of the struct any more.
2521
ee79d1aa
JR
25222003-07-06 Jason Rumney <jasonr@gnu.org>
2523
2524 * w32term.h (ClipboardSequence_Proc): New type.
2525
2526 * w32fns.c (clipboard_sequence_fn): New variable.
2527 (globals_of_w32fns): Initialize it.
2528
2529 * w32select.c (last_clipboard_sequence_number): New variable.
2530 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
2531 number if possible.
2532
49723c04
SM
25332003-07-06 Stefan Monnier <monnier@cs.yale.edu>
2534
4698665f
SM
2535 * m/amdx86-64.h (MARKBIT):
2536 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
2537 MARKBIT and ARRAY_MARK_FLAG any more.
2538
2539 * m/hp800.h (XSETMARKBIT):
2540 * m/sr2k.h (XSETMARKBIT):
2541 * lisp.h (XSETMARKBIT): Remove unused macro.
2542
49723c04
SM
2543 * lisp.h (mark_object): Change prototype.
2544
2545 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
2546 (last_marked): Change accordingly.
2547 (mark_interval, mark_maybe_object, mark_maybe_pointer)
2548 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
2549 (mark_buffer): Update calls to mark_object.
2550
2551 * bytecode.c (mark_byte_stack):
2552 * fns.c (sweep_weak_table):
2553 * keyboard.c (mark_kboards): Update calls to mark_object.
2554
1d660eca
JR
25552003-07-06 Jason Rumney <jasonr@gnu.org>
2556
2557 * alloc.c (struct ablock): Only include padding when there is some.
2558
618b5ae4
SM
25592003-07-04 Stefan Monnier <monnier@cs.yale.edu>
2560
2561 * alloc.c (ALIGN): Add casts to simplify usage.
2562 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
2563 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
2564 (struct ablock, struct ablocks): New types.
2565 (free_ablock): New global var.
2566 (lisp_align_malloc, lisp_align_free): New functions.
2567 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
2568 (struct float_block): Reorder and add gcmarkbits.
2569 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
2570 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
2571 (init_float, make_float): Use lisp_align_malloc.
2572 (free_float, live_float_p): Don't use `type' any more.
2573 (make_float): Use FLOAT_UNMARK to access to mark bit.
2574 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
2575 Use FLOAT_MARKED_P to access the mark bit.
2576 (pure_alloc): Simplify use of ALIGN.
2577 (mark_object): Use FLOAT_MARK to access the mark bit.
2578 (gc_sweep): Use new macros to access the float's mark bit.
2579 (init_alloc_once): Init free_ablock.
2580
2581 * lisp.h (struct Lisp_Float): Remove unused field `type'.
2582
3ef06d12
SM
25832003-06-27 Stefan Monnier <monnier@cs.yale.edu>
2584
2585 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
2586 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
2587 (allocate_buffer): Move.
2588 (string_bytes): Don't mask markbit of `size_byte'.
2589 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
2590 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
2591 Use the `size' field of buffers (rather than the `name' field) for
2592 the mark bit, as is done for all other vectorlike objects.
2593 Use the new macros to access the mark bit of vectorlike objects.
2594
e81043aa
RS
25952003-06-26 Richard M. Stallman <rms@gnu.org>
2596
2597 * puresize.h (BASE_PURESIZE): Increment base size.
2598
2599 * xdisp.c (fast_find_position): Enable Gerd's new definition.
2600
2601 * xterm.c (xim_initialize): Undo previous change.
2602
2d0834cc
SM
26032003-06-26 Stefan Monnier <monnier@cs.yale.edu>
2604
2605 * alloc.c (survives_gc_p): Simplify.
2606
2607 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
2608
2609 * window.c (Fset_window_dedicated_p): Simplify.
2610 (display_buffer_1): Don't raise the win from which minibuf was entered.
2611 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
2612 (Fminibuffer_selected_window): Simplify.
2613
2614 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
2615
2616 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
2617 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
2618
2619 * insdel.c (check_markers, adjust_markers_for_delete)
2620 (adjust_markers_for_insert, adjust_markers_for_replace)
2621 (prepare_to_modify_buffer, RESTORE_VALUE):
2622 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
2623 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
2624 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
2625 * alloc.c (Fmake_marker, free_marker, gc_sweep):
2626 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
2627 * editfns.c (save_excursion_restore, transpose_markers):
2628 * window.c (delete_window):
2629 * xdisp.c (message_dolog): Update for new types.
2630
d54ae3d8
JD
26312003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2632
a5f696ac
JD
2633 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
2634 (realize_default_face): Use default_face_done_p for the force_p
2d0834cc 2635 argument to set_lface_from_font_name. Set default_face_done_p to one.
a5f696ac
JD
2636
2637 * frame.c (make_frame): Initialize default_face_done_p.
2638
2639 * frame.h (struct frame): Add default_face_done_p.
2640
d54ae3d8
JD
2641 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
2642 will be defined.
2643
2336fe58
SM
26442003-06-25 Stefan Monnier <monnier@cs.yale.edu>
2645
2646 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
2647 Initialize the new field `gcmarkbit'.
2648 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
2649 (mark_interval_tree): Don't mark the tree separately from the nodes.
2650 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
2651 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
2652 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
2653
2654 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
2655 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
2656 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
2657 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
2658 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
2659
bcea31c2
DL
26602003-06-24 Dave Love <fx@gnu.org>
2661
2662 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
2663
2664 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
2665 from gnulib.
2666
2601f59e
RS
26672003-06-21 Richard M. Stallman <rms@gnu.org>
2668
2669 * fileio.c (Fwrite_region): Alternate messages
2670 for append and partial write.
2671
2672 * keyboard.c (read_key_sequence): When converting upcase fn key to
2673 downcase, update fkey and keytran so `backspace' gets translated.
2674
2675 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
2676
2677 * process.c (wait_reading_process_input): Don't signal SIGIO
2678 in batch mode.
2679
b5d2c621
KH
26802003-06-17 Kenichi Handa <handa@m17n.org>
2681
2682 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
2683 composite.h.
2684
2685 * xselect.c: Don't include charset.h, coding.h, composite.h.
2686 (Qforeign_selection): New variable.
2687 (syms_of_xselect): Intern and static it.
2688 (selection_data_to_lisp_data): Return a unibyte string made from
2689 data with `foreign-selection' text property.
2690
6793bc63
SM
26912003-06-15 Stefan Monnier <monnier@cs.yale.edu>
2692
2693 * termhooks.h (EVENT_INIT): New macro.
2694
2695 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
2696
2697 * alloc.c (mark_kboards): Move to keyboard.c.
2698
2699 * keyboard.c (record_asynch_buffer_change, read_avail_input):
2700 * xterm.c (x_dispatch_event):
2701 * xmenu.c (find_and_call_menu_selection):
2702 * xdisp.c (handle_tool_bar_click):
2703 * w32menu.c (menubar_selection_callback):
2704 * sysdep.c (kbd_input_ast, read_input_waiting):
2705 * msdos.c (dos_rawgetc):
2706 * macterm.c (mac_check_for_quit_char):
2707 * macmenu.c (menubar_selection_callback):
2708 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
2709 data to kbd_buffer_store_event.
2710
b3ea810c
KS
27112003-06-15 Kim F. Storm <storm@cua.dk>
2712
2713 * xdisp.c (x_fix_overlapping_area): Always use area relative X
6793bc63 2714 to fix redisplay problem with tall characters (such as \e,AC\e(B).
b3ea810c 2715
b8f75eda
KG
27162003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
2717
2718 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
2719
ba92ce48
KH
27202003-06-12 Kenichi Handa <handa@m17n.org>
2721
2722 * fileio.c (Fwrite_region): Save and restore restriction.
2723
b80263be
DL
27242003-06-12 Dave Love <fx@gnu.org>
2725
2726 * alloca.c (alloca): Declare arg as size_t.
2727
6793bc63
SM
2728 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
2729 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
b80263be 2730
b23c0a83
DL
27312003-06-11 Dave Love <fx@gnu.org>
2732
2733 * search.c (shrink_regexp_cache): Use xrealloc.
2734 (syms_of_search): Use xmalloc.
2735
700e47c2
KS
27362003-06-10 Kim F. Storm <storm@cua.dk>
2737
2738 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
2739 Adjust phys_cursor.x to be relative to window box, rather than
2740 text area before checking -- to ensure cursor is redrawn when
2741 exposing window.
2742 Note: This also fixes a similar (older) bug if display margins
2743 are present.
2744
f11aa0b2
KH
27452003-06-06 Kenichi Handa <handa@m17n.org>
2746
2747 * coding.c (encoding_buffer_size): If coding->type is
2748 coding_type_ccl, double magnification on CRLF encoding.
2749
3d143690
JR
27502003-06-06 Jason Rumney <jasonr@gnu.org>
2751
2752 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
2753 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
2754
2755 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
2756 Mac too.
2757
f16205ca
DL
27582003-06-05 Dave Love <fx@gnu.org>
2759
b23c0a83
DL
2760 * strftime.c: Merge changes from gnulib.
2761
f16205ca
DL
2762 * mktime.c (__mktime_internal): Merge changes from gnulib
2763 involving year 69 and dst2.
2764
2765 Changes to merge with gnulib version and be consistent with the
2766 autoconf test:
2767
6793bc63
SM
2768 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
2769 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
f16205ca
DL
2770 [HAVE_LOCALE_H]: Include locale.h.
2771 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
2772
9b87a0bc
KS
27732003-06-05 Kim F. Storm <storm@cua.dk>
2774
2775 * window.c (coordinates_in_window): Convert X and Y to window
2776 relative coordinates inside mode-line and header-line parts.
2777 Convert X and Y to margin area relative coordinates inside left
2778 and right display margin parts.
2779
5a8a15ec
JR
27802003-06-05 Jason Rumney <jasonr@gnu.org>
2781
2782 * w32fns.c (add_system_logical_colors_to_map): New function.
2783 (Fx_open_connection): Use it.
2784
01ed8ff1
SM
27852003-06-04 Stefan Monnier <monnier@cs.yale.edu>
2786
2787 * process.c (allocate_pty): Revert part of the previous patch.
2788 (Faccept_process_output): Simplify.
2789
b427b65d
JR
27902003-06-04 Jason Rumney <jasonr@gnu.org>
2791
2792 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
2793
2794 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
2795 (lispy_mouse_wheel_names): Remove.
2796 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
2797 Always define drag_and_drop_syms.
2798
2799 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
2800 WHEEL_EVENT events.
2801
914a8c47
SM
28022003-06-03 Stefan Monnier <monnier@cs.yale.edu>
2803
01ed8ff1
SM
2804 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
2805
914a8c47
SM
2806 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
2807
adcb132c
JD
28082003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2809
2810 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
2811 menu item label.
2812
be781fa7
RS
28132003-06-03 Richard M. Stallman <rms@gnu.org>
2814
2815 * window.c (Fwindow_edges): Doc fix.
2816 (Fwindow_pixel_edges, Fwindow_inside_edges)
2817 (Fwindow_inside_pixel_edges): New functions.
2818 (syms_of_window): defsubr them.
2819
2820 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
2821 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
2822
914a8c47
SM
28232003-06-02 Stefan Monnier <monnier@cs.yale.edu>
2824
2825 * dispnew.c (Fsit_for): Don't lie about the number of args.
2826
5b07197a
DL
28272003-06-02 Dave Love <fx@gnu.org>
2828
2829 * callproc.c: Use HAVE_FCNTL_H, not USG5.
2830 (syms_of_callproc) <process-environment>: Doc fix.
2831
2832 * doc.c: Use HAVE_FCNTL_H, not USG5.
2833
2834 * xfaces.c (font_rescale_ratio): Fix for K&R.
2835
2836 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
2837
2838 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
2839
2840 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
2841
2842 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
2843 (xg_create_frame_widgets): Use ENCODE_UTF_8.
2844
d7107586 2845 * xterm.c (Qutf_8): Move to coding.c
5b07197a
DL
2846
2847 * xmenu.c (ENCODE_MENU_STRING): New.
2848 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
2849 Use it.
2850
2851 * coding.h (ENCODE_UTF_8): New.
2852 (Qutf_8): Declare.
2853
2854 * coding.c (Qutf_8): New.
2855 (syms_of_coding): Intern it.
2856
2857 * fns.c: Doc fixes.
2858
7335b336
KH
28592003-06-02 Kenichi Handa <handa@m17n.org>
2860
2861 * buffer.c (Fset_buffer_multibyte): Fix previous change.
2862
914a8c47
SM
28632003-06-01 Stefan Monnier <monnier@cs.yale.edu>
2864
2865 * lread.c (openp): Make sure STR is a string.
2866
9862c135
JR
28672003-06-01 David Ponce <david@dponce.com>
2868
2869 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
2870 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
2871
2872 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
2873 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
2874 (discard_mouse_events): Discard WHEEL_EVENT events too.
2875 (lispy_wheel_names, wheel_syms): New.
2876 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
2877 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
2878 defined.
914a8c47 2879 (make_lispy_event): Add WHEEL_EVENT handler.
9862c135
JR
2880
2881 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
2882 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
2883 WHEEL_EVENT events.
2884
f984e73e
JPW
28852003-05-31 John Paul Wallington <jpw@gnu.org>
2886
2887 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
2888 timer are in lisp/emacs-lisp.
2889
1efcd78f
KH
28902003-05-31 Kenichi Handa <handa@m17n.org>
2891
458c8af4
KH
2892 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
2893 region when a buffer is changed to unibyte.
2894
1efcd78f
KH
2895 * charset.h (VALID_LEADING_CODE_P): New macro.
2896 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
2897
778e2804
KH
2898 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
2899 is nonzero, accept multibyte form of eight-bit-control chars.
2900 (decode_composition_emacs_mule): Likewise.
2901 (decode_coding_emacs_mule): Likewise.
2902 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
2903 multibyte form of eight-bit-control chars.
2904
2905 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
2906 (Finsert_file_contents): If coding-system-for-read is bound to
2907 Qauto_save_coding, use the coding system emacs-mule with special
2908 setting for recovering a file.
2909 (choose_write_coding_system): On auto saving, use the coding
2910 system emacs-mule with special setting for auto saving.
2911 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
2912
034060e4
KH
29132003-05-30 Kenichi Handa <handa@m17n.org>
2914
2915 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
2916 properly before calling ccl_driver.
2917
778e2804 2918 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
034060e4
KH
2919
2920 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
2921 nonzero.
2922 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
2923 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
2924
595f5aa5
GM
29252003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
2926
2927 * xfaces.c (realize_default_face): Do not abort if lface is
2928 non-existent - reverts change from 2003-05-19.
2929
103e0180
KH
29302003-05-29 Kenichi Handa <handa@m17n.org>
2931
2932 * coding.c (decode_coding_iso2022): Pay attention to the byte
2933 sequence of CTEXT extended segment, and retain those bytes as is.
2934
29352003-05-28 Kenichi Handa <handa@m17n.org>
2936
2937 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
2938 of CODING_REPLACEMENT_CHARACTER.
2939 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
2940 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
2941 check this flag on encoding.
2942 (encode_coding_sjis_big5): Check
2943 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
2944 (Fset_terminal_coding_system_internal): Set
2945 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
2946 instead of setting CODING_FLAG_ISO_SAFE flag in
2947 terminal_coding.flags.
2948
2949 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
2950 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
2951 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
2952
ff6a3bfb 29532003-05-28 Richard M. Stallman <rms@gnu.org>
45f266dc 2954
ff6a3bfb
RS
2955 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
2956
2957 * eval.c (unbind_to): Move init of this_binding to separate statement.
45f266dc 2958
1963c428
KS
29592003-05-28 Kim F. Storm <storm@cua.dk>
2960
2961 * xdisp.c (expose_window): Fix error in calculation of
2962 window relative coordinates of area to redisplay.
2963
2b5d4601
JR
29642003-05-27 Jason Rumney <jasonr@gnu.org>
2965
2966 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
2967
1c64a4a2
JB
29682003-05-27 David Ponce <david@dponce.com>
2969
2970 Handle W32 mouse wheel events as mouse click events, like in X.
2971
2972 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
2973 MOUSE_WHEEL_EVENT anymore.
2974
2975 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
2976 Scrolling down/up the mouse wheel is respectively mapped to mouse
2977 button 4 and 5.
2978 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
2979 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
2980 WM_MOUSEWHEEL events.
2981
2d031b89
AS
29822003-05-27 Andreas Schwab <schwab@suse.de>
2983
20464fdf
AS
2984 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
2985
2d031b89
AS
2986 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
2987 partially visible line.
2988
2989 * alloc.c (Fgarbage_collect): Fix last change.
2990
97bc76d4
JPW
29912003-05-26 John Paul Wallington <jpw@gnu.org>
2992
2993 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
2994
56613f06
SM
29952003-05-25 Stefan Monnier <monnier@cs.yale.edu>
2996
2997 * window.c (Fset_window_buffer): Add type of `keep_margins'.
2998 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
2999
3000 * window.h (window_box_text_cols): Declare.
3001
3002 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
3003 (x_draw_vertical_border): Remove unused var `f'.
3004
3005 * xfaces.c (build_scalable_font_name): Remove `unused var
3006 pixel_size' warning.
3007
3008 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
3009
3010 * unexelf.c (unexec): Remove `unused var n' warning.
3011
3012 * strftime.c (my_strftime_localtime_r): Remove `defined but
3013 unused' warning.
3014
3015 * process.c (allocate_pty): Remove `unused var stb' and
3016 `cp might be used uninitialized' warnings.
3017
3018 * dispnew.c (mode_line_string): Remove unused var `f'.
3019
3020 * coding.c (find_safe_codings): Remove unused var `i'.
3021
3022 * bytecode.c (Fbyte_code): Remove `unused val' warning.
3023
3024 * buffer.c (Fkill_buffer): Remove unused var `list'.
3025
3026 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
3027
93421a1f
JD
30282003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3029
3030 * frame.c (make_frame): Condition want_fullscreen with
3031 HAVE_WINDOW_SYSTEM.
3032
c4b8aebc
JB
30332003-05-25 Juanma Barranquero <lektu@terra.es>
3034
3035 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
3036 (Fwindow_scroll_bars): Fix typo in docstring.
3037
0416870b
KS
30382003-05-24 Kim F. Storm <storm@cua.dk>
3039
3040 The following changes serve several purposes:
3041
3042 1) Swap the position of fringes and display margins in windows, i.e.
3043 the fringes are now displayed between the margins and the text area
3044 (by default).
3045
3046 2) Allow fringe and scroll bar parameters to be set per-buffer and
3047 per-window (like display margins). Such settings are now stored
3048 in window configurations, preserved when frames are resized, and
9018a88e 3049 copied when windows are split vertically or horizontally.
0416870b
KS
3050 Several bugs related to display margins have been fixed.
3051
3052 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
9018a88e 3053
0416870b
KS
3054 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
3055 rather than FRAME_WIDTH (FRAME_FONT (f)).
3056
3057 5) Introduce a consistent naming of variables, members and macros
3058 depending on whether their value is measured in pixels or in
3059 canonical columns/lines. Pixel dimensions are named *_width and
3060 *_height, while canonical columns/lines are named *_cols and
3061 *_lines. Pixel positions are named *_x and *_y, while column/line
3062 positions are named *_col and *_line.
3063
3064 6) Consolidate more of the X, W32, and MAC gui code by moving
3065 common data into struct frame, and generalize it for the non-gui
3066 case by using suitable defaults.
3067
3068 7) Cleanup and consolidate the macros controlling frame and window
3069 layout into frame.h and window.h, and generalize the use of the
3070 various window_box_* functions (enhanced to handle the new fringe
3071 position and the per-window fringe and scroll bar settings).
3072
3073 * frame.h (struct frame): Rename members height to text_lines,
3074 width to text_cols, window_height to total_lines, window_width to
3075 total_cols, new_height to new_text_lines, new_width to
3076 new_text_cols. All uses changed.
3077 (struct frame): New members which consolidate common members of
3078 x_output, w32_output, and mac_output structures: left_pos,
3079 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
3080 win_gravity, size_hint_flags, border_width, internal_border_width,
3081 line_height, fringe_cols, left_fringe_width, right_fringe_width,
3082 want_fullscreen. All uses changed.
3083 (struct frame): New member column_width contaning the canonical
3084 column width, analogue to line_height. All uses changed.
3085 (struct frame): Rename members scroll_bar_pixel_width to
3086 config_scroll_bar_width, and scroll_bar_cols to
3087 config_scroll_bar_cols. All uses changed.
3088 (struct frame): New member scroll_bar_actual_width which
3089 consolidates and renames the vertical_scroll_bar_extra member of
3090 x_output, w32_output, and mac_output structures. All uses changed.
3091 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
3092 from x/w32/macterm.h files. All uses changed. Also change code
3093 which referred to f->output_data...->pixel_height.
3094 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
3095 from x/w32/macterm.h files. All uses changed. Also change code
3096 which referred to f->output_data...->pixel_width.
3097 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
3098 Also change code which referred to f->height.
3099 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
3100 Also change code which referred to f->width.
3101 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
3102 to update new_text_lines and new_text_cols members directly.
3103 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
3104 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
3105 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
3106 FRAME_SCROLL_BAR_COLS. All uses changed.
3107 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
3108 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
3109 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
3110 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
3111 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
3112 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
3113 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
3114 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
3115 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
3116 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
3117 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
3118 return line_height member (it now has proper value also for
3119 non-window frames).
3120 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
3121 return new column_width member (rather than the default font width).
3122 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
3123 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
3124 from x/w32/macterm.h files. Unconditionally return corresponding
3125 member of frame structure (they now have proper values also for
3126 non-window frames).
3127 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
3128 Calculate return value from left and right widths.
3129 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
3130 internal_border_width member (has proper value for non-window frame).
3131 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
3132 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
3133 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
3134 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
3135 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
3136 consolidated from xterm.h, macterm.h, and w32term.h.
3137 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
3138 consolidated from xterm.h, macterm.h, and w32term.h.
3139 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
3140 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
3141 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
3142 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
3143 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
3144 consolidated from x/mac/w32term.h.
3145 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
3146 consolidated from x/mac/w32term.h.
3147 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
3148 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
3149 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
3150 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
3151
3152 * window.h (struct window): Rename members left to left_col,
3153 top to top_line, height to total_lines, width to total_cols,
3154 left_margin_width to left_margin_cols, right_margin_width to
3155 right_margin_cols, orig_height to orig_total_lines, orig_top to
3156 orig_top_line. All uses changed.
3157 (struct window): New members left_fringe_width, right_fringe_width,
3158 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
3159 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
3160 New macros primarily used to simplify other macros.
3161 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
3162 referred to XINT (w->width).
3163 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
3164 referred to XINT (w->height).
3165 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
3166 referred to XINT (w->width) * canon_x_unit.
3167 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
3168 referred to XINT (w->height) * canon_y_unit.
3169 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
3170 referred to XINT (w->left).
3171 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
3172 all uses and code that referred to XINT (w->left) + XINT (w->width).
3173 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
3174 referred to XINT (w->top).
3175 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
3176 referred to XINT (w->top) + XINT (w->height).
3177 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
3178 referred to XINT (w->left) * canon_x_unit.
3179 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
3180 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
3181 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
3182 referred to XINT (w->top) * canon_y_unit.
3183 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
3184 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
3185 (WINDOW_LEFTMOST_P): New macro.
3186 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
3187 All uses changed.
3188 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
3189 All uses changed.
3190 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
3191 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
3192 Do not exclude left fringe width.
3193 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
3194 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
3195 Do not exclude fringe widths.
3196 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
3197 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
3198 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
3199 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
3200 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
3201 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
3202 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
3203 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
3204 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
3205 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
3206 New macros. Change code which referenced corresponding
3207 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
3208 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
3209 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
3210 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
3211 allow per-window scroll-bar settings.
3212 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
3213 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
3214 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
3215 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
3216 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
3217 FRAME_SCROLL_BAR_WIDTH.
3218 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
9018a88e 3219 (WINDOW_SCROLL_BAR_AREA_X): New macros.
0416870b
KS
3220 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
3221 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
3222 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
3223 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
3224 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
3225 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
3226 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
3227 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
3228 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
3229 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
3230 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
3231 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
3232 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
3233 (window_from_coordinates): Update prototype.
3234 (Fset_window_buffer): Update EXFUN.
3235 (set_window_buffer): Update prototype.
9018a88e 3236
0416870b 3237 * dispextern.h (struct glyph_matrix): Rename members window_left_x
9018a88e 3238 to window_left_col, window_top_y to window_top_line. All uses
0416870b
KS
3239 changed.
3240 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
3241 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
3242 internal_border_width is now set to 0 for non-window frames.
3243 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
3244 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
3245 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
3246 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
3247 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
3248 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
3249 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
3250 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
3251 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
9018a88e 3252 Move to window.h and renamed [see window.h changes].
0416870b
KS
3253 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
3254 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
9018a88e
SM
3255 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
3256 Use WINDOW_TOTAL_LINES.
0416870b
KS
3257 (frame_update_line_height): Remove prototype.
3258
3259 * buffer.h (struct buffer): Rename members measured in columns:
3260 left_margin_width to left_margin_cols, right_margin_width to
3261 right_margin_cols. All uses changed.
3262 New members left_fringe_width, right_fringe_width,
3263 fringes_outside_margins for per-buffer fringe settings.
3264 New members scroll_bar_width and vertical_scroll_bar_type for
3265 per-buffer scroll bar settings.
3266
3267 * buffer.c (init_buffer_once): Set buffer_defaults and
3268 buffer_local_flags for new buffer-local variables
3269 left_fringe_width, right_fringe_width, fringes_outside_margins,
3270 scroll_bar_width, and vertical_scroll_bar_type.
3271 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
3272 default-* variables for them.
3273
3274 * dispnew.c: Make (many) trivial substitutions for renamed and
3275 new macros in dispextern.h, frame.h and window.h.
3276 (mode_line_string): No need to adjust width for mode lines, as it
3277 is already adjusted by the caller.
3278 (marginal_area_string): Handle fringes inside/outside margins.
9018a88e 3279
0416870b
KS
3280 * frame.c: Make (many) trivial substitutions for renamed and
3281 new macros in dispextern.h, frame.h and window.h.
3282 (make_frame): Initialize left_fringe_width, right_fringe_width,
3283 fringe_cols, scroll_bar_actual_width, border_width,
3284 internal_border_width, column_width, line_height, x_pixels_diff,
3285 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
3286 members with values suitable for a non-window frames.
3287
3288 * gtkutil.c: Make (many) trivial substitutions for renamed and
3289 new macros in dispextern.h, frame.h and window.h.
9018a88e 3290
0416870b
KS
3291 * indent.c: Make (few) trivial substitutions for renamed and
3292 new macros in dispextern.h, frame.h and window.h.
3293
3294 * keyboard.c: Make (many) trivial substitutions for renamed and
3295 new macros in dispextern.h, frame.h and window.h.
3296 (make_lispy_event): Use window positions returned from
3297 window_from_coordinates when constructing the lisp event for
3298 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
3299 (incorrect) values locally.
3300 (make_lispy_movement): Use window positions returned from
3301 window_from_coordinates when constructing the lisp event, rather
3302 than calculating (incorrect) values locally.
3303
3304 * scroll.c: Make (some) trivial substitutions for renamed and
3305 new macros in dispextern.h, frame.h and window.h.
3306
3307 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
3308 scroll-bars.
3309
3310 * sysdep.c: Make (few) trivial substitutions for renamed and
3311 new macros in dispextern.h, frame.h and window.h.
3312
3313 * term.c: Make (some) trivial substitutions for renamed and
3314 new macros in dispextern.h, frame.h and window.h.
3315
3316 * widget.c: Make (few) trivial substitutions for renamed and
3317 new macros in dispextern.h, frame.h and window.h.
3318
3319 * window.c: Make (many) trivial substitutions for renamed and
3320 new macros in dispextern.h, frame.h and window.h.
3321 (make_window): Initialize new members
3322 left_margin_cols, right_margin_cols, left_fringe_width,
3323 right_fringe_width, fringes_outside_margins, scroll_bar_width,
3324 and vertical_scroll_bar_type.
3325 (coordinates_in_window): Adapted to new fringe/margin positions
9018a88e 3326 and per-window fringes and scroll-bars.
0416870b 3327 Fix bug related to incorrectly adjusting coordinates by
9018a88e 3328 frame's internal_border_width (the effect normally negible since
0416870b
KS
3329 the internal_border_width is typically 0 or 1 pixel, but very
3330 noticeable for an internal_border_width of e.g. 25 pixels).
3331 Upon successful return (other than ON_NOTHING), the coordinates
3332 are now always properly converted to window relative for the
3333 given display element.
3334 (window_from_coordinates): Add new parameters wx and wy to
3335 return the window relative x and y position in the returned
3336 window and part. A null arg means, don't return the position.
3337 All callers changed.
3338 (adjust_window_margins): New function which may reduce the width
3339 of the display margins if a window's text area is too small after
3340 resizing or splitting windows.
3341 (size_window): Fix bug that did not account for display margin
3342 widths when checking the minimum width of a window; use
3343 adjust_window_margins.
3344 (set_window_buffer): Call Fset_window_fringes and
3345 Fset_window_scroll_bars to setup per-window elements.
3346 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
3347 existing display margin, fringe widths, and scroll bar settings
9018a88e
SM
3348 (e.g. after splitting a window or resizing the frame).
3349 All callers changed.
0416870b
KS
3350 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
3351 (Fsplit_window): Duplicate original window's display margin,
3352 fringe, and scroll-bar settings; then call Fset_window_buffer with
3353 KEEP_MARGINS non-nil. This fixes a bug which caused a split
3354 window to only preserve the display margins in one of the windows.
c4b8aebc 3355 When splitting horizontally, call adjust_window_margins on both
0416870b
KS
3356 windows to ensure that the text area of the new windows is non too
3357 narrow. This fixes a bug which could cause emacs to trap if the
3358 width of the split window was less than the width of the display
3359 margins.
9018a88e
SM
3360 (window_box_text_cols): Renamed from window_internal_width.
3361 All uses changed. Adapt to per-window fringes and scroll bars.
0416870b
KS
3362 Fix bug that caused vertical separator to be subtracted also on
3363 window frames. Fix another bug that did not reduce the returned
3364 value by the columns used for display margins.
3365 (window_scroll_line_based): Fix bug related to scrolling too much
3366 when display margins are present (implicitly fixed by the fix to
3367 window_box_text_cols).
3368 (scroll_left, scroll_right): Fix bug related to scrolling too far
3369 by default when display margins are present (implicitly fixed by
3370 the fix to window_box_text_cols).
3371 (struct saved_window): Rename members left to left_col, top to
3372 top_line, width to total_cols, height to total_lines, orig_top to
3373 orig_top_line, orig_height to orig_total_lines. All uses changed.
3374 New members left_margin_cols, right_margin_cols,
3375 left_fringe_width, right_fringe_width, fringes_outside_margins,
3376 scroll_bar_width, and vertical_scroll_bar_type for saving
3377 per-window display elements.
3378 (Fset_window_configuration): Restore display margins, fringes,
3379 and scroll bar settings. This fixes a bug which caused display
3380 margins to be discarded when saving and restoring a window
3381 configuration.
3382 (save_window_save): Save display margins, fringes, and scroll bar
3383 settings. This fixes a bug which caused display margins to be
3384 discarded when saving and restoring a window configuration.
3385 (Fset_window_margins): Do nothing if display margins are not
3386 really changed. Otherwise, call adjust_window_margins to ensure
3387 the text area doesn't get too narrow. This fixes a bug which
3388 could cause emacs to trap if setting display margins wider than
3389 the width of the window.
3390 (Fset_window_fringes): New defun to allow user to specifically set
3391 this window's fringe widths and position vs. display margins.
3392 (Fwindow_fringes): New defun to return window's actual fringe
3393 settings.
3394 (Fset_window_scroll_bars): New defun to allow user to specifically
3395 set this window's scroll bar width and position.
3396 (Fwindow_scroll_bars): New defun to return window's actual scroll
3397 bar settings.
3398 (compare_window_configurations): Also compare display margins,
3399 fringes, and scroll bar settings.
3400 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
3401
3402 * xdisp.c: Make (many) trivial substitutions for renamed and
3403 new macros in dispextern.h, frame.h and window.h.
3404 (window_box_width): Adapt to per-window fringes and scroll bars,
3405 and new fringe vs. display margin position. Note that returned
3406 value is no longer guaranteed to be a whole multiple of the frame
3407 column width, since per-window fringes may now be any width.
3408 (window_box_left_offset): New function like window_box_left, but
3409 value is relative to left border of window (rather than frame).
3410 (window_box_right_offset): New function like window_box_right,
3411 but value is relative to left border of window.
3412 (window_box_left): Adapt to per-window fringes and scroll bars,
3413 and new fringe vs. display margin position. Simplify by using
3414 WINDOW_LEFT_EDGE_X and window_box_left_offset.
3415 (window_box): Allow null args for unnecessary return values;
3416 change/simplify relevant callers.
3417 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
9018a88e
SM
3418 and new fringe vs. display margin position.
3419 Use window_box_left_offset and window_box_right_offset
0416870b 3420 (get_glyph_string_clip_rect): Adapt to per-window fringes and
9018a88e
SM
3421 scroll bars, and new fringe vs. display margin position.
3422 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
0416870b
KS
3423 (draw_fringe_bitmap): Rework to handle per-window fringes and new
3424 fringe vs. display margin position.
3425 (hscroll_window_tree): Use window_box_width instead of window_box.
a64387ee
JB
3426 (redisplay_window): Adapt to per-window scroll bars.
3427 (draw_glyphs): Rework to handle per-window fringes and scroll
9018a88e
SM
3428 bars, and new fringe vs. display margin position.
3429 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
a64387ee 3430 (x_clear_end_of_line): Adapt to per-window fringes and scroll
0416870b
KS
3431 bars, and new fringe vs. display margin position. Fix bug which
3432 increased total width of full_width rows by width of scroll bars
3433 although window's total width already includes that.
3434 (x_fix_overlapping_area): Simplify using window_box_left_offset.
3435 (expose_area): Simplify using window_box_left_offset.
3436 (x_draw_vertical_border): Handle per-window scroll bar settings,
3437 mixing windows with left, right and no scroll bars.
3438
3439 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
3440 where it's used in x_list_fonts (for clarity).
3441 (frame_update_line_height): Remove unused function; functionality
3442 is now done directly when setting the default font in x_set_font.
3443
3444 * xfns.c: Make (many) trivial substitutions for renamed and
3445 new macros in dispextern.h, frame.h and window.h.
3446
3447 * xmenu.c: Make (some) trivial substitutions for renamed and
3448 new macros in dispextern.h, frame.h and window.h.
3449
3450 * xterm.h (struct x_output): Move members left_pos, top_pos,
3451 border_width, pixel_height, pixel_width, line_height,
3452 internal_border_width, vertical_scroll_bar_extra,
3453 left_fringe_width, right_fringe_width, fringe_cols,
3454 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
3455 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
3456 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
3457 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
3458 (PIXEL_WIDTH, PIXEL_HEIGHT)
3459 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
3460 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
3461 frame.h and renamed [see frame.h changes].
3462 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
3463 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
3464 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
3465 and renamed [see frame.h changes].
9018a88e 3466
0416870b
KS
3467 * xterm.c: Make (several) trivial substitutions for renamed and
3468 new macros in dispextern.h, frame.h and window.h.
3469 (x_draw_glyph_string_box): Adapt to per-window fringes and
3470 scroll-bars.
3471 (scroll_run): Adapt to new fringe position.
3472 (glyph_rect): Use window coordinates returned from
3473 window_from_coordinates rather than frame_to_window_pixel_xy.
3474 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
3475 scroll-bars.
3476 (handle_one_xevent): Simplify a USE_GTK conditional.
3477 (x_clip_to_row): Remove superfluous whole_line_p arg and code
3478 (fringes are now inside margins, i.e. always in the clipping area).
3479 All callers changed.
3480 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
3481 directly, then call compute_fringe_widths. Don't call
3482 frame_update_line_height.
3483
3484 * w32term.h (struct w32_output): Move members left_pos, top_pos,
3485 border_width, pixel_height, pixel_width, line_height,
3486 internal_border_width, vertical_scroll_bar_extra,
3487 left_fringe_width, right_fringe_width, fringe_cols,
3488 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
3489 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
3490 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
3491 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
3492 (PIXEL_WIDTH, PIXEL_HEIGHT)
3493 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
3494 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
3495 frame.h and renamed [see frame.h changes].
3496 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
3497 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
3498 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
3499 and renamed [see frame.h changes].
9018a88e 3500
0416870b
KS
3501 * w32term.c: Make (several) trivial substitutions for renamed and
3502 new macros in dispextern.h, frame.h and window.h.
3503 (x_draw_glyph_string_box): Adapt to per-window fringes and
3504 scroll-bars.
3505 (glyph_rect): Use window coordinates returned from
3506 window_from_coordinates rather than frame_to_window_pixel_xy.
3507 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
3508 scroll-bars.
3509 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
3510 (fringes are now inside margins, i.e. always in the clipping area).
3511 All callers changed.
3512 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
3513 directly, then call compute_fringe_widths. Don't call
3514 frame_update_line_height.
3515
3516 * w32console.c: Make (few) trivial substitutions for renamed and
3517 new macros in dispextern.h, frame.h and window.h.
3518
3519 * w32fns.c: Make (many) trivial substitutions for renamed and
3520 new macros in dispextern.h, frame.h and window.h.
3521
3522 * w32menu.c: Make (few) trivial substitutions for renamed and
3523 new macros in dispextern.h, frame.h and window.h.
3524
3525 * macterm.h (struct mac_output): Move members left_pos, top_pos,
3526 border_width, pixel_height, pixel_width, line_height,
3527 internal_border_width, vertical_scroll_bar_extra,
3528 left_fringe_width, right_fringe_width, fringe_cols,
3529 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
3530 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
3531 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
3532 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
3533 (PIXEL_WIDTH, PIXEL_HEIGHT)
3534 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
3535 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
3536 frame.h and renamed [see frame.h changes].
3537 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
3538 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
3539 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
3540 and renamed [see frame.h changes].
9018a88e 3541
0416870b
KS
3542 * macterm.c: Make (several) trivial substitutions for renamed and
3543 new macros in dispextern.h, frame.h and window.h.
3544 (x_draw_glyph_string_box): Adapt to per-window fringes and
3545 scroll-bars.
3546 (glyph_rect): Use window coordinates returned from
3547 window_from_coordinates rather than frame_to_window_pixel_xy.
3548 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
3549 scroll-bars.
3550 (x_clip_to_row): Remove superfluous whole_line_p arg and code
3551 (fringes are now inside margins, i.e. always in the clipping area).
3552 All callers changed.
3553 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
3554 directly, then call compute_fringe_widths. Don't call
3555 frame_update_line_height.
3556
3557 * macfns.c: Make (several) trivial substitutions for renamed and
3558 new macros in dispextern.h, frame.h and window.h.
9018a88e 3559 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
0416870b
KS
3560
3561 * macmenu.c: Make (few) trivial substitutions for renamed and
3562 new macros in dispextern.h, frame.h and window.h.
3563
3564 * msdos.h (struct x_output): Remove members left_pos, top_pos,
3565 and line_height, and use corresponding new members in struct
3566 frame. All uses changed.
3567 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
3568 superseeded by corresponding macros in frame.h.
3569
3570 * msdos.c: Make (several) trivial substitutions for renamed and
3571 new macros in dispextern.h, frame.h and window.h.
3572 (IT_note_mouse_highlight): Use updated window coordinates returned
9018a88e 3573 by window_from_coordinates, rather than adjusting them locally.
0416870b
KS
3574 (internal_terminal_init): No need to initialize line_height here;
3575 it now defaults to 1.
3576
9018a88e
SM
35772003-05-24 Stefan Monnier <monnier@cs.yale.edu>
3578
3579 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
3580 dropping `down' events.
3581
016bd3c0
AS
35822003-05-24 Andreas Schwab <schwab@suse.de>
3583
3584 * coding.c (find_safe_codings): Fix last change.
3585
4dacadcc
TTN
35862003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
3587
3588 * xfns.c (x_window): Fix typo from 2003-05-21 change.
3589
319830ce
SM
35902003-05-23 Stefan Monnier <monnier@cs.yale.edu>
3591
9018a88e
SM
3592 * xdisp.c (display_mode_element): Increase max depth.
3593 Simplify the error handling code. Use a different error string
3594 for the case where we hit the depth limit.
3595
319830ce
SM
3596 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
3597
3598 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
3599
36002003-05-21 Stefan Monnier <monnier@cs.yale.edu>
3601
3602 * intervals.c (get_local_map): Don't get char-property of previous
3603 point any more: get_pos_property already does it and better.
3604
c67de8ba
DL
36052003-05-21 Dave Love <fx@gnu.org>
3606
3607 [Merged from unicode branch.]
3608
3609 * xfns.c (x_window, x_window): Use use_xim.
3610
3611 * xterm.c (use_xim): Initialize.
3612 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
3613 (x_term_init): Maybe set use_xim.
3614
3615 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
3616
edd3ff1d
JR
36172003-05-21 Jason Rumney <jasonr@gnu.org>
3618
3619 * unexw32.c (_start): Remove _fmode initialization.
3620
3621 * emacs.c (main) [WINDOWSNT]: Move it here.
3622
463f55ee
DL
36232003-05-20 Dave Love <fx@gnu.org>
3624
3625 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
3626
af253914
RS
36272003-05-19 Richard M. Stallman <rms@gnu.org>
3628
3629 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
3630 as value for QCfont attribute.
3631 (realize_default_face): lface should already exist; crash if not.
3632 Specify 0 for FORCE_P when calling set_lface_from_font_name.
3633
3634 * frame.c (Fignore_event): Doc fix.
3635
1d211019
KH
36362003-05-19 Kenichi Handa <handa@m17n.org>
3637
3638 * coding.c (decode_coding_string): Handle post-read-conversion
3639 even if the coding doesn't require decoding.
3640
4dd68254
RS
36412003-05-18 Richard M. Stallman <rms@gnu.org>
3642
3643 * callproc.c (Fcall_process_region): Doc fix.
3644
14d87dc9
SM
36452003-05-17 Stefan Monnier <monnier@cs.yale.edu>
3646
deca5d96
SM
3647 * lread.c (Fload): Print a message if package is obsolete.
3648
14d87dc9
SM
3649 * window.c (Fselect_window): Add optional `norecord' arg.
3650 (select_window_1): Fold into Fselect_window.
3651 (select_window_norecord): New function.
3652 (temp_output_buffer_show): Use it. Preserve current buffer.
3653
3654 * window.h (Fselect_window): Update declaration.
3655
3656 * window.c (delete_window, Fother_window, Fset_window_configuration):
3657 * minibuf.c (read_minibuf):
3658 * macterm.c (x_new_focus_frame):
3659 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
3660 * callint.c (Fcall_interactively):
3661 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
3662
3663 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
3664
78f52183
DK
36652003-05-17 David Kastrup <dak@gnu.org>
3666
3667 * process.c (read_process_output): Back out change from 2003-03-09.
3668
14d87dc9
SM
36692003-05-17 Stefan Monnier <monnier@cs.yale.edu>
3670
3671 * editfns.c (get_pos_property): Don't assume that `object' = nil.
3672
3673 * textprop.c (text_property_stickiness): New arg `buffer'.
3674
3675 * intervals.h (text_property_stickiness): New arg `buffer'.
3676 (get_pos_property): Declare.
3677
3678 * intervals.c (get_local_map): Use get_pos_property, to obey
3679 stickiness and empty overlays.
3680 (create_root_interval, graft_intervals_into_buffer): Use BEG.
3681 (merge_properties, intervals_equal, merge_properties_sticky):
3682 Use XCAR, XCDR.
3683 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
3684
1fd1cc2f
RS
36852003-05-17 Richard M. Stallman <rms@gnu.org>
3686
4f9f637a
RS
3687 * minibuf.c (read_minibuf): If buffer is empty, record the default
3688 in the history.
3689 (Fminibuffer_complete_word): When deleting the overlap, take account
3690 of its real position.
3691
3692 * fns.c (map_char_table): Fix previous change.
3693
1fd1cc2f
RS
3694 * syntax.c (find_defun_start):
3695 When open_paren_in_column_0_is_defun_start,
3696 return beginning of buffer.
3697
3698 * lisp.h (map_char_table): Declare added arg.
3699
3700 * fns.c (map_char_table): New arg TABLE gets the master table.
3701 All calls changed.
3702 Process default and inheritance, resorting to Faref if necessary.
3703
3704 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
3705 (Faccessible_keymaps): Pass new arg to map_char_table.
3706
3707 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
3708
3709 * casetab.c (set_case_table): Pass new arg to map_char_table.
3710
3711 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
3712
3713 * lisp.h (specbinding_func): New typedef.
3714 (struct specbinding): Use specbinding_func, to put the `volatile'
3715 in the right place.
3716
3717 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
3718 to avoid GCC warning.
14d87dc9 3719
b4bd27c5
RS
37202003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org> (tiny change)
3721
14d87dc9 3722 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
b4bd27c5 3723
35fb885d
SM
37242003-05-15 Stefan Monnier <monnier@cs.yale.edu>
3725
3726 * keyboard.c (apply_modifiers): Don't fill the other cache.
3727
9a274fbd
SM
37282003-05-14 Stefan Monnier <monnier@cs.yale.edu>
3729
c55b5fad
SM
3730 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
3731
9a274fbd
SM
3732 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
3733 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
3734 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
3735 (Fset_window_configuration, Fcurrent_window_configuration)
3736 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
3737 (Fpos_visible_in_window_p, mark_window_cursors_off)
3738 (window_internal_height, window_internal_width, Frecenter)
3739 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
3740 (replace_buffer_in_all_windows, init_window_once, init_window)
3741 (syms_of_window, keys_of_window): Move from lisp.h.
3742 * lisp.h: Move window.c declarations to window.h.
3743
3744 * bytecode.c: Include window.h.
3745 * emacs.c: Include window.h.
3746
14d87dc9 3747 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
9a274fbd
SM
3748 (keyremap): Add `parent' field.
3749 (keyremap_step): Use it. Remove `parent' argument.
3750 (read_key_sequence): Setup and use the new `parent' field.
3751
fd93e331
SM
37522003-05-11 Stefan Monnier <monnier@cs.yale.edu>
3753
3754 * keyboard.c (adjust_point_for_property): Ensure termination.
3755
1c4001a1
SM
37562003-05-10 Stefan Monnier <monnier@cs.yale.edu>
3757
3758 * keyboard.c (follow_key): Remove dead variable `did_meta'.
3759 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
3760 duplicated handling of function-key-map and key-translation-map
3761 in read_key_sequence.
3762 (read_key_sequence): Use them.
3763
3764 * keyboard.c (adjust_point_for_property): Try harder to move point
3765 to the non-sticky end of an invisible property.
3766
3767 * xdisp.c (single_display_prop_intangible_p): Make `space' display
3768 property intangible as well.
3769
780379b1
AS
37702003-05-10 Andreas Schwab <schwab@suse.de>
3771
3772 * xmenu.c (single_menu_item): Change last parameter to void* to
3773 avoid warning.
3774
ca2de342
RS
37752003-05-09 Richard M. Stallman <rms@gnu.org>
3776
3777 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
3778 Bind Qinhibit_modification_hooks to t so there will be no GC.
3779 Rename local `tem' to `save_deactivate_mark'.
3780
3781 * eval.c (specpdl_ptr): Declare volatile.
3782 (unbind_to): Copy the whole binding and decrement specpdl_ptr
3783 before doing the work of unbinding it.
3784
3785 * lisp.h (struct specbinding): Declare elements volatile.
3786 (specpdl_ptr): Declare volatile.
3787
3788 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
3789
3790 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
3791 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
3792
347003be
DL
37932003-05-08 Dave Love <fx@gnu.org>
3794
3795 * coding.c (Vlast_coding_system_used): Doc fix.
3796
5adcec23
JR
37972003-05-07 Jason Rumney <jasonr@gnu.org>
3798
3799 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
3800 when system does not support them.
3801
5fe3b8a4
SM
38022003-05-05 Stefan Monnier <monnier@cs.yale.edu>
3803
3804 * fileio.c (Qwrite_region_annotate_functions): New var.
3805 (build_annotations): Use it to process the global part of the hook.
3806 (syms_of_fileio): Init and staticpro it.
3807
3808 * keyboard.c (safe_run_hooks_error): Display a message instead of
3809 silently ignoring the error.
3810
38112003-05-03 Stefan Monnier <monnier@cs.yale.edu>
3812
3813 * keyboard.c (input_available_signal): Mark static.
3814 (menu_bar_items): Use map_keymap.
3815 (menu_bar_one_keymap): Remove.
3816 (menu_bar_item): Adjust arglist (for use in map_keymap).
3817 Properly hide a second binding when not both are keymaps.
3818
3819 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
3820 (single_keymap_panes): Use it and map_keymap.
3821 (single_menu_item): Use skp as well.
3822
3823 * keymap.h (map_keymap_function_t): New type.
3824 (map_keymap): Declare.
3825
3826 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
3827 (map_keymap_call, Fmap_keymap): New functions.
3828 (syms_of_keymap): Defsubr map-keymap.
3829
4b1b4443
JD
38302003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3831
3832 * gtkutil.c (create_dialog, make_widget_for_menu_item)
3833 (make_menu_item, create_menus, xg_update_menu_item): Don't call
3834 ..._with_mnemonic functions for menu items.
3835
1f816871
KH
38362003-05-01 Kenichi Handa <handa@m17n.org>
3837
3838 * coding.c (coding_system_accept_latin_extra_p): Delete this
3839 function.
3840 (find_safe_codings): Pay attention to
3841 the property tranlsation-table-for-encode of each codings.
3842 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
3843
5ed6ba5b
SM
38442003-05-01 Stefan Monnier <monnier@cs.yale.edu>
3845
3846 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
3847
32c06229
SM
38482003-04-30 Stefan Monnier <monnier@cs.yale.edu>
3849
3850 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
3851
3852 * lisp.h (CHECK): Wrap args in parenthesis.
3853 (specbind): Fix doc: symbol = Qnil is not supported any more.
3854
3855 * bytecode.c (Fbyte_code) <unwind-protect>:
3856 Use Fprogn rather than 0 and Qnil.
3857
3858 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
3859 `double', and `triple' modifiers as well.
3860
ed3c3314
RS
38612003-04-30 Richard M. Stallman <rms@gnu.org>
3862
3863 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
3864
3865 * alloc.c (abort_on_gc): New variable.
3866 (Fgarbage_collect): Abort if abort_on_gc is set.
3867
3868 * lisp.h (abort_on_gc): Add decl.
3869
3870 * eval.c (Fsignal): Clear abort_on_gc.
3871
3872 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
32c06229 3873 Reinit FORMAT_START and END before second scan.
ed3c3314
RS
3874
3875 * xdisp.c (move_it_vertically_backward): Do the final big else
3876 even if nlines is 0.
3877
3878 * xdisp.c (redisplay_internal): Finish the per-frame loop
3879 even if redisplay is suspended by input.
3880
0b325c12
AC
38812003-04-24 Andrew Choi <akochoi@shaw.ca>
3882
3883 * macterm.c (x_list_fonts): Return all fonts that match if
3884 maxnames = -1.
3885
4e837cd0
KH
38862003-04-25 Kenichi Handa <handa@m17n.org>
3887
3888 * syntax.c (skip_chars): Fix previous change.
3889
9af7511a
KH
38902003-04-24 Kenichi Handa <handa@m17n.org>
3891
3892 * syntax.c (skip_chars): Make the code faster by using the common
3893 technique of *p, *stop, and *endp.
3894
e3b2c21f
JD
38952003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3896
3897 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
32c06229 3898 tool_bar_items so GTK tool bar expose callback does not access items
e3b2c21f
JD
3899 being updated.
3900
32c06229
SM
39012003-04-19 Stefan Monnier <monnier@cs.yale.edu>
3902
3903 * eval.c (Fapply): Undo last change and add a comment about why.
3904
c6464167
MB
39052003-04-18 Miles Bader <miles@gnu.org>
3906
3907 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
3908 pickier PARSE_MULTIBYTE_SEQ.
3909
e509f168
SM
39102003-04-17 Stefan Monnier <monnier@cs.yale.edu>
3911
3912 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
3913 Use XCDR, XCAR, CONSP.
3914 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
3915 (Fapply): Remove unnecessary GCPRO.
3916
3917 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
3918
3919 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
3920
3921 * buffer.h: Don't hardcode BEG==1.
3922
3923 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
3924
5ceea398
RS
39252003-04-16 Richard M. Stallman <rms@gnu.org>
3926
3927 * xdisp.c (try_window, try_window_reusing_current_matrix):
3928 When at end of window, set window_end_pos to Z-ZV.
3929
3930 * buffer.c (Foverlay_recenter): Doc fix.
3931
e509f168
SM
39322003-04-14 Stefan Monnier <monnier@cs.yale.edu>
3933
3934 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
3935
d243e605
AC
39362003-04-14 Andrew Choi <akochoi@shaw.ca>
3937
3938 * macterm.c (mac_check_for_quit_char): Don't check more often than
3939 once a second.
3940
6901b111
SM
39412003-04-11 Stefan Monnier <monnier@cs.yale.edu>
3942
3943 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
3944 specially, so that they can't hide an implicit switch-frame event.
3945 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
3946 (head_table): Use switch-frame as event_kind for select-window.
3947 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
3948
3949 * editfns.c (Fformat): Lisp_Object/int mixup.
3950 (format2): Remove unused var numargs.
3951
e301806f 39522003-04-11 Kenichi Handa <handa@m17n.org>
aa95b710 3953
6901b111 3954 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
aa95b710
KH
3955 (Qafter_insert_file_set_coding): New variable.
3956 (syms_of_fileio): Initialize and staticpro it. Delete declaration
3957 for after-insert-file-adjust-coding-function.
3958 (Finsert_file_contents): Call Qafter_insert_file_set_coding
3959 instead of Vafter_insert_file_adjust_coding_function.
3960
38914424
KH
39612003-04-11 Kenichi Handa <handa@m17n.org>
3962
3963 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
3964
3965 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
3966 string. Callers changed.
3967
39682003-04-10 Kenichi Handa <handa@m17n.org>
a288d979 3969
6901b111 3970 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
a288d979 3971 (syms_of_fileio): Declare it as a lisp variable.
6901b111
SM
3972 (Finsert_file_contents):
3973 Call Vafter_insert_file_adjust_coding_function before calling
a288d979
KH
3974 decode-format.
3975
f979dc05
JD
39762003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3977
3978 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
3979 get GtkAdjustment as widget now is a GtkRange.
3980
3981 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
3982 GtkRange to avoid memory leak.
3983
f8c6b4c2 39842003-04-09 Kenichi Handa <handa@m17n.org>
cb98871c 3985
50ebc53d
KH
3986 * xfaces.c (Vface_font_rescale_alist): New variable.
3987 (struct font_name): New member rescale_ratio.
3988 (font_rescale_ratio): New function.
6901b111 3989 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
50ebc53d
KH
3990 (better_font_p): On comparing point sized, pay attention to
3991 recale_ratio member of fonts.
3992 (build_scalable_font_name): Reflect font->rescale_ratio in the
3993 font name.
6901b111 3994 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
50ebc53d 3995
cb98871c
KH
3996 * lread.c (read1): Before calling index, check if the 2nd
3997 arguemnt is in ASCII range.
3998
4773b8ca
RS
39992003-04-08 Richard M. Stallman <rms@gnu.org>
4000
b0ada147
RS
4001 * fileio.c (Ffile_symlink_p): Doc fix.
4002
4003 * editfns.c (Fformat): Translate positions of text properties
4004 in the format string to apply them to the result.
4005
4773b8ca
RS
4006 * fileio.c (Finsert_file_contents): Doc fix.
4007 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
4008
40092003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6901b111 4010
4773b8ca
RS
4011 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
4012
e8f25745 40132003-04-08 Steven Tamm <steventamm@mac.com>
b0ada147 4014
e8f25745
ST
4015 * mac.c (init_mac_osx_environment): Switch libexec and bin so
4016 that self-contained application finds libexec files.
4017
f8c6b4c2 40182003-04-08 Kenichi Handa <handa@m17n.org>
2310d84c 4019
6901b111
SM
4020 * coding.c (code_convert_region_unwind):
4021 Set Vlast_coding_system_used to the argument.
2310d84c
KH
4022 (code_convert_region): If post-read-conversion function changed
4023 the value of last-coding-sytem, keep the new value in
4024 coding->symbol so that it won't be overridden.
4025 (run_pre_post_conversion_on_str): Likewise.
7c086845
KH
4026 (coding_system_accept_latin_extra_p): New function.
4027 (find_safe_codings): Pay attention to characters registered in
4028 latin-extra-code-table.
2310d84c 4029
39c9a034
TTN
40302003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
4031
4032 * Makefile.in (md5.o): Add missing dependency info.
4033
eb67c5d6
RS
40342003-04-06 Richard M. Stallman <rms@gnu.org>
4035
4036 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
4037
4038 * marker.c (verify_bytepos): New function.
4039
4040 * intervals.c (set_intervals_multibyte_1): When becoming
4041 multibyte, adjust right and left child sizes to a whole set of
4042 characters. If an interval gets zero total-length, delete it.
4043 If an interval consists of just its children, delete one of them.
4044
4045 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
4046 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
39c9a034 4047
eb67c5d6
RS
4048 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
4049 All calls deleted.
4050 (lisp_malloc): Do the work here directly.
4051
b1f81fc5
JB
40522003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
4053
4054 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
4055 char tables.
4056
40572003-04-04 Kenichi Handa <handa@m17n.org>
aa8b70ae
KH
4058
4059 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
4060 destructively change "%S" to "%s".
4061
774666fb
MB
40622003-04-03 Miles Bader <miles@gnu.org>
4063
4064 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
4065 always set.
4066
19c37f01
DL
40672003-04-01 Dave Love <fx@gnu.org>
4068
4069 * xfns.c (xpm_lookup_color): Grok "opaque".
4070
2f4b24c3
AC
40712003-03-31 Andrew Choi <akochoi@shaw.ca>
4072
4073 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
4074 parent window ID.
4075
4076 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
4077
4078 * macterm.h (struct mac_output): Define x_pixels_diff and
4079 y_pixels_diff.
b1f81fc5 4080
9443fcf6
JB
40812003-03-31 Juanma Barranquero <lektu@terra.es>
4082
4083 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
4084 blockinput.h and files included from it.
4085
e072891b
KS
40862003-03-31 Kim F. Storm <storm@cua.dk>
4087
4088 The following changes consolidates the common code related to
4089 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
4090 files into frame.c.
9443fcf6 4091
e072891b
KS
4092 * frame.c: Include blockinput.h.
4093 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
4094 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
4095 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
4096 related vars here.
4097 (struct frame_parm_table, frame_parms): New table for describing
4098 frame parameters and their associated Q-variable.
4099 The order of the parameters corresponds to the sequence of the
4100 frame_parm_handlers table in redisplay_interface.
4101 (x_fullscreen_move, x_set_frame_parameters)
4102 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
4103 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
4104 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
4105 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
4106 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
4107 Generic functions for processing of frame parameters.
4108 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
4109 (display_x_get_resource, x_get_resource_string): Functions for
4110 generic access to X resources.
4111 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
4112 (x_default_parameter, Fx_parse_geometry): Functions for generic
4113 access to frame parameters.
6901b111
SM
4114 (x_figure_window_size): Generic calculation of frame size.
4115 Fixed to add space needed for tool bar. Also setup size_hint_flags.
e072891b
KS
4116 (syms_of_frame): Intern and staticpro frame parameter variables.
4117 Defvar_lisp Vx_resource_class and Vx_resource_name here.
4118 Defsubr Sx_get_resource and Sx_parse_geometry.
9443fcf6 4119
e072891b
KS
4120 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
4121 parameter related vars defined in frame.c.
4122 (EMACS_CLASS): Define here.
4123 (enum FULLSCREEN_*): Define here.
4124 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
4125 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
4126 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
4127 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
4128 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
4129 (x_set_visibility, x_set_autoraise, x_set_autolower)
4130 (x_set_unsplittable, x_set_vertical_scroll_bars)
4131 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
4132 (x_figure_window_size): Add prototypes.
4133
4134 * dispextern.h (frame_parm_handler): New typedef.
4135 (struct redisplay_interface): New member frame_parm_handlers.
4136 (enum resource_types): Move declaration here.
4137 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
4138 (x_default_parameter): Add prototypes.
4139
4140 * window.c: Remove extern decl for frame parameter vars.
4141 (change_window_heights): New generic function;
4142 replaces x_change_window_heights. All users changed.
4143
4144 * window.h (change_window_heights): Add prototype.
4145
4146 * xfaces.c: Remove extern decl for frame parameter vars.
4147
4148 * xterm.h (EMACS_CLASS): Remove. Use generic define.
4149 (struct w32_display_info): Fix type of xrdb member.
4150 (enum FULLSCREEN_*): Remove.
4151 Remove prototypes for generic functions (in frame.h).
4152
4153 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
4154 parameters now defined in frame.h and frame.c.
4155 (Vx_resource_name): Remove. Use generic var.
4156 (enum x_frame_parms): Remove (bogus, unused enum).
4157 (check_x_display_info): Make non-static (for frame.c).
4158 (struct x_frame_parm_table, x_frame_parms): Remove.
4159 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
4160 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
4161 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
4162 (x_change_window_heights, x_set_autoraise, x_set_autolower)
4163 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
4164 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
4165 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
4166 Remove. Use generic functions instead.
4167 (enum resource_types): Remove.
4168 (x_set_scroll_bar_default_width): New global function (for frame.c).
4169 (Fx_create_frame): Depend on x_figure_window_size to add space for
4170 toolbar and setup size_hint_flags.
4171 (x_frame_parm_handlers): New table for redisplay_interface.
4172 (syms_of_xfns): Don't intern/staticpro removed vars.
9443fcf6 4173
e072891b
KS
4174 * xterm.c: Remove unnecessary extern declarations.
4175 (x_fullscreen_adjust): Remove. Use generic instead.
4176 (x_redisplay_interface): Add x_frame_parm_handlers member.
4177
4178 * w32gui.h (XrmDatabase): New (dummy) typedef.
4179
4180 * w32term.h (EMACS_CLASS): Remove. Use generic define.
4181 (struct w32_display_info): Fix type of xrdb member.
4182 (enum FULLSCREEN_*): Remove.
4183 (x_fullscreen_adjust): Remove prototype.
4184
4185 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
4186 parameters now defined in frame.h and frame.c.
4187 (Vx_resource_name): Remove. Use generic var.
4188 (enum x_frame_parms): Remove (bogus, unused enum).
4189 (check_x_display_info): Make non-static (for frame.c).
4190 (struct x_frame_parm_table, x_frame_parms): Remove.
4191 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
4192 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
4193 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
4194 (x_change_window_heights, x_set_autoraise, x_set_autolower)
4195 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
4196 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
4197 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
4198 Remove. Use generic functions instead.
4199 (enum resource_types): Remove.
4200 (x_set_scroll_bar_default_width): New global function (for frame.c).
4201 (Fx_create_frame): Depend on x_figure_window_size to add space for
4202 toolbar and setup size_hint_flags.
4203 (w32_frame_parm_handlers): New table for redisplay_interface.
4204 (syms_of_w32fns): Don't intern/staticpro removed vars.
9443fcf6 4205
e072891b
KS
4206 * w32term.c: Remove unnecessary extern declarations.
4207 (x_fullscreen_adjust): Remove. Use generic instead.
4208 (x_redisplay_interface): Add w32_frame_parm_handlers member.
4209
4210 * w32reg.c (x_get_string_resource): Use XrmDatabase.
4211
4212 * macgui.h (XrmDatabase): New (dummy) typedef.
4213
4214 * macterm.h (EMACS_CLASS): Remove.
4215 (struct mac_display_info): Add xrdb member.
4216 (struct mac_output): Add want_fullscreen member.
4217
4218 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
4219 parameters now defined in frame.h and frame.c.
4220 (Vx_resource_name): Remove. Use generic var.
4221 (check_x_display_info): Make non-static (for frame.c).
4222 (struct x_frame_parm_table, x_frame_parms): Remove.
4223 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
4224 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
4225 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
4226 (x_change_window_heights, x_set_autoraise, x_set_autolower)
4227 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
4228 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
4229 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
4230 Remove. Use generic functions instead.
4231 (enum resource_types): Remove.
4232 (x_set_scroll_bar_default_width): New global function (for frame.c).
4233 (mac_frame_parm_handlers): New table for redisplay_interface.
4234 (syms_of_macfns): Don't intern/staticpro removed vars.
9443fcf6 4235
e072891b
KS
4236 * macterm.c: Remove unnecessary extern declarations.
4237 (x_redisplay_interface): Add mac_frame_parm_handlers member.
4238
3e6a560b
KS
4239 * Makefile.in (frame.o): Add dependency on blockinput.h and files
4240 included from it (atimer.h and systime.h).
4241
7b7b454e
AS
42422003-03-30 Andreas Schwab <schwab@suse.de>
4243
4244 * xdisp.c (x_insert_glyphs): Fix swapped width and height
4245 parameters for shift_glyphs_for_insert.
4246
4247 * macterm.c (x_redisplay_interface): Add missing entry for
4248 draw_vertical_window_border.
4249
beb402de
KG
42502003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
4251
4252 * fileio.c (Fexpand_file_name): In the no-handler case, after
4253 expanding, look again for a handler and invoke it. This is needed
4254 for filenames like "/foo/../user@host:/bar/../baz" -- the first
4255 expansion produces "/user@host:/bar/../baz" which needs to be
4256 expanded again for the finame result "/user@host:/baz".
4257
b676f356
JD
42582003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4259
4260 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
4261 of area to be redrawn for better performance.
4262
3c671a56
SM
42632003-03-28 Stefan Monnier <monnier@cs.yale.edu>
4264
4265 * xterm.c (take_vertical_position_into_account): Remove.
4266 (xt_action_hook): Call set_vertical_scroll_bar if needed.
4267 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
4268 (xm_scroll_callback, x_create_toolkit_scroll_bar)
4269 (x_set_toolkit_scroll_bar_thumb): Simplify.
4270 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
4271 (XTread_socket): Remove unused var.
4272 (x_make_frame_invisible): Replace goto with else.
4273
4274 * xdisp.c (set_vertical_scroll_bar): New fun.
4275 (redisplay_window): Use it.
4276
84f2e615
RS
42772003-03-26 Richard M. Stallman <rms@gnu.org>
4278
4279 * xdisp.c (update_tool_bar): Recompute tool bar if
4280 update_mode_lines is set. Set w->update_mode_line
4281 only if the tool bar contents actually change.
4282 (update_menu_bar): Undo previous change.
4283
70b6104c
JD
42842003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4285
5fd6f727
JD
4286 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
4287 (xg_frame_set_char_size): Calculate scroll bar width before frame
4288 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
4289 (xg_separator_p): Check for all documented separator types.
4290 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
4291 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
4292
70b6104c
JD
4293 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
4294 so tool bar gets updated.
4295
d9b36d19
SM
42962003-03-26 Stefan Monnier <monnier@cs.yale.edu>
4297
4298 * data.c (store_symval_forwarding): Re-instate part of the code
4299 that was deleted with too much enthusiasm.
4300
43012003-03-25 Stefan Monnier <monnier@cs.yale.edu>
4302
4303 * data.c (store_symval_forwarding): Delete special read-only
4304 hack for type == -1, since we now use ->constant instead.
4305 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
4306
4307 * buffer.c (overlays_in): Declare static.
4308 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
4309 `constant' field rather than the variable's `type' field.
4310
365fa1b3
AC
43112003-03-24 Andrew Choi <akochoi@shaw.ca>
4312
4313 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
4314
4315 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
4316
4317 * fns.c [MAC_OSX]: Do not redefine vector.
4318
4319 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
4320
4321 * macgui.h: Remove definition of No_Cursor.
4322
d9b36d19 4323 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
365fa1b3
AC
4324
4325 * xdisp.c: Define No_Cursor.
4326 (x_write_glyphs, notice_overwritten_cursor)
4327 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
4328 (note_mouse_highlight): Remove Mac-specific code.
4329 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
d9b36d19 4330
c0bcce6f
JPW
43312003-03-24 John Paul Wallington <jpw@gnu.org>
4332
4333 * xdisp.c (redisplay_window): If mini window's buffer is not
4334 empty, then redisplay it like other windows.
4335
a526b96c
KS
43362003-03-23 Kim F. Storm <storm@cua.dk>
4337
4338 * w32term.c (w32_draw_window_cursor): Fix last change.
4339
37ab321e
KH
43402003-03-23 Kenichi Handa <handa@m17n.org>
4341
a526b96c
KS
4342 * alloc.c (make_string_from_bytes, make_specified_string):
4343 Add `const' for the arg CONTENTS.
37ab321e
KH
4344
4345 * lisp.h (make_string_from_bytes, make_specified_string):
4346 Prototypes adjusted.
4347
7863d625
JD
43482003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4349
a526b96c 4350 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
fd4c9408 4351
7863d625
JD
4352 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
4353 (XG_SB_RANGE): New define.
4354
4355 * gtkutil.c (xg_fixed_handle_expose): New function.
4356 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
4357 expose events.
4358 (xg_update_scrollbar_pos): Take two more arguments, left and width
4359 of scroll bar including borders.
4360 Clear left and right part outside scroll bar separately as some
4361 themes have bars that are not an even number of pixels.
d9b36d19 4362 Don't set reallocate_redraws, don't call
7863d625
JD
4363 gdk_window_process_all_updates.
4364 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
4365 so no need to change it. Calculate size and value with XG_SB_RANGE.
4366
d9b36d19
SM
4367 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
4368 Pass left and width of scroll bar including borders to
7863d625
JD
4369 xg_update_scrollbar_pos.
4370
af0ad939
TTN
43712003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
4372
4373 * Makefile.in: Make sure space precedes end-of-line backslashes.
4374
b22139fd
KS
43752003-03-22 Kim F. Storm <storm@cua.dk>
4376
4377 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
4378 Add generic versions here. Remove system specific versions
4379 defined elsewhere.
4380
4381 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
4382 Add prototypes.
4383
6e6410cf
KS
4384 * xterm.h (STORE_NATIVE_RECT): New macro.
4385
5c9cc435
KS
43862003-03-21 Kim F. Storm <storm@cua.dk>
4387
00c64fab
SM
4388 * xdisp.c (get_glyph_string_clip_rect):
4389 Use FRAME_INTERNAL_BORDER_WIDTH.
5c9cc435
KS
4390
4391 * dispextern.h (struct redisplay_interface): Add active_p
4392 argument to draw_window_cursor member. All uses changed.
4393
acd37560
KS
43942003-03-21 Kim F. Storm <storm@cua.dk>
4395
4396 The following changes consolidate code related to writing and
4397 inserting glyphs, exposing frame, the tool bar, the mouse face,
4398 the output cursor, and help echo from xterm.c, w32term.c and
4399 macterm.c into xdisp.c. It also generalizes the use of the
4400 window_part enum instead of using numeric values throughout.
af0ad939 4401
acd37560
KS
4402 * xdisp.c: Consolidate gui-independent code here.
4403 Include keymap.h.
4404 (Qhelp_echo): Import.
4405 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
4406 (help_echo_string, help_echo_window, help_echo_object)
4407 (previous_help_echo_string, help_echo_pos): Declare here.
4408 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
4409 (estimate_mode_line_height): Define here. Handle windowing
4410 systems directly (without using estimate_mode_line_height_hook).
4411 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
4412 (update_window_cursor, update_cursor_in_window_tree)
4413 (fast_find_position, fast_find_string_pos)
4414 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
4415 (expose_area, expose_line, expose_overlaps, expose_window)
4416 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
4417 declared static as they are only used locally in xdisp.c.
4418 (draw_glyphs): Rename from x_draw_glyphs and make static.
4419 (tool_bar_item_info, notice_overwritten_cursor): Make static.
4420 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
4421 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
af0ad939 4422 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
acd37560
KS
4423 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
4424 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
4425 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
4426 (note_mouse_highlight, x_clear_window_mouse_face)
4427 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
4428 (x_intersect_rectangles): New generic functions for use by xdisp.c
4429 and GUI front-ends.
4430 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
4431 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
4432
4433 * dispextern.h (Display_Info): Generic typedef for *_display_info.
4434 (NativeRectangle): Generic typedef for rectangle type.
4435 (enum window_part): Move here from window.c.
4436 (struct redisplay_interface): New members flush_display_optional,
4437 define_frame_cursor, clear_frame_area, draw_window_cursor,
4438 draw_vertical_window_border, shift_glyphs_for_insert.
4439 Rename member clear_mouse_face to clear_window_mouse_face.
4440 (estimate_mode_line_height_hook): Remove hook.
4441 (auto_raise_tool_bar_buttons_p): Don't declare extern.
4442 (tool_bar_item_info): Remove prototype.
4443 (help_echo_string, help_echo_window, help_echo_object)
4444 (previous_help_echo_string, help_echo_pos)
4445 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
4446 (x_stretch_cursor_p, output_cursor): Declare extern.
4447 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
4448 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
4449 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
4450 (display_and_set_cursor, set_output_cursor, x_cursor_to)
4451 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
4452 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
4453 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
4454 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
4455 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
4456 Add prototypes.
4457 (mode_line_string, marginal_area_string): Fix prototypes.
4458
4459 * window.c (enum window_part): Move to dispextern.h.
4460 (coordinates_in_window): Use enum window_part member names
4461 instead of numbers to describe return value.
4462 (struct check_window_data): Change part member to window_part.
4463 (check_window_containing): Return window_part unaltered.
4464 (window_from_coordinates): Change part arg from int to enum
4465 window_part. Allow part arg to be null. All users changed.
4466
4467 * window.h (window_from_coordinates): Fix prototype.
4468
4469 * term.c (estimate_mode_line_height): Move to xdisp.c.
4470
4471 * keyboard.c (make_lispy_event): Use enum window_part.
4472
4473 * dispnew.c (mode_line_string, marginal_area_string): Use enum
4474 window_part instead of int in arg list. Users changed.
4475
4476 * xterm.h (No_Cursor): Declare as None for X.
4477 (struct mac_output): Replace member cross_cursor by hand_cursor.
af0ad939 4478
acd37560
KS
4479 * xterm.c: Remove consolidated defines and code.
4480 (BETWEEN): Remove unused macro.
4481 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
4482 (x_define_frame_cursor, x_clear_frame_area)
4483 (x_draw_window_cursor): New X-specific functions for RIF.
4484 (x_redisplay_interface): Add new members.
4485
4486 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
4487
4488 * w32term.h (struct w32_output): Remove cross_cursor member.
4489
4490 * w32term.c: Remove consolidated defines and code.
4491 (BETWEEN): Remove unused macro.
4492 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
4493 (w32_define_frame_cursor, w32_clear_frame_area)
4494 (w32_draw_window_cursor): New W32-specific functions for RIF.
4495 (w32_redisplay_interface): Add new members.
4496
a64387ee 4497 * w32gui.h (No_Cursor): Define as 0 for W32.
acd37560
KS
4498 (XRectangle): Add X compatible rectangle type.
4499 (NativeRectangle): Declare as RECT for W32.
4500 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
4501
4502 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
4503
4504 * w32console.c: Remove consolidated defines and code.
af0ad939 4505
acd37560
KS
4506 * msdos.h (Display_Info): Add generic typedef.
4507
4508 * msdos.c: Remove consolidated defines and code.
4509 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
4510
4511 * macterm.h (struct mac_output): Replace member cross_cursor by
4512 hand_cursor.
4513 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
4514
4515 * macterm.c: Remove consolidated defines and code.
4516 (BETWEEN): Remove unused macro.
4517 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
4518 (mac_define_frame_cursor, mac_clear_frame_area)
4519 (mac_draw_window_cursor): New Mac-specific functions for RIF.
4520 (x_redisplay_interface): Add new members.
4521
4522 * macgui.h (No_Cursor): Define as 0 for Mac.
4523 (XRectangle): Add X compatible rectangle type.
4524 (NativeRectangle): Declare as Rect for Mac.
4525 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
4526
204ccab1
KS
4527 * macfns.c (x_set_mouse_color): Setup hand_cursor.
4528 (x_set_cursor_color): Use x_display_and_set_cursor.
acd37560 4529
9443fcf6 4530 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
acd37560
KS
4531 included from it. Add dependency on keymap.h.
4532
4533 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
4534
8ba01a70 45352003-03-21 Kenichi Handa <handa@m17n.org>
3f817c73
KH
4536
4537 * fileio.c (Fexpand_file_name): Fix previous change.
4538
8ba01a70 45392003-03-19 Kenichi Handa <handa@m17n.org>
4f497b0a
KH
4540
4541 * fileio.c (Ffile_name_directory): Reconstruct file name by
4542 make_specified_string.
4543 (Ffile_name_nondirectory, Ffile_name_as_directory)
4544 (Fdirectory_file_name, Fexpand_file_name)
4545 (Fsubstitute_in_file_name): Likewise.
4546 (Fread_file_name): Compare decoded homedir with DIR and
4547 DEFAULT_FILENAME.
4548
4549 * alloc.c (make_specified_string): If NCHARS is negative, count
4550 the number of characters.
4551
19536747
JD
45522003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4553
de38ae5a
JD
4554 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
4555 all widgets.
4556
19536747
JD
4557 * gtkutil.h: Removed xg_ignore_next_thumb.
4558
37ab321e 45592003-03-18 Kenichi Handa <handa@m17n.org>
cb0d4562
KH
4560
4561 * coding.c (Vchar_coding_system_table): Remove this variable.
4562 (Vcoding_system_safe_chars): New variable.
4563 (intersection): Remove this function.
4564 (find_safe_codings): Don't use Vchar_coding_system_table, but try
4565 all codings in SAFE_CODINGS.
00c64fab 4566 (Ffind_coding_systems_region_internal): Adjust for the change of
cb0d4562
KH
4567 find_safe_codings. Get generic coding systems from
4568 Vcoding_system_safe_chars.
4569 (Fdefine_coding_system_internal): New function.
4570 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
4571 Initialize and staticpro Vcoding_system_safe_chars.
4572
17097258
JD
45732003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4574
2a2071c3
JD
4575 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
4576 equal old values before updating.
4577
17097258
JD
4578 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
4579
4580 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
4581
45822003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4583
4584 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
4585 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
4586 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
4587 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
4588 (xg_create_scroll_bar): Pass bar to button event callback.
4589 (xg_find_top_left_in_fixed): New function.
4590 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
4591 whole scroll bar area. Get old position with
4592 xg_find_top_left_in_fixed, calculate and only clear needed areas.
4593 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
4594 dragging is in progress. Calculate whole as for Motif.
4595 Remove code that saved last values. Call gtk_range functions to
4596 set scroll bar sizes.
4597
4598 * gtkutil.h: Removed xg_ignore_next_thumb.
4599
8cb9dfbf
JB
46002003-03-17 Juanma Barranquero <lektu@terra.es>
4601
4602 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
4603 and files included from it.
4604
00c64fab
SM
46052003-03-18 Stefan Monnier <monnier@cs.yale.edu>
4606
4607 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
4608 multiple occurrences of the same keymap under different prefixes.
4609 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
4610
c45bb3b2
JR
46112003-03-16 Jason Rumney <jasonr@gnu.org>
4612
4613 * w32gui.h: Use HDC for Display.
4614
4615 * w32term.c (w32_encode_char): Prevent double-byte chars from
4616 crashing Emacs.
4617
4618 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
4619 as binary.
4620
2a6d0874
JB
46212003-03-16 Juanma Barranquero <lektu@terra.es>
4622
4623 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
4624
03eb5fab
KS
46252003-03-16 Kim F. Storm <storm@cua.dk>
4626
4627 The following changes consolidate some of the gui-independent
4628 parts of the processing and drawing of "glyph strings" from
4629 xterm.c, w32term.c, and macterm.c into xdisp.c.
2a6d0874 4630
03eb5fab
KS
4631 * dispextern.h (struct glyph): Reduce face_id member from 22 to
4632 21 bits (this reduces number of faces from 4M to 2M).
4633 Replace W32 specific w32_font_type member (2 bits) by generic
4634 font_type member (3 bits) for portability.
4635 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
4636 (enum draw_glyphs_face): Define here.
4637 (struct glyph_string): Define here. Merge W32 and X versions.
4638 (struct redisplay_interface): New members per_char_metric,
4639 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
4640 (VCENTER_BASELINE_OFFSET): Define here.
4641 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
4642 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
4643
4644 * xdisp.c: Consolidate gui-independent "glyph string" code here.
4645 (dump_glyph_string): Moved here.
4646 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
4647 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
4648 (fill_composite_glyph_string, fill_glyph_string)
4649 (fill_image_glyph_string, fill_stretch_glyph_string)
4650 (left_overwritten, left_overwriting, right_overwritten)
4651 (right_overwriting, get_char_face_and_encoding)
4652 (set_glyph_string_background_width, compute_overhangs_and_x)
4653 (append_glyph, append_composite_glyph, produce_image_glyph)
4654 (take_vertical_position_into_account, append_stretch_glyph)
4655 (produce_stretch_glyph): New generic functions (based on X version).
4656 Call platform specific functions through rif.
4657 (INIT_GLYPH_STRING): New macro, hides W32 details.
4658 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
4659 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
4660 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
4661 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
4662 (notice_overwritten_cursor):
4663 Generic functions exported to platform modules. Users changed.
4664
4665 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
4666 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
4667 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
fad49844 4668 New macros for consolidated code.
2a6d0874 4669
03eb5fab
KS
4670 * xterm.c: Remove consolidated defines and code.
4671 (x_per_char_metric, x_encode_char)
4672 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
4673 (x_redisplay_interface): Add new members.
4674
4675 * w32gui.h (Display): Add dummy typedef for consolidation.
4676 (XChar2b): Define alias for wchar_t for consolidation.
4677 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
4678
4679 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
2a6d0874 4680 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
03eb5fab
KS
4681 New macros for consolidation.
4682
fad49844 4683 * w32term.c: Remove consolidated defines and code.
03eb5fab
KS
4684 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
4685 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
4686 (w32_per_char_metric): Change font_type arg to int for RIF.
4687 (w32_encode_char): Return int according to RIF requirements.
4688 (w32_compute_glyph_string_overhangs): Adapt to RIF.
4689 (w32_get_glyph_overhangs): New function for RIF. Uses generic
4690 x_get_glyph_overhangs.
4691 (w32_redisplay_interface): Add new members.
4692
4693 * macgui.h (XChar2b): Move typedef here for consolidation.
4694 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
4695
4696 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
4697 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
4698 consolidation.
4699
4700 * macterm.c: Remove consolidated defines and code.
4701 (mac_per_char_metric): New function for RIF.
00c64fab 4702 (mac_encode_char): Adapt to new RIF requirements.
03eb5fab
KS
4703 (mac_compute_glyph_string_overhangs): Adapt for RIF.
4704 (x_redisplay_interface): Add new members.
4705
00c64fab
SM
47062003-03-15 Stefan Monnier <monnier@cs.yale.edu>
4707
4708 * keymap.c (Vmenu_events): New var.
4709 (syms_of_keymap): Initialize it.
4710 (where_is_internal): Check more carefully what is a menu event.
4711
225c7a07
RS
47122003-03-14 Richard M. Stallman <rms@gnu.org>
4713
4714 * lread.c (read1): After #!, exit loop on eof.
4715
cea9be54
JD
47162003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4717
9ea0e54d
JD
4718 * gtkutil.h: Add declaration for xg_frame_cleared.
4719
0cb35f4e
JD
4720 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
4721
cea9be54
JD
4722 * gtkutil.c (struct xg_last_sb_pos): New structure.
4723 (handle_fixed_child): New function.
4724 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
4725 and force a redraw on them.
4726 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
4727 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
4728 so we can avoid unneeded redraws.
4729 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
4730 and force a redraw on the scroll bar.
4731 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
4732 if xg_last_sb_pos shows the positions are up to date.
0cb35f4e 4733 (xg_frame_cleared): New function.
cea9be54 4734
20b853f3
KH
47352003-03-13 Kenichi Handa <handa@m17n.org>
4736
4737 * coding.c (Fdetect_coding_region): Fix docstring.
4738 (Fdetect_coding_string): Fix docstring.
4739
7a555aff
AS
47402003-03-13 Andreas Schwab <schwab@suse.de>
4741
25cc0080
AS
4742 * gtkutil.c: Add prototype for create_menus.
4743
30225431
AS
4744 * data.c (long_to_cons): Fix type of top.
4745
4746 * xselect.c (selection_data_to_lisp_data): Use int instead of
4747 long for an integer of size 4.
4748
7a555aff 4749 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
30225431 4750 (xg_tool_bar_help_callback): Likewise.
7a555aff 4751
a3e4741f
AS
47522003-03-12 Andreas Schwab <schwab@suse.de>
4753
4754 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
4755
9668be7c
KS
47562003-03-12 Kim F. Storm <storm@cua.dk>
4757
03eb5fab 4758 The following changes consolidate the fringe handling from
9668be7c 4759 xterm.c, w32term.c, and macterm.c into xdisp.c.
00a88f32 4760
9668be7c
KS
4761 * xdisp.c: Consolidate fringe handling code here.
4762 (left_bits, right_bits, continued_bits, continuation_bits)
4763 (ov_bits, zv_bits): Define fringe bitmaps.
4764 (fringe_bitmaps): New array holding fringe bitmaps.
4765 (draw_fringe_bitmap): Draw a specific bitmap; call display
4766 specific drawing routine via rif->draw_fringe_bitmap.
4767 (draw_row_fringe_bitmaps): Generic replacement for
4768 x_draw_row_fringe_bitmaps; all callers changed.
4769 (compute_fringe_widths): Generic replacement for
4770 x_compute_fringe_widths; all callers changed.
4771
4772 * dispextern.h (enum fringe_bitmap_type): Define here.
4773 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
4774 (fringe_bitmaps): Declare extern.
4775 (struct redisplay_interface): New member draw_fringe_bitmap.
4776 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
4777
4778 * xterm.c: Remove generic fringe code.
4779 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
4780 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
4781
4782 * w32term.c: Remove generic fringe code.
4783 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
4784 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
00a88f32 4785
9668be7c
KS
4786 * macterm.c: Remove generic fringe code.
4787 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
4788 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
4789
00a88f32
SM
47902003-03-11 Stefan Monnier <monnier@cs.yale.edu>
4791
4792 * print.c (Fprin1_to_string): Return unibyte string if possible.
4793
1d1de695
DK
47942003-03-09 David Kastrup <dak@gnu.org>
4795
4796 * process.c (read_process_output): We have allocated enough space
4797 for readmax and carryover, so actually use the alloted space.
4798
257f40f2
JD
47992003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4800
4801 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
4802 toolkit scrollbar click.
4803
4804 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
4805 for USE_GTK.
4806 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
4807 also.
4808 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
4809 scrollbar and control is pressed, call x_scroll_bar_handle_click.
00a88f32 4810
257f40f2
JD
4811 * gtkutil.h: Declare xg_get_scroll_id_for_window.
4812
4813 * gtkutil.c (xg_get_scroll_id_for_window): New function.
4814 (xg_tool_bar_item_expose_callback): New function.
4815 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
4816 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
4817 on the tool bar widget.
4818 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
4819 to expose on the tool bar item widgets.
4820
15213141
JD
48212003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4822
26b74a0b 4823 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
00a88f32 4824 struct image* when deciding to update (struct image* may have been
26b74a0b
JD
4825 deleted from the image cache).
4826
15213141
JD
4827 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
4828 the event isn't for a frame (i.e. for dialogs).
4829
20b853f3 48302003-03-07 Kenichi Handa <handa@m17n.org>
cb681b34
KH
4831
4832 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
4833 composition components reaches the limit, terminate composing.
4834 (COMPOSITION_OK): New macro.
00a88f32 4835 (detect_coding_iso2022): Use it if an escape sequence for
cb681b34
KH
4836 composition is found.
4837 (coding_restore_composition): Adjust the number of composition
4838 components if it is not sane.
4839
c9029fe5
JB
48402003-03-06 Juanma Barranquero <lektu@terra.es>
4841
4842 * w32term.h (struct w32_display_info): Add xrdb member to support
4843 passing resources via -xrm on Windows.
4844
4845 * w32term.c (w32_make_rdb): New function.
4846 (w32_term_init): Use it to initialize xrdb member of w32_display_info
4847 struct. Delete leftover code.
4848
4849 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
4850 for resources passed on the command line.
4851
4852 * w32reg.c (w32_get_rdb_resource): New function.
4853 (x_get_string_resource): Use it, so resources passed with -xrm
4854 supercede the ones in the registry.
4855
9d00001f
JD
48562003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4857
4858 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
4859 instead of x_top_window_to_frame.
4860
ca2417b9
JD
48612003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4862
4863 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
4864 when restarting Emacs.
4865
5b20caf0
RS
48662003-03-03 Richard M. Stallman <rms@gnu.org>
4867
4868 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
4869 to run kill-buffer-query-functions.
4870 (Qkill_buffer_query_functions): New var.
4871 (syms_of_buffer): Init and staticpro it.
4872
58e91b77
JD
48732003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4874
4875 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
4876
932357b4
KS
48772003-02-25 Kim F. Storm <storm@cua.dk>
4878
4879 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
4880 If centering point failed to make whole line visible and vscroll
4881 is non-zero, disable vscroll and try centering point again.
4882
4883 * lread.c (read1): Accept `single space' syntax like (? x).
4884
bb8db7e1
JD
48852003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4886
4887 * keyboard.c (cancel_hourglass_unwind): Surround with
4888 #ifdef HAVE_X_WINDOWS
4889
47d77aab
KH
48902003-02-25 Kenichi Handa <handa@m17n.org>
4891
4892 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
4893 process only when "subprocesses" is defined.
4894
6a097c0c
SM
48952003-02-24 Stefan Monnier <monnier@cs.yale.edu>
4896
4897 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
4898
0b063c27
JB
48992003-02-24 Juanma Barranquero <lektu@terra.es>
4900
d1135afc
JB
4901 * callint.c (fix_command): Declare as static void and move before
4902 Fcall_interactively.
4903
0b063c27
JB
4904 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
4905 (syms_of_xdisp): Don't initialize Qwhen.
4906
0af912f0
JD
49072003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4908
4909 * keyboard.c (cancel_hourglass_unwind): New function.
4910 (command_loop_1): Cancel hourglass with unwind-protect.
4911
120d0a23
RS
49122003-02-23 Richard M. Stallman <rms@gnu.org>
4913
4914 * callint.c (fix_command): New subroutine, from Fcall_interactively.
4915 Detect (when ... (region-beginning)) etc.
4916 (Fcall_interactively): Call fix_command.
4917 (Qif, Qwhen): New variables.
4918 (syms_of_callint): Init and staticpro them.
0b063c27 4919
120d0a23
RS
4920 * regex.c (print_partial_compiled_pattern): Output to stderr.
4921
4ece81a6
KG
49222003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
4923
4924 * dired.c (directory_files_internal): Don't expand directory.
4925 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
4926 instead. From Lars Hansen <larsh@math.ku.dk>.
4927
e52bd6b7
SM
49282003-02-22 Stefan Monnier <monnier@cs.yale.edu>
4929
4930 * fns.c (string_to_multibyte): Remove unused var i.
4931 (Flanginfo): Fix int/Lisp_Object mixup.
4932 (void_call2): New fun.
4933 (Fmap_char_table): Use it in place of call2.
4934
4935 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
4936
4937 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
4938
4939 * keymap.c (copy_keymap_1): Make it static.
4940
4941 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
4942
c33ef7c4
JB
49432003-02-22 David Ponce <david@dponce.com>
4944
4945 * lread.c (Fload): Don't check STRING_MULTIBYTE.
4946
16782258
JD
49472003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4948
4949 * process.h: Removed subtty field from struct Lisp_Process.
4950
4951 * process.c (create_process): Remove setting of subtty.
4952 (emacs_get_tty_pgrp): New function.
e52bd6b7
SM
4953 (Fprocess_running_child_p, process_send_signal):
4954 Call emacs_get_tty_pgrp instead of ioctl.
16782258
JD
4955 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
4956
3abeca61
KG
49572003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
4958
4959 * keymap.c (Fdefine_key): Doc fix.
4960
92a8ce63
JB
49612003-02-21 Juanma Barranquero <lektu@terra.es>
4962
4963 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
4964
4965 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
4966 POLLING_PROBLEM_IN_SELECT.
4967
4968 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
4969 Delete #undef of POLLING_PROBLEM_IN_SELECT.
4970
4971 * s/hpux10-20.h: New file.
4972
e52bd6b7
SM
4973 * process.c (wait_reading_process_input):
4974 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
92a8ce63 4975
20f1ef2e
KH
49762003-02-20 Kenichi Handa <handa@m17n.org>
4977
32d0a9dc
KH
4978 * fontset.c (check_fontset_name): If NAME is nil, return the
4979 default fontset.
4980 (override_font_info): New function.
e52bd6b7 4981 (Fset_fontset_font): Document that NAME nil means the default fontset.
32d0a9dc
KH
4982 (Ffontset_info): If FONTSET is not the default fontset, merge
4983 FONTSET onto the copy of the default fontset, and work on that
4984 copy. Document that NAME nil means the default fontset.
4985 (Ffontset_font): Document that NAME nil means the default fontset.
4986
20f1ef2e
KH
4987 * process.c (setup_process_coding_systems): If the process's
4988 in/out descriptor is -1, do nothing.
4989
77d1daf2
AS
49902003-02-19 Andreas Schwab <schwab@suse.de>
4991
e52bd6b7
SM
4992 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
4993 Add prototypes.
77d1daf2 4994
f9a45bb3
KH
49952003-02-19 Kenichi Handa <handa@m17n.org>
4996
4997 * xfaces.c (try_alternative_families): Try all scalable fonts if
4998 Vscalable_fonts_allowed is not Qt.
4999
72ecb43c
JD
50002003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5001
5002 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
5003
ee5be7c3
JD
50042003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5005
5006 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
5007 names.
5008
5009 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
e52bd6b7 5010 (sorted_font_list): Move allocation of struct font_name to
ee5be7c3
JD
5011 x_face_list_fonts.
5012 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
5013 (Fx_list_fonts): Set maxnames to -1 to get all font names.
5014
4cd519a7
KS
50152003-02-18 Kim F. Storm <storm@cua.dk>
5016
068f9882
KS
5017 * lread.c (read1): Fix last change.
5018 "`" is not always special. Allow "?" after a character constant.
4cd519a7 5019
7290a344
AC
50202003-02-18 Andrew Choi <akochoi@shaw.ca>
5021
5022 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
5023
1f7fa69b
AS
50242003-02-18 Andreas Schwab <schwab@suse.de>
5025
5026 * window.c (window_scroll_pixel_based): Move outside a
5027 multi-glyph character before setting new window start.
5028
5029 * xdisp.c (in_display_vector_p): New function.
5030 * dispextern.h (in_display_vector_p): Declare.
5031
23e21195
KS
50322003-02-18 Kim F. Storm <storm@cua.dk>
5033
5034 * lread.c (read1): Fix and relax read syntax.
5035 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
5036 Only recognize "," after dotted-pair dot if inside backquote.
5037 Never include "`" or "," (inside backquote) in a symbol.
5038 Allow dotted-pair dot after a character constant.
5039 Allow "`" and "," (inside backquote) after a character constant.
92a8ce63 5040
f098b121
JD
50412003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5042
5043 * gtkutil.c (xg_tool_bar_expose_callback): New function.
5044 (xg_create_tool_bar): Force style of tool bar to be horizontal with
5045 icons. Set name of tool bar to emacs-toolbar.
5046 (update_frame_tool_bar): Connect expose event to
5047 xg_tool_bar_expose_callback.
5048
63020c46
RS
50492003-02-17 Richard M. Stallman <rms@gnu.org>
5050
5051 * keyboard.c (this_command_key_count_reset): New variable.
5052 Initiatize to 0 where this_command_key_count is set.
5053 (read_char): Save and restore this_command_key_count_reset
5054 around input method code.
5055 (read_char): If this_command_key_count_reset, echo reread commands.
5056 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
5057
fb4452cc
KH
50582003-02-17 Kenichi Handa <handa@m17n.org>
5059
5060 * fns.c (string_to_multibyte): Always return a multibyte string.
5061
bd11cc09
JR
50622003-02-16 Jason Rumney <jasonr@gnu.org>
5063
e52bd6b7
SM
5064 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
5065 Negative max_fonts parameter means list all.
bd11cc09 5066
4cdf4bde
DL
50672003-02-14 Dave Love <fx@gnu.org>
5068
5069 * fns.c (Flanginfo): Doc fix.
5070
023b93f6
KS
50712003-02-13 Kim F. Storm <storm@cua.dk>
5072
37cd4238
KS
5073 * lread.c (read_escape): Interpret \s as a SPACE character, except
5074 for \s-X in a character constant which still is the super modifier.
5075 (read1): Signal an `invalid read syntax' error if a character
5076 constant is immediately followed by a digit or symbol character.
5077
140a6b7e
KS
5078 * search.c (Fmatch_data): Doc fix. Explicitly state that
5079 match-data is undefined if last search failed.
5080
023b93f6
KS
5081 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
5082 All uses changed.
5083
7d5c86e5
JB
50842003-02-12 Juanma Barranquero <lektu@terra.es>
5085
5086 * eval.c (Fdefmacro): Fix typo.
5087
295fff2c
KS
50882003-02-12 Kim F. Storm <storm@cua.dk>
5089
5090 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
5091 macro is a string, convert meta modifiers in string when copying
5092 the string into a vector.
5093
60f3202d
KS
50942003-02-11 Kim F. Storm <storm@cua.dk>
5095
5096 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
5097
61cb0b53
KH
50982003-02-11 Kenichi Handa <handa@m17n.org>
5099
5100 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
5101
7392e23c
KS
51022003-02-10 Kim F. Storm <storm@cua.dk>
5103
5104 * process.c: Doc fixes.
5105 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
5106
ce4254bd
KH
51072003-02-10 Kenichi Handa <handa@m17n.org>
5108
9c7a329a
KH
5109 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
5110
ce4254bd
KH
5111 * process.c (QCfilter_multibyte): New variable.
5112 (setup_process_coding_systems): New function.
e52bd6b7
SM
5113 (Fset_process_buffer, Fset_process_filter):
5114 Call setup_process_coding_systems.
ce4254bd
KH
5115 (Fstart_process): Initialize the member `filter_multibyte' of
5116 struct Lisp_Process.
5117 (create_process): Call setup_process_coding_systems.
5118 (Fmake_network_process): New keyward `:filter-multibyte'.
5119 Initialize the member `filter_multibyte' of struct Lisp_Process.
5120 Call setup_process_coding_systems.
5121 (server_accept_connection): Call setup_process_coding_systems.
5122 (read_process_output): If the process has a filter, decide the
5123 multibyteness of a string to given to the filter by
5124 `filter_multibyte' member of the process. If the process doesn't
5125 have a filter and the result of conversion is unibyte, use
5126 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
5127 multibyte form.
5128 (Fset_process_coding_system): Call setup_process_coding_systems.
5129 (Fset_process_filter_multibyte): New function.
5130 (Fprocess_filter_multibyte_p): New function.
5131 (syms_of_process): Intern and staticpro QCfilter_multibyte.
5132 Defsubr Sset_process_filter_multibyte and
5133 Sprocess_filter_multibyte_p.
5134
5135 * process.h (struct Lisp_Process): New member filter_multibyte.
5136
5137 * lisp.h (setup_process_coding_systems): Add prototype.
5138
5139 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
5140 process, update coding systems for the process.
5141
b08d5f59
KH
51422003-02-09 Kenichi Handa <handa@m17n.org>
5143
5144 * fns.c (string_to_multibyte): New function.
5145 (Fstring_to_multibyte): New function.
5146 (syms_of_fns): Defsubr it.
5147
0dfd93c0
AS
51482003-02-08 Andreas Schwab <schwab@suse.de>
5149
5150 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
5151 instead of the substitution.
5152
7b76ca1c
JD
51532003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5154
5155 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
5156
5157 * xmenu.c (menu_position_func): Adjust menu popup position so that
5158 the menu is fully visible.
7b76ca1c 5159
2436a4e4
JD
51602003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5161
5162 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
e52bd6b7
SM
5163 (x_make_frame_invisible, x_wm_set_icon_position):
5164 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
2436a4e4
JD
5165
5166 * xfns.c (x_set_name, x_set_title): Ditto.
5167
37d1e680
RS
51682003-02-04 Richard M. Stallman <rms@gnu.org>
5169
5170 * keyboard.c (echo_now): Update before_command_echo_length.
5171 (Freset_this_command_lengths): Reset this_command_key_count etc.
5172 immediately rather than arranging to do it later.
5173 (before_command_key_count_1, before_command_echo_length_1)
5174 (before_command_restore_flag): Vars deleted.
5175 (add_command_key): Don't handle before_command_restore_flag.
5176 (read_char, record_menu_key): Don't update before_command_key_count or
5177 before_command_echo_length.
5178 (read_char): Don't handle before_command_restore_flag.
5179
5180 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
5181 in direct-output clauses if it wouldn't be called in the ordinary case.
5182
578846a3
KS
51832003-02-04 Kim F. Storm <storm@cua.dk>
5184
5185 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
5186
49853a4d
JD
51872003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5188
5189 * gtkutil.c (remove_from_container): Copying list is not needed.
5190 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
5191 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
5192 on list returned from gtk_container_get_children to avoid memory leak.
5193
8b53dc06
JR
51942003-02-01 Jason Rumney <jasonr@gnu.org>
5195
5d54d177
JR
5196 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
5197 local malloc.
5198 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
5199 definitions in xpm.h.
5200 (init_xpm_functions): New function.
5201 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
5202 (init_external_image_libraries): Try to load libXpm.dll.
5203
8b53dc06
JR
5204 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
5205 timestamp.
5206
b222e415
DL
52072003-01-31 Dave Love <fx@gnu.org>
5208
5209 * syntax.c (Fskip_chars_forward)
5210 (open-paren-in-column-0-is-defun-start): Doc fix.
5211
c60ee5e7
JB
52122003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
5213
5214 * fileio.c: Support // at start of name for Cygwin (just added proper
5215 preprocessor tests).
5216
5217 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
5218
5219 * Makefile.in: Use @EXEEXT@ for Cygwin.
5220
5221 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
5222
5223 * s/cygwin.h: Added for Cygwin port.
5224
53b37591
JB
52252003-01-31 Juanma Barranquero <lektu@terra.es>
5226
5227 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
5228 when including gif_lib.h.
fe929957
JB
5229 (init_gif_functions, init_tiff_functions): New functions.
5230 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
5231 Windows. Disable color table lookups. Call library functions
53b37591 5232 through pointers determined at runtime.
fe929957
JB
5233 (init_external_image_libraries): Try to load libungif.dll and
5234 libtiff.dll.
53b37591 5235
45415a8f
KH
52362003-01-31 Kenichi Handa <handa@m17n.org>
5237
5238 * xdisp.c (SKIP_GLYPHS): New macro.
e52bd6b7 5239 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
45415a8f 5240
a97e4138
JD
52412003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5242
e52bd6b7 5243 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
a97e4138 5244
6eed9bed
DL
52452003-01-30 Dave Love <fx@gnu.org>
5246
5247 * alloc.c (Vgc_elapsed, gcs_done): New variables.
5248 (Fgarbage_collect): Use them.
5249 (init_alloc, syms_of_alloc): Set them up.
5250
100dcd40
JB
52512003-01-30 Juanma Barranquero <lektu@terra.es>
5252
5253 * w32fns.c (init_external_image_libraries): Add missing operator.
5254
fbd852af
JR
52552003-01-29 Jason Rumney <jasonr@gnu.org>
5256
5257 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
5258 an alternative name for jpeg.dll.
5259
8a2d8020
KH
52602003-01-29 Kenichi Handa <handa@m17n.org>
5261
5262 * xdisp.c (set_cursor_from_row): Pay attention to string display
5263 properties.
5264
058c18c7
AC
52652003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
5266
5267 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
5268 <escape>.
5269 (keycode_to_xkeysym_table): Reformat and add more comments.
5270 (XTread_socket): Drop special case for backspace.
5271
385f11cf
AC
52722003-01-28 Andrew Choi <akochoi@shaw.ca>
5273
5274 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
5275 values in old-style RGB specs.
5276
c922a224
JB
52772003-01-27 Juanma Barranquero <lektu@terra.es>
5278
5279 * w32fns.c (init_external_image_libraries): Try alternate names for the
5280 jpeg dll.
5281
0a1d6de0
JD
52822003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5283
5284 * gtkutil.c (create_dialog, xg_separator_p)
5285 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
5286 before calling strcmp or strlen.
5287
a97e4138 52882003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1d1885fc
JD
5289
5290 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
5291 and handle image load failure.
5292
28908312
JR
52932003-01-26 Jason Rumney <jasonr@gnu.org>
5294
5295 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
5296 New functions.
5297 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
5298 Disable color table lookups. Call jpeg library functions
5299 through pointers determined at runtime.
5300 (init_external_image_libraries): Try to load jpeg.dll.
5301
84e47416
RS
53022003-01-25 Richard M. Stallman <rms@gnu.org>
5303
5304 * lisp.h: Declare format2 instead of format1.
5305
5306 * fileio.c (barf_or_query_if_file_exists):
5307 Call format2 instead of format1.
5308
5309 * editfns.c (format2): New function, replaces format1
5310 but takes exactly two Lisp Objects as format args.
5311
5312 * buffer.c (Fkill_buffer): Call format2 instead of format1.
5313
a97e4138 53142003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1fcfb866
JD
5315
5316 * xterm.h: Change to return value of x_dispatch_event to int.
5317
5318 * xterm.c (x_filter_event): New function.
5319 (event_handler_gdk, XTread_socket): Call x_filter_event.
5320 (x_dispatch_event): Change to return value of finish.
5321 (event_handler_gdk): Use return value from x_dispatch_event.
5322
5323 * xfns.c (x_window): Call create_frame_xic for GTK version to
5324 initialize input methods.
5325
5326 * gtkutil.h: Add (void) prototypes.
5327
5328 * gtkutil.c (create_menus): Remove code that puts the help menu to
5329 the right.
5330
54eefef1
JR
53312003-01-25 Jason Rumney <jasonr@gnu.org>
5332
5333 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
5334 [HAVE_PNG]: Sync with xfns.c version.
5335 (png_load): Adjust colors for Windows. Use Windows
5336 bitmaps. Disable color table lookups.
c262430d
JR
5337 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
5338 (init_png_functions): New function.
5339 (png_read_from_memory, png_load): Call png library functions
5340 through pointers determined at runtime.
5341 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
5342 (init_external_image_libraries): New function.
5343 (init_xfns): Call it.
54eefef1 5344
1a9e275b
AS
53452003-01-24 Andreas Schwab <schwab@suse.de>
5346
5347 * minibuf.c (Fminibuffer_message): Verify type of parameter.
5348
a97e4138 53492003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
81e302ef
JD
5350
5351 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
5352 of static initializer.
5353
422eec7e
DL
53542003-01-24 Dave Love <fx@gnu.org>
5355
5356 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
5357 architectures.
5358
5359 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
5360 Use __alignof__.
5361
2a026b04
KH
53622003-01-24 Kenichi Handa <handa@m17n.org>
5363
5364 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
e52bd6b7 5365 It it is nonzero, don't pretend that an invisible area doesn't exist.
2a026b04
KH
5366 (command_loop_1): Call adjust_point_for_property with proper
5367 second arg.
5368
a18bb28d
JR
53692003-01-22 Jason Rumney <jasonr@gnu.org>
5370
5371 Sync changes with xterm.c and xfns.c.
5372
5373 * w32term.c (x_draw_glyph_string_foreground)
5374 (x_draw_composite_glyph_string_foreground): Implement overstriking.
5375
5376 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
5377 phys_cursor's hpos is overwritten. This is still not completely
5378 correct, as it doesn't really make sense to use hpos at all to
5379 get the cursor glyph (as that is relative to the width of the
5380 characters on the line, which may have changed during the update).
5381
5382 * w32term.c (notice_overwritten_cursor): Handle the special case
5383 of the cursor being in the first blank non-text line at the
5384 end of a window.
5385
5386 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
5387 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
5388 Compute from the x position returned by x_draw_glyphs.
5389
5390 (x_display_and_set_cursor): Don't set phys_cursor_width here,
5391 except for NO_CURSOR and system caret, to make phys_cursor_width
5392 contain what its name suggests.
5393 (notice_overwritten_cursor): Consider the cursor image erased if
5394 the output area intersects the cursor image in y-direction.
5395
6a097c0c
SM
5396 * w32term.c (note_mode_line_or_margin_highlight): Rename from
5397 note_mode_line_highlight and extend.
a18bb28d
JR
5398
5399 * w32term.c (last_window): New variable.
5400 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
5401 (note_mouse_movement): Remove reimplemented code in #if 0.
5402
5403 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
5404 not update_mode_lines, and always set it to 1.
5405
ac6e47ef
JR
54062003-01-21 Jason Rumney <jasonr@gnu.org>
5407
5408 * w32fns.c (IDC_HAND): Define it if system headers don't.
5409
54102003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
5411
5412 * w32term.h (struct w32_output): New member hand_cursor.
5413 (WM_EMACS_SETCURSOR): New message definition.
5414
5415 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
5416 function w32_define_cursor.
5417 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
5418 position, change member name output_data.x to output_data.w32 and
5419 add function w32_define_cursor.
5420 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
5421 and change member name output_data.x to output_data.w32.
e52bd6b7
SM
5422 (w32_initialize_display_info):
5423 Setup dpyinfo->vertical_scroll_bar_cursor.
ac6e47ef
JR
5424
5425 * w32fns.c (Vx_hand_shape): New variable.
5426 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
5427 WM_EMACS_SETCURSOR.
5428 (x-create-frame): Setup Cursor types.
5429
ceb39a17
JB
54302003-01-21 David Ponce <david@dponce.com>
5431
ac6e47ef
JR
5432 * w32term.c (w32_encode_char): For DIM=1 charset, set
5433 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
5434 x_encode_char change by Kenichi Handa <handa@m17n.org> on
ceb39a17 5435 2002-09-30.)
ac6e47ef
JR
5436 (w32_draw_relief_rect): Declare all args.
5437 (w32_define_cursor): New.
5438
5439 * w32fns.c (w32_load_cursor): New function.
5440 (w32_init_class): Use it.
5441 (x_put_x_image): Declare all args.
5442
46cf0bed
JB
54432003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
5444
5445 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
5446
a97e4138 54472003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e8794476
JD
5448
5449 * gtkutil.c: Must include stdio.h before termhooks.h
5450
83fc9c63
DL
54512003-01-21 Dave Love <fx@gnu.org>
5452
5453 * alloc.c (Fgc_status): Print zombie list.
5454 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
5455 Fix assignment of zombies.
5456 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
5457 Don't take car of non-cons.
5458
5459 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
5460
5461 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
5462
fe04b8c8
JR
54632003-01-20 David Ponce <david@dponce.com>
5464
5465 * w32menu.c (digest_single_submenu): Declare all args.
5466
5467 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
5468 changes in xmenu.c:
5469
5470 (parse_single_submenu): Use individual keymap's prompt
5471 string as pane name, if there is one.
5472 (set_frame_menubar): Save menu_items_n_panes from each call to
5473 parse_single_submenu and use it when calling digest_single_submenu.
5474
539e69a9
ST
54752003-01-20 Steven Tamm <steventamm@mac.com>
5476
5477 * macterm.c (XTread_socket): Checks for valid, visible window
5478 before sending a scroll-wheel event.
5479
675d000f
RS
54802003-01-20 Richard M. Stallman <rms@gnu.org>
5481
5482 * xdisp.c (redisplay_window): If mini window's buffer is not
5483 a minibuffer, then redisplay it like other windows.
5484
a97e4138 54852003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22174d10
JD
5486
5487 * gtkutil.c (xg_create_frame_widgets): Check if there is an
5488 external tool bar before setting tool bar height.
5489
048addec
JD
54902003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5491
5492 * xterm.c (handle_one_xevent): Surround popup_activated
5493 with #ifdef:s for non-toolkit version.
5494
5495 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
5496 (gtkutil.o): New file.
5497 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
5498 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
5499
5500 * gtkutil.c: New file for GTK version.
5501
5502 * gtkutil.h: New file for GTK version.
5503
5504 * xterm.h: Add xt_or_gtk_widget.
5505 Include gtk files for USE_GTK.
5506 (struct x_output): Add toolbar_height.
5507 (struct x_output): Add GTK widgets and Gdk size_hints.
5508 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
5509 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
5510 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
5511
5512 * xterm.c: Include gtkutil.h for USE_GTK.
5513 Declare extern void free_frame_menubar for USE_GTK.
5514 (note_mouse_highlight): Check popup_activated for USE_GTK.
5515 (xt_action_hook): Don't compile if USE_GTK.
5516 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
5517 (xg_scroll_callback): New function.
5518 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
5519 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
5520 for USE_GTK.
5521 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
5522 xg_show_scroll_bar for USE_GTK.
5523 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
5524 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
5525 (event_handler_gdk): New function for USE_GTK.
5526 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
5527 (handle_one_xevent): Make sure widget is mapped before
5528 calling x_real_positions for USE_GTK.
5529 (XTread_socket): Add GTK event loop for USE_GTK.
5530 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
5531 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
5532 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
5533 (x_iconify_frame): Add code for USE_GTK.
5534 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
5535 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
5536 is in gtkutil.c.
5537 (x_term_init): Add initialization for GTK.
5538 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
5539
5540 * xmenu.c: Include gtkutil.h for USE_GTK.
5541 (Fx_popup_menu): Use current position if x and y is NIL.
6bdb309a
SM
5542 (single_menu_item, single_menu_item, Fx_popup_dialog):
5543 Check for USE_GTK.
048addec
JD
5544 (popup_widget_loop): New function for USE_GTK.
5545 (x_activate_menubar): Add code for USE_GTK.
5546 (popup_activate_callback, popup_deactivate_callback)
6bdb309a
SM
5547 (menu_highlight_callback, menubar_selection_callback):
5548 Add USE_GTK versions.
048addec
JD
5549 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
5550 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
5551 (free_frame_menubar): Only compile if not USE_GTK. GTK version
5552 is in gtkutil.c.
5553 (popup_selection_callback): New version for USE_GTK.
5554 (create_and_show_popup_menu): New fuction, one USE_GTK version and
6bdb309a 5555 one USE_X_TOOLKIT version.
048addec
JD
5556 (xmenu_show): Call create_and_show_popup_menu.
5557 (dialog_selection_callback): New version for USE_GTK.
5558 (create_and_show_dialog): New fuction, one USE_GTK version and
6bdb309a 5559 one USE_X_TOOLKIT version.
048addec
JD
5560 (xdialog_show): Call create_and_show_dialog.
5561
5562 * xfns.c: Include gtkutil for USE_GTK.
5563 (x_window_to_frame, x_any_window_to_frame)
5564 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
5565 (x_top_window_to_frame): Add code for USE_GTK.
5566 (x_set_background_color): Call xg_set_background_color for GTK.
5567 (x_set_menu_bar_lines): Check for USE_GTK.
5568 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
5569 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
5570 (x_window): Call xg_create_frame_widgets for USE_GTK.
5571 (Fx_create_frame): Check for USE_GTK
5572 (Fx_file_dialog): New implementation for USE_GTK.
5573
5574 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
5575 (update_menu_bar): Add check for USE_GTK.
5576 (update_tool_bar): Add check for USE_GTK and external tool bar.
5577 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
5578 (redisplay_internal): Add check for USE_GTK and popup_activated.
5579 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
5580 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
5581 (display_menu_bar): Add check for USE_GTK
5582
5583 * lisp.h: Declare Vx_resource_name extern.
5584
a64387ee 5585 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
048addec
JD
5586 for USE_GTK.
5587 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
5588
5589 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
5590 (FRAME_EXTERNAL_TOOL_BAR): New macro.
5591 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
5592
5593 * fileio.c (Fread_file_name): Add check for USE_GTK.
5594
6bdb309a
SM
5595 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
5596 Add check for USE_GTK.
048addec
JD
5597
5598 * config.in: Added HAVE_GTK
5599
5600 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
5601
56022003-01-18 Stefan Monnier <monnier@cs.yale.edu>
5603
5604 * charset.h (Funibyte_char_to_multibyte): Export.
5605
56062003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5607
5608 * xmenu.c (mouse_position_for_popup): New function.
5609 (Fx_popup_menu): Call mouse_position_for_popup for X and
5610 mouse_position_hook for others.
5611
56122003-01-17 Kim F. Storm <storm@cua.dk>
5613
5614 * editfns.c (Finsert): Mention `string-make-multibyte' and
5615 `string-as-multibyte' in doc string.
5616
56172003-01-17 Kenichi Handa <handa@m17n.org>
5618
5619 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
3c02a6f5 5620
048addec
JD
5621 * editfns.c (Fformat): Convert an unibyte char argument that is
5622 formatted by "%c" to multibyte if the total result must be a
5623 multibyte string.
cd7df9c0 5624
048addec 56252003-01-16 Kim F. Storm <storm@cua.dk>
cd7df9c0 5626
048addec
JD
5627 * process.c (set-process-filter): Document unibyte/multibyte-ness
5628 of string argument.
56210ecd 5629
048addec 56302003-01-16 Kenichi Handa <handa@m17n.org>
56210ecd 5631
048addec 5632 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
56210ecd 5633
048addec
JD
5634 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
5635 (re_search_2): Likewise.
6df8b9fe 5636
048addec 56372003-01-15 Kenichi Handa <handa@m17n.org>
6df8b9fe 5638
048addec
JD
5639 * xdisp.c (message_dolog): Fix bug of the case that *Message*
5640 buffer is unibyte.
292ddc31 5641
048addec 56422003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
292ddc31 5643
048addec 5644 * fns.c (Fsubstring): Clarify doc string.
292ddc31 5645
048addec
JD
5646 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
5647 (Fprevious_char_property_change)
5648 (Fnext_single_char_property_change)
5649 (Fprevious_single_char_property_change, Fnext_property_change)
5650 (Fnext_single_property_change, Fprevious_property_change)
5651 (Fprevious_single_property_change, Fadd_text_properties)
5652 (Fput_text_property, Fset_text_properties)
5653 (Fremove_text_properties, Fremove_list_of_text_properties)
5654 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
63e4e4c6 5655
048addec 56562003-01-14 Kim F. Storm <storm@cua.dk>
63e4e4c6 5657
048addec
JD
5658 * process.h (struct Lisp_Process): New member plist replaces old
5659 member private_vars. All uses changed.
63e4e4c6 5660
048addec 5661 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
6bdb309a 5662 (QCplist): Rename from QCvars. Change all uses.
048addec 5663 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
6bdb309a 5664 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
048addec 5665 (syms_of_process): Intern, staticpro, defsubr these.
6bdb309a 5666 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7ed16567 5667
048addec 56682003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7ed16567 5669
6bdb309a 5670 * m/delta.h: Remove (obsolete).
e833850f 5671
048addec 56722003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
e833850f 5673
048addec
JD
5674 * fileio.c (Fdelete_directory, Fdelete_file): Document the
5675 behaviour in front of symlinks.
5676 (Fdelete_file): Raise an error on directories.
817cb127 5677
048addec 56782003-01-13 Dave Love <fx@gnu.org>
817cb127 5679
048addec 5680 * fns.c (Freverse): Use QUIT.
3e8cf2ea 5681
048addec 56822003-01-13 Richard M. Stallman <rms@gnu.org>
3e8cf2ea 5683
048addec
JD
5684 * minibuf.c (minibuffer_completion_contents):
5685 Error if point is inside prompt.
3e8cf2ea 5686
048addec
JD
5687 * keyboard.c (command_loop_1): Don't redisplay directly
5688 if there's a post-command-hook.
3e8cf2ea 5689
048addec
JD
5690 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
5691 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
2c10f029 5692
048addec 56932003-01-12 Kim F. Storm <storm@cua.dk>
94e8ffca 5694
048addec 5695 * process.h (struct Lisp_Process): New member private_vars.
94e8ffca 5696
048addec
JD
5697 * process.c (QCvars): New variable.
5698 (syms_of_process): Intern and staticpro it.
5699 (Fset_process_contact): Removed function.
5700 (Fprocess_variable, Fset_process_variable): New functions.
5701 (syms_of_process): Defsubr them.
5702 (Fstart_process): Initialize private_vars plist to nil.
5703 (Fmake_network_process): New arg :vars to setup the private
5704 variables for new network process.
5705 (server_accept_connection): Copy server's private variables to
5706 client process.
2c10f029 5707
048addec
JD
5708 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
5709 crashes). Code rewritten and simplified. Now directly aligns the
5710 pointer and recalculates pure_bytes_used, rather than aligning the
5711 size and adjusting the pointer.
b8a76c6c 5712
048addec 57132003-01-11 Kim F. Storm <storm@cua.dk>
b8a76c6c 5714
048addec
JD
5715 * process.c (Fset_process_contact): New function.
5716 (syms_of_process): defsubr it.
5717 (make-network-process): Update doc.
3a8d0899 5718
048addec 57192003-01-10 Andreas Schwab <schwab@suse.de>
3a8d0899 5720
048addec
JD
5721 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
5722 Reported by Berthold Gunreben <b.gunreben@web.de>.
4abc7470 5723
048addec 57242003-01-10 Dave Love <fx@gnu.org>
4abc7470 5725
048addec 5726 * composite.c (syms_of_composite): Make composition_hash_table weak.
b809d662 5727
048addec 57282003-01-09 Kim F. Storm <storm@cua.dk>
b809d662 5729
048addec
JD
5730 * process.c (Fmake_network_process): Convert new port number
5731 to host byte order for `:service t' case. From Mario Lang.
bf338245 5732
048addec 57332003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
bf338245 5734
048addec
JD
5735 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
5736 instead of XtAppProcessEvent.
bf338245 5737
048addec
JD
5738 * xterm.c (handle_one_xevent): New function.
5739 (x_dispatch_event): New function.
5740 (XTread_socket): Call handle_one_xevent.
bf338245 5741
048addec 5742 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
e833850f 5743
048addec
JD
5744 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
5745 call XQueryPointer to get coordinates.
5746 (popup_get_selection): Do not set popup_activated_flag to zero,
5747 let popup_deactivate_callback do that. Needed for Motif.
5748 Call x_dispatch_event instead of XtDispatchEvent.
5749 (xmenu_show): Calculate root coordinate from frame top/left position.
c4af2bce 5750
048addec 57512003-01-08 Kim F. Storm <storm@cua.dk>
c4af2bce 5752
6bdb309a 5753 * process.c (server_accept_connection): Fix recording of new
048addec
JD
5754 connection's local address in :local property of contact info.
5755 (Fmake_network_process): Record local network address for new
5756 client processes in :local property of contact info.
6bdb309a 5757 (format-network-address): Add arg OMIT-PORT. Change callers.
00e3ab56 5758
048addec 57592003-01-07 Dave Love <fx@gnu.org>
00e3ab56 5760
048addec 5761 * Makefile.in (fns.o): Depend on coding.h.
f387e1fd 5762
048addec 57632003-01-07 Markus Rost <rost@math.ohio-state.edu>
f387e1fd 5764
048addec 5765 * minibuf.c (Fread_variable): Doc fix.
f387e1fd 5766
048addec
JD
5767 * eval.c (Fuser_variable_p): Doc change. For custom variables,
5768 use the same test as for custom-variable-p.
8c6d74c6 5769
048addec 57702003-01-05 Richard M. Stallman <rms@gnu.org>
e833850f 5771
048addec
JD
5772 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
5773 Count LAST_LINE_MISFIT in scroll margin for end of window.
5774 Move label too_near_end before setting SCROLL_MARGIN_POS.
5775 Set LAST_LINE_MISFIT before jumping there.
8c6d74c6 5776
048addec
JD
5777 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
5778 scroll_conservatively case. If scrolling that much doesn't change
5779 STARTP, move it down one line.
e833850f 5780
048addec
JD
5781 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
5782 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8c6d74c6 5783
048addec
JD
5784 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
5785 selected frame.
8c6d74c6 5786
048addec
JD
5787 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
5788 (syms_of_keymap): staticpro them.
5789 (Fapropos_internal): Initialize them and clear them out.
5790 Don't GCPRO them.
8c6d74c6 5791
048addec
JD
5792 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
5793 Doc fixes.
8c6d74c6 5794
048addec
JD
5795 * lisp.h: New misc type Lisp_Save_Value.
5796 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
5797 (XSAVE_VALUE): New macro.
5798 (struct Lisp_Save_Value): New data type.
5799 (union Lisp_Misc): Add u_save_value alternative.
5800 (make_save_value): Declared.
8c6d74c6 5801
048addec 5802 * alloc.c (make_save_value): New function.
8c6d74c6 5803
048addec
JD
5804 * xterm.c (x_catch_errors): Save dpy using make_save_value.
5805 (x_catch_errors_unwind): Call XSync.
8c6d74c6 5806
048addec 58072003-01-01 Richard M. Stallman <rms@gnu.org>
8c6d74c6 5808
048addec 5809 * window.c (window_scroll_pixel_based): Partially undo last change.
8c6d74c6 5810
048addec
JD
5811 * keyboard.c (command_loop_1): Call adjust_point_for_property
5812 in direct action cases for Qforward_char and Qbackward_char.
5813 Set already_adjusted so it won't be done twice.
8c6d74c6 5814
048addec 58152002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
8c6d74c6 5816
048addec
JD
5817 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
5818 type definition of size_t.
8c609cff 5819
048addec 58202003-01-02 Steven Tamm <steventamm@mac.com>
8c609cff 5821
048addec
JD
5822 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
5823 distinguish Carbon GUI builds from X11 builds on darwin.
b37113a1 5824
048addec 58252002-12-30 Steven Tamm <steventamm@mac.com>
b37113a1 5826
048addec
JD
5827 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
5828 to default to t.
fa634a5e 5829
048addec 58302002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
fa634a5e 5831
048addec 5832 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
ce0669d4 5833
048addec 58342002-12-28 Steven Tamm <steventamm@mac.com>
ce0669d4 5835
048addec
JD
5836 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
5837 allow building in a different directory than source. Uses some
5838 GNU Make extensions, but there is no other make on Mac OS X.
2308af15 5839
048addec 58402002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
2308af15 5841
048addec
JD
5842 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
5843 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
5844 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
5845 (Fstring_to_number): Mention the returned value in the doc strings.
2155ecf3 5846
048addec 58472002-12-23 Richard M. Stallman <rms@gnu.org>
2155ecf3 5848
048addec
JD
5849 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
5850 <scroll-down-aggressively>: Doc fix.
2155ecf3 5851
048addec
JD
5852 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
5853 string as pane name, if there is one.
5854 (set_frame_menubar): Save menu_items_n_panes from each call to
5855 parse_single_submenu and use it when calling digest_single_submenu.
2155ecf3 5856
048addec
JD
5857 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
5858 Don't try to make last line fully visible if it is past end of window.
61f1d295 5859
048addec 58602002-12-22 Steven Tamm <steventamm@mac.com>
61f1d295 5861
048addec
JD
5862 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
5863 (mac_menu_show): Add support for hierarchical popup menus.
5864 (add_menu_item): Remove indentation support.
5865 (fill_submenu, fill_menu): Create hierarchical menus
5866 instead of using indentation.
0b17a217 5867
048addec 58682002-12-22 Richard M. Stallman <rms@gnu.org>
0b17a217 5869
048addec
JD
5870 * xdisp.c (try_cursor_movement): Don't call try_window here.
5871 (redisplay_window): Never redisplay minibuffer when inactive.
0b17a217 5872
048addec 5873 * window.c (select_window_1): Undo 9/21 change.
402e4f8b 5874
048addec 58752002-12-22 Steven Tamm <steventamm@mac.com>
402e4f8b 5876
048addec
JD
5877 * macterm.c (XTread_socket): Call KeyTranslate for control and
5878 meta to deal correctly shifted non-alpha characters, like C-S-5
5879 being treated like C-%. Does not look for shift key to deal
5880 with masking off control-key with mac-reverse-ctrl-meta.
f02cac82 5881
048addec 58822002-12-21 Richard M. Stallman <rms@gnu.org>
f02cac82 5883
048addec
JD
5884 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
5885 If it is non-nil, run timers. Use an unwind-protect to requeue
5886 the events that were read ahead.
5887 (popup_get_selection_unwind): New subroutine.
5888 (popup_get_selection_queue): File-scope variable now holds that queue.
5889 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
5890 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
5891 Use an unwind-protect to pop down the dialog box.
5892 (xdialog_show_unwind): New subroutine implements that.
f02cac82 5893
048addec
JD
5894 * xdisp.c (row_containing_pos): Change exit test using last_y.
5895 (try_window_id): Abort if row_containing_pos returns null.
f02cac82 5896
048addec
JD
5897 * lread.c (load_error_handler): New function.
5898 (Fload): Handle errors in Fsubstitute_in_file_name.
5899 Don't expect Fsignal to return.
f02cac82 5900
048addec
JD
5901 * eval.c: Errors and throws work right with interrupt blocking.
5902 (struct catchtag): New elt interrupt_input_blocked.
5903 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
5904 (internal_catch, Fcondition_case, internal_condition_case)
5905 (internal_condition_case_1, internal_condition_case_2): Save it.
5906 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
f02cac82 5907
048addec 5908 * editfns.c (Fformat): Add parens.
f02cac82 5909
048addec
JD
5910 * dired.c (file_name_completion): Fix that change.
5911 Delete special quit-handling code; just use QUIT.
f02cac82 5912
048addec 59132002-12-21 Tak Ota <Takaaki.Ota@am.sony.com> (tiny change)
f02cac82 5914
048addec
JD
5915 * dired.c (file_name_completion): Close directory on error
5916 just as in directory_files_internal.
1a590729 5917
048addec 59182002-12-19 David Kastrup <David.Kastrup@t-online.de>
1a590729 5919
048addec
JD
5920 * window.c (Fset_window_configuration): Set old_point to correct
5921 value when new_current_buffer == current_buffer.
f02cac82 5922
048addec 59232002-12-17 Ben Key <bkey1@tampabay.rr.com>
2308af15 5924
048addec
JD
5925 Revisited my earlier fix for the following entry in etc/PROBLEMS:
5926 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
5927 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9785d95b 5928
048addec
JD
5929 These changes were in part based upon suggestions made by Peter
5930 'Luna' Runestig [peter@runestig.com].
9785d95b 5931
048addec
JD
5932 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
5933 g_b_init_get_token_information, g_b_init_lookup_account_sid,
6bdb309a 5934 g_b_init_get_sid_identifier_authority ): Add several static
048addec 5935 global variables.
9785d95b 5936
048addec
JD
5937 * w32.c (globals_of_w32): New function. Used to initialize those
5938 global variables that must always be initialized on startup even
5939 when the global variable initialized is non zero. Its primary
5940 purpose at this time is to set the global variables
5941 g_b_init_is_windows_9x, g_b_init_open_process_token,
5942 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
5943 g_b_init_get_sid_identifier_authority to 0 on startup.
5944 Called from main.
9785d95b 5945
048addec
JD
5946 * w32.c (is_windows_9x): Perform initialization only if
5947 g_b_init_is_windows_9x is equal to 0. On initialization set
5948 g_b_init_is_windows_9x equal to 1.
2308af15 5949
048addec
JD
5950 * w32.c (open_process_token): Perform initialization only if
5951 g_b_init_open_process_token is equal to 0. On initialization set
5952 g_b_init_open_process_token equal to 1.
2308af15 5953
048addec
JD
5954 * w32.c (get_token_information): Perform initialization only if
5955 g_b_init_get_token_information is equal to 0. On initialization
5956 set g_b_init_get_token_information equal to 1.
9785d95b 5957
048addec
JD
5958 * w32.c (lookup_account_sid): Perform initialization only if
5959 g_b_init_lookup_account_sid is equal to 0. On initialization
5960 set g_b_init_lookup_account_sid equal to 1.
9785d95b 5961
048addec
JD
5962 * w32.c (get_sid_identifier_authority): Perform initialization
5963 only if g_b_init_get_sid_identifier_authority is equal to 0.
5964 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
9785d95b 5965
048addec
JD
5966 * w32fns.c (globals_of_w32fns): New function. Used to initialize
5967 those global variables that must always be initialized on startup
5968 even when the global variable initialized is non zero.
5969 Its primary purpose at this time is to initialize the global variable
5970 track_mouse_event_fn.
9785d95b 5971
a64387ee 5972 * w32fns.c (w32_wnd_proc): Remove initialization of
048addec 5973 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
9785d95b 5974
048addec 5975 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
9785d95b 5976
a64387ee 5977 * w32menu.c (globals_of_w32menu): New function. Used to
048addec
JD
5978 initialize those global variables that must always be initialized
5979 on startup even when the global variable initialized is non zero.
5980 Its primary purpose at this time is to initialize the global
5981 variables get_menu_item_info and set_menu_item_info.
9785d95b 5982
048addec
JD
5983 * w32menu.c (initialize_frame_menubar): Remove initialization of
5984 get_menu_item_info and set_menu_item_info.
9785d95b 5985
048addec 5986 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
9785d95b 5987
048addec
JD
5988 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
5989 Declare them.
9785d95b 5990
048addec
JD
5991 * emacs.c (main): Call globals_of_w32 prior to calling
5992 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
5993 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
5994 is defined.
9785d95b 5995
048addec
JD
5996 * w32term.c (x_update_window_begin): Fix Windows API error
5997 detected by BoundsChecker. Test to determine if
5998 w32_system_caret_hwnd is NULL prior to attempting to use
5999 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
2308af15 6000
048addec
JD
6001 * w32term.c (x_update_window_end): Fix Windows API error
6002 detected by BoundsChecker. Test to determine if
6003 w32_system_caret_hwnd is NULL prior to attempting to use
6004 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
b6da19ef 6005
048addec 60062002-12-17 Kenichi Handa <handa@m17n.org>
b6da19ef 6007
048addec
JD
6008 * coding.c (coding_system_require_warning): New variable.
6009 (syms_of_coding): DEFVAR it.
b6da19ef 6010
048addec 6011 * coding.h (coding_system_require_warning): Extern it.
b6da19ef 6012
048addec
JD
6013 * fileio.c (choose_write_coding_system): Even if
6014 Vcoding_system_for_write is non-nil, if
6015 coding_system_require_warning is nonzero, call
6016 Vselect_safe_coding_system_function.
bfcf6dbe 6017
048addec 60182002-12-17 Markus Rost <rost@math.ohio-state.edu>
bfcf6dbe 6019
048addec
JD
6020 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
6021 (lisp): Add font-core.
2c568af5 6022
048addec 60232002-12-13 Stefan Monnier <monnier@cs.yale.edu>
2c568af5 6024
048addec
JD
6025 * textprop.c (text_read_only): New arg `propval'.
6026 (get_char_property_and_overlay): Remove unused var `next_overlay'.
6027 (verify_interval_modification): Use text_read_only's new arg.
b8c6225c 6028
048addec 60292002-12-13 Kenichi Handa <handa@m17n.org>
b8c6225c 6030
048addec 6031 * coding.c (Funencodable_char_position): Set pend correctly.
706ddb8f 6032
048addec 60332002-12-12 Jason Rumney <jasonr@gnu.org>
706ddb8f 6034
048addec
JD
6035 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
6036 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
6037 Be more careful about when help_events are generated.
96720f09 6038
048addec 60392002-12-12 Steven Tamm <steventamm@mac.com>
96720f09 6040
048addec
JD
6041 * macterm.c (mac_check_for_quit_char): Correctly set the
6042 modifiers of the event to 0.
6043 * mac.c (sys_select): Duplicate rfds before calling select to
6044 ensure that rfds survive the while loop.
e5ae1c49 6045
048addec 60462002-12-11 Kim F. Storm <storm@cua.dk>
e5ae1c49 6047
048addec
JD
6048 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
6049 row_containing_pos returned NULL.
2eb46b2d 6050
048addec 60512002-12-10 Steven Tamm <steventamm@mac.com>
2eb46b2d 6052
6bdb309a 6053 * mac.c (sys_read): Fix sys_read to not call select if IO is
048addec 6054 non-blocking.
6bdb309a 6055 (sys_select): Fix sys_select to not use a timeout larger than
048addec 6056 the one given.
b11f1d8a 6057
048addec 60582002-12-10 Juanma Barranquero <lektu@terra.es>
b11f1d8a 6059
048addec 6060 * editfns.c (Fformat): Use alloca, not _alloca.
d8528226 6061
048addec 60622002-12-09 Richard M. Stallman <rms@gnu.org>
d8528226 6063
048addec
JD
6064 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
6065 as the last thing.
a4ac5b17 6066
048addec 60672002-12-09 Dave Love <fx@gnu.org>
a4ac5b17 6068
048addec 6069 * s/sol2-8.h: Removed. (Not necessary.)
ac42d7b9 6070
048addec 60712002-12-09 Matthew Swift <swift@alum.mit.edu>
ac42d7b9 6072
048addec
JD
6073 * editfns.c (Fformat): Handle precision in string conversion
6074 specifiers like libc functions do (ie, print at most that many
6075 characters).
85cce843 6076
048addec 60772002-12-08 Richard M. Stallman <rms@gnu.org>
85cce843 6078
048addec
JD
6079 * xdisp.c (row_containing_pos): Check more carefully
6080 whether charpos is really in the row before returning it.
0d4d26a7 6081
048addec 60822002-12-07 Steven Tamm <steventamm@mac.com>
0d4d26a7 6083
048addec 6084 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
b11f1d8a 6085
048addec
JD
6086 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
6087 each stack frame. This may change as it could be time consuming.
0d4d26a7 6088
048addec
JD
6089 * macterm.c (mac_check_for_quit_char, quit_char_comp)
6090 (init_quit_char_handler, mac_determine_quit_char_modifiers)
6bdb309a 6091 (mac_initialize): Add code to check for pressing of quit_char
048addec 6092 in the OS event queue.
b11f1d8a 6093
048addec
JD
6094 * mac.c (sys_select): Call mac_check_for_quit_char every second
6095 while blocking on select.
0d4d26a7 6096
048addec
JD
6097 * mac.c (sys_read): Use sys_select to test for input first
6098 before calling read, to allow C-g to break.
9252f7bc 6099
048addec 61002002-12-07 Richard M. Stallman <rms@gnu.org>
9252f7bc 6101
048addec 6102 * minibuf.c (Fcompleting_read): Doc fix.
9252f7bc 6103
048addec 6104 * lread.c (syms_of_lread) <load-history>: Doc fix.
9252f7bc 6105
048addec 6106 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9252f7bc 6107
048addec
JD
6108 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
6109 autoload.
9252f7bc 6110
048addec 6111 * data.c (Fdefalias): Record in load-history redefining an autoload.
9252f7bc 6112
048addec 6113 * alloca.c: Undo ifdef change accidentally made on 12-04.
bfa261c0 6114
048addec 61152002-12-06 Francesco Potorti` <pot@gnu.org>
bfa261c0 6116
048addec 6117 * xfns.c (png_load): Avoid double gamma correction for PNG images.
c5992177 6118
048addec 61192002-12-04 Richard M. Stallman <rms@gnu.org>
c5992177 6120
048addec 6121 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 6122
048addec 6123 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 6124
048addec 6125 * alloca.c: Don't use #error.
02d588e2 6126
048addec 61272002-12-03 Dave Love <fx@gnu.org>
02d588e2 6128
048addec
JD
6129 * buffer.c (Qucs_set_table_for_input): New.
6130 (Fget_buffer_create): Use it.
6131 (Qset_buffer_major_mode_hook): Deleted.
6132 (Fset_buffer_major_mode): Revert previous change.
6133 (init_buffer_once): Intern ucs-set-table-for-input.
6134 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
6135 Add &Qucs_set_table_for_input.
451e2697 6136
048addec 61372002-12-03 Andreas Schwab <schwab@suse.de>
451e2697 6138
048addec
JD
6139 * callint.c (Fcall_interactively): Use next_event only if less
6140 than key_count.
72742a99 6141
048addec 61422002-12-02 Andrew Choi <akochoi@shaw.ca>
72742a99 6143
048addec
JD
6144 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
6145 names to 255 characters.
72742a99 6146
048addec
JD
6147 * macterm.c (XTread_socket): If all frames have been collapsed,
6148 expand the first one before handling drag-and-drop events.
72742a99 6149
048addec
JD
6150 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
6151 which is detected by autoconf.
40e6ff95 6152
048addec 61532002-12-01 Steven Tamm <steventamm@mac.com>
40e6ff95 6154
048addec
JD
6155 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
6156 offset in two hints table to allow prebinding to be redone and
6157 allow the executable to be stripped.
c02138c6 6158
048addec 61592002-11-29 Dave Love <fx@gnu.org>
c02138c6 6160
048addec
JD
6161 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
6162 already provided.
0e47bbf7 6163
048addec 61642002-11-29 Richard M. Stallman <rms@gnu.org>
0e47bbf7 6165
048addec
JD
6166 * xdisp.c (start_display): Check more intelligently for
6167 whether the line is continued.
6168 (move_it_vertically_backward): Clear it->continuation_lines_width.
44129dcb 6169
048addec 61702002-11-28 Dave Love <fx@gnu.org>
44129dcb 6171
048addec
JD
6172 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
6173 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
f707342d 6174
048addec 61752002-11-27 Steven Tamm <steventamm@mac.com>
f707342d 6176
048addec
JD
6177 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
6178 more descriptive error output from lread.c:Fload upon most require
6179 cycles during boostrapping.
1637fd2c 6180
048addec 61812002-11-27 Jason Rumney <jasonr@gnu.org>
1637fd2c 6182
048addec
JD
6183 * fileio.c (Finsert_file_contents): Give a more appropriate error
6184 for files bigger than 2Gb when off_t is 32 bit.
1637fd2c 6185
048addec
JD
6186 * dired.c (Ffile_attributes): Don't return negative file sizes for
6187 files bigger than 2Gb when off_t is 32 bit.
540c2788 6188
048addec 61892002-11-27 Dave Love <fx@gnu.org>
6b2fd6ea 6190
048addec 6191 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6b2fd6ea 6192
048addec
JD
6193 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
6194 Test GETPGRP_VOID instead.
6195 [BSD_TERMIOS]: Remove definitions (never used).
6b2fd6ea 6196
048addec
JD
6197 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
6198 Don't define.
6199 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
540c2788 6200
048addec 6201 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8cc03716 6202
048addec 62032002-11-25 Jason Rumney <jasonr@gnu.org>
8cc03716 6204
048addec
JD
6205 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
6206 supported.
4042a81a 6207
048addec 62082002-11-25 Dave Love <fx@gnu.org>
4042a81a 6209
048addec 6210 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
4042a81a 6211
048addec 6212 * Makefile.in (TEMACS_LDFLAGS): Update last change.
be4ee72f 6213
048addec 62142002-11-25 Andreas Schwab <schwab@suse.de>
be4ee72f 6215
048addec 6216 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
82122254 6217
048addec 62182002-11-24 Steven Tamm <steventamm@mac.com>
82122254 6219
048addec
JD
6220 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
6221 determine the size of pointers alloced in unexed space instead
6222 of using possibly invalid emacs_zone pointers. This fixes the
6223 binary incompatibility problems caused by updates to libSystem.B.
c1ee53bc 6224
048addec 62252002-11-24 Richard M. Stallman <rms@gnu.org>
c1ee53bc 6226
048addec 6227 * search.c (Fstring_match): Doc fix.
c1ee53bc 6228
048addec
JD
6229 * callint.c (Fcall_interactively): If a command fails because
6230 `*' detects a read-only buffer, but RECORD_FLAG is set,
6231 record it anyway if the args don't actually do tty input.
5598c32e 6232
048addec 62332002-11-22 Dave Love <fx@gnu.org>
5598c32e 6234
048addec 6235 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
5598c32e 6236
048addec
JD
6237 * keyboard.c (interrupt_signal): Provide forward declaration.
6238 (kbd_buffer_store_event): Don't declare interrupt_signal.
5598c32e 6239
048addec 6240 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
97b14e22 6241
048addec 62422002-11-21 Richard M. Stallman <rms@gnu.org>
97b14e22 6243
048addec
JD
6244 * eval.c (interactive_p): Skip any number of bytecode
6245 and special form frames, in any order.
516eea8e 6246
048addec 62472002-11-20 Jason Rumney <jasonr@gnu.org>
516eea8e 6248
048addec
JD
6249 * w32fns.c (convert_mono_to_color_image): New function.
6250 (xbm_load, xbm_load_image): Use it when foreground or background
6251 is explicitly set.
04dbfa08 6252
048addec 62532002-11-19 Dave Love <fx@gnu.org>
04dbfa08 6254
048addec 6255 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
b4aebae3 6256
048addec 62572002-11-18 Jason Rumney <jasonr@gnu.org>
b4aebae3 6258
048addec
JD
6259 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
6260 (XPutPixel): Swap blue and red.
6261 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
6262 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
6263 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
6264 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
1998560a 6265
048addec 62662002-11-18 Dave Love <fx@gnu.org>
d824beee 6267
048addec 6268 * m/orion105.h (HAVE_ALLOCA): Don't define.
d824beee 6269
048addec 6270 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
d824beee 6271
048addec 6272 * m/intel386.h: Don't include alloca.h or define alloca.
d824beee 6273
048addec
JD
6274 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
6275 malloc, realloc, calloc.
d824beee 6276
048addec
JD
6277 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
6278 (bcmp): Don't define.
d824beee 6279
048addec 6280 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
d824beee 6281
048addec 6282 * m/amdahl.h: Don't define LIB_STANDARD.
d824beee 6283
048addec 6284 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
d824beee 6285
048addec 6286 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
d824beee 6287
048addec
JD
6288 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
6289 Don't include alloca.h.
d824beee 6290
048addec 6291 * s/aix3-2.h (HAVE_FSYNC): Don't define.
1998560a 6292
048addec 6293 * regex.c (_GNU_SOURCE): Don't define.
1998560a 6294
048addec 6295 * process.c (_GNU_SOURCE): Don't define.
1998560a 6296
048addec 6297 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8704a6ab 6298
048addec 62992002-11-18 Markus Rost <rost@math.ohio-state.edu>
8704a6ab 6300
048addec 6301 * s/sol2-8.h: Include sol2-6.h.
6ae2cd57 6302
048addec 63032002-11-18 Miles Bader <miles@gnu.org>
6ae2cd57 6304
048addec
JD
6305 * dispextern.h (struct face): Add `overstrike' field.
6306 * xterm.c (x_draw_glyph_string_foreground)
6307 (x_draw_composite_glyph_string_foreground): Implement overstriking.
6308 * xfaces.c (load_face_font): Set `face->overstrike' based on
6309 result from choose_face_font.
6310 (best_matching_font, choose_face_font): Add `needs_overstrike'
6311 argument, and use it to return whether overstriking is desirable
6312 for this face/font combo.
6313 (set_font_frame_param: Pass new argument to choose_face_font.
6ae2cd57 6314
048addec 63152002-11-17 Ben Key <BKey1@tampabay.rr.com>
3582b6a3 6316
048addec
JD
6317 This change is my fix for the following entry in etc/PROBLEMS:
6318 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
6319 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
f60ae425 6320
048addec
JD
6321 * w32.c: Added wrapper functions around the win32 API functions
6322 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
6323 GetSidIdentifierAuthority. These wrapper functions serve two
6324 purposes:
6325 1. They ensure that the wrapped function can never be called
6326 when Emacs is running on an operating system on which they are
6327 not supported (Microsoft Windows 95 / 98 / ME).
6328 2. They call the wrapped functions via function pointers rather
6329 than calling them directly. This avoids taking advantage of the
6330 undocumented fact that although these functions are not supported
6331 in the 9x branch of Microsoft Windows, the functions do exist in
6332 the version of advapi32.dll that is found in the 9x branch of
6333 Microsoft Windows.
f60ae425 6334
6bdb309a 6335 * w32.c (init_user_info): Replace the calls to the win32 API
048addec
JD
6336 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
6337 and GetSidIdentifierAuthority with calls to the newly added
6338 wrapper functions.
f60ae425 6339
048addec
JD
6340 * w32.h: Added extern declarations for the following functions:
6341 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
6342 syms_of_w32menu, and void syms_of_fontset.
f60ae425 6343
6bdb309a 6344 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
048addec
JD
6345 function pointer track_mouse_event_fn in the handler for the
6346 WM_SETFOCUS message.
3582b6a3 6347
6bdb309a 6348 * w32menu.c (initialize_frame_menubar): Add code to
048addec
JD
6349 reinitialize the function pointers set_menu_item_info and
6350 get_menu_item_info.
f60ae425 6351
048addec 63522002-11-17 Ben Key <BKey1@tampabay.rr.com>
f60ae425 6353
048addec
JD
6354 * sound.c: Added a partial implementation of play-sound-internal
6355 for Microsoft Windows. Added various #ifdef / #else / #endif
6356 code blocks to separate the code that will compile under
6357 Microsoft Windows from the code that is specific to Gnu/Linux.
6358 Moved several blocks of code around to make this separation of code
6359 into Windows compatible and Gnu/Linux compatible code blocks easier.
f60ae425 6360
048addec 6361 * makefile.w32-in: Include sound.c and link with WinMM.lib.
a0f0878d 6362
048addec
JD
6363 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
6364 added support for play-sound-internal under Windows would be
6365 included in the build of Emacs.
517f42a0 6366
048addec 63672002-11-16 Jason Rumney <jasonr@gnu.org>
517f42a0 6368
048addec 6369 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
517f42a0 6370
048addec 6371 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
a0f0878d 6372
048addec 63732002-11-15 Stefan Monnier <monnier@cs.yale.edu>
a0f0878d 6374
048addec
JD
6375 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
6376 (adjust_point_for_property): Move out of display and invisible even if
6377 we were already inside before (in case a property was added while
6378 we weren't looking). Be more careful when handling invisible props.
6379 Skip invisible text as if it really wasn't there at all.
aab83f91 6380
048addec 63812002-11-15 Jason Rumney <jasonr@gnu.org>
aab83f91 6382
048addec
JD
6383 * w32term.c (x_draw_image_foreground)
6384 (w32_draw_image_foreground_1): Use standard copy and invert
6385 operations to draw images.
aab83f91 6386
048addec
JD
6387 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
6388 depth of 1.
6389 (xbm_read_bitmap_data): Invert bits as xbm is read in.
6390 (XPutPixel): Don't invert bits here.
a4478a76 6391
048addec 63922002-11-15 Jason Rumney <jasonr@gnu.org>
a4478a76 6393
048addec
JD
6394 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
6395 (w32_draw_image_foreground_1): Handle image masks.
6396 (x_draw_image_glyph_string): Don't BitBlt transparently.
a4478a76 6397
048addec
JD
6398 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
6399 (x_from_xcolors): Adjust RGB values for W32.
6400 (image_background, image_background_transparent)
6401 (postprocess_image, x_to_xcolors, x_disable_image)
6402 (x_build_heuristic_mask): Adapt for W32 and enable.
6403 (x_create_x_image_and_pixmap): Mark images with palettes as such.
6404 (xbm_load): Remove unused variable.
03670a65 6405
048addec 64062002-11-14 Richard M. Stallman <rms@gnu.org>
03670a65 6407
048addec 6408 * buffer.c (syms_of_buffer): Doc fix.
59daa29a 6409
048addec 64102002-11-14 Dave Love <fx@gnu.org>
59daa29a 6411
048addec 6412 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
59daa29a 6413
048addec
JD
6414 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
6415 * xmenu.c (unuse_menu_items, digest_single_submenu):
6416 * xfns.c (x_put_x_image):
6417 * xdisp.c (message2_nolog, set_message):
6418 * undo.c (record_point):
6419 * terminfo.c (tparam):
6420 * syntax.c (scan_sexps_forward):
6421 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
6422 * composite.c (update_compositions):
6423 * cm.c (calccost, cmgoto):
6424 * charset.c (c_string_width): Declare all args (per C99).
59daa29a 6425
048addec 6426 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
59daa29a 6427
048addec
JD
6428 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
6429 Don't declare.
59daa29a 6430
048addec 6431 * emacs.c (main) [!VMS]: Avoid third arg.
59daa29a 6432
048addec
JD
6433 * fns.c (Fcopy_sequence): Doc fix.
6434 (Fmap_char_table): Cast `call2'.
3947677c 6435
048addec
JD
64362002-11-14 Francesco Potorti` <pot@gnu.org>
6437
6438 * s/sol2-8.h: New file.
6439
64402002-11-14 Kim F. Storm <storm@cua.dk>
6441
6442 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
6443 dependency on `risky-local-variable' and the :propertize form.
6444
64452002-11-12 Stefan Monnier <monnier@cs.yale.edu>
6446
6447 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
6448
6449 * syntax.c (scan_sexps_forward): Undo last patch.
6450 Use a more obvious fix: check eob before updating the syntax table.
6451
64522002-11-09 Stefan Monnier <monnier@cs.yale.edu>
6453
6454 * syntax.c (scan_sexps_forward): Update syntax table before reading
6455 a char rather than after so we don't update the table past eob.
6456
64572002-11-09 Dave Love <fx@gnu.org>
6458
6459 * buffer.c (Fset_buffer_major_mode): Fix last change.
6460
6461 * regex.c (regexec): Fix pmatch declaration.
6462
6463 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
6464
6465 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
6466 to self-inserting characters.
6467 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
6468
6469 * coding.c (Vtranslation_table_for_input): New.
6470 (syms_of_coding): DEFVAR it.
6471
64722002-11-08 Juanma Barranquero <lektu@terra.es>
6473
6474 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
6475 window.
6476
64772002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6478
6bdb309a 6479 * process.c (Fformat_network_address): Remove unused locals p,
048addec
JD
6480 cp, and i.
6481
64822002-11-06 Dave Love <fx@gnu.org>
6483
6484 * buffer.c (Qset_buffer_major_mode_hook): New.
6485 (Fset_buffer_major_mode): Use it.
6486
64872002-11-06 Richard M. Stallman <rms@gnu.org>
6488
6489 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
6490 and stop_polling.
6491
6492 * process.c (wait_reading_process_input):
6493 Test POLLING_PROBLEM_IN_SELECT, not hpux.
6494 Avoid initialization for auto Lisp_Object var.
6495
6496 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
6497
6498 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
6499
65002002-11-05 Richard M. Stallman <rms@gnu.org>
6501
6502 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
6503
6504 * callint.c (Fcall_interactively): New local filter_specs.
6505 (Fcall_interactively): Check for progn as well as let.
6506 Add a gcpro.
6507 (Qprogn): New variable.
6508 (syms_of_callint): Staticpro and init Qprogn.
6509
65102002-11-04 John Paul Wallington <jpw@shootybangbang.com>
6511
6512 * lread.c (Feval_buffer): Doc fix.
6513
65142002-11-04 Dave Love <fx@gnu.org>
6515
6516 * keyboard.c (read_char): Always translate iff
6517 Vkeyboard_translate_table is a char table and c is valid.
6518
6519 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
6520 and fix C types.
6521
65222002-11-03 Stefan Monnier <monnier@cs.yale.edu>
6523
6524 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
6525
6526 * editfns.c (get_pos_property): Don't hardcode Qfield.
6527
6528 * keyboard.c (adjust_point_for_property): Handle `display' prop on
6529 overlays. Also handle `invisible' prop.
6530
65312002-11-02 Stefan Monnier <monnier@cs.yale.edu>
6532
6533 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
6534 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
6535
65362002-11-01 Andreas Schwab <schwab@suse.de>
6537
6538 * editfns.c (Fmessage): Revert last change to properly handle %%.
6539
65402002-11-01 Stefan Monnier <monnier@cs.yale.edu>
6541
6542 * xmenu.c (unuse_menu_items): New fun.
6543 (menu_items_inuse): New var.
6544 (syms_of_xmenu): Initialize it.
6545 (init_menu_items): Use it to detect re-entrance.
6546 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
6547 (Fx_popup_menu): Remove spurious XSETFRAME.
6548
6549 * editfns.c (find_field): Make an exception for nil fields.
6550
65512002-11-01 Dave Love <fx@gnu.org>
6552
6553 * m/gec63.h: Deleted.
6554
65552002-10-31 Dave Love <fx@gnu.org>
6556
6557 * xterm.c (XTread_socket): Fix last change.
6558 (xaw_scroll_callback): Cast call_data to long to avoid warning.
6559
65602002-10-31 Stefan Monnier <monnier@cs.yale.edu>
6561
6562 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
6563
65642002-10-30 Stefan Monnier <monnier@cs.yale.edu>
6565
6566 * editfns.c (overlays_around, get_pos_property): New funs.
6567 (find_field): Use them.
6568 Also be careful not to modify POS before its last use.
6569 (Fmessage): Don't Fformat if there's nothing to format.
6570
65712002-10-30 Dave Love <fx@gnu.org>
6572
6573 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
6574 [HAVE_PTY_H]; Include pty.h.
6575
6576 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
6577
6578 * xterm.c (Qeql): Declare.
6579 (Vx_keysym_table): New.
6580 (syms_of_xterm): Initialize it.
6581 (XTread_socket): Use it. Deal with ASCII keysyms.
6582 (XSetIMValues) [HAVE_X11R6]: Prototype.
6583
6584 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
6585 (lispy_kana_keys): Comment out.
6586 (make_lispy_event) [XK_kana_A]: Comment out.
6587 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
6588 Fix sprintf call.
6589
6590 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
6591 regexp.h change).
6592 (TERMINFO, LIBS_TERMCAP): Define.
6593
6594 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
6595 (bcmp): Define conditional on HAVE_BCMP.
6596 (NO_SIOCTL_H): Don't define.
6597 (TIOCSIGSEND): Don't make conditional on IRIX6.
6598
6599 * s/sol2-5.h: Don't include strings.h.
6600 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
6601
6602 * s/irix6-0.h (IRIX6): Don't define.
6603 (bcopy, bcmp, bzero): Don't undef.
6604
6605 * s/irix6-5.h: Don't include strings.h.
6606 (IRIX6): Don't define.
6607 (bcopy, bcmp, bzero): Don't undef.
6608
6609 * syntax.c (Fforward_comment): Doc fix.
6610
66112002-10-29 Kim F. Storm <storm@cua.dk>
6612
6613 * process.c (Fsignal_process): Allow PROCESS to be specified by
6614 name in addition to pid (as integer or string).
6615
66162002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
6617
6618 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
6619 environments.
6620
66212002-10-27 Kim F. Storm <storm@cua.dk>
6622
6623 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
6624
6625 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
6626
6627 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
6628
6629 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
6630
66312002-10-26 Richard M. Stallman <rms@gnu.org>
6632
6633 * editfns.c (Fformat): Detect invalid format letters for floats.
6634
66352002-10-25 Kenichi Handa <handa@m17n.org>
6636
6637 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
6638 (x_set_title): Likewise.
6639
66402002-10-25 Juanma Barranquero <lektu@terra.es>
6641
6642 * macgui.h:
6643 * w32gui.h: Remove definition of XColor.
6644
6645 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
6646
66472002-10-24 Kim F. Storm <storm@cua.dk>
6648
6649 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
6650 Callers changed (supply dummy arg).
6651
6652 * lisp.h (get_window_cursor_type): Update prototype.
6653
6654 * w32term.c (x_display_and_set_cursor): Get active_cursor from
6655 get_window_cursor_type to track system caret.
6656
66572002-10-24 Kim F. Storm <storm@cua.dk>
6658
6659 * process.c (Fformat_network_address): New function.
6660 (syms_of_process): Defsubr it.
6661 (list_processes_1): Use it to format :local/:remote address if
6662 service/host is not set; before emacs would crash in that case.
6663 (Fmake_network_process): Don't use Ffind_operation_coding_system
6664 to setup coding system if host or service is not set.
6665
66662002-10-23 Juanma Barranquero <lektu@terra.es>
6667
6668 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
6669
6670 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
6671 COLORREF.
6672
6673 * macgui.h:
6674 * w32gui.h: Add definition of XColor.
6675
6676 * macfns.c:
6677 * w32fns.c:
6678 * xfaces.c: Remove definition of XColor.
6679
66802002-10-22 Stefan Monnier <monnier@cs.yale.edu>
6681
6682 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
6683
6684 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
6685 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
6686 window if it is dedicated.
6687 (Fshrink_window): Add preserve_before as was done for enlarge_window.
6688 (Vspecial_display_function): Update docstring.
6689
6690 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
6691 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
6692 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
6693
66942002-10-21 Stefan Monnier <monnier@cs.yale.edu>
6695
6696 * casefiddle.c (casify_region): Don't treat a prefix char as part
6697 of a word when at the beginning.
6698
66992002-10-17 Juanma Barranquero <lektu@terra.es>
6700
6701 * lread.c (syms_of_lread): Fix typos.
6702
67032002-10-17 Dave Love <fx@gnu.org>
6704
6705 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
6706
67072002-10-16 Richard M. Stallman <rms@gnu.org>
6708
6709 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
6710
67112002-10-14 Juanma Barranquero <lektu@terra.es>
6712
6713 * w16select.c (syms_of_win16select): Fix docstring for
6714 `selection-coding-system'.
6715
6716 * w32select.c (syms_of_w32select): Likewise.
6717
67182002-10-14 Stefan Monnier <monnier@cs.yale.edu>
6719
6720 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
6721 a backslash-quoted char.
6722 (scan_lists, scan_sexps_forward): Pacify the compiler.
6723
67242002-10-13 Richard M. Stallman <rms@gnu.org>
6725
6726 * window.c (window_scroll): Set immediate_quit.
6727
6728 * print.c (print): When backquote form is the car of a list,
6729 output in old style. Use old_backquote_output to output all
6730 comma forms inside it in old style too.
6731
6732 * buffer.h (struct buffer): Move `undo_list' down below `name'.
6733
67342002-10-11 Markus Rost <rost@math.ohio-state.edu>
6735
6736 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
6737 batch mode).
6738
6739 * lread.c (Fload): Doc fix (load-suffixes).
6740
67412002-10-10 Steven Tamm <steventamm@mac.com>
6742
6743 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
6744 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
6745 Also switch the default to Qnil from Qt.
6746
67472002-10-08 Kenichi Handa <handa@m17n.org>
6748
6749 * coding.c (code_convert_region): When we need more GAP for
6750 conversion, pay attention to the case that coding->produced is not
6751 greater than coding->consumed.
6752
67532002-10-07 Richard M. Stallman <rms@gnu.org>
6754
6755 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
6756
67572002-10-06 Andrew Choi <akochoi@shaw.ca>
6758
6759 * macmenu.c (mac_menu_show): Add j to count menu items; match
6760 menu_item_selection to it to find selected item.
6761
67622002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6763
6764 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
6765 cases. The correct fix is to pass ReparentNotify to Xt.
6766 The shell widget interprets ConfigureNotify differently depending
6767 on if it has been reparented or not.
6768
67692002-10-05 Markus Rost <rost@math.ohio-state.edu>
6770
6771 * editfns.c (Fformat_time_string): Doc fix.
6772
67732002-10-05 John Paul Wallington <jpw@shootybangbang.com>
6774
6775 * fns.c (Flength): Doc fix.
6776
67772002-10-04 Stefan Monnier <monnier@cs.yale.edu>
6778
6779 * keyboard.c (keyremap): New struct.
6780 (read_key_sequence): Use it: globally replace keytran_foo with
6781 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
6782 keytran_next and fkey_next to just `next'.
6783
67842002-10-04 Steven Tamm <steventamm@mac.com>
6785
6786 * macterm.c (keycode_to_xkeysym_table): Change return to be
6787 treated like an X keysym.
6788
67892002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6790
6791 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
6792 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
6793 This is to also handle x/y changes that occur because of a resize.
6794
67952002-10-02 John Paul Wallington <jpw@shootybangbang.com>
6796
6797 * frame.c (Vdelete_frame_functions): New variable.
6798 (syms_of_frame): Initialize and defvar it.
6799 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
6800 it when frame's `tooltip' parameter is non-nil.
6801
6802 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
6803
6804 * w32fns.c (x_create_tip_frame): Likewise.
6805
6806 * macfns.c (x_create_tip_frame): Likewise.
6807
68082002-09-30 Kenichi Handa <handa@m17n.org>
6809
6810 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
6811 -1 before calling ccl_driver.
6812
6813 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
6814 Only when it is non-nil, handle composition sequence.
6815 (setup_coding_system) <0>: Don't force composition handling.
6816
6817 * Makefile.in (lisp, shortlisp): Add utf-16.elc
6818
68192002-09-29 Richard M. Stallman <rms@gnu.org>
6820
6821 * search.c (Freplace_match): Adjust match data for the substitution
6822 just made in the buffer.
6823
6824 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
6825 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
6826
68272002-09-27 Richard M. Stallman <rms@gnu.org>
6828
6829 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
6830 (read_char): Use them. Do all exits thru the end of the function.
6831
68322002-09-27 Kenichi Handa <handa@etl.go.jp>
6833
6834 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
6835 is nil.
6836
68372002-09-26 Richard M. Stallman <rms@gnu.org>
6838
6839 * regex.h (__restrict_arr): Don't define if already defined.
6840
6841 * coding.c (run_pre_post_conversion_on_str):
6842 Save and restore Vdeactivate_mark.
6843
68442002-09-26 John Paul Wallington <jpw@shootybangbang.com>
6845
6846 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
6847
68482002-09-26 Kenichi Handa <handa@etl.go.jp>
6849
6850 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
6851 nonzero, try face's family at first. Otherwise try FAMILY at first.
6852 (choose_face_font): If C is a single byte char or latin-1, call
6853 try_font_list with PREFER_FACE_FAMILY 1.
6854
68552002-09-21 Richard M. Stallman <rms@gnu.org>
6856
6857 * window.c (select_window_1): Don't select frame.
6858 Set frame's selected window only when frame itself is selected.
6859 (Fselect_window): Doc fix.
6860
68612002-09-18 Kim F. Storm <storm@cua.dk>
6862
6863 * process.c (make-network-process): Doc fix (there is no
6864 network-server-log-function hook).
6865
68662002-09-18 Richard M. Stallman <rms@gnu.org>
6867
6868 * print.c (print): Clear out the unused parts of Vprint_number_table.
6869 (syms_of_print): Doc fix for `print-number-table'.
6870
6871 * unexelf.c (unexec): Undo previous change.
6872
68732002-09-17 Andreas Schwab <schwab@suse.de>
6874
6875 * m/alpha.h [LINUX]: Don't define DATA_START.
6876
68772002-09-16 Dave Love <fx@gnu.org>
6878
6879 * unexelf.c (unexec): Deal with .got, reinstating change from
6880 25-08-1999.
6881
68822002-09-13 Richard M. Stallman <rms@gnu.org>
6883
6884 * s/sol2-6.h (UNEXEC): Comment out definition.
6885
6886 * unexsol.c (unexec): Don't downcase first letter of error msg.
6887
6888 * xfaces.c (Fcolor_supported_p): Just one arg is required.
6889
68902002-09-12 Markus Rost <rost@math.ohio-state.edu>
6891
6892 * unexsol.c: Include buffer.h, charset.h, coding.h.
6893
68942002-09-11 Richard M. Stallman <rms@gnu.org>
6895
6896 * unexsol.c: Don't use report_file_error; do it by hand
6897 using dlerror.
6898
6899 * process.c (wait_reading_process_input, both versions):
6900 Before calling turn_on_atimers, call stop_polling.
6901
6902 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
6903
6904 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
6905 we go to too_near_end, call clear_glyph_matrix.
6906 (redisplay_window): After make_cursor_line_fully_visible,
6907 call clear_glyph_matrix and bypass `goto done'.
6908
6909 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
6910 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
6911
69122002-09-10 Richard M. Stallman <rms@gnu.org>
6913
6914 * fileio.c (Fdo_auto_save): Catch error making directory.
6915 Only call push_message if we need to.
6916 At the same time, make an unwind-protect to pop it.
6917 Rename local message_p to old_message_p.
6918 (do_auto_save_make_dir, do_auto_save_eh): New functions.
6919 (do_auto_save_unwind): Don't call pop_message.
6920
6921 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
6922
6923 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
6924
6925 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
6926
6927 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
6928
69292002-09-10 Stefan Monnier <monnier@cs.yale.edu>
6930
6931 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
6932 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
6933 (re_match_2_internal): Be more careful with infinite loops.
6934
69352002-09-10 Kim F. Storm <storm@cua.dk>
6936
6937 * macros.c (end_kbd_macro): New function.
6938 (Fend_kbd_macro): Use it.
6939
6940 * macros.h (end_kbd_macro): Declare extern.
6941
6942 * keyboard.c (Fdiscard_input): If defining keyboard macro,
6943 end and save it instead of discarding it.
6944
69452002-09-09 Markus Rost <rost@math.ohio-state.edu>
6946
6947 * s/sol2-6.h: Fix typo. Add comment.
6948
69492002-09-09 Richard M. Stallman <rms@gnu.org>
6950
6951 * regex.c (regnum_t): Use signed int, not unsigned int.
6952
6953 * s/sol2-6.h: New file.
6954
6955 * s/sol2-5.h (UNEXEC): Definition deleted.
6956
69572002-09-08 Kim F. Storm <storm@cua.dk>
6958
6959 * macros.c (executing_macro_index): Change type to EMACS_INT.
6960 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
6961
6962 * macros.h (executing_macro_index): Change type to EMACS_INT.
6963
69642002-09-06 Richard M. Stallman <rms@gnu.org>
6965
6966 * casetab.c (set_case_table): Make canon table point to eqv table.
6967
69682002-09-06 Juanma Barranquero <lektu@terra.es>
6969
6970 * coding.c (syms_of_coding): Fix spacing.
6971
6972 * composite.c (Fcompose_region_internal)
6973 (Fcompose_string_internal): Likewise.
6974
6975 * data.c (Flsh): Likewise.
6976
6977 * fontset.c (Fset_fontset_font): Likewise.
6978
6979 * macfns.c (Fx_server_max_request_size): Likewise.
6980
6981 * w16select.c (syms_of_win16select): Likewise.
6982
6983 * w32select.c (syms_of_w32select): Likewise.
6984
6985 * xselect.c (syms_of_xselect): Likewise.
6986
69872002-09-05 Richard M. Stallman <rms@gnu.org>
6988
6989 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
6990 call EXTEND_RANGE_TABLE and return a proper value.
6991 (set_image_of_range): Don't call set_image_of_range_1
6992 if no TRANSLATE or if range includes all of Latin-1.
6993 Only call it for the Latin-1 part of the range.
6994 For other cases, make two separate ranges,
6995 one for the original specified characters and one for
6996 their case-conversions.
6997
69982002-09-04 Richard M. Stallman <rms@gnu.org>
6999
7000 * s/sol2-5.h (UNEXEC): Use unexsol.o.
7001
7002 * window.c (displayed_window_lines): Correct for one-off bug
7003 in HEIGHT on non-window displays.
7004
7005 * regex.c (set_image_of_range_1): New function.
7006 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
7007 Return a value to indicate running out of memory.
7008 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
7009 (extend_range_table_work_area): New subroutine.
7010 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
7011 Different calling conventions, and used from set_image_of_range{,_1}.
7012 (IMMEDIATE_QUIT_CHECK): Definitions moved.
7013
70142002-09-04 Juanma Barranquero <lektu@terra.es>
7015
7016 * makefile.w32-in: All dependencies updated.
7017
70182002-09-01 Richard M. Stallman <rms@gnu.org>
7019
7020 * unexsol.c: New file.
7021
7022 * xfns.c (Qbox): Declare external, don't define.
7023
7024 * xdisp.c (redisplay_window) <force-start case>:
7025 If point is on semi-visible last line, reposition
7026 it at previous line.
7027
7028 * alloc.c (display_malloc_warning): Use display-warning.
7029 (malloc_warning_1): Function deleted.
7030
7031 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
7032
7033 * lread.c (read1): Handle #! by skipping the line.
7034
70352002-08-31 Richard M. Stallman <rms@gnu.org>
7036
7037 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
7038 Don't include LDFLAGS.
7039 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
7040
70412002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
7042
7043 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
7044 member of x_display_info unless we compile for some window system.
7045
70462002-08-31 Kim F. Storm <storm@cua.dk>
7047
7048 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
7049 (get_window_cursor_type): Don't use them.
7050 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
7051
70522002-08-30 Kenichi Handa <handa@etl.go.jp>
7053
7054 * xdisp.c (get_next_display_element): Fix previous change.
7055
70562002-08-30 Andrew Choi <akochoi@shaw.ca>
7057
7058 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
7059 (expose_window): Use it to fix the display of overlapping
7060 rows (merge code from xterm.c).
7061
7062 * macfns.c (Qbox): Add extern declaration.
7063
70642002-08-30 Juanma Barranquero <lektu@terra.es>
7065
7066 * w32fns.c (Qbox): Make extern.
7067 (syms_of_w32fns): Remove initialization of Qbox.
7068
70692002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
7070
7071 * xfns.c (Fx_open_connection): Fix error message.
7072
70732002-08-30 Kim F. Storm <storm@cua.dk>
7074
7075 The following changes consolidates the handling of the cursor
7076 type in xdisp.c, moving duplicate code and functionality from
7077 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
7078
7079 * frame.h (enum text_cursor_kinds): Consolidated here.
7080 Added DEFAULT_CURSOR value.
7081 (struct frame) <desired_cursor, cursor_width>
7082 <blink_off_cursor, blink_off_cursor_width>: New fields.
7083 Consolidated from output_x, output_w32 and output_mac structs.
7084 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
7085 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
7086
7087 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
7088 Variables consolidated here.
7089 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
7090 (Vcursor_in_non_selected_windows): Renamed from
7091 cursor_in_non_selected_windows and changed to Lisp_Object.
7092 (syms_of_xdisp): Define and staticpro new and moved variables.
7093 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
7094 consolidated here. Recognize Qhollow setting.
7095 (set_frame_cursor_types): New function to set frame cursor types
7096 based on the frame parameters.
7097 (get_window_cursor_type): New function to calculate new cursor
7098 type and width for the specified window. Based on duplicated
7099 code consolidated here.
7100 Enhancements: cursor-in-non-selected-windows may be a cursor type,
7101 check buffer-local alternate-cursor-type and blink-cursor-alist
7102 before using built-in blink off methods.
7103
7104 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
7105
7106 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
7107 (get_specified_cursor_type, get_window_cursor_type)
7108 (set_frame_cursor_types): Added prototypes.
7109
7110 * macfns.c (x_specified_cursor_type): Removed.
7111 (x_set_cursor_type): Use set_frame_cursor_types.
7112 (Qbar, Qbox): Removed.
7113 (syms_of_macfns): Don't intern or staticpro them.
7114
7115 * macterm.c (x_specified_cursor_type): Remove prototype.
7116 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
7117 (x_display_and_set_cursor): Use get_window_cursor_type.
7118 Remove unused local variables cursor_non_selected, active_cursor.
7119 Redraw cursor if hbar cursor width changes.
7120 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
7121
7122 * macterm.h (enum text_cursor_kinds): Removed.
7123 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
7124 <blink_off_cursor, blink_off_cursor_width>: Members removed.
7125 (FRAME_DESIRED_CURSOR): Macro removed.
7126
7127 * w32fns.c (Vblink_cursor_alist): Removed.
7128 (Qbar, Qhbar, Qbox, Qhollow): Removed.
7129 (syms_of_w32fns): Don't intern, staticpro, or define them.
7130 (x_specified_cursor_type): Removed.
7131 (x_set_cursor_type): Use set_frame_cursor_types.
7132
7133 * w32term.c (x_specified_cursor_type): Remove prototype.
7134 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
7135 (x_display_and_set_cursor): Use get_window_cursor_type.
7136 Remove unused local variables cursor_off_state.
7137 Redraw cursor if hbar cursor width changes.
7138 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
7139
7140 * w32term.h (enum text_cursor_kinds): Removed.
7141 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
7142 <blink_off_cursor, blink_off_cursor_width>: Members removed.
7143 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
7144 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
7145 (struct w32_display_info) <x_highlight_frame>: Renamed member from
7146 w32_highlight_frame.
7147
7148 * xfns.c (Vblink_cursor_alist): Removed.
7149 (Qbar, Qhbar, Qbox, Qhollow): Removed.
7150 (syms_of_xfns): Don't intern, staticpro, or define them.
7151 (x_specified_cursor_type): Removed.
7152 (x_set_cursor_type): Use set_frame_cursor_types.
7153
7154 * xterm.c (x_specified_cursor_type): Remove prototype.
7155 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
7156 (x_display_and_set_cursor): Use get_window_cursor_type.
7157 Remove unused local variables cursor_off_state.
7158 Redraw cursor if hbar cursor width changes.
7159
7160 * xterm.h (enum text_cursor_kinds): Removed.
7161 (struct output_x) <current_cursor, desired_cursor, cursor_width>
7162 <blink_off_cursor, blink_off_cursor_width>: Members removed.
7163 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
7164 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
7165 (x_specified_cursor_type): Remove prototype.
7166
71672002-08-28 Richard M. Stallman <rms@gnu.org>
7168
7169 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
7170 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
7171 (Vblink_cursor_alist): New variable.
7172 (syms_of_w32fns): Initialize and defvar it.
7173 (x_specified_cursor_type): Recognize Qbox for filled box.
7174 Exceptions are hollow boxes.
7175 (Qbox, Qhollow): New variables.
7176 (syms_of_w32fns): Initialize and staticpro them.
7177
7178 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
7179 New macros.
7180 (struct w32_output): New fields blink_off_cursor,
7181 blink_off_cursor_width.
7182 (FRAME_CURSOR_WIDTH): New macro.
7183
7184 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
7185 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
7186
7187 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
7188 for bar cursor.
7189
7190 * w32term.c (expose_overlaps): New function.
7191 (expose_window): Use it to fix the display of overlapping rows.
7192
71932002-08-28 Simon Josefsson <jas@extundo.com>
7194
7195 * xfns.c (Fx_open_connection): Improve help when X connection
7196 fails, xhost is insecure and xauth is better.
7197
71982002-08-28 Juanma Barranquero <lektu@terra.es>
7199
7200 * makefile.w32-in: Add missing dependencies on w32term.h and
7201 composite.h.
7202
7203 * emacs.c (USAGE1): Add missing newline.
7204
72052002-08-27 Andrew Choi <akochoi@shaw.ca>
7206
7207 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
7208
72092002-08-27 Richard M. Stallman <rms@gnu.org>
7210
7211 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
7212 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
7213 (Vblink_cursor_alist): New variable.
7214 (syms_of_xfns): Initialize and defvar it.
7215 (x_specified_cursor_type): Recognize Qbox for filled box.
7216 Exceptions are hollow boxes.
7217 (Qbox, Qhollow): New variables.
7218 (syms_of_xfns): Initialize and staticpro them.
7219
7220 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
7221 New macros.
7222 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
7223
7224 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
7225 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
7226
7227 * emacs.c (main): Handle --script.
7228 (USAGE1): Mention --script.
7229 (standard_args): Define sort order for --script.
7230
72312002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
7232
7233 * xdisp.c (redisplay_updating_p): Variable removed.
7234 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
7235 New variables.
7236 (init_iterator): Don't free realized faces if
7237 inhibit_free_realized_faces is set.
7238 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
7239 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
7240 initialize Qinhibit_free_realized_faces.
7241
7242 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
7243 when iterator is adding glyphs to a glyph matrix.
7244
72452002-08-27 Kenichi Handa <handa@etl.go.jp>
7246
7247 * xdisp.c (get_next_display_element): In unibyte case, don't use
7248 octal form for such eight-bit characters that can be converted to
7249 multibyte char.
7250
72512002-08-26 Kim F. Storm <storm@cua.dk>
7252
7253 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize foreground
7254 and background colors. From Joe Buehler (tiny change).
7255
72562002-08-26 Miles Bader <miles@gnu.org>
7257
7258 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
7259
72602002-08-25 Andrew Choi <akochoi@shaw.ca>
7261
7262 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
7263 defined instead of MAC_OSX.
7264
7265 * s/darwin.h (select): Define select to sys_select only if
7266 HAVE_CARBON is defined.
7267 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
7268 (DONT_REOPEN_PTY): #def it.
7269
7270 * macterm.c (XTread_socket): Remove code to call
7271 SendEventToEventTarget for keys with command modifiers when
7272 mac_command_key_is_meta is nil.
7273
72742002-08-24 Andreas Schwab <schwab@suse.de>
7275
7276 * eval.c (Fdefvar): Fix last change.
7277
72782002-08-23 Richard M. Stallman <rms@gnu.org>
7279
7280 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
7281 Record variables in load history as (defvar . VAR).
7282 (Fdefvar): Don't record in load history if no initial value.
7283 (Qdefvar): New variable.
7284 (syms_of_eval): Init and staticpro it.
7285
7286 * lread.c (syms_of_lread): Doc fix.
7287 (build_load_history): Use Fmember to see if a definition
7288 is already in the Vload_history element.
7289
7290 * process.c (Fstart_process): Remove /: from program name.
7291
7292 * emacs.c (decode_env_path): Don't add /: if file name handler
7293 has a `safe-magic' property.
7294
7295 * callproc.c (Fcall_process): Remove /: from program name.
7296
72972002-08-23 Stefan Monnier <monnier@cs.yale.edu>
7298
7299 * regex.c (PATFETCH): Remove the translating fetch.
7300 (PATFETCH_RAW): Rename to PATFETCH.
7301 (set_image_of_range): New fun.
7302 (SET_RANGE_TABLE_WORK_AREA): Use it.
7303 (regex_compile): Don't translate the pattern chars so eagerly.
7304 Only do it when inserting an `exactn' bytecode or when handling
7305 a char-range.
7306 (mutually_exclusive_p): Avoid empty statement.
7307
73082002-08-22 Kim F. Storm <storm@cua.dk>
7309
7310 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
7311 end up on a partially visible line; this reverts a specific part
7312 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
7313 display error which has been reported several times now.
7314 However it introduces the problem that changes was supposed to fix.
7315 See my comments in the source if you want to debug this further.
7316
73172002-08-20 Kenichi Handa <handa@etl.go.jp>
7318
7319 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
7320
73212002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
7322
7323 * msdos.c (croak): Add `void' to definition.
7324
7325 * sysdep.c [MSDOS] (request_sigio, unrequest_sigio):
7326 Don't define them, they are defined in msdos.c.
7327
7328 * mem-limits.h [MSDOS]: Declare etext.
7329
7330 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
7331 `const' since CORRECT_DIR_SEPS modifies its target.
7332
73332002-08-19 Kim F. Storm <storm@cua.dk>
7334
7335 * keyboard.c (Fclear_this_command_keys): Added optional arg
7336 KEEP-RECORD to avoid clearing lossage when we just want to clear
7337 the current key sequence (kmacro needs this).
7338
73392002-08-19 Kenichi Handa <handa@localhost>
7340
7341 * composite.c (run_composition_function): Call FUNC if it is fboundp.
7342
7343 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
7344 cons, return Qnil.
7345
73462002-08-17 Richard M. Stallman <rms@gnu.org>
7347
7348 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
7349
7350 * sysdep.c [!VMS]: Include sys/files.h.
7351
7352 * editfns.c (save_restriction_restore): Defend from unchained marker.
7353
7354 * buffer.c (overlays_at): Handle extending vec uniformly.
7355 (overlays_in): Handle extending vec from length 0 as in overlays_at.
7356
73572002-08-15 Andrew Choi <akochoi@shaw.ca>
7358
7359 * mac.c (init_mac_osx_environment): New function.
7360
7361 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
7362
73632002-08-14 Kim F. Storm <storm@cua.dk>
7364
7365 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
7366 executing macro before appending to it (when used from Lisp).
7367 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
7368 which is called prior to each iteration of macro (for kmacro.el).
7369 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
7370
7371 * lisp.h (Fexecute_kbd_macro): Update prototype.
7372
7373 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
7374
73752002-08-14 Kenichi Handa <handa@etl.go.jp>
7376
7377 * xselect.c (QUTF8_STRING): New variable.
7378 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
7379 (x_atom_to_symbol): Likewise.
7380 (x_get_local_selection): New argument local_request. If it is
7381 nonzero, call handler_fn with the second arg nil.
7382 (x_handle_selection_request): Call x_get_local_selection with
7383 local_request 0.
7384 (lisp_data_to_selection_data): Don't encode the string here.
7385 (Fx_get_selection_internal): Call x_get_local_selection with
7386 local_request 1.
7387 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
7388
7389 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
7390
7391 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
7392
73932002-08-13 Richard M. Stallman <rms@gnu.org>
7394
7395 * minibuf.c (Fminibufferp): New function.
7396 (syms_of_minibuf): Defsubr it.
7397 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
7398
73992002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
7400
7401 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
7402
74032002-08-12 Richard M. Stallman <rms@gnu.org>
7404
7405 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
7406 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
7407 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
7408 already.
7409
7410 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
7411
74122002-08-11 Andrew Choi <akochoi@shaw.ca>
7413
7414 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
7415 (Vmac_pass_command_to_system): New variable.
7416 (Vmac_pass_control_to_system): New variable.
7417 (do_mouse_moved): Check wp with is_emacs_window.
7418 (XTread_socket): Check window_ptr with is_emacs_window.
7419 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
7420 events back to Mac Toolbox for processing, depending on values of
7421 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
7422 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
7423 Vmac_pass_control_to_system.
7424
74252002-08-10 Kenichi Handa <handa@etl.go.jp>
7426
7427 * coding.c (unencodable_char_position): New function.
7428 (Funencodable_char_position): New function.
7429 (syms_of_coding): Defsubr Funencodable_char_position.
7430
74312002-08-10 Andrew Choi <akochoi@shaw.ca>
7432
7433 * mac.c (sys_select) [MAC_OSX]: New function.
7434
7435 * macterm.c (MakeMeTheFrontProcess): New function.
7436 (mac_initialize): Call MakeMeTheFrontProcess.
7437
7438 * s/darwin.h: Define select to sys_select.
7439
74402002-08-09 Richard M. Stallman <rms@gnu.org>
7441
7442 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
7443
74442002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
7445
7446 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
7447 end of the buffer.
7448
74492002-08-08 Ken Raeburn <raeburn@mit.edu>
7450
7451 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
7452
7453 * puresize.h (BASE_PURESIZE): Increase to 910000.
7454
74552002-08-08 Kenichi Handa <handa@etl.go.jp>
7456
7457 * coding.c (Ffind_operation_coding_system): For write-region, if
7458 VISIT is a filename, make it the target.
7459
74602002-08-07 Richard M. Stallman <rms@gnu.org>
7461
7462 * alloc.c (mark_object): Detect long lists for debugging.
7463 (mark_object_loop_halt): New variable.
7464
7465 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
7466
7467 * data.c (Fmake_variable_frame_local): Doc fix.
7468
74692002-08-01 David Ponce <david@dponce.com>
7470
7471 * w32menu.c (local_heap, local_alloc, local_free): New macros.
7472 (malloc_widget_value, free_widget_value)
7473 (w32_free_submenu_strings): Use them.
7474
7475 (push_submenu_start, push_submenu_end, push_left_right_boundary)
7476 (push_menu_pane, push_menu_item, single_keymap_panes)
7477 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
7478 (single_submenu, set_frame_menubar)
7479 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
7480
7481 (Fx_popup_menu): Don't show pop up menu until preceding one is
7482 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
7483
7484 * w32menu.c: Changes adapted from xmenu.c
7485 (set_frame_menubar): First parse all submenus,
7486 then make widget_value trees from them.
7487 Don't allocate any widget_value objects
7488 until we are done with the parsing.
7489 (parse_single_submenu): New function.
7490 (digest_single_submenu): New function.
7491 (single_submenu): Function deleted, replaced by those two.
7492
74932002-08-04 Andrew Choi <akochoi@shaw.ca>
7494
7495 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
7496 returns a valid window pointer before proceeding for keyDown and
7497 autoKey events.
7498
74992002-08-03 Andrew Choi <akochoi@shaw.ca>
7500
7501 * macterm.c (USE_CARBON_EVENTS): New macro.
7502 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
7503 (x_iconify_frame): Call CollapseWindow.
7504 (Vmac_reverse_ctrl_meta): New variable.
7505 (Vmac_wheel_button_is_mouse_2): New variable.
7506 (init_mac_drag_n_drop): New function.
7507 (mac_do_receive_drag): New function.
7508 (mac_handle_service_event): New function.
7509 (init_service_handler): New function.
7510 (mac_to_emacs_modifiers): New function.
7511 (mac_event_to_emacs_modifiers): New function.
7512 (mac_get_mouse_btn): New function.
7513 (mac_convert_event_ref): New function.
7514 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
7515 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
7516 mac_get_mouse_btn.
7517 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
7518
7519 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
7520 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
7521 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
7522 TOOL_BAR_EVENT for MAC_OS as well.
7523 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
7524 as for WINDOWS_NT.
7525 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
7526
7527 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
7528
75292002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
7530
7531 * xdisp.c (forward_to_next_line_start): Fix a condition that
7532 lead to a newline being skipped.
7533
75342002-08-02 Andrew Choi <akochoi@shaw.ca>
7535
7536 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
7537
75382002-08-01 Richard M. Stallman <rms@gnu.org>
7539
7540 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
7541
75422002-07-31 Andrew Choi <akochoi@shaw.ca>
7543
7544 * macfns.c: #undef init_process before #define-ing it.
7545
7546 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
7547 HAVE_CARBON is defined.
7548
75492002-07-31 Richard M. Stallman <rms@gnu.org>
7550
7551 * xmenu.c (set_frame_menubar): First parse all submenus,
7552 then make widget_value trees from them.
7553 Don't allocate any widget_value objects
7554 until we are done with the parsing.
7555 (parse_single_submenu): New function.
7556 (digest_single_submenu): New function.
7557 (single_submenu): Function deleted, replaced by those two.
7558
75592002-07-30 Juanma Barranquero <lektu@terra.es>
7560
7561 * w32proc.c (syms_of_ntproc): Fix docstring of
7562 `w32-get-true-file-attributes'.
7563
75642002-07-28 Richard M. Stallman <rms@gnu.org>
7565
7566 * s/hpux8.h (HPUX8): Define this before including hpux.h.
7567 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
7568
7569 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
7570
7571 * keyboard.c (make_lispy_event):
7572 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
7573 Explicitly clear up_modifier in event->modifiers.
7574
75752002-07-27 Richard M. Stallman <rms@gnu.org>
7576
7577 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
7578
7579 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
7580 for bar cursor.
7581
75822002-07-26 Kenichi Handa <handa@etl.go.jp>
7583
7584 * coding.c (detect_coding_iso2022): While checking a byte sequence
7585 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
7586 it in the normal loop.
7587
75882002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
7589
7590 * xterm.c (expose_overlaps): New function.
7591 (expose_window): Use it to fix the display of overlapping rows.
7592
7593 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
7594
75952002-07-23 Ken Raeburn <raeburn@gnu.org>
7596
7597 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
7598 since it only depends on XUINT.
7599
7600 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
7601 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
7602 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
7603 Macros deleted.
3947677c 7604
77d1daf2
AS
7605 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
7606 its value over other approaches.
7607 * sysdep.c (start_of_data): Don't define the function if a macro
7608 form has been defined.
8a8e19a3 7609
048addec
JD
76102002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
7611
7612 * xdisp.c (redisplay_updating_p): New variable.
7613 (init_iterator): Don't free realized faces when
7614 redisplay_updating_p is set.
7615 (redisplay_internal): Set redisplay_updating_p while updating
7616 the display.
7617
76182002-07-23 Richard M. Stallman <rms@gnu.org>
7619
7620 * editfns.c (Fmessage): Treat "" like nil.
7621
76222002-07-23 Kenichi Handa <handa@etl.go.jp>
7623
7624 * xdisp.c (face_before_or_after_it_pos):
7625 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
7626
76272002-07-22 Juanma Barranquero <lektu@terra.es>
7628
7629 * callproc.c (init_callproc) [DOS_NT]:
7630 Initialize Vshared_game_score_directory to nil.
7631 (syms_of_callproc) [DOS_NT]: Likewise.
7632
76332002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
7634
7635 * xdisp.c (display_line): Replace an abort with xassert.
7636
76372002-07-21 Richard M. Stallman <rms@gnu.org>
7638
7639 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
7640 and END_UNCHANGED when setting buffer_unchanged_p.
7641 Use current_matrix_up_to_date_p to decide whether to use
7642 try_cursor_movement.
7643
7644 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
7645
7646 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
7647
7648 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
7649 Set to nil if dir does not exist.
7650 (syms_of_callproc): Init unconditionally and simply.
7651
7652 * buffer.c (Fbuffer_list): Doc fix.
7653
76542002-07-21 Ken Raeburn <raeburn@gnu.org>
7655
7656 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
7657
7658 * buffer.c (mmap_realloc): When shrinking, make sure number of
7659 pages to unmap is rounded towards zero.
7660
7661 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
7662 (XSETINT): Deleted.
7663
7664 * m/att3b.h (XINT): Don't define.
7665 (VALBITS, VALMASK, XTYPE): Deleted.
7666 (DATA_SEG_BITS): Define.
7667 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
7668 ARRAY_MARK_FLAG): Deleted.
7669 (DATA_SEG_BITS): Define.
7670 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
7671 (DATA_SEG_BITS): Define.
7672
76732002-07-20 Richard M. Stallman <rms@gnu.org>
7674
7675 * print.c (print_error_message): New args CONTEXT and CALLER.
7676 Calls changed.
7677
7678 * lisp.h (print_error_message): Declare new args.
7679
7680 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
7681 and CONTEXT to print_error_message, don't print them here.
7682 For a Quit, don't use Vsignaling_function.
7683 Call message_log_maybe_newline.
7684
7685 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
7686
76872002-07-20 Kim F. Storm <storm@cua.dk>
7688
7689 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
7690
76912002-07-19 Ken Raeburn <raeburn@gnu.org>
7692
7693 * bytecode.c (struct byte_stack): Pointers into byte string now
7694 point to const.
7695 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
7696 const.
7697 * charset.h (BCOPY_SHORT): Source pointer now points to const.
7698 * coding.c (encode_eol, detect_coding, detect_eol):
7699 (decode_coding, encode_coding, detect_coding_system):
7700 Source strings now treated as const.
7701 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
7702 modify Lisp string contents.
7703 * coding.h (decode_coding, encode_coding, detect_coding,
7704 detect_eol): Declarations updated.
7705 * composite.c (compose_chars_in_text): Treat Lisp string contents
7706 as const.
7707 * dispnew.c (safe_bcopy): Source pointer now points to const.
7708 * lisp.h (STRING_COPYIN): New macro.
7709 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
7710 (internal_with_output_to_temp_buffer): Declarations updated.
7711 * print.c (temp_output_buffer_setup):
7712 (internal_with_output_to_temp_buffer): Buffer name argument is now
7713 pointer to const.
7714 * sound.c (struct sound_device): Function pointer field "write"
7715 buffer argument now points to const.
7716 (vox_write): Buffer argument points to const.
7717 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
7718 contents as const.
7719 * sysdep.c (emacs_write): Buffer pointer now const.
7720 * term.c (encode_terminal_code): Buffer pointer now const.
7721 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
7722 (x_face_list_fonts, x_update_menu_appearance):
7723 (hash_string_case_insensitive): Treat Lisp string contents as const.
7724
77252002-07-19 Juanma Barranquero <lektu@terra.es>
7726
7727 * fileio.c (Ffile_name_as_directory): Fix argument name in docstring.
7728 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
7729
7730 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
7731
7732 * fileio.c (syms_of_fileio): Likewise.
7733
77342002-07-18 Richard M. Stallman <rms@gnu.org>
7735
7736 * data.c (Fdefalias): Doc fix.
7737
77382002-07-17 Dave Love <fx@gnu.org>
7739
7740 * intervals.h (text_property_stickiness): Use P_.
7741
7742 * ccl.c: Remove `emacs' conditionals.
7743 (ccl_backtrace_table): Fix size spec.
7744 (ccl_driver): Fix type errors.
7745
77462002-07-16 Ken Raeburn <raeburn@gnu.org>
7747
7748 * alloc.c (xstrdup, make_string, make_unibyte_string)
7749 (make_multibyte_string, build_string): String pointer args now
7750 point to const.
7751 * charset.c (find_charset_in_text, c_string_width):
7752 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
7753 * fileio.c (report_file_error):
7754 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
7755 (count_combining_before, count_combining_after, insert_1_both):
7756 (insert, insert_and_inherit, insert_string):
7757 (insert_before_markers, insert_before_markers_and_inherit):
7758 * lread.c (intern, oblookup, hash_string):
7759 * minibuf.c (temp_echo_area_glyphs):
7760 * search.c (fast_c_string_match_ignore_case):
7761 * sysdep.c (emacs_open, set_file_times):
7762 * xfaces.c (xstricmp):
7763 * xdisp.c (store_frame_title, string_char_and_length):
7764 (message_dolog, message2, message2_nolog, set_message): Likewise.
7765 (set_message_1): Cast message string argument to const pointer.
7766 * editfns.c (general_insert_function): Insertion function now
7767 takes pointer to const for input data.
7768 * charset.h (find_charset_in_text, c_string_width):
7769 (parse_str_as_multibyte): Declarations updated.
7770 * dispextern.h (xstricmp): Declaration updated.
7771 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
7772 (count_size_as_multibyte, count_combining_before):
7773 (count_combining_after, insert_1, insert_1_both, message_dolog):
7774 (insert, insert_and_inherit, insert_before_markers)
7775 (insert_before_markers_and_inherit, set_message, message2):
7776 (message2_dolog, build_string, make_string, make_unibyte_string):
7777 (make_multibyte_string, intern, oblookup, report_file_error):
7778 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
7779 (emacs_open, xstrdup): Declarations updated.
7780 * systime.h (set_file_times): Declaration updated.
7781
7782 * charset.c (find_charset_in_text, lisp_string_width): Use const
7783 for pointer to lisp string data.
7784 * charset.h (FETCH_STRING_CHAR_ADVANCE):
7785 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
7786 * coding.c (Ffind_coding_systems_region_interval):
7787 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
7788 (Fmake_directory_internal, Fdelete_directory):
7789 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
7790 * fontset.c (font_family_registry, fs_query_fontset):
7791 (list_fontsets):
7792 * frame.c (Fframe_parameter):
7793 * keyboard.c (cmd_error_internal):
7794 * keymap.c (Fdescribe_buffer_bindings):
7795 * lread.c (complete_filename_p, openp):
7796 * minibuf.c (Fminibuffer_complete_word):
7797 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
7798 (face_before_or_after_it_pos, next_element_from_string):
7799 (get_overlay_arrow_glyph_row, display_mode_element):
7800 (decode_mode_spec_coding):
7801 * xterm.c (same_x_server): Likewise.
7802
7803 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
7804 settings of non-existent fields.
7805
7806 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
7807 copy a lisp value.
7808
7809 * lread.c (Fintern_soft): Use string macros instead of
7810 Lisp_String fields.
7811 * keyboard.c (echo_char, parse_modifiers_uncached):
7812 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
7813 * textprop.c (validate_interval_range, interval_of): Likewise.
7814
7815 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
7816
7817 * charset.h (FETCH_STRING_CHAR_ADVANCE)
7818 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
7819 XSTRING()->size_byte.
7820
7821 * lisp.h (SDATA, SREF): Produce rvalue.
7822 (SSET): New macro.
7823 * alloc.c (make_event_array): Use SSET for storing into a string.
7824 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
7825 a string.
7826 * casefiddle.c (casify_object): Use SSET.
7827 * charset.h (FETCH_STRING_CHAR_ADVANCE)
7828 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
7829 address of string contents.
7830 * data.c (Faref): Use SDATA.
7831 (Faset): Use SDATA, SSET.
7832 * dired.c (directory_files_internal): Use SSET.
7833 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
7834 (Fread_file_name): Use SREF, SSET.
7835 * fns.c (concat): Use SSET.
7836 (concat, Fdelete): Use SDATA.
7837 * insdel.c (insert_from_string_1): Use SDATA.
7838 * keyboard.c (Fevent_convert_list): Use SREF.
7839 * lread.c (Fload): Use SDATA, SSET.
7840 * macfns.c (validate_x_resource_name): Use SSET.
7841 * process.c (status_message): Use SSET.
7842 * search.c (wordify): Use SDATA.
7843 (Freplace_match): Use SREF.
7844 * w32fns.c (validate_x_resource_name): Use SSET.
7845 * xfns.c (validate_x_resource_name): Use SSET.
7846 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
7847
78482002-07-16 Richard M. Stallman <rms@gnu.org>
7849
7850 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
7851
7852 * xdisp.c (reconsider_clip_changes):
7853 Don't test prevent_redisplay_optimizations_p.
7854 (redisplay_internal): Test prevent_redisplay_optimizations_p
7855 along with clip_changed in some cases.
7856 (try_window_id): Likewise.
7857 (redisplay_window): New local var buffer_unchanged_p.
7858
7859 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
7860
7861 * process.c (create_process): Test USG_SUBTTY_WORKS.
7862 (process_send_signal): Clean up handling of GID.
7863 Detect errors in ioctls meant to set GID.
7864
7865 * window.c (temp_output_buffer_show):
7866 Don't set prevent_redisplay_optimizations_p.
7867
78682002-07-15 Juanma Barranquero <lektu@terra.es>
7869
7870 * eval.c (Fdefvaralias): Add docstring argument.
7871
78722002-07-15 Ken Raeburn <raeburn@gnu.org>
7873
7874 * lisp.h (STRING_INTERVALS): Produce rvalue.
7875 (STRING_SET_INTERVALS): New macro.
7876 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
7877 * fns.c (Fstring_as_multibyte): Likewise.
7878 * intervals.c (balance_possible_root_interval, delete_interval)
7879 (create_root_interval, copy_intervals_to_string): Likewise.
7880 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
7881 instead of 0.
7882
78832002-07-14 Ken Raeburn <raeburn@gnu.org>
7884
7885 * lisp.h (STRING_SET_CHARS): New macro.
7886 (SCHARS, SBYTES): Produce rvalues.
7887 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
7888 * fns.c (concat): Likewise.
7889 * lread.c (read_vector): Likewise.
7890
7891 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
7892 (STRING_SET_UNIBYTE): New macro.
7893 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
7894 length of -1) changed to use STRING_SET_UNIBYTE.
7895 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
7896 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
7897 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
7898 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
7899 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
7900 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
7901 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
7902 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
7903 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
7904 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
7905 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
7906 STRING_BYTES or indirection changed to SCHARS, SBYTES,
7907 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
7908 unchanged for now.
7909
79102002-07-13 Kim F. Storm <storm@cua.dk>
7911
7912 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
7913
79142002-07-12 Richard M. Stallman <rms@gnu.org>
7915
7916 * fileio.c (Fwrite_region): Doc fix.
7917
7918 * print.c (print_error_message): Don't handle Vsignaling_function here.
7919
7920 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
7921 (command_loop_1): Avoid certain actions after memory-full error.
7922
7923 * eval.c (Fsignal): Don't call cancel_hourglass.
7924 For a memory-full error, don't call Vsignal_hook_function
7925 and don't set Vsignaling_function.
7926
7927 * process.c (process_send_signal): Add abort call.
7928
79292002-07-11 Markus Rost <rost@math.ohio-state.edu>
7930
7931 * keymap.c (Fkey_binding): Fix typo.
7932
79332002-07-11 Richard M. Stallman <rms@gnu.org>
7934
7935 * alloc.c (Vmemory_full): New variable.
7936 (Vmemory_signal_data): Renamed from memory_signal_data.
7937 Uses changed.
7938 (syms_of_alloc): Defvar them.
7939 (memory_full, buffer_memory_full): Set Vmemory_full.
7940
7941 * lisp.h (Vmemory_full): Add declaration.
7942 (current_column, indented_beyond_p): Change declaration.
7943
7944 * indent.c (last_known_column): Declare as double, not float.
7945 (current_column, current_column_1, string_display_width)
7946 (position_indentation): Return `double'.
7947 (indented_beyond_p): Arg `column' is `double'. Callers changed.
7948
7949 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
7950 (back_to_previous_visible_line_start)
7951 (reseat_at_next_visible_line_start, next_element_from_buffer):
7952 Use `double', not `float', when calling indented_beyond_p.
7953
7954 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
7955
7956 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
7957
79582002-07-11 Juanma Barranquero <lektu@terra.es>
7959
7960 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
7961 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
7962 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
7963 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
7964 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
7965 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
7966
79672002-07-10 Juanma Barranquero <lektu@terra.es>
7968
7969 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE. All callers
7970 changed.
7971
79722002-07-09 Stefan Monnier <monnier@cs.yale.edu>
7973
7974 * data.c (Fdefalias): Add an optional `docstring' argument.
7975 (set_internal, Fsetq_default): Use XCAR/XCDR.
7976
7977 * composite.c (HASH_VALUE, HASH_KEY):
7978 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
7979
79802002-07-09 Kenichi Handa <handa@etl.go.jp>
7981
7982 * callproc.c (Fcall_process): Fix previous change.
7983
79842002-07-07 Stefan Monnier <monnier@cs.yale.edu>
7985
7986 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
7987 Add support for hash-tables.
7988 (Ftry_completion): Return t even if the string appears multiple times.
7989
7990 * fns.c (Fnconc): Use XCDR.
7991 (Fprovide): Use CONSP and XCDR.
7992 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
7993 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
7994 (Fmake_hash_table): Accept `:size nil'.
7995 (Fmakehash): Delete: moved to subr.el.
7996 (syms_of_fns): Don't defsubr makehash.
7997
7998 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
7999 (HASH_TABLE_SIZE): Move from fns.c.
8000
80012002-07-07 Richard M. Stallman <rms@gnu.org>
8002
8003 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
8004 Instead just return 0 when there is something to be done.
8005 (try_scrolling): If make_cursor_line_fully_visible returns 0,
8006 retry scrolling as if cursor were off the bottom.
8007 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
8008 return CURSOR_MOVEMENT_MUST_SCROLL.
8009 (redisplay_window): If make_cursor_line_fully_visible returns 0,
8010 go to try_to_scroll.
8011
8012 * buffer.c (Fbuffer_local_value): Store current value into its binding
8013 so we get the up-to-date value for the binding that is loaded.
8014
8015 * eval.c (Fdefmacro): Doc fix.
8016
80172002-07-05 Dave Love <fx@gnu.org>
8018
8019 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
8020 correctly.
8021
8022 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
8023 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
8024 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
8025 CCL_LookupCharConstTbl.
8026 (syms_of_ccl): Defvar translation-hash-table-vector.
8027
80282002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8029
8030 * xdisp.c: Remove unused variable `face'.
8031
80322002-07-04 Juanma Barranquero <lektu@terra.es>
8033
8034 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
8035 obsolescence information.
8036
80372002-07-03 Andrew Choi <akochoi@shaw.ca>
8038
8039 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
8040 pattern. Search cache first.
8041 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
8042 for Japanese font.
8043 (XLoadQueryFont): Use it.
8044
80452002-07-02 Richard M. Stallman <rms@gnu.org>
8046
8047 * keymap.c (Fdefine_key): Doc fix.
8048
8049 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
8050
80512002-07-02 Juanma Barranquero <lektu@terra.es>
8052
8053 * keymap.c (syms_of_keymap): Fix typo.
8054
80552002-07-01 Andrew Choi <akochoi@shaw.ca>
8056
8057 * s/darwin.h: Define POSIX_SIGNALS.
8058
8059 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
8060 and FSRefMakePath to convert FSSpec returned with Apple Event to
8061 Posix pathname.
8062 (mac_initialize) [TARGET_API_MAC_CARBON]:
8063 Call init_required_apple_events and disable the `Quit' menu item
8064 provided automatically by the Carbon Toolbox.
8065
80662002-07-01 Dave Love <fx@gnu.org>
8067
8068 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
8069 for K&R.
8070
8071 * xterm.c: Fix prototype for K&R.
8072
8073 * term.c (costs_set): Declare static, non-initialized for pcc.
8074
80752002-07-01 Richard M. Stallman <rms@gnu.org>
8076
8077 * keyboard.c (timer_last_idleness_start_time): New variable.
8078 (timer_start_idle): Set that.
8079 (read_key_sequence): Use that to reset timer_idleness_start_time
8080 to previous value.
8081
8082 * window.c (Frecenter): With arg, set optional_new_start.
8083
8084 * xdisp.c (redisplay_internal): Make optional_new_start really work.
8085
8086 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
8087 buffer for completion.
8088
80892002-06-29 Ken Raeburn <raeburn@gnu.org>
8090
8091 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
8092
80932002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8094
8095 * keyboard.c (readable_filtered_events): New function that filters
8096 FOCUS_IN_EVENT depending on parameter.
8097 (readable_events): Calls readable_filtered_events, not filtering
8098 FOCUS_IN_EVENT.
8099 (get_filtered_input_pending): New function, filtering parameter passed
8100 to readable_filtered_events.
8101 (get_input_pending): Calls get_filtered_input_pending, not filtering
8102 FOCUS_IN_EVENT.
8103 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
8104 FOCUS_IN_EVENT.
8105
8106 * xterm.h (struct x_output): Add focus_state.
8107
8108 * xterm.c (x_focus_changed): New function.
8109 (x_detect_focus_change): New function.
8110 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
8111 EnterNotify and LeaveNotify to track X focus changes.
8112
81132002-06-28 Andreas Schwab <schwab@suse.de>
8114
8115 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
8116
81172002-06-27 Kim F. Storm <storm@cua.dk>
8118
8119 * xdisp.c: (mode_line_string_list, mode_line_string_face)
8120 (mode_line_string_face_prop): New variables.
8121 (store_mode_line_string): New function.
8122 (display_mode_element): Use store_mode_line_string to
8123 add mode-line string elements to mode_line_string_list
8124 when mode_line_string_list is non-nil.
8125 (Fformat_mode_line): Now returns propertized string by
8126 default. New arg NO-PROPS to ignore properties.
8127 (decode_mode_spec): Only add two dashes for %- in propertized
8128 mode-line string.
8129 (syms_of_xdisp): Init and staticpro mode_line_string_list.
8130
81312002-06-27 Stefan Monnier <monnier@cs.yale.edu>
8132
8133 * minibuf.c (minibuffer_completion_contents): Add return type.
8134
81352002-06-27 Juanma Barranquero <lektu@terra.es>
8136
8137 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
8138
81392002-06-26 Juanma Barranquero <lektu@terra.es>
8140
8141 * fileio.c (read_file_name_cleanup): Add missing return.
8142
81432002-06-26 Richard M. Stallman <rms@gnu.org>
8144
8145 * window.c (Frecenter): Don't set force_start flag.
8146
8147 * minibuf.c (do_completion, Fminibuffer_complete_word)
8148 (Fminibuffer_completion_help): Complete just the text before point.
8149 (minibuffer_completion_contents): New function.
8150
8151 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
8152
8153 * frame.c (frames_bury_buffer): Function deleted.
8154
81552002-06-25 Miles Bader <miles@gnu.org>
8156
8157 * callint.c (Fcall_interactively): When checking to see if doprnt hit
8158 the end of callint_message, allow for a terminating '\0'.
8159
81602002-06-24 Juanma Barranquero <lektu@terra.es>
8161
8162 * w32select.c: Include composite.h
8163
8164 * w16select.c: Likewise.
8165
81662002-06-24 Kenichi Handa <handa@etl.go.jp>
8167
8168 * callproc.c (Fcall_process): If code detection is necessary,
8169 call detect_coding directly here.
8170
8171 * coding.c (detect_eol): Preserve coding->cmp_data.
8172
8173 * w16select.c (Fw16_get_clipboard_data):
8174 * w32fns.c (w32_to_x_font):
8175 * w32select.c (Fw32_get_clipboard_data):
8176 * xselect.c (selection_data_to_lisp_data):
8177 * xterm.c (XTread_socket): Disable composition handling.
8178
81792002-06-24 Stefan Monnier <monnier@cs.yale.edu>
8180
8181 * print.c (temp_output_buffer_setup): Kill all local variables.
8182
81832002-06-22 Stefan Monnier <monnier@cs.yale.edu>
8184
8185 * lread.c (Fread): Remove redundant and imprecise declaration.
8186
8187 * xfns.c (check_x_display_info): Use check_x_frame.
8188
8189 * .gdbinit (xprintsym): Use the new `xname' field.
8190 (xsymbol): Use it.
8191
81922002-06-22 Jason Rumney <jasonr@gnu.org>
8193
8194 * w32fns.c (file_dialog_callback): New function.
8195 (Fx_file_dialog): Allow selecting directories as well as files.
8196
81972002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8198
8199 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
8200 OpenBSD. Add support for mipseb-*-netbsd* machines.
8201
82022002-06-17 Andrew Choi <akochoi@shaw.ca>
8203
8204 * macterm.c (mac_scroll_area): Set foreground and backcolor to
8205 black and white before scrolling. Restore frame background and
8206 foreground color after scrolling.
8207 (do_window_update): Call XClearWindow before calling expose_frame.
8208 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
8209 FRAME_FOREGROUND_PIXEL of frame.
8210
8211 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
8212 test Mac command key as <ALT> key.
8213
82142002-06-17 Stefan Monnier <monnier@cs.yale.edu>
8215
8216 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
8217
8218 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
8219 Lookup keys in function-key-map immediately so that key-translation-map
8220 can be applied earlier.
8221 Remove function_key_possible and key_translation_possible, replaced
8222 by checking `keytran_start < t'.
8223
8224 * .gdbinit (xsymbol): Use the new `xname' field.
8225
82262002-06-17 Andrew Choi <akochoi@shaw.ca>
8227
8228 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
8229 test Mac command key as <ALT> key.
8230
8231 * mac.c (do_applescript): Call initialize_applescript if necessary
8232 when first called. Dispose of result_desc only when there is no error.
8233 (Fdo_applescript): Use %d format specifier instead of %ld.
8234
82352002-06-16 Andrew Choi <akochoi@shaw.ca>
8236
8237 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
8238 of FrontWindow for cases keyDown and autoKey.
8239
8240 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
8241 Vdefault_fontset to Monaco with mac-roman coding.
8242
8243 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
8244 init_process before and after inclusion of Carbon/Carbon.h, resp.
8245
8246 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
8247 cursor_gc.
8248 (add_font_name_table_entry): New function.
8249 (init_font_name_table): Use add_font_name_table_entry; add italic,
8250 bold, and bold-italic entries for truetype fonts.
8251
8252 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
8253 for Mac too.
8254 (try_font_list) [MAC_OS]: If no font matches given registry, try
8255 fonts with any registry matching face_family.
8256 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
8257
8258 * s/darwin.h: If autoconf detects the Ncurses library, define
8259 LIBS_TERMCAP to -lncurses to use it.
8260
82612002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
8262
8263 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
8264
82652002-06-15 Richard M. Stallman <rms@gnu.org>
8266
8267 * window.c (Fset_window_configuration): Explicitly preserve
8268 the point value that new_current_buffer had at the start.
8269
82702002-06-14 Juanma Barranquero <lektu@terra.es>
8271
8272 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
8273 Fix typos.
8274
82752002-06-14 Kim F. Storm <storm@cua.dk>
8276
8277 * insdel.c (insert_1_both, insert_from_string_1)
8278 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
8279 insert happened in the end_unchanged region. Otherwise, the
8280 redisplay may be confused and duplicate the last line in the
8281 buffer [seen after save-buffer when require-final-newline==t].
8282
82832002-06-13 Jason Rumney <jasonr@gnu.org>
8284
8285 * w32.c (init_environment): Remove EMACSLOCKDIR.
8286 (stat): Swap _S_IFDIR and _S_IFREG.
8287
82882002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8289
8290 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
8291 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
8292 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
8293 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
8294 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
8295 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
8296 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
8297 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
8298 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
8299 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
8300 SELECTION_REQUEST_EVENT, selection_clear_event to
8301 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
8302 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
8303 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
8304 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
8305 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
8306 no_event to NO_EVENT.
8307
83082002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8309
8310 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
8311
83122002-06-12 Stefan Monnier <monnier@cs.yale.edu>
8313
8314 * intervals.c (textget): Don't forget to `return'.
8315 (lookup_char_property): Use XCAR/XCDR.
8316
83172002-06-12 Juanma Barranquero <lektu@terra.es>
8318
8319 * xdisp.c (Fformat_mode_line): Fix typo.
8320
83212002-06-12 Kim F. Storm <storm@cua.dk>
8322
8323 * xdisp.c (Fformat_mode_line): New function.
8324 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
8325 (store_frame_title_char, store_frame_title): Use unconditionally.
8326 (init_xdisp): Defsubr Fformat_mode_line.
8327 Initialize frame_title_buf etc. unconditionally.
8328
83292002-06-11 Stefan Monnier <monnier@cs.yale.edu>
8330
8331 * keyboard.c (read_key_sequence):
8332 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
8333 things through those maps after downcasing events.
8334 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
8335 applies after function-key-map.
8336 Make sure that keytran can be done in the middle in the sequence.
8337 Be careful not to throw away events past the one we downcase.
8338
8339 * lread.c (read_integer): Remove unused var `tem'.
8340 (read1): Fix int/Lisp_Object mixup.
8341
8342 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
8343
83442002-06-11 Richard M. Stallman <rms@gnu.org>
8345
8346 * keyboard.c (readable_events): Ignore any number of
8347 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
8348
83492002-06-09 Miles Bader <miles@gnu.org>
8350
8351 * xfaces.c (Ftty_supports_face_attributes_p): New function.
8352 (parse_rgb_list, tty_lookup_color): New functions.
8353 (tty_defined_color): Use `tty_lookup_color' to do all the work.
8354 (color_distance, Fcolor_distance): New functions.
8355 (TTY_SAME_COLOR_THRESHOLD): New macro.
8356 (Qtty_color_standard_values): New variable.
8357 (syms_of_xfaces): Initialize new vars & functions.
8358
83592002-06-08 Colin Walters <walters@verbum.org>
8360
8361 * textprop.c (Vchar_property_alias_alist): New variable.
8362 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
8363
8364 * intervals.c (lookup_char_property): New function for looking up
8365 overlay and text properties, created from textget.
8366 (textget): Use it.
8367
8368 * intervals.h (lookup_char_property): Declare.
8369 (Vchar_property_alias_alist): Declare.
8370
8371 * buffer.c (Foverlay_get): Use lookup_char_property.
8372
83732002-06-07 Sam Steingold <sds@gnu.org>
8374
8375 * xselect.c (lisp_data_to_selection_data): Fix last change:
8376 *data_ret is not a Lisp string, while unibyte_string is.
8377
83782002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
8379
8380 * xselect.c (lisp_data_to_selection_data): Fix last change:
8381 set size_ret.
8382
83832002-06-07 Andreas Schwab <schwab@suse.de>
8384
8385 * m/amdx86-64.h: New file.
8386
83872002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
8388
8389 * fns.c (Fstring_make_unibyte): Doc fix.
8390
8391 * xselect.c (lisp_data_to_selection_data): If the requested type
8392 is STRING, call string_make_unibyte to encode the selected text
8393 as a string.
8394
8395 * window.c (Fset_window_hscroll): Doc fix.
8396
83972002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8398
8399 * fileio.c (choose_write_coding_system):
8400 Call select-safe-coding-system properly.
8401
84022002-06-03 Richard M. Stallman <rms@gnu.org>
8403
8404 * xdisp.c (message_with_string): Error if STRING is not a string.
8405
8406 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
8407
8408 * fileio.c (choose_write_coding_system): Pass FILE arg to
8409 Vselect_safe_coding_system_function.
8410
84112002-06-03 Ken Raeburn <raeburn@gnu.org>
8412
8413 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
8414
84152002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
8416
8417 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
8418 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
8419 * keymap.c (describe_command): Likewise.
8420 * minibuf.c (read_minibuf): Likewise.
8421
8422 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
8423 Cast `current_column' return value to int.
8424 (back_to_previous_visible_line_start)
8425 (reseat_at_next_visible_line_start, next_element_from_buffer):
8426 Cast `indented_beyond_p' 3rd arg to float.
8427
8428 * indent.c (last_known_column): Now a float.
8429 (current_column_1, position_indentation, current_column)
8430 (string_display_width): Return float.
8431 (Fcurrent_column): Cast `current_column' return value to int.
8432 (Fcurrent_indentation): Cast `position_indentation' retval to int.
8433 (indented_beyond_p): Third arg now a float.
8434 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
8435
8436 * lisp.h (current_column): Now returns float.
8437 (indented_beyond_p): 3rd arg now a float.
8438
84392002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
8440
8441 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
8442 is Qcompound_text_with_extensions.
8443
8444 * xselect.c (lisp_data_to_selection_data): Always set selection
8445 type as string if x_encode_text returns streingp non-NULL.
8446
8447 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
8448
84492002-05-30 Richard M. Stallman <rms@gnu.org>
8450
8451 * window.c (Fset_window_configuration): Correct the handling
8452 of point in current buffer, to work with multiple windows.
8453
84542002-05-29 Colin Walters <walters@verbum.org>
8455
8456 * lread.c (Fread_from_string): Don't depend on order of evaluation
8457 for C function parameters.
8458
84592002-05-28 Richard M. Stallman <rms@gnu.org>
8460
8461 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
8462 way for blinked-off state and for a nonselected window.
8463
8464 * window.c (window_scroll_pixel_based): Don't call Fbolp;
8465 instead, see if the new start pos is at beginning of line.
8466
8467 * fileio.c (Fwrite_region): If START is a string, don't
8468 make any annotations.
8469
8470 * eval.c (syms_of_eval): Doc fix.
8471
84722002-05-28 Colin Walters <walters@debian.org>
8473
8474 * emacs.c (USAGE1): Add --no-splash.
8475 (standard_args): Ditto.
8476
84772002-05-28 Colin Walters <walters@gnu.org>
8478
8479 * lread.c (readchar_count): New variable.
8480 (readchar): Increment it.
8481 (unreadchar): Decrement it.
8482 (read_multibyte): Decrement it.
8483 (Vread_with_symbol_positions): New variable.
8484 (Vread_symbol_positions_list): New variable.
8485 (read_internal_start): New function, created from Fread and
8486 Fread_from_string. Handle Vread_symbol_positions_list and
8487 Vread_with_symbol_positions.
8488 (readevalloop, Fread, Fread_from_string): Use it.
8489 (read1): Use readchar_count to add symbol positions to
8490 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
8491 (syms_of_lread): DEFVAR_LISP and initialize them.
8492
8493 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
8494 (substitute_object_recurse, substitute_object_in_subtree)
8495 (substitute_in_interval): Prototype.
8496 (read_multibyte): Return c if it's less than zero.
8497
84982002-05-28 Kim F. Storm <storm@cua.dk>
8499
8500 * fileio.c (Fread_file_name_internal): Added brute-force
8501 speed up for using predicate file-directory-p.
8502
85032002-05-28 Kim F. Storm <storm@cua.dk>
8504
8505 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
8506 New variables.
8507 (syms_of_fileio): DEFVAR_LISP them.
8508 (read_file_name_cleanup): New unwind function.
8509 (Fread_file_name_internal): Only return completions satifying
8510 Vread_file_name_predicate. Temporarily unwind protect and rebind
8511 default-directory while checking completions against the predicate.
8512 (Fread_file_name): Added PREDICATE argument. Specbind it to
8513 Vread_file_name_predicate during completion.
8514 Call Vread_file_name_function to read the file name if non-nil.
8515
8516 * lisp.h (Fread_file_name): Now has 6 args.
8517
8518 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
8519 predicate for Fread_file_name when reading directory name.
8520 Supply Qnil for predicate in other calls to Fread_file_name.
8521
85222002-05-26 Miles Bader <miles@gnu.org>
8523
8524 * term.c (tty_capable_p): New function.
8525 * dispextern.h (tty_capable_p): New function declaration.
8526 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
8527 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
8528
85292002-05-23 Stefan Monnier <monnier@cs.yale.edu>
8530
8531 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
8532 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
8533 (Vwrite_region_annotate_functions): Docstring fix.
8534
85352002-05-23 Kim F. Storm <storm@cua.dk>
8536
8537 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
8538 phys_cursor's hpos is overwritten. This is still not completely
8539 correct, as it doesn't really make sense to use hpos at all to
8540 get the cursor glyph (as that is relative to the width of the
8541 characters on the line, which may have changed during the update).
8542
85432002-05-22 Jason Rumney <jasonr@gnu.org>
8544
8545 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
8546 Lisp_Object.
8547 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
8548 Use modified enumfont_t struct.
8549
8550 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
8551
8552 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
8553 Handle the `hbar' cursor type.
8554 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
8555
8556 * w32fns.c (Qhbar): New variable.
8557 (x_specified_cursor_type): Use it.
8558
85592002-05-21 Ken Raeburn <raeburn@gnu.org>
8560
8561 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
8562 now, when the address is needed.
8563
85642002-05-21 Colin Walters <walters@gnu.org>
8565
8566 * Makefile.in (shortlisp): Add font-core.el.
8567
85682002-05-20 Richard M. Stallman <rms@gnu.org>
8569
8570 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
8571
8572 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
8573 equivalent key bindings here.
8574
85752002-05-20 Ken Raeburn <raeburn@gnu.org>
8576
8577 Change symbol structure to contain a lisp object for the symbol
8578 name:
8579 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
8580 object field named "xname".
8581 (SYMBOL_NAME): New macro.
8582 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
8583 name field.
8584 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
8585 (mark_object, gc_sweep): Use symbol xname field and XSTRING
8586 instead of name field.
8587 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
8588 SYMBOL_NAME instead of XSYMBOL and name field.
8589 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
8590 instead of XSYMBOL and name field.
8591 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
8592 and SYMBOL_NAME instead of XSYMBOL and name field.
8593 * coding.c (Fread_coding_system, code_convert_region1)
8594 (code_convert_string1, code_convert_string_norecord)
8595 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
8596 XSYMBOL and name field.
8597 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
8598 (Fmake_variable_buffer_local, Fmake_local_variable)
8599 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
8600 of XSYMBOL and name field.
8601 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
8602 XSYMBOL and name field.
8603 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
8604 instead of XSYMBOL and name field.
8605 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
8606 XSYMBOL and name field.
8607 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
8608 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
8609 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
8610 instead of XSYMBOL and name field.
8611 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
8612 (parse_modifiers, apply_modifiers, Fevent_convert_list)
8613 (parse_solitary_modifier, Fexecute_extended_command):
8614 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
8615 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
8616 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
8617 of XSYMBOL and name field.
8618 (describe_command, describe_translation): Use SYMBOL_NAME and
8619 assignment instead of XSYMBOL and name field and XSETSTRING.
8620 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
8621 instead of XSYMBOL and name field.
8622 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
8623 name field and XSETSTRING.
8624 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
8625 of XSYMBOL and name field.
8626 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
8627 assignment instead of XSYMBOL and name field and XSETSTRING.
8628 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
8629 XSTRING instead of XSYMBOL and name field.
8630 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
8631 and XSTRING instead of XSYMBOL and name field.
8632 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
8633 and XSTRING instead of XSYMBOL and name field.
8634 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
8635 XSTRING instead of XSYMBOL and name field.
8636 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
8637 of XSYMBOL and name field.
8638 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
8639 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
8640
86412002-05-19 Ken Raeburn <raeburn@gnu.org>
8642
8643 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
8644 and XCDR real rvalues in most configurations.
8645
8646 * buffer.c (fix_overlays_in_range, fix_overlays_before):
8647 Don't take the address of the cdr part of a cons cell; instead, track
8648 the parent cell and call XSETCDR, or set the variable for the head
8649 of the list if we haven't started down the list yet.
8650
86512002-05-19 Richard M. Stallman <rms@gnu.org>
8652
8653 * doc.c (reread_doc_file): Don't ask for confirmation.
8654
86552002-05-18 Jason Rumney <jasonr@gnu.org>
8656
8657 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
8658 (xbm_load_image): Use it.
8659 (xbm_load): Ditto.
8660 (xbm_read_bitmap_data): Reverted to xfns.c version.
8661 From David Ponce <david@dponce.com>.
8662
86632002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
8664
8665 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
8666 2.02 and later.
8667
86682002-05-16 Juanma Barranquero <lektu@terra.es>
8669
8670 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
8671
86722002-05-15 Stefan Monnier <monnier@cs.yale.edu>
8673
8674 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
8675 meaningful test.
8676 (read_char_minibuf_menu_prompt): Fix typo.
8677
86782002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
8679
8680 * eval.c (Fcommandp): Doc fix.
8681
86822002-05-13 Stefan Monnier <monnier@cs.yale.edu>
8683
8684 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
8685 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
8686 (Fset_keymap_parent): Gcpro a bit more.
8687 (access_keymap): Gcpro around meta_map call and around the main loop.
8688 (get_keyelt): Gcpro when following indirect references.
8689 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
8690 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
8691 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
8692 Remove useless ad-hoc remap code.
8693
86942002-05-13 Richard M. Stallman <rms@gnu.org>
8695
8696 * search.c (search_buffer): Give up boyer moore search if inverse
8697 translation change charset_base.
8698
86992002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
8700
8701 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
8702 characters is carried over from the previous block of text, adjust
8703 coding->produced to account for the extra character.
8704
87052002-05-11 Andreas Schwab <schwab@suse.de>
8706
8707 * coding.c (intersection): Keep the elements of the returned list
8708 in the same order as in the first list.
8709
87102002-05-11 Kim F. Storm <storm@cua.dk>
8711
8712 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
8713 only update cmm_size if realloc actually succeeds.
8714 Testing with initial size of 2 elements revealed that using
8715 realloc on GNU/Linux would cause a random trap in xmalloc
8716 later on, so I rewrote the code to use malloc/bcopy/free instead
8717 of realloc.
8718
87192002-05-10 Jason Rumney <jasonr@gnu.org>
8720
8721 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
8722
87232002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
8724
8725 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
8726 parens, to ensure correct evaluation order.
8727
87282002-05-10 Kim F. Storm <storm@cua.dk>
8729
8730 * keymap.c (Vemulation_mode_map_alists): New variable.
8731 (syms_of_keymap): DEFVAR_LISP it.
8732 (current_minor_maps): Process keymap alists in that list before
8733 minor-mode-overriding-map-alist and minor-mode-map-alist.
8734
87352002-05-09 Richard M. Stallman <rms@gnu.org>
8736
8737 * search.c (Freplace_match): Doc fix.
8738
87392002-05-09 Kim F. Storm <storm@cua.dk>
8740
8741 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
8742 Enlarge cursor rectangle drawn around image with non-zero relief.
8743
8744 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
8745 Enlarge cursor rectangle drawn around image with non-zero relief.
8746
8747 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
8748 Enlarge cursor rectangle drawn around image with non-zero relief.
8749
87502002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
8751
8752 * xselect.c (lisp_data_to_selection_data): Don't set selection
8753 type if comes from the Lisp object's car. If the selection
8754 contains a pure ASCII text, always return QSTRING as its type.
8755
87562002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8757
8758 * mac.c (mac-cut-function): Doc fix.
8759
87602002-05-05 Richard M. Stallman <rms@gnu.org>
8761
8762 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
8763
87642002-05-04 Jason Rumney <jasonr@gnu.org>
8765
8766 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
8767 for event-click-count.
8768
8769 * process.c (init_process): Only add server subfeature if we can
8770 use non-blocking I/O.
8771
87722002-05-04 Andrew Choi <akochoi@shaw.ca>
8773
8774 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
8775 repeatedly.
8776
87772002-05-03 Jason Rumney <jasonr@gnu.org>
8778
8779 * process.c (Fmake_network_process): Only support server sockets
8780 when we can make them non-blocking.
8781
8782 * s/ms-w32.h (HAVE_SELECT): Define.
8783
8784 * w32.h (FILE_NDELAY): New flag.
8785
8786 * w32.c (sys_getpeername, fcntl): New functions.
8787 (_sys_read_ahead): Temporarily block on non-blocking sockets.
8788
8789 * w32proc.c: include sys/file.h.
8790
87912002-05-03 Colin Walters <walters@verbum.org>
8792
8793 * callproc.c (Vgame_score_directory): Renamed to
8794 Vshared_game_score_directory.
8795
87962002-04-30 Richard M. Stallman <rms@gnu.org>
8797
8798 * s/gnu.h [emacs]: Include stdio.h.
8799 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
8800
8801 * eval.c (do_autoload): Error if called while preparing to dump.
8802
8803 * fns.c (Frequire): Error if need to load while preparing to dump.
8804
88052002-04-28 Colin Walters <walters@verbum.org>
8806
8807 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
8808 Default to "~/.emacs.d/games".
8809
88102002-04-29 Stefan Monnier <monnier@cs.yale.edu>
8811
8812 * lread.c (openp): Change arg exec_only to predicate.
8813 (build_load_history): Use XCAR/XCDR.
8814 (Flocate_file_internal): New fun.
8815 (syms_of_lread): Defsubr it.
8816 (Fload): Update call to openp.
8817
8818 * lisp.h (openp): Update prototype.
8819
8820 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
8821 * w32proc.c (sys_spawnve):
8822 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
8823 * w32.c (check_windows_init_file):
8824 * sound.c (Fplay_sound_internal):
8825 * process.c (Fstart_process):
8826 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
8827 * mac.c (run_mac_command):
8828 * emacs.c (init_cmdargs):
8829 * callproc.c (Fcall_process): Update call to openp.
8830
8831 * textprop.c (remove_properties): Don't use XCAR without CONSP.
8832
8833 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
8834
88352002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8836
8837 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
8838 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
8839
88402002-04-28 Richard M. Stallman <rms@gnu.org>
8841
8842 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
8843
8844 * eval.c (Fcommandp): New arg for_call_interactively.
8845 * lisp.h (Fcommandp): Declare new arg.
8846
88472002-04-28 Jason Rumney <jasonr@gnu.org>
8848
8849 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
8850
8851 * w32.c (stat, fstat): Use file index information to generate
8852 inodes for directories where available.
8853
88542002-04-26 Andrew Choi <akochoi@shaw.ca>
8855
8856 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
8857 [HAVE_CARBON]: Include Mac object files.
8858
8859 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
8860 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
8861 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
8862 MAC_OSX, and MAC_OS instead of macintosh.
8863
8864 * editfns.c [MAC_OS8]: Include stdio.h.
8865
8866 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
8867
8868 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
8869 Apple Monaco.
8870
8871 * process.c: Declare QCfamily and QCfilter as extern.
8872 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
8873 calling select.
8874
8875 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
8876
8877 * tparam.c [MAC_OSX]: Don't define BC and UP.
8878
8879 * config.in [HAVE_CARBON]: Add.
8880
8881 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
8882 Move here from mac/src and mac/inc.
8883
8884 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
8885
88862002-04-26 Gerd Moellmann <gerd@gnu.org>
8887
8888 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
8889 Compute phys_cursor_width from the x position returned
8890 by x_draw_glyhs, which is cheaper.
8891 (x_display_and_set_cursor): Compute the buffer-local value
8892 of `cursor-in-non-selected-windows' only when needed.
8893
88942002-04-25 Gerd Moellmann <gerd@gnu.org>
8895
8896 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
8897 cursor on a stretch glyph has a width that depends on
8898 x_stretch_cursor_p.
8899
89002002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8901
8902 * abbrev.c (abbrev-start-location): Doc fix.
8903
8904 * indent.c (Fvertical_motion): Fix last change.
8905
89062002-04-25 Gerd Moellmann <gerd@gnu.org>
8907
8908 * indent.c (Fvertical_motion): Move to the start of the line
8909 containing PT before moving up or down.
8910
89112002-04-24 Gerd Moellmann <gerd@gnu.org>
8912
8913 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
8914 case of writing a whole row, more or less analogous to the case of
8915 writing only parts of a row.
8916
8917 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
8918 0 for NO_CURSOR.
8919
8920 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
8921
89222002-04-23 Colin Walters <walters@verbum.org>
8923
8924 * buffer.c (syms_of_buffer): Doc fix.
8925
89262002-04-23 Gerd Moellmann <gerd@gnu.org>
8927
8928 * xterm.c (notice_overwritten_cursor): Handle the special case
8929 of the cursor being in the first blank non-text line at the
8930 end of a window.
8931
8932 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
8933 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
8934 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
8935 bar cursors only, to make phys_cursor_width contain what its name
8936 suggests.
8937 (notice_overwritten_cursor): Consider the cursor image erased if
8938 the output area intersects the cursor image in y-direction.
8939
89402002-04-23 Simon Marshall <simon@gnu.org>
8941
8942 * xfns.c (x_set_mouse_color): Change default for cross_cursor
8943 to XC_hand2.
8944
89452002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8946
8947 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
8948
89492002-04-22 Kim F. Storm <storm@cua.dk>
8950
8951 * textprop.c (remove_properties): Fixed trap for malformed plist.
8952
89532002-04-22 Richard M. Stallman <rms@gnu.org>
8954
8955 * cmds.c (Fend_of_line): Handle intangible text in mid line.
8956
8957 * window.c (make_window): Initialize height_fixed_p,
8958 last_cursor_off_p, and p->cursor_off_p slots.
8959
89602002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8961
8962 * fns.c (use-dialog-box): Doc fix.
8963
89642002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8965
8966 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
8967 variables `row', `i' and `area'.
8968 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
8969 toolkit library.
8970
89712002-04-19 Stefan Monnier <monnier@cs.yale.edu>
8972
8973 * xfaces.c (clear_font_table): Don't free the default font of
8974 a frame even if it's on another display.
8975 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
8976 that could be Qt.
8977
89782002-04-19 Juanma Barranquero <lektu@terra.es>
8979
8980 * indent.c (Fmove_to_column): Remove unused local variable
8981 `next_boundary_byte'.
8982 (current_column_1): Likewise.
8983
89842002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
8985
8986 * msdos.c (Qhbar): New variable.
8987 (syms_of_msdos): Intern and staticpro it.
8988 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
8989 cursor type.
8990
89912002-04-19 Dave Lambert <dlambert@acm.org>
8992
8993 Theses change implement an underscore-like (`hbar') cursor.
8994
8995 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
8996
8997 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
8998 Handle the `hbar' cursor type.
8999 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
9000
9001 * xfns.c (Qhbar): New variable.
9002 (syms_of_xfns): Intern and staticpro it.
9003 (x_specified_cursor_type): Handle `hbar' cursor.
9004
9005 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
9006 not defined.
9007
90082002-04-18 Richard M. Stallman <rms@gnu.org>
9009
9010 * textprop.c (remove_properties): New arg LIST allows scanning
9011 either a list or a plist.
9012 (interval_has_some_properties_list): New function, like
9013 interval_has_some_properties using list instead of plist.
9014 All callers changed.
9015 (Fremove_list_of_text_properties): New function.
9016 (syms_of_textprop): Defsubr it.
9017
90182002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
9019
9020 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
9021
90222002-04-17 Juanma Barranquero <lektu@terra.es>
9023
9024 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
9025
90262002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
9027
9028 * window.c (coordinates_in_window): Don't report on margin area
9029 if its width is zero.
9030
90312002-04-16 Jason Rumney <jasonr@gnu.org>
9032
9033 * w32fns.c (Fx_file_dialog): Decode file name before using.
9034
9035 * w32term.c (construct_drag_n_drop): Likewise.
9036
90372002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
9038
9039 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
9040 store load-history in pure space.
9041
9042 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
9043
90442002-04-16 Stefan Monnier <monnier@cs.yale.edu>
9045
9046 * xterm.c (Qlatin_1, Qutf_8): New vars.
9047 (syms_of_xterm): Initialize them.
9048 (XTread_socket): Eliminate incorrect optimization that tried to avoid
9049 decoding the output of X*LookupString.
9050 Always use latin-1 to decode the output of XLookupString.
9051 Try Xutf8LookupString if XmbLookupString failed.
9052
9053 * region-cache.c (new_region_cache): Use BEG.
9054
90552002-04-16 Gerd Moellmann <gerd@gnu.org>
9056
9057 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
9058 configuration files.
9059 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
9060 returns 0.
9061
90622002-04-15 Andreas Schwab <schwab@suse.de>
9063
9064 * config.in: Regenerated using autoheader.
9065
9066 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
9067 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
9068 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
9069 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
9070 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
9071 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
9072 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
9073 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
9074 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
9075 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
9076 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
9077 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
9078 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
9079 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
9080 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
9081 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
9082 STACK_DIRECTION, now set by autoconf.
9083
90842002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9085
9086 * dispnew.c (marginal_area_string): Sort arguments.
9087
9088 * dispextern.h (marginal_area_string): Add prototype.
9089
90902002-04-13 Richard M. Stallman <rms@gnu.org>
9091
9092 * fileio.c (Finsert_file_contents):
9093 Don't call temp_output_buffer_setup--do just part, by hand.
9094
9095 * coding.c (run_pre_post_conversion_on_str):
9096 Don't call temp_output_buffer_setup--do just part, by hand.
9097
9098 * keyboard.c (command_loop_1): Don't call start_hourglass
9099 or cancel_hourglass when executing a macro.
9100
9101 * marker.c (count_markers): New function.
9102
9103 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
9104 grow without limit. Move recently used elements to the front.
9105
91062002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
9107
9108 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
9109
91102002-04-12 Gerd Moellmann <gerd@gnu.org>
9111
9112 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
9113 rows marginal areas.
9114 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
9115 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
9116
9117 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
9118
91192002-04-12 Dave Love <fx@gnu.org>
9120
9121 * dispnew.c (marginal_area_string): New.
9122
9123 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
9124 (Qleft_margin, Qright_margin): Declare.
9125 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
9126
9127 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
9128 note_mode_line_highlight and extended.
9129
9130 * keyboard.c (Qleft_margin, Qright_margin): Declare.
9131 (make_lispy_event): Deal with mouse events in margins.
9132
91332002-04-12 Stefan Monnier <monnier@cs.yale.edu>
9134
9135 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
9136
9137 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
9138 than deactivating the mark if tmm is set to `lambda'.
9139 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
9140 Use a single event for HELP_EVENT.
9141 (Fexecute_extended_command): Save last_point_position.
9142
91432002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9144
9145 * lisp.h (Fpropertize): Add prototype.
9146
9147 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
9148
91492002-04-10 Colin Walters <walters@verbum.org>
9150
9151 * config.in: Add HAVE_SHARED_GAME_DIR.
9152
9153 * callproc.c: (Vgame_score_directory): New variable.
9154 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
9155
91562002-04-10 Richard M. Stallman <rms@gnu.org>
9157
9158 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
9159
91602002-04-09 Stefan Monnier <monnier@cs.yale.edu>
9161
9162 * minibuf.c (read_minibuf): Use empty_string.
9163 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
9164 Short-circuit the search as soon as it "failed".
9165 (Fall_completions): Allow lambda forms and lists of strings for alist.
9166 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
9167 when require_match is nil.
9168 (Ftest_completion): Rename from `test_completion' and export to elisp.
9169 Call the predicate also when alist is a list.
9170 Obey Vcompletion_regexp_list.
9171 (do_completion, Fminibuffer_complete_and_exit): Use it.
9172 (Fassoc_string): Rename from `assoc_for_completion'.
9173 Allow list of strings as well and export to elisp.
9174
91752002-04-08 Stefan Monnier <monnier@cs.yale.edu>
9176
9177 * puresize.h (BASE_PURESIZE): Increase to 900KB.
9178
91792002-04-08 Juanma Barranquero <lektu@terra.es>
9180
9181 * w32.c (sys_accept): Don't hide variable `s'.
9182
91832002-04-05 Gerd Moellmann <gerd@gnu.org>
9184
9185 * callint.c (Fcall_interactively): Use INTEGERP instead of
9186 NUMBERP for checking Vhistory_length.
9187
91882002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9189
9190 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
9191 Doc fix to reflect it.
9192
91932002-04-04 Richard M. Stallman <rms@gnu.org>
9194
9195 * xdisp.c (display_mode_element): New arg RISKY.
9196 Disregard text props found or specified within a variable
9197 that isn't marked risky-local-variable.
9198 (Qrisky_local_variable): New variable.
9199 (syms_of_xdisp): Init and staticpro it.
9200
92012002-04-04 Stefan Monnier <monnier@cs.yale.edu>
9202
9203 * undo.c (record_point): New fun.
9204 (record_delete, record_insert): Use it.
9205
92062002-04-03 Juanma Barranquero <lektu@terra.es>
9207
9208 * doc.c (Fdocumentation): Add missing parentheses.
9209 (Fdocumentation_property): Likewise.
9210
92112002-04-03 Stefan Monnier <monnier@cs.yale.edu>
9212
9213 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
9214 data is 0, just return nil.
9215
92162002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
9217
9218 * msdos.c (syms_of_msdos): Fix last change with
9219 mouse_autoselect_window.
9220
92212002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9222
9223 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
9224 mouse_autoselect_window.
9225
92262002-04-02 Stefan Monnier <monnier@cs.yale.edu>
9227
9228 * keyboard.c (make_lispy_event): Handle unknown keysyms together
9229 with system-specific keysyms. Use it also for unknown function keys.
9230
9231 * doc.c (reread_doc_file): Return whether reload was attempted.
9232 (Fdocumentation, Fdocumentation_property): Don't try to reload
9233 if the doc is 0 and only ask once.
9234
9235 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
9236
92372002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
9238
9239 * keyboard.c (read_char): If the event was Qselect_window,
9240 restore timer_idleness_start_time to its previous value.
9241
9242 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
9243
92442002-04-01 Stefan Monnier <monnier@cs.yale.edu>
9245
9246 * region-cache.c (new_region_cache): Use BEG.
9247
9248 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
9249 Use BEG and BEG_BYTE.
9250
9251 * doc.c (get_doc_string): Return nil if the location is wrong.
9252 (reread_doc_file): New fun.
9253 (Fdocumentation, Fdocumentation_property):
9254 Call it if get_doc_string fails.
9255 (Fsnarf_documentation): Make it work for a dumped Emacs.
9256
9257 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
9258 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
9259
9260 * charset.c (Fstring): Allow 0 arguments.
9261
9262 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
9263
9264 * process.c (DATAGRAM_CONN_P, list_processes_1)
9265 (Fprocess_datagram_address, Fset_process_datagram_address)
9266 (Fset_network_process_options, server_accept_connection):
9267 Fix some int/Lisp_Object confusions (thank you union types).
9268
92692002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9270
9271 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
9272
9273 * w32term.c: Likewise.
9274 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
9275
9276 * keyboard.c (Qselect_window): New symbol.
9277 (head_table): Use it.
9278 (keys_of_keyboard): Bound select-window event to handle-select-window.
9279 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
9280
9281 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
9282 (last_window): New variable.
9283 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
9284 (note_mouse_movement): Remove reimplemented code in #if 0.
9285 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
9286 Emacs windows.
9287
9288 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
9289
92902002-03-31 Gerd Moellmann <gerd@gnu.org>
9291
9292 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
9293 Callers changed.
9294
92952002-03-30 Richard M. Stallman <rms@gnu.org>
9296
9297 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
9298 loop whenever it stops making progress.
9299
9300 * widget.c (set_frame_size): Don't call change_frame_size.
9301
93022002-03-30 Gerd Moellmann <gerd@gnu.org>
9303
9304 * dispnew.c (direct_output_for_insert):
9305 Call mark_window_display_accurate.
9306
93072002-03-29 Jason Rumney <jasonr@gnu.org>
9308
9309 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
9310
93112002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
9312
9313 * Makefile.in (lread.o): Depend on coding.h.
9314
9315 * lread.c (openp, Fload): Encode the file name before passing it
9316 to `stat', `access', and `emacs_open'.
9317 (openp): GCPRO the encoded file name. Don't recompute Lisp
9318 strings unnecessarily.
9319
93202002-03-29 Kim F. Storm <storm@cua.dk>
9321
9322 * fns.c (Flax_plist_put): Doc fix.
9323
93242002-03-28 Miles Bader <miles@gnu.org>
9325
9326 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
9327
93282002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9329
9330 * process.c (set-network-process-options): Add usage.
9331 (make-network-process): Doc fix.
9332
93332002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
9334
9335 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
9336
93372002-03-26 Richard M. Stallman <rms@gnu.org>
9338
9339 * fns.c (Fsubstring_no_properties): New function.
9340 (Flax_plist_get, Flax_plist_put): New functions.
9341 (syms_of_fns): defsubr them.
9342
9343 * xdisp.c (update_menu_bar): Test only update_mode_lines;
9344 don't test or alter w->update_mode_line.
9345
9346 * window.c (Fdisplay_buffer): Doc fix.
9347
93482002-03-24 Richard M. Stallman <rms@gnu.org>
9349
9350 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
9351
93522002-03-24 Gerd Moellmann <gerd@gnu.org>
9353
9354 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
9355 (Fdefmacro): Handle `(declare ...)'.
9356 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
9357 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
9358
93592002-03-24 Jason Rumney <jasonr@gnu.org>
9360
9361 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
9362 (xbm_file_p): Add prototypes.
9363 (xbm_format, xbm_image_p): Sync with xfns.c.
9364 (reflect_byte): New function.
9365 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
9366 (xbm_load_image): Create bitmaps with a depth of 1.
9367 (init_xfns): Enable XBM images.
9368
93692002-03-23 Jason Rumney <jasonr@gnu.org>
9370
9371 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
9372 correctly. Do not pass up_modifier to keyboard buffer.
9373
9374 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
9375
93762002-03-22 Stefan Monnier <monnier@cs.yale.edu>
9377
9378 * Makefile.in (bootstrapclean): New target.
9379 (bootstrap-temacs, bootstrap-doc): Remove.
9380 (bootstrap-emacs): Use a bog-standard `temacs'.
9381 Don't bother to build a DOC file.
9382
9383 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
9384
9385 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
9386 in temacs even if !CANNOT_DUMP.
9387 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
9388
9389 * alloc.c (check_pure_size): Only output a warning.
9390
93912002-03-22 Jason Rumney <jasonr@gnu.org>
9392
9393 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
9394 supported.
9395
9396 * w32term.c (zv_bits): Declare as short, for word alignment.
9397 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
9398 (syms_of_w32term): Define x-use-underline-position-properties.
9399
9400 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
9401 (clear_image_cache): Block input, fix logic, clear matrices in
9402 all frames that share this cache.
9403
94042002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
9405
9406 * emacs.c (main): Update the Copyright year in the blurb printed
9407 by "emacs --version".
9408
9409 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
9410
9411 * xterm.c (XTread_socket): If XK_ISO_Lock and
9412 XK_ISO_Last_Group_Lock are defined, handle keysyms between
9413 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
9414
94152002-03-21 Kim F. Storm <storm@cua.dk>
9416
9417 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
9418 menu-bar bindings in keymap and local-map properties _are_ used.
9419 But try keymap property first in accordance with 2002-01-03 patch.
9420 Added comment describing why this is not always reliable.
9421 (tool_bar_items): Ditto for tool-bar.
9422
94232002-03-21 Jason Rumney <jasonr@gnu.org>
9424
9425 * w32fns.c (x_clear_image_1): Disable color table code.
9426
94272002-03-21 Kim F. Storm <storm@cua.dk>
9428
9429 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
9430 removed the wrong version of the DEFUN macro; fixed it.
9431
9432 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
9433 Fmember rather than Fmemq).
9434 (Fprovide): Check that subfeatures is a list.
9435
9436 * process.c (QCfeature, QCdatagram): Removed variables.
9437 (QCtype, Qdatagram): New variables.
9438 (network_process_featurep): Removed function.
9439 (Fmake_network_process): Removed :feature check.
9440 Use :type 'datagram instead of :datagram t to create a datagram
9441 socket. This allows us to add other connection types (e.g. raw
9442 sockets) later in a consistent manner.
9443 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
9444 supported subfeatures for feature make-network-process.
9445 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
9446 Intern and staticpro QCtype and Qdatagram.
9447 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
9448
9449 * xfns.c: (QCtype): Remove duplicate declaration and
9450 initialization (is now declared in process.c).
9451
9452 * w32fns.c: (QCtype): Remove duplicate declaration and
9453 initialization (is now declared in process.c).
9454
94552002-03-21 Richard M. Stallman <rms@gnu.org>
9456
9457 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
9458 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
9459 when jumping to `fail' to avoid undoing reg changes in the
9460 last iteration of the loop.
9461 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
9462
9463 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
9464 Depend on process.h.
9465
94662002-03-20 Jason Rumney <jasonr@gnu.org>
9467
9468 Most of the following changes are still conditional on HAVE_IMAGES
9469 which is not set by default on Windows.
9470
9471 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
9472
9473 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
9474 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
9475 (four_corners_best, x_clear_image_1, x_clear_image)
9476 (x_alloc_image_color, postprocess_image)
9477 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
9478 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
9479 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
9480
9481 * w32gui.h (struct XImage): Define.
9482
9483 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
9484 extract mouse co-ordinates.
9485
94862002-03-20 Jason Rumney <jasonr@gnu.org>
9487
9488 * w32.c (init_winsock): Dynamically load new server and UDP
9489 socket functions.
9490 (socket_to_fd): New function.
9491 (sys_socket): Use it.
9492 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
9493 (sys_recvfrom, sys_sendto): New wrapper functions.
9494
9495 * process.c (QCfamily, QCfilter): Remove duplicate declaration
9496 and initialization.
9497
9498 * makefile.w32-in (LIBS): Remove $(WSOCK32).
9499
95002002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
9501
9502 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
9503 Don't use "sun" as a variable, it's a predefined constant on Sun
9504 machines.
9505
95062002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9507
9508 * bytecode.c (Fbyte_code): Revert last change.
9509
95102002-03-19 Kim F. Storm <storm@cua.dk>
9511
9512 * makefile.w32-in (LIBS): Add $(WSOCK32).
9513 From David Ponce <dponce@voila.fr>.
9514
95152002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9516
9517 * process.c (wait_reading_process_input): Move variables `pname'
9518 and `pnamelen' down where they are used.
9519
9520 * bytecode.c (Fbyte_code): Discard unused computed value to
9521 prevent gcc warning.
9522
9523 * lisp.h (Fplist_member): Add prototype.
9524
95252002-03-18 Kim F. Storm <storm@cua.dk>
9526
9527 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
9528 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
9529
9530 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
9531 Remove explicit GNU_LINUX settings for datagram support.
9532
95332002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9534
9535 * process.c (Fmake_network_process): Remove unused variable `sa'.
9536 Doc fix. Add usage:.
9537 (set_socket_options): Remove unused variables `optnum' and `opttype'.
9538
95392002-03-17 Richard M. Stallman <rms@gnu.org>
9540
9541 * xdisp.c (cursor_type_changed): New variable.
9542 (redisplay_internal): Redisplay all windows if cursor_type_changed.
9543 Clear it when clearing windows_or_buffers_changed.
9544 (try_cursor_movement, redisplay_window, try_window_id)
9545 (try_window_reusing_current_matrix): Test cursor_type_changed
9546 along with windows_or_buffers_changed.
9547
9548 * window.h (cursor_type_changed): New variable.
9549
9550 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
9551 not update_mode_lines, and always set it to 1.
9552
9553 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
9554 if no frames needed redrawing.
9555
95562002-03-17 Kim F. Storm <storm@cua.dk>
9557
9558 The following changes add support for network server processes,
9559 datagram connections, and local (unix) sockets.
9560
9561 * process.h (struct Lisp_Process): New member log.
9562 Doc fix: Member command used to indicate stopped network process.
9563 Doc fix: Member childp contains plist for network process.
9564 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
9565
9566 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
9567 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
9568 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
9569 New variables.
9570 (NETCONN1_P): New macro.
9571 (DATAGRAM_SOCKETS): New conditional symbol.
9572 (datagram_address): New array.
9573 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
9574 (status_message): Use concat3.
9575 (Fprocess_status): Add `listen' status to doc string. Return `stop'
9576 for a stopped network process.
9577 (Fset_process_buffer): Update contact plist for network process.
9578 (Fset_process_filter): Ditto. Don't enable input for stopped
9579 network processes. Server must listen, even if filter is t.
9580 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
9581 New functions.
9582 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
9583 (Fprocess_contact): Added KEY argument. Handle datagrams.
9584 (list_processes_1): Optionally show only processes with the query
9585 on exit flag set. Dynamically adjust column widths. Omit tty
9586 column if not needed. Report stopped network processes.
9587 Identify server and datagram network processes.
9588 (Flist_processes): New optional arg `query-only'.
9589 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
9590 (conv_lisp_to_sockaddr, set_socket_options)
9591 (network_process_featurep, unwind_request_sigio): New helper functions.
9592 (Fprocess_datagram_address, Fset_process_datagram_address):
9593 (Fset_network_process_options): New lisp functions.
9594 (Fopen_network_stream): Removed. Now defined in simple.el.
9595 (Fmake_network_process): New lisp function. Code is based on previous
9596 Fopen_network_stream, but heavily reworked with new property list based
9597 argument list, support for datagrams, server processes, and local
9598 sockets in addition to old client-only functionality.
9599 (server_accept_connection): New function.
9600 (wait_reading_process_input): Use it to handle incoming connects.
9601 Do not enable input on a new connection if process is stopped.
9602 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
9603 (send_process): Handle datagram sockets.
9604 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
9605 network process is indicated by setting command field to t .
9606 (Fprocess_send_eof): No-op if datagram connection.
9607 (Fstatus_notify): Don't read input for a stream server socket or a
9608 stopped network process.
9609 (init_process): Initialize datagram_address array.
9610 (syms_of_process): Intern and staticpro new variables, defsubr new
9611 functions.
9612
96132002-03-16 Jason Rumney <jasonr@gnu.org>
9614
9615 * w32fns.c (w32_to_all_x_charsets): Return correct type in
9616 startup case.
9617
96182002-03-16 Richard M. Stallman <rms@gnu.org>
9619
9620 * xdisp.c (redisplay_internal, redisplay_windows):
9621 Use list_of_error to call internal_condition_case_1.
9622 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
9623 so as to catch all errors with no possibility of debugger redisplay.
9624 (list_of_error): New variable.
9625 (syms_of_xdisp): Init and staticpro it.
9626
9627 * print.c (print_object): Delete `\ ' from printed rep of frame.
9628
96292002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
9630
9631 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
9632 until its implementation is fixed.
9633
96342002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9635
9636 * xfns.c (png_load): Remove unused variable `gamma_str'.
9637
96382002-03-14 Richard M. Stallman <rms@gnu.org>
9639
9640 * xfns.c (x_real_positions): Handle failure in XQueryTree.
9641
96422002-03-14 Miles Bader <miles@gnu.org>
9643
9644 * intervals.c (adjust_for_invis_intang): New function.
9645 (set_point_both): Use `adjust_for_invis_intang' to do most of the
9646 work for dealing with invisible+intangible regions. Do so before
9647 and after both forward and backward movements, to handle both
9648 front-sticky and rear-sticky cases.
9649 * textprop.c (text_property_stickiness): Function moved here from
9650 `editfns.c'.
9651 * intervals.h (text_property_stickiness): New declaration.
9652 * editfns.c (char_property_eq): Function removed.
9653 (text_property_stickiness): Function moved to `textprop.c'.
9654
96552002-03-13 Jason Rumney <jasonr@gnu.org>
9656
9657 * config.in: Add STRFTIME_NO_POSIX2.
9658
9659 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
9660 and %OX when underlying strftime does not.
9661
96622002-03-13 Stefan Monnier <monnier@cs.yale.edu>
9663
9664 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
9665 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
9666 line) to avoid annoying flicker.
9667 (xm_scroll_callback): Get rid of the now unnecessary kludge.
9668 (XTread_socket): Mark it static.
9669
9670 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
9671
96722002-03-13 Kim F. Storm <storm@cua.dk>
9673
9674 * puresize.h (BASE_PURESIZE): Increase to 775000.
9675
96762002-03-12 Juanma Barranquero <lektu@terra.es>
9677
9678 * editfns.c (syms_of_editfns): Fix typo.
9679
96802002-03-12 Gerd Moellmann <gerd@gnu.org>
9681
9682 * xsmfns.c: Include stdio.h because termhooks.h needs it.
9683 Include termopt.h for interrupt_input.
9684
96852002-03-11 Andreas Schwab <schwab@suse.de>
9686
9687 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
9688
96892002-03-11 Gerd Moellmann <gerd@gnu.org>
9690
9691 * xterm.c (note_mouse_movement): Put code for
9692 x_autoselect_window_p in #if 0.
9693
9694 * lread.c (Fload): Don't assume that message_with_string uses the
9695 string it is given like a C string.
9696
96972002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9698
9699 * xterm.h (x_session_check_input, x_session_initialize): Declared.
9700
9701 * xterm.c: (XTread_socket): Add call to x_session_check_input and
9702 x_session_have_connection.
9703 (x_initialize): Add call to x_session_initialize.
9704
9705 * termhooks.h (enum event_kind): Add save_session_event.
9706
9707 * keyboard.c: Add Emacs event save_session_event.
9708
9709 * emacs.c (main): Add call to syms_of_xsmfns.
9710
9711 * lisp.h: Declare syms_of_xsmfns as extern.
9712
9713 * config.in: Add HAVE_X_SM.
9714
9715 * Makefile.in (LIBXT): Add -lSM -lICE
9716 if HAVE_X_SM and not USE_X_TOOLKIT.
9717 (XOBJ): New file xsmfns.c added.
9718
9719 * xsmfns.c: New file for X session management.
9720
97212002-03-09 Jason Rumney <jasonr@gnu.org>
9722
9723 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
9724 read-only when setting modified time.
9725
97262002-03-08 Gerd Moellmann <gerd@gnu.org>
9727
9728 * xdisp.c (move_it_vertically_backward): At the end of the function,
9729 when moving forward by lines, treat terminal frames specially.
9730
9731 * keyboard.c (echo_char): Make sure to add a separator between
9732 keys even if echo_dash hasn't been called.
9733
9734 * xdisp.c: Use new string macros.
9735 (update_echo_area): Pass number of bytes to message3 instead of
9736 number of chars.
9737 (set_message_1): Don't access a string's size_byte directly.
9738 (decode_mode_spec_coding): Use number of bytes of eoltype string
9739 instead number of chars.
9740
9741 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
9742
97432002-03-08 Juanma Barranquero <lektu@terra.es>
9744
9745 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
9746 24-bit.
9747
97482002-03-06 Jason Rumney <jasonr@gnu.org>
9749
9750 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
9751
97522002-03-06 Gerd Moellmann <gerd@gnu.org>
9753
9754 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
9755 (cancel_echoing, echo_length, echo_truncate): Changed to
9756 work with new kboard definition.
9757 (echo_now): Use message3_nolog instead of message2_nolog.
9758
9759 * alloc.c (mark_kboards): Mark echo_string.
9760
9761 * keyboard.h (ECHOBUFSIZE): Removed.
9762 (struct kboard): Member echoptr removed, member echobuf renamed
9763 to echo_string.
9764
9765 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
9766 message3 instead of message2 to display the message using STRING's
9767 text properties.
9768
97692002-03-05 Andreas Schwab <schwab@suse.de>
9770
9771 * xdisp.c (hscroll_margin): Change to EMACS_INT.
9772
97732002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
9774
9775 * frame.c (default-frame-alist): Explain that setting it doesn't
9776 affect existing frames.
9777
97782002-03-05 Stefan Monnier <monnier@cs.yale.edu>
9779
9780 * indent.c (skip_invisible): Fix my brain fart.
9781
9782 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
9783
97842002-03-04 Stefan Monnier <monnier@cs.yale.edu>
9785
9786 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
9787 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
9788 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
9789 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
9790 and variables to use EMACS_INT instead of just int.
9791
9792 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
9793
97942002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
9795
9796 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
9797 environment, pass it down with corrected value.
9798
97992002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9800
9801 * lread.c (read_filtered_event): Do not call start_hourglass
9802 before returning.
9803
98042002-03-04 Juanma Barranquero <lektu@terra.es>
9805
9806 * w32term.c (x_display_and_set_cursor): Fix typo.
9807
98082002-03-03 Richard M. Stallman <rms@gnu.org>
9809
9810 * fileio.c (Fmake_temp_name): Doc fix.
9811
98122002-03-03 Gary Wong <gtw@gnu.org>
9813
9814 * termcap.c [!emacs]: Replace ospeed for building standalone
9815 libtermcap, for binary compatibility.
9816
9817 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
9818
98192002-03-03 Richard M. Stallman <rms@gnu.org>
9820
9821 * xrdb.c (file_p): Rename arg `path' to `filename'.
9822
9823 * abbrev.c (Fexpand_abbrev): Increment plist as use count
9824 only if it is an integer.
9825
9826 * xfns.c (png_load): Set screen_gamma based on f->gamma.
9827 If png_get_sRGB gives an answer, call png_set_gamma
9828 using the default image gamma value.
9829
9830 * lread.c (read1): When reading from a file, default string to
9831 multibyte only if it has some multibyte characters.
9832
9833 * print.c (print_object): Output multibyte chars 128...255
9834 using \x even if ! print_escape_multibyte.
9835
9836 * xdisp.c (display_mode_element): Move the places where
9837 bytepos, charpos, this, and lisp_string are set.
9838 Use lisp_string to set bytepos.
9839
9840 * xdisp.c (redisplay_internal):
9841 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
9842
9843 * xdisp.c (display_mode_element): Merge properties specified with
9844 :propertize onto those that come with the string.
9845
98462002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
9847
9848 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
9849 automatic-hscrolling. Users changed.
9850 <hscroll-margin>: Renamed from automatic-hscroll-margin.
9851 Users changed.
9852 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
9853
98542002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
9855
9856 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
9857
98582002-03-02 Kim F. Storm <storm@cua.dk>
9859
9860 * window.c (Fminibuffer_selected_window): New function.
9861 (syms_of_window): Defsubr it.
9862
98632002-03-01 Kim F. Storm <storm@cua.dk>
9864
9865 * window.h (struct window): New member phys_cursor_width.
9866
9867 * window.c (make_window, replace_window): Init phys_cursor_width.
9868
9869 * xterm.c (x_display_and_set_cursor): Blink box cursor using
9870 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
9871
9872 * w32term.c (x_display_and_set_cursor): Blink box cursor using
9873 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
9874
9875 * lisp.h (GCPRO6): New macro.
9876
9877 * process.c (Fopen_network_stream): Use GCPRO6.
9878
98792002-03-01 Kim F. Storm <storm@cua.dk>
9880
9881 * process.c (Qconnect, Qfailed): New variables.
9882 (syms_of_process): Intern and staticpro them.
9883 (Fprocess_status): Document connect and failed return values.
9884 [NON_BLOCKING_CONNECT]: New conditional.
9885 (connect_wait_mask, num_pending_connects): New variables.
9886 (status_message): Convert Qfailed status.
9887 (Fopen_network_stream): Added support for non-blocking connect.
9888 New optional args: filter, sentinel, non_blocking. Doc updated.
9889 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
9890 (deactivate_process): Handle pending non-blocking connect.
9891 (wait_reading_process_input): Poll for status of non-blocking
9892 connects. Exec sentinel directly when connect succeeds.
9893 (status_notify): Don't read process output if not yet connected.
9894
98952002-02-28 Kim F. Storm <storm@cua.dk>
9896
9897 * window.c: (minibuf_selected_window): Renamed from
9898 Vminibuf_selected_window. Users changed.
9899 (syms_of_window): Staticpro it.
9900
99012002-02-26 Kim F. Storm <storm@cua.dk>
9902
9903 The following changes add a new Vminibuf_selected_window variable
9904 which is similar to Vminibuf_scroll_window, but which is only set
9905 on entry to the minibuffer (from a non-minibuffer window):
9906
9907 * window.c: (Vminibuf_selected_window): New variable.
9908 (struct save_window_data): New member minibuf_selected_window.
9909 (Fset_window_configuration): Restore Vminibuf_selected_window.
9910 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
9911 Set minibuf_scroll_window member to nil if minibuf_level is 0.
9912 (compare_window_configurations): Compare minibuf_selected_window.
9913
9914 * window.h: (Vminibuf_selected_window): Declare extern.
9915
9916 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
9917 entry to minibuffer or on entry from a non-minibuffer window.
9918
9919 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
9920 Vminibuf_selected_window instead of Vminibuf_scroll_window.
9921
9922 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
9923 instead of Vminibuf_scroll_window when deciding in which window
9924 the region should be highlighted. Consequently, the region remains
9925 highlighteded even when a completion buffer is also displayed.
9926
99272002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
9928
9929 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
9930
9931 * xselect.c (Qcompound_text_with_extensions): Renamed from
9932 Qcompound_text_no_extensions.
9933 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
9934
99352002-02-26 Juanma Barranquero <lektu@terra.es>
9936
9937 * w32proc.c (syms_of_ntproc): Doc fix.
9938
99392002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9940
9941 * intervals.h: Include "dispextern.h" unconditionally.
9942
99432002-02-24 Jason Rumney <jasonr@gnu.org>
9944
9945 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
9946 and disp-table.elc.
9947 (lisp): Add emacs-lisp/backquote.elc.
9948
99492002-02-24 Kim F. Storm <storm@cua.dk>
9950
9951 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
9952 The validation of the event type was too strict as it didn't
9953 allow string events; buffer names are used in bindings for
9954 menu-bar-select-buffer (see `menu-bar-update-buffers').
9955
99562002-02-23 Kim F. Storm <storm@cua.dk>
9957
9958 The following changes rework my patch of 2002-02-06 which
9959 added command remapping by entering the commands directly into
9960 the keymaps. Now, command remapping uses an explicit `remap'
9961 prefix in the keymaps, i.e. [remap COMMAND].
9962
9963 * keymap.c (Qremap, remap_command_vector): New variables.
9964 (is_command_symbol): Removed function.
9965 (Fdefine_key): No longer accept a symbol for KEY.
9966 Added validation of [remap COMMAND] argument for KEY.
9967 The DEF is no longer required to be a symbol when remapping a command.
9968 (Fremap_command): New function to remap command through keymaps.
9969 (Flookup_key): Perform command remapping initiated by
9970 Fremap_command directly for speed.
9971 (Fkey_binding): Use Fremap_command for command remapping.
9972 (where_is_internal): Handle new command remapping representation.
9973 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
9974 staticpro them. Defsubr Fremap_command.
9975
9976 * keymap.h (Fremap_command): Declare extern.
9977 (is_command_symbol): Remove extern.
9978
9979 * keyboard.c (command_loop_1): Use Fremap_command for command
9980 remapping; now try command remapping for all symbols.
9981
99822002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
9983
9984 * coding.h (run_pre_post_conversion_on_str): Add prototype.
9985
99862002-02-23 Jason Rumney <jasonr@gnu.org>
9987
9988 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
9989 on the string before encoding it.
9990 (Fw32_get_clipboard_data): Run post-read-conversion on the string
9991 after decoding it.
9992
9993 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
9994
99952002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9996
9997 * w32term.c (enter_timestamp): Remove unused static variable to
9998 prevent warning.
9999
10000 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
10001
100022002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
10003
10004 * w16select.c (Fw16_get_clipboard_data): Fix last change.
10005
10006 * xselect.c (selection_data_to_lisp_data): Fix last change.
10007
100082002-02-22 Jason Rumney <jasonr@gnu.org>
10009
10010 * w32term.h (struct w32_output): New member menu_command_in_progress.
10011
10012 * w32menu.c (menubar_selection_callback): Free the menu and
10013 clear the menu_command_in_progress flag.
10014
10015 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
10016 (menu_free_timer): New variable.
10017 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
10018 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
10019 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
10020 menu command is in progress.
10021 <WM_COMMAND>: Set the menu_command_in_progress flag.
10022 Kill any menu_free_timer that is running.
10023
10024 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
10025 Call ExtTextOutA rather than ExtTextOut.
10026
100272002-02-22 Eli Zaretskii <eliz@gnu.org>
10028
10029 * puresize.h (BASE_PURESIZE): Increase to 755000.
10030
100312002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
10032
10033 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
10034 on the string before encoding it.
10035 (Fw16_get_clipboard_data): Run post-read-conversion on the string
10036 after decoding it.
10037
100382002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
10039
10040 Support for ICCCM Extended Segments in X selections:
10041
10042 * xselect.c <Qcompound_text_no_extensions>: New variable.
10043 (syms_of_xselect): Intern and staticpro it.
10044 (selection_data_to_lisp_data): Run post-read-conversion on decoded
10045 selection text.
10046 (lisp_data_to_selection_data): If next-selection-coding-system is
10047 compound-text-no-extensions, set the type of selection to be
10048 compound-text.
10049
10050 * xterm.h (x_encode_text): Update prototype.
10051
10052 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
10053 callers changed. If SELECTIONP is non-zero, run the
10054 pre-write-conversion function before encoding the selection text.
10055
100562002-02-21 Kim F. Storm <storm@cua.dk>
10057
10058 * frame.c (syms_of_frame): Change mouse-highlight default to t.
10059
10060 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
10061 Correct composing of language-change event.
10062
100632002-02-20 Kim F. Storm <storm@cua.dk>
10064
10065 * keyboard.c (menu_bar_items): Don't include keymap or local-map
10066 bindings at PT when building menu (the menu is not updated often
10067 enough for this to work reliable).
10068 (tool_bar_items): Likewise.
10069 (current_active_maps): Removed unused (and buggy) function.
10070
100712002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10072
10073 * xfns.c (gif_load): Use correct width and height for GIF images.
10074
100752002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
10076
10077 * floatfns.c (Fatan): Accept an optional second arg and call
10078 atan2 if passed 2 args.
10079
100802002-02-18 Jason Rumney <jasonr@gnu.org>
10081
10082 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
10083
100842002-02-17 Jason Rumney <jasonr@gnu.org>
10085
10086 * w32term.c (x_autoselect_window_p): New variable.
10087 (syms_of_w32term): DEFVAR_BOOL and initialize it.
10088 (note_mouse_movement): Use it.
10089
10090 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
10091
10092 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
10093
10094 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
10095 New variables.
10096 (syms_of_w32fns): Intern and staticpro them.
10097 (x_frame_parms) <"fullscreen">: New parameter.
10098 (x_fullscreen_move, x_set_fullscreen): New functions.
10099 (x_set_frame_parameters): Support Qfullscreen.
10100 (x_real_positions): Save x/y_pixels_diff frame params.
10101 (x_figure_window_size): Support full-screen frames.
10102 (Fx_create_frame): Default the fullscreen parameter.
10103
10104 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
10105 (x_fullscreen_adjust): New functions.
10106 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
10107 fullscreen. Call x_check_fullscreen_move, and set the
10108 want_fullscreen member of output_data.w32
10109 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
10110
10111 * w32term.h: New enum for FULLSCREEN_* constants.
10112 (struct w32_output): New members want_fullscreen, x_pixels_diff,
10113 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
10114 (x-fullscreen-adjust): New prototype.
10115
101162002-02-17 Kim F. Storm <storm@cua.dk>
10117
10118 * frame.c: (Vmouse_highlight): New variable.
10119 (syms_of_frame): DEFVAR_LISP it.
10120
10121 * frame.h: (Vmouse_highlight): Declare extern.
8a8e19a3 10122
048addec 10123 * xterm.h (struct x_display_info): Add mouse_face_hidden.
8a8e19a3 10124
048addec
JD
10125 * xterm.c (disable_mouse_highlight): Removed variable.
10126 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
10127 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
10128 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
10129 and on after keyboard input.
10130 (x_term_init): Initialize mouse_face_hidden.
8a8e19a3 10131
048addec 10132 * msdos.h (struct display_info): Add mouse_face_hidden.
8a8e19a3 10133
048addec
JD
10134 * msdos.c (disable_mouse_highlight): Removed variable.
10135 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
10136 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
10137 (internal_terminal_init): Initialize mouse_face_hidden.
10138 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
10139 and on after keyboard input.
4f1b1854 10140
048addec 10141 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
4f1b1854 10142
048addec
JD
10143 * w32term.c (disable_mouse_highlight): Removed variable.
10144 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
10145 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
10146 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
10147 and on after keyboard input.
10148 (w32_initialize_display_info): Initialize mouse_face_hidden.
4f1b1854 10149
048addec 101502002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
4f1b1854 10151
048addec
JD
10152 * msdos.c (last_mouse_window): New variable.
10153 (dos_rawgetc): Fix last change--if the mouse is in the same window
10154 as recorded in last_mouse_window, don't select this window.
5cb6905d 10155
048addec 10156 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
5cb6905d 10157
048addec
JD
10158 * msdos.c (x_autoselect_window_p): New variable.
10159 (syms_of_msdos): Defvar it.
10160 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
10161 which the last mouse movement occured, unless it is already selected.
437dfb9f 10162
048addec
JD
10163 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
10164 New variables.
10165 (syms_of_xdisp): DEVFAR them.
10166 (hscroll_window_tree): Use automatic_hscroll_margin and
10167 Vautomatic_hscroll_step to compute the amount of window scrolling.
437dfb9f 10168
048addec 101692002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9f696a00 10170
048addec
JD
10171 * xterm.c (x-autoselect-window): New variable.
10172 (note_mouse_movement): Use it.
9f696a00 10173
048addec 10174 * keyboard.c: Do not include "systime.h" twice.
d57966d7 10175
048addec 101762002-02-15 Andreas Schwab <schwab@suse.de>
d57966d7 10177
048addec 10178 * puresize.h (BASE_PURESIZE): Increase to 9/5.
d57966d7 10179
048addec 10180 * alloc.c (NSTATICS): Increase to 1280.
74779f52 10181
048addec 101822002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
74779f52 10183
048addec 10184 * alloc.c (NSTATICS): Bump to 1026.
a474d59c 10185
048addec
JD
10186 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
10187 (Vx_super_keysym): New variables.
10188 (syms_of_xterm): DEFVAR_LISP them.
10189 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
10190 variables to determine which keys to use for the various modifiers.
a474d59c 10191
048addec 101922002-02-13 Kim F. Storm <storm@cua.dk>
fbb70ad9 10193
048addec
JD
10194 * window.c: (Vmode_line_in_non_selected_windows): Removed.
10195 (mode_line_in_non_selected_windows): New variable.
10196 (syms_of_window): DEFVAR_BOOL it.
fbb70ad9 10197
048addec
JD
10198 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
10199 Use mode_line_in_non_selected_windows.
10200 (mode_line_in_non_selected_windows): Declare extern.
10201 (Vmode_line_in_non_selected_windows): Removed extern.
2d10309f 10202
048addec 102032002-02-13 Richard M. Stallman <rms@gnu.org>
2d10309f 10204
048addec
JD
10205 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
10206 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
10207 (Fclear_this_command_keys): Doc fixes.
2d10309f 10208
048addec
JD
10209 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
10210 (update_face_from_frame_parameter): Increment face_change_count
10211 and windows_or_buffers_changed to force redisplay using changed faces.
7f2cddf3 10212
048addec
JD
10213 * xdisp.c (QCpropertize): New variable.
10214 (mode_line_proptrans_alist): New variable.
10215 (display_mode_element): New arg PROPS; all calls changed.
10216 Implement this, for strings.
10217 Handle literal output of strings by sharing the
10218 main-line code for strings, using local var `literal'.
10219 Handle :propertize feature.
10220 (syms_of_xdisp): Initialze and staticpro QCpropertize and
10221 mode_line_proptrans_alist.
0b1e6b54 10222
048addec 102232002-02-11 Kim F. Storm <storm@cua.dk>
7f2cddf3 10224
048addec
JD
10225 * window.c: (Vmode_line_in_non_selected_windows): New variable.
10226 (syms_of_window): DEFVAR_LISP it.
7f2cddf3 10227
048addec
JD
10228 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
10229 (CURRENT_MODE_LINE_FACE_ID): Use it.
10230 (Vmode_line_in_non_selected_windows): Declare extern.
e17144de 10231
048addec
JD
10232 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
10233 to get mode line face.
e17144de 10234
048addec 102352002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 10236
048addec
JD
10237 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
10238 variables; cus-start.el doesn't need them anymore.
44368f8f 10239
048addec 102402002-02-09 Kim F. Storm <storm@cua.dk>
f884b6f4 10241
048addec
JD
10242 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
10243 reduction. This fixes a display problem where stray newlines were
10244 inserted in the window (corrected by C-l). Clarified code (IMHO).
6637c996 10245
048addec 102462002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 10247
048addec 10248 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
6637c996 10249
048addec 10250 * xdisp.c (display_mode_lines): Fix last change.
453c5510 10251
048addec 102522002-02-09 Jason Rumney <jasonr@gnu.org>
453c5510 10253
048addec
JD
10254 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
10255 match each other.
10256 (w32_load_system_font): Prevent Cleartype fonts from loading.
10257 (Fx_show_tip): Ensure tip frames are above other topmost windows.
d1d070e3 10258
048addec 102592002-02-09 Kim F. Storm <storm@cua.dk>
d1d070e3 10260
048addec
JD
10261 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
10262 (CURRENT_MODE_LINE_HEIGHT): Use it.
10263 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 10264
048addec
JD
10265 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
10266 (pos_visible_p, handle_face_prop): Likewise.
10267 (display_mode_lines): Likewise, but for the real selected window.
10268 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 10269
048addec
JD
10270 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
10271 in non-selected windows.
10272 (realize_basic_faces): Realize it.
10273 (syms_of_term): Intern and staticpro it.
308dd672 10274
048addec 102752002-02-08 Kim F. Storm <storm@cua.dk>
edde72f6 10276
048addec
JD
10277 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
10278 Changed mail addresses to emacs-devel@gnu.org.
308dd672 10279
048addec 102802002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
3c1e6b46 10281
048addec
JD
10282 * fileio.c (Fsubstitute_in_file_name): If the file name includes
10283 ~user, and there's no such user, don't discard everything before ~user.
03950b5b 10284
048addec 10285 * floatfns.c (Fround): Doc fix.
3c1e6b46 10286
048addec 102872002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c1e11810 10288
048addec 10289 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
c1e11810 10290
048addec 102912002-02-07 Stefan Monnier <monnier@cs.yale.edu>
1996baee 10292
048addec 10293 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
1996baee 10294
048addec 102952002-02-07 Kim F. Storm <storm@cua.dk>
0065bb74 10296
048addec
JD
10297 * keymap.c (where_is_internal): Only check whether definition is
10298 remapped if it fulfills is_command_symbol.
0065bb74 10299
048addec 103002002-02-07 Andreas Schwab <schwab@suse.de>
0065bb74 10301
048addec 10302 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
b5cb6072 10303
048addec 10304 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
b5cb6072 10305
048addec 103062002-02-06 Kim F. Storm <storm@cua.dk>
15fff01d 10307
048addec
JD
10308 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
10309 defining command remapping. Doc updated.
10310 (Flookup_key): Remap command through keymap if KEY is a symbol.
10311 (is_command_symbol): New function.
10312 (Fkey_binding): Use it. New optional argument NO-REMAP.
10313 Doc updated. Callers changed. Perform command remapping via
10314 recursive call unless that arg is non-nil.
10315 (where_is_internal): New argument no_remap. Callers changed.
10316 Call recursively to find original key bindings for a remapped
10317 comand unless that arg is non-nil.
10318 (Fwhere_is_internal): New optional argument NO-REMAP.
10319 Doc updated. Callers changed. Pass arg to where_is_internal.
0065bb74 10320
048addec
JD
10321 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
10322 (is_command_symbol): Added prototype.
0d8466cc 10323
048addec
JD
10324 * keyboard.c (Vthis_original_command): New variable.
10325 (syms_of_keyboard): DEFVAR_LISP it.
10326 (command_loop_1): Set it, and perform command remapping.
15fff01d 10327
048addec 103282002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2fae9111 10329
048addec 10330 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
2d6c1fc0 10331
048addec 103322002-02-06 Jason Rumney <jasonr@gnu.org>
07025a55 10333
048addec 10334 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
07025a55 10335
048addec 103362002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
07025a55 10337
048addec 10338 * charset.c (get_charset_id): Use if-else instead of ?:.
3a232704 10339
048addec 103402002-02-06 Richard M. Stallman <rms@gnu.org>
539e92ad 10341
048addec 10342 * filelock.c (S_ISLNK): Define if not defined.
3a232704 10343
048addec 103442002-02-03 Richard M. Stallman <rms@gnu.org>
0cb8bb48 10345
048addec 10346 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
539e92ad 10347
048addec
JD
10348 * lread.c (read1): Redesign strategy for force_multibyte and
10349 force_singlebyte. Now is_multibyte records whether read_buffer
10350 is multibyte. Encountering any multibyte character makes it so.
4e02881b 10351
048addec 103522002-02-02 Stefan Monnier <monnier@cs.yale.edu>
4e02881b 10353
048addec
JD
10354 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
10355 with the same sequence, map that sequence to f10 rather than f0.
1ab964d7 10356
048addec 103572002-02-03 Andreas Schwab <schwab@suse.de>
1ab964d7 10358
048addec
JD
10359 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
10360 latter never being defined on GNU/Linux.
749f499f 10361
048addec 103622002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
749f499f 10363
048addec
JD
10364 * xfaces.c (realize_default_face): Don't set the weight and slant of
10365 the default face to Qnormal, unless these attributes are unspecified.
b5d9aaba 10366
048addec 103672002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3a232704 10368
048addec
JD
10369 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
10370 Call cancel_hourglass unconditionally.
d0fd26dd 10371
048addec
JD
10372 * eval.c (Fsignal): Remove duplicated declaration of
10373 the variable `display_hourglass_p'.
b4c45162 10374
048addec 103752002-01-31 Richard M. Stallman <rms@gnu.org>
d0fd26dd 10376
048addec 10377 * editfns.c (region_limit): Nicer error message.
c95eaa61 10378
048addec
JD
10379 * coding.c (decode_composition_emacs_mule):
10380 Give up if NCOMPONENT gets too large to index `component'.
c95eaa61 10381
048addec
JD
10382 * callint.c (check_mark): New arg to specify clearer error message.
10383 Callers changed.
c95eaa61 10384
048addec 103852002-01-27 Richard M. Stallman <rms@gnu.org>
c95eaa61 10386
048addec 10387 * minibuf.c (Fcompleting_read): Doc fix.
c95eaa61 10388
048addec 103892002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c95eaa61 10390
048addec
JD
10391 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
10392 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
10393 Fix doc-strings.
c95eaa61 10394
048addec 103952002-01-26 Richard M. Stallman <rms@gnu.org>
c95eaa61 10396
048addec 10397 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
c95eaa61 10398
048addec
JD
10399 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
10400 and scroll_up_aggressively.
c95eaa61 10401
048addec 104022002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
31877e0a 10403
048addec 10404 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
31877e0a 10405
048addec 104062002-01-25 Stefan Monnier <monnier@cs.yale.edu>
e2c3786a 10407
048addec
JD
10408 * textprop.c (Fnext_property_change, Fnext_single_property_change)
10409 (Fprevious_property_change, Fprevious_single_property_change):
10410 Stay within the narrowed-buffer boundaries.
e2c3786a 10411
048addec 104122002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
c513fc03 10413
048addec
JD
10414 * term.c (Ftty_display_color_cells): New function.
10415 (syms_of_term): Defsubr it.
10416 (Ftty_display_color_cells, Ftty_display_color_p): Change the
10417 argument name to DISPLAY. Doc fix.
bf794306 10418
048addec
JD
10419 * dispextern.h: Add prototype for set_tty_color_mode and
10420 tty_setup_colors.
bf794306 10421
048addec 104222002-01-24 Jason Rumney <jasonr@gnu.org>
bf794306 10423
048addec
JD
10424 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
10425 If region left to draw is not what was expected, mark the frame as
10426 garbaged.
62582985 10427
048addec
JD
10428 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
10429 Combine the regions returned by BeginPaint and GetUpdateRect.
c513fc03 10430
048addec 104312002-01-23 Jason Rumney <jasonr@gnu.org>
3509a04c 10432
048addec
JD
10433 * w32term.c (x_update_window_begin): Only hide caret if
10434 w32_use_visible_system_caret is set.
10435 (x_update_window_end): Only show caret if
10436 w32_use_visible_system_caret is set.
10437 (syms_of_w32term): Handle SystemParametersInfo call failing.
3509a04c 10438
048addec 10439 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
3509a04c 10440
048addec 104412002-01-22 Richard M. Stallman <rms@gnu.org>
3509a04c 10442
048addec
JD
10443 * unexelf.c (unexec): Define n so as to cause compilation error
10444 for the code where people have often written n instead of nn.
1e9a6186 10445
048addec 10446 * .gdbinit (hookpost-run): Defined.
1e9a6186 10447
048addec 104482002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e4e34e31 10449
048addec 10450 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
e4e34e31 10451
048addec 104522002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4521d1fc 10453
048addec
JD
10454 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
10455 if fullscreen is being set.
7c75be36 10456
048addec 104572002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4521d1fc 10458
048addec
JD
10459 * minibuf.c (Fminibuffer_contents)
10460 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
10461 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
4521d1fc 10462
048addec 104632002-01-21 Richard M. Stallman <rms@gnu.org>
4521d1fc 10464
048addec 10465 * window.c (check_frame_size): Fix minimum height calculation.
93dec019 10466
048addec 104672002-01-20 Ken Raeburn <raeburn@gnu.org>
93dec019 10468
048addec
JD
10469 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
10470 height before comparison.
10471 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
905cc05a 10472
048addec 104732002-01-20 Jason Rumney <jasonr@gnu.org>
2ed06289 10474
048addec
JD
10475 * w32term.c (w32_system_caret_width): Remove.
10476 (w32_use_visible_system_caret): New user flag.
10477 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
10478 Windows reports a screen reader running.
10479 (x_update_window_begin): Hide the system caret.
10480 (x_update_window_end): Show the system caret.
10481 (x_display_and_set_cursor): Don't draw a cursor when
10482 w32_use_visible_system_caret is set. Do not adjust width.
0e79d667 10483
048addec
JD
10484 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
10485 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
10486 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
10487 the user requests it. Use system default width when creating.
10488 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
0e79d667 10489
048addec
JD
10490 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
10491 New window messages.
905cc05a 10492
048addec 104932002-01-20 Richard M. Stallman <rms@gnu.org>
82a7ab23 10494
048addec 10495 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
d75bec6a 10496
048addec 104972002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
52dcb476 10498
048addec 10499 * doprnt.c (doprnt1): Fix typos in error call.
82a7ab23 10500
048addec 105012002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
82a7ab23 10502
048addec 10503 * unexelf.c (unexec) [__sgi]: Support the .got sections.
82a7ab23 10504
048addec 105052002-01-20 Jason Rumney <jasonr@gnu.org>
4d0fa4f3 10506
048addec
JD
10507 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
10508 that Windows returns. If a double check fails, try to guess how
10509 ExtTextOut is going to act.
4d0fa4f3 10510
048addec
JD
10511 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
10512 in place of stricmp.
10513 (w32_list_synthesized_fonts): Removed.
10514 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
10515 (struct enumfont_t): New element; list.
10516 (enum_font_cb2): List all style and charset variations of a font.
10517 (Fw32_select_font): New optional argument; include_proportional.
10518 Exclude vertical fonts. Exclude proportional fonts unless
10519 include_proportional is non-nil.
10520 (w32_enable_synthesized_fonts): Change to a boolean.
10521 (Fw32_send_sys_command): Doc fix.
493faf20 10522
048addec 105232002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
493faf20 10524
048addec
JD
10525 * dispnew.c (update_frame): Move the variable `tem' to the block
10526 where it is used.
4971e491 10527
048addec 105282002-01-19 Jason Rumney <jasonr@gnu.org>
4971e491 10529
048addec
JD
10530 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
10531 call to face-set-after-frame-default.
4971e491 10532
048addec 105332002-01-18 Richard M. Stallman <rms@gnu.org>
d911a0fa 10534
048addec
JD
10535 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
10536 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
d911a0fa 10537
048addec 105382002-01-17 Richard M. Stallman <rms@gnu.org>
d911a0fa 10539
048addec
JD
10540 * window.c (enlarge_window): When exceeding size of parent,
10541 directly delete all the siblings instead of trying to resize it.
201c831a 10542
048addec 105432002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
201c831a 10544
048addec 10545 * term.c (set_tty_color_mode): Remove unused variable `tem'.
201c831a 10546
048addec 105472002-01-16 Henrik Enberg <henrik@enberg.org>
34e39c95 10548
048addec 10549 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
34e39c95 10550
048addec 105512002-01-16 Kim F. Storm <storm@cua.dk>
d77fbc16 10552
048addec
JD
10553 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
10554 is invisible. This can happen if cursor is on top line of a
10555 window, and we switch to a buffer with a header line.
d77fbc16 10556
048addec 10557 * w32term.c (x_erase_phys_cursor): Ditto.
61e3b944 10558
048addec 105592002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
61e3b944 10560
048addec
JD
10561 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
10562 `dont_resize' only when used.
61e3b944 10563
048addec 10564 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
70da46c3 10565
048addec 105662002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
70da46c3 10567
048addec
JD
10568 * xdisp.c (display_mode_element): When computing charpos, depend
10569 on multibyteness of elt, not the text in field.
8af01033 10570
048addec 105712002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8af01033 10572
048addec
JD
10573 * buffer.c (Fkill_all_local_variables):
10574 Increment `update_mode_lines' only once.
7363986a 10575
048addec 105762002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7363986a 10577
048addec
JD
10578 * lisp.h (adjust_after_replace_noundo)
10579 (Fupdate_coding_systems_internal): Add prototypes.
d9e6c4b1 10580
048addec 10581 * sound.c (Fplay_sound): Initialize header_size also for :data case.
d20fc48a 10582
048addec 105832002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
d9e6c4b1 10584
048addec
JD
10585 Support for the --color command-line argument and tty-color-mode
10586 frame parameter:
f1a85b89 10587
048addec
JD
10588 * term.c (tty_default_color_capabilities, tty_setup_colors)
10589 (set_tty_color_mode): New functions.
10590 (term_init): Call tty_default_color_capabilities.
10591 (Qtty_color_mode_alist): New variable.
10592 (syms_of_term): Intern and staticpro it.
f1a85b89 10593
048addec
JD
10594 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
10595 frames.
10596 (do_switch_frame): For termcap frames, switch the tty
10597 color mode as specified by the frame's parameters.
10598 (Qtty_color_mode): New variable.
10599 (syms_of_frame): Intern and staticpro it.
3a62677f 10600
048addec
JD
10601 * emacs.c (USAGE2): Add the --color option.
10602 (standard_args): Ditto.
72244db2 10603
048addec
JD
106042002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10605
10606 * xterm.h (struct x_output): New members want_fullscreen,
10607 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
10608 y_pixels_outer_diff.
10609 New enum for FULLSCREEN_* constants.
10610 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
10611 is NULL.
10612 (x_fullscreen_adjust): Add prototype.
3a62677f 10613
048addec
JD
10614 * emacs.c (USAGE2): Add the new full-screen arguments.
10615 (standard_args): Ditto.
3a62677f 10616
048addec
JD
10617 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
10618 New variables.
10619 (syms_of_xfns): Intern and staticpro them.
10620 (x_frame_parms) <"fullscreen">: New parameter.
10621 (x_fullscreen_move, x_set_fullscreen): New functions.
10622 (x_set_frame_parameters): Support for Qfullscreen.
10623 (x_real_positions): More accurate computation of the frame position.
10624 (x_figure_window_size): Support full-screen frames.
10625 (Fx_create_frame): Default the fullscreen parameter.
3a62677f 10626
048addec
JD
10627 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
10628 (XTread_socket) <Expose>: Call x_check_fullscreen.
10629 <ConfigureNotify>: Don't resize to fullscreen.
10630 Call x_check_fullscreen_move, and set the want_fullscreen member of
10631 output_data.x.
3a62677f 10632
048addec 106332002-01-13 Jason Rumney <jasonr@gnu.org>
9d113d9d 10634
048addec
JD
10635 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
10636 for mice with more than 3 buttons.
b8523839 10637
048addec
JD
10638 * w32term.c (parse_button): New parameter xbutton. Callers changed.
10639 (w32_read_socket): Handle new "XBUTTON" messages.
9464dea4 10640
048addec
JD
10641 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
10642 (syms_of_w32fns): DEFVAR_BOOL it.
10643 (w32_wnd_proc): Handle new "XBUTTON" messages.
9d113d9d 10644
048addec 106452002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
70ec1377 10646
048addec 10647 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
70ec1377 10648
048addec 106492002-01-13 Andreas Schwab <schwab@suse.de>
92f7dd37 10650
048addec 10651 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
92f7dd37 10652
048addec 106532002-01-12 Andreas Schwab <schwab@suse.de>
c93674bb 10654
048addec
JD
10655 * .gdbinit (xbuffer): Remove address operator since data is now a
10656 pointer.
c93674bb 10657
048addec 106582002-01-11 Richard M. Stallman <rms@gnu.org>
59b59892 10659
048addec 10660 * insdel.c (adjust_after_replace_noundo): New function.
59b59892 10661
048addec 10662 * coding.c (code_convert_region): Don't copy old text if undo disabled.
c6ea2775 10663
048addec 106642002-01-09 Jason Rumney <jasonr@gnu.org>
c6ea2775 10665
048addec
JD
10666 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
10667 when checking for multiple frames.
91175673 10668
048addec 106692002-01-08 Richard M. Stallman <rms@gnu.org>
91175673 10670
048addec
JD
10671 * window.c (delete_window): Rewrite the code for changing the
10672 selected window to handle the case where WINDOW is not a leaf.
91175673 10673
048addec 106742002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
e0fead5d 10675
048addec
JD
10676 * process.c (send_process): Set src_multibyte to 1 after the call
10677 top setup_coding_system, not before the call.
e0fead5d 10678
048addec 106792002-01-07 Jason Rumney <jasonr@gnu.org>
e0fead5d 10680
048addec
JD
10681 * xmenu.c (set_frame_menubar, xmenu_show):
10682 (xdialog_show): Initialize wv->help to Qnil.
c186cdb3 10683
048addec
JD
10684 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
10685 (w32_dialog_show): Initialize wv->help to Qnil.
c186cdb3 10686
048addec 106872002-01-06 Jason Rumney <jasonr@gnu.org>
c186cdb3 10688
048addec 10689 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
c186cdb3 10690
048addec 10691 * w32menu.c (w32_menu_display_help): Revert last change.
58cfce98 10692
048addec 10693 * xmenu.c (menu_highlight_callback): Revert last change.
58cfce98 10694
048addec 106952002-01-06 Andreas Schwab <schwab@suse.de>
62854fe2 10696
048addec
JD
10697 * insdel.c (make_gap_larger): Make sure buffer size does not
10698 overflow range of int.
62854fe2 10699
048addec 107002002-01-05 Jason Rumney <jasonr@gnu.org>
656f46bb 10701
048addec
JD
10702 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
10703 OVERLAPS_P.
656f46bb 10704
048addec 10705 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
656f46bb 10706
048addec
JD
10707 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
10708 to the left or to the right of the pointer, put it against
10709 the left screen edge.
10710 (x_frame_parms): Add missing braces around initializer.
036e218d 10711
048addec
JD
10712 * w32term.c (x_setup_relief_colors): Don't compute an image's
10713 background color if it doesn't have a Pixmap.
10714 (notice_overwritten_cursor): Don't depend on
10715 output_cursor and updated_area. Compare pixel coordinates with
10716 window's cursor pixel coordinates.
10717 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
10718 Call notice_overwritten_cursor with new arg list.
10719 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
10720 unconditionally.
10721 (x_draw_image_relief): Use predefined macro instead of
10722 constant when the value of `tool_bar_button_relief' is negative.
036e218d 10723
048addec 10724 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
7ddb2c16 10725
048addec 107262002-01-04 Richard M. Stallman <rms@gnu.org>
7ddb2c16 10727
048addec 10728 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
ace9b298 10729
048addec 107302002-01-03 Richard M. Stallman <rms@gnu.org>
90647b07 10731
048addec
JD
10732 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
10733 (Fkey_binding): Try the `keymap' property map first.
10734 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
10735 minor mode bindings.
90647b07 10736
048addec 107372002-01-03 Kim F. Storm <storm@cua.dk>
ace9b298 10738
048addec 10739 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
ace9b298 10740
048addec 107412002-01-02 Richard M. Stallman <rms@gnu.org>
ace9b298 10742
048addec
JD
10743 * keyboard.c (read_key_sequence): Handle the keymap property
10744 before minor mode maps.
9fbc32aa 10745
048addec
JD
10746 * editfns.c (Fformat): Update thissize from field_width
10747 based on the actual width, in the string case.
036e218d 10748
048addec 107492002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fbc32aa 10750
048addec
JD
10751 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
10752 when used as truth value to prevent gcc warnings.
9fbc32aa 10753
048addec
JD
10754 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
10755 * w32proc.c: Include <config.h>.
9fbc32aa 10756
048addec 107572002-01-01 Andreas Schwab <schwab@suse.de>
9fbc32aa 10758
048addec
JD
10759 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
10760 not EMACS_INT, to make them compatible with DEFVAR_INT.
10761 * lisp.h (max_specpdl_size): Adjust declaration.
9fbc32aa 10762
048addec 107632002-01-01 Richard M. Stallman <rms@gnu.org>
9fbc32aa 10764
048addec
JD
10765 * print.c (print_object): Test print_escape_nonascii only for
10766 unibyte strings.
10767 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
10768 when outputting to a multibyte buffer.
9fbc32aa 10769
048addec 107702001-12-29 Richard M. Stallman <rms@gnu.org>
9fbc32aa 10771
048addec
JD
10772 * print.c (print_object): In multibyte string, use hex escapes.
10773 Use octal only for unibyte strings.
10774 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
0142178a 10775
048addec
JD
10776 * lread.c (read_escape): New arg BYTEREP for reporting whether
10777 escape forces unibyte or multibyte.
10778 (read1): When reading a string, take note of that info.
0142178a 10779
048addec 107802001-12-29 Ken Raeburn <raeburn@gnu.org>
d4824a5d 10781
048addec
JD
10782 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
10783 comparison to test lisp value returned by Fget.
d4824a5d 10784
048addec 107852001-12-29 Richard M. Stallman <rms@gnu.org>
b1356234 10786
048addec 10787 * lisp.h (max_specpdl_size): Add declaration.
b1356234 10788
048addec 10789 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
3ce081f5 10790
048addec
JD
10791 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
10792 Handle modifier bits. Correct typo in error message.
99e380ee 10793
048addec 107942001-12-28 Richard M. Stallman <rms@gnu.org>
3ce081f5 10795
048addec
JD
10796 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
10797 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
10798 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
10799 Update calls to Fdefine_abbrev.
10800 (write_abbrev): Update for changed data format.
10801 Don't list "system" abbrevs.
10802 (Fexpand_abbrev): Update use count with new data format.
10803 (describe_abbrev): Update for changed data format.
10804 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
66458f32 10805
048addec 10806 * config.in (HAVE_MBSINIT): Add #undef.
66458f32 10807
048addec 10808 * strftime.c (mbsinit): Define as no-op if not available.
66458f32 10809
048addec
JD
10810 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
10811 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
59a86c99 10812
048addec
JD
10813 * keymap.c (Flookup_key): Error message if key has wrong data type.
10814 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
10815 (exclude_key): New variable.
59a86c99 10816
048addec 108172001-12-28 Gerd Moellmann <gerd@gnu.org>
eb77a5f4 10818
048addec
JD
10819 * xterm.c (x_setup_relief_colors): Don't compute an image's
10820 background color if it doesn't have a Pixmap.
eb77a5f4 10821
048addec
JD
10822 * xterm.c (notice_overwritten_cursor): Don't depend on
10823 output_cursor and updated_area. Compare pixel coordinates with
10824 window's cursor pixel coordinates.
10825 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
10826 Call notice_overwritten_cursor with new arg list.
10827 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
10828 unconditionally.
eb77a5f4 10829
048addec
JD
10830 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
10831 height of the cursor line to the amount to scroll.
eb77a5f4 10832
048addec 108332001-12-27 Richard M. Stallman <rms@gnu.org>
bb313871 10834
048addec
JD
10835 * intervals.c (set_point_both): The position after an invisible,
10836 intangible character is not an acceptable stopping point.
bb313871 10837
048addec 108382001-12-27 Ken Raeburn <raeburn@gnu.org>
55b43a63 10839
048addec
JD
10840 * window.c (enlarge_window): In new preserve_before code, convert
10841 CURBEG from lisp object to integer before doing arithmetic.
6052529b 10842
048addec 108432001-12-27 Richard M. Stallman <rms@gnu.org>
3ce081f5 10844
048addec 10845 * bytecode.c (Fbyte_code): Undo previous change.
3ce081f5 10846
048addec 108472001-12-26 Kim F. Storm <storm@cua.dk>
3ce081f5 10848
048addec
JD
10849 * keyboard.c (record_char): Ignore duplicate help-echo events only
10850 separated by mouse-movement. When tracking mouse, only record
10851 first and last mouse-movement event in same window.
10852 Don't record mouse-movement events in keyboard macros.
3ce081f5 10853
048addec 108542001-12-25 Richard M. Stallman <rms@gnu.org>
55b43a63 10855
048addec
JD
10856 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
10857 (Fenlarge_window): New arg PRESERVE_BEFORE.
111ed14e 10858
048addec
JD
10859 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
10860 instead of Fstring_as_unibyte.
9fabb2f5 10861
048addec 108622001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fabb2f5 10863
048addec 10864 The following changes remove mocklisp support:
9fabb2f5 10865
048addec 10866 * mocklisp.h, mocklisp.c: Files removed.
111ed14e 10867
048addec
JD
10868 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
10869 `Qmocklisp' and `Qmocklisp_arguments'.
10870 Remove prototype of syms_of_mocklisp.
2fa0eedf 10871
048addec 10872 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
d1420435 10873
048addec
JD
10874 * callint.c: Do not include mocklisp.h.
10875 (Fcall_interactively): Do not test for mocklisp case.
2fa0eedf 10876
048addec
JD
10877 * eval.c: Remove variables `Qmocklisp_arguments',
10878 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
10879 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
10880 Do not test for mocklisp case.
10881 (Fwhile): Remove unused variable `tem'.
10882 (syms_of_eval): Remove variable `moclisp-arguments'.
ebcbef4e 10883
048addec 10884 * data.c (wrong_type_argument): Remove mocklisp case.
5c131048 10885
048addec 10886 * doc.c (Fdocumentation): Remove mocklisp case.
5c131048 10887
048addec 10888 * emacs.c (main): Do not call syms_of_mocklisp.
5c131048 10889
048addec 108902001-12-21 Richard M. Stallman <rms@gnu.org>
96d276c3 10891
048addec
JD
10892 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
10893 to the left or to the right of the pointer, put it against
10894 the left screen edge.
6108b49c 10895
048addec 108962001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
96d276c3 10897
048addec
JD
10898 * Makefile.in (distclean): Remove .gdbinit if we are building
10899 outside the source tree.
5eea19a4 10900
048addec 109012001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
5eea19a4 10902
048addec 10903 * w32.c (emacs_root_dir): New function.
5eea19a4 10904
048addec 10905 * msdos.c (emacs_root_dir): New function.
5eea19a4 10906
048addec
JD
10907 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
10908 of the current drive as the fallback for default_directory.
438e57dd 10909
048addec
JD
10910 * dired.c (file_name_completion): Run the elements of
10911 completion-ignored-extensions through ENCODE_FILE.
438e57dd 10912
048addec
JD
10913 * lisp.h (scmp): Remove prototype, since it's now a static
10914 function private to dired.c.
c88e5347 10915
048addec 109162001-12-18 Richard M. Stallman <rms@gnu.org>
c88e5347 10917
048addec
JD
10918 * dired.c (scmp): Function moved from minibuf.c.
10919 Delete multibyte handling--used only on encoded strings.
59ce1461 10920
048addec 10921 * minibuf.c (scmp): Function moved to dired.c.
59ce1461 10922
048addec 10923 * fns.c (merge): Add QUIT call.
59ce1461 10924
048addec 109252001-12-18 Dave Love <fx@gnu.org>
8727d588 10926
048addec
JD
10927 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
10928 language/georgian.el.
8727d588 10929
048addec 109302001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
cc63037e 10931
048addec
JD
10932 * Makefile.in (lisp, shortlisp): Synchronize with changes to
10933 lisp/Makefile.in:DONTCOMPILE.
cc63037e 10934
048addec 109352001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
cc63037e 10936
048addec
JD
10937 * xdisp.c (window_box_height): Do not return negative values.
10938 From Gerd Moellmann <gerd@gnu.org>.
cc63037e 10939
048addec 10940 * keyboard.c (head_table): Add missing braces around initializer.
cc63037e 10941
048addec 10942 * term.c (keys): Likewise.
deece6f5 10943
048addec 10944 * xfns.c (x_frame_parms, visual_classes): Likewise.
deece6f5 10945
048addec 109462001-12-17 Sam Steingold <sds@gnu.org>
1b944d9c 10947
048addec
JD
10948 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
10949 patch (COMPOSING_P, not COMPOSING).
28ff4293 10950
048addec 109512001-12-17 Richard M. Stallman <rms@gnu.org>
a395ef6a 10952
048addec 10953 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
a395ef6a 10954
048addec
JD
10955 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
10956 before calling decode_coding.
9b46de40 10957
048addec 10958 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
9b46de40 10959
048addec
JD
10960 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
10961 instead of only for COMPOSITION_DISABLED.
9b46de40 10962
048addec 109632001-12-16 Richard M. Stallman <rms@gnu.org>
aff37336 10964
048addec 10965 * alloc.c (pure_alloc): After overflow, allocate just a small block.
aff37336 10966
048addec 10967 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
b9937f07 10968
048addec
JD
10969 * buffer.h (struct buffer): New field `display_error_modiff'.
10970 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
b9937f07 10971
048addec 10972 * window.c (Frecenter): Clear display_error_modiff field.
2cd23960 10973
048addec
JD
10974 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
10975 Call redisplay_window, but not if display_error_modiff field says no.
10976 (redisplay_window_error): New function.
10977 (displayed_buffer): New variable.
10978 (redisplay_internal, redisplay_windows): Call the new functions
10979 instead of redisplay_window directly.
2cd23960 10980
048addec 109812001-12-15 Richard M. Stallman <rms@gnu.org>
2cd23960 10982
048addec 10983 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
2cd23960 10984
048addec 109852001-12-14 Andrew Innes <andrewi@gnu.org>
a4184c1c 10986
048addec
JD
10987 * makefile.w32-in (EMACSLOADPATH): Define.
10988 ($(EMACS)): Run `list-load-path-shadows' after dumping emacs.
10989 (bootstrap-temacs): Remove dependency on bootstrap-clean.
a4184c1c 10990
048addec 109912001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
f6fa0866 10992
048addec
JD
10993 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
10994 parameter have a numeric value all the time.
f6fa0866 10995
048addec 10996 * w32fns.c (x_report_frame_params): Likewise.
f4ca4b00 10997
048addec 109982001-12-12 Richard M. Stallman <rms@gnu.org>
f4ca4b00 10999
048addec 11000 * fileio.c (Fwrite_region): Doc fix.
f4e25f94 11001
048addec
JD
11002 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
11003 (redisplay_internal): Call clear_image_cache only for window terminals.
f4e25f94 11004
048addec 110052001-12-12 Gerd Moellmann <gerd@gnu.org>
91c153e2 11006
048addec
JD
11007 * xdisp.c (move_it_vertically_backward): Change heuristic
11008 for the case that we didn't move far enough initially.
91c153e2 11009
048addec
JD
11010 * window.c (Frecenter): Simplify computation in the case of window
11011 system frames and ARG < 0; use window_box_height.
65b7d3e7 11012
048addec 110132001-12-11 Richard M. Stallman <rms@gnu.org>
65b7d3e7 11014
048addec
JD
11015 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
11016 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
6b5f6311 11017
048addec 110182001-12-11 Andrew Innes <andrewi@gnu.org>
6b5f6311 11019
048addec
JD
11020 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
11021 arg is negative.
be676094 11022
048addec 110232001-12-11 Richard M. Stallman <rms@gnu.org>
be676094 11024
048addec
JD
11025 * m/hp800.h: Split the __hpux conditional into the parts
11026 that are right for GNU/Linux too and the parts that are not.
11027 Use the former if GNU_LINUX.
11028 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
032a857d 11029
048addec 11030 * s/gnu-linux.h (GNU_LINUX): Defined.
032a857d 11031
048addec 110322001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
032a857d 11033
048addec
JD
11034 * macros.c, msdos.c, w16select.c: Change doc-string comments to
11035 `new style' [w/`doc:' keyword].
032a857d 11036
048addec 110372001-12-10 Jason Rumney <jasonr@gnu.org>
b6270150 11038
048addec
JD
11039 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
11040 before using.
b6270150 11041
048addec 110422001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
792e5cbd 11043
048addec
JD
11044 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
11045 keyword].
98cbb9fa 11046
048addec 110472001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
98cbb9fa 11048
048addec 11049 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
98cbb9fa 11050
048addec 11051 * s/hpux10.h (srand48): Don't undefine.
98cbb9fa 11052
048addec 110532001-12-09 Jason Rumney <jasonr@gnu.org>
792e5cbd 11054
048addec
JD
11055 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
11056 Add comment to explain where the struct came from.
11057 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
11058 (add_menu_item): Process pop-up menus first to avoid memory leak.
11059 (add_menu_item, w32_menu_display_help): Use `help' field as
11060 Lisp_Object.
11061 (w32_free_submenu_strings): Only free owner-drawn strings.
fa336b91 11062
048addec 110632001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
fa336b91 11064
048addec 11065 * COPYING: Moved back.
fa336b91 11066
048addec
JD
11067 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
11068 Add parentheses around && within ||.
077907d4 11069
048addec 11070 * indent.c (compute_motion): Likewise.
aa2af83a 11071
048addec 11072 * intervals.c (merge_properties_sticky): Likewise.
60a653f1 11073
048addec
JD
11074 * coding.c (setup_coding_system, shrink_encoding_region)
11075 (Fdecode_sjis_char): Likewise.
60a653f1 11076
048addec 110772001-12-07 Andreas Schwab <schwab@suse.de>
60a653f1 11078
048addec
JD
11079 * xdisp.c (display_mode_element): Don't read past end of string if
11080 it ends with '%'.
60a653f1 11081
048addec
JD
11082 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
11083 can hold.
60a653f1 11084
048addec
JD
11085 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
11086 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
11087 type changed to Lisp_Object.
11088 (syms_of_data): DEFVAR_LISP them.
60a653f1 11089
048addec 110902001-12-07 Richard M. Stallman <rms@gnu.org>
60a653f1 11091
048addec
JD
11092 * callproc.c (init_callproc): Set Vdata_directory based on the source
11093 location whenever Emacs was run uninstalled.
60a653f1 11094
048addec 110952001-12-06 Paul Eggert <eggert@twinsun.com>
60a653f1 11096
048addec
JD
11097 * config.in (HAVE_WORKING_VFORK): New #undefs.
11098 * process.c (create_process):
11099 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
11100 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
11101 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
11102 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
11103 * m/intel386.h (HAVE_VFORK): Likewise.
11104 * m/mips-siemens.h (HAVE_VFORK): Likewise.
11105 * m/mips.h (HAVE_VFORK): Likewise.
11106 * s/freebsd.h (vfork): Remove #define.
11107 * s/lynxos.h (HAVE_VFORK): Remove #undef.
11108 * s/usg5-4-2.h: Fix comment about vfork.
60a653f1 11109
048addec 111102001-12-06 Richard M. Stallman <rms@gnu.org>
60a653f1 11111
048addec
JD
11112 * s/hpux10.h (random): Add undef.
11113 (HAVE_RANDOM): Define it just once.
60a653f1 11114
048addec 111152001-12-06 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11116
048addec 11117 * eval.c: Undo last change: the standard syntax is not wanted.
60a653f1 11118
048addec 111192001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 11120
048addec
JD
11121 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
11122 scroll bars of the frame before deleting the frame itself. If the
11123 frame has a widget, delete the frame with XtDestroyWidget, and do
11124 not call XDestroyWindow before that.
60a653f1 11125
048addec 111262001-12-06 Kim F. Storm <storm@cua.dk>
60a653f1 11127
048addec 11128 * xfns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 11129
048addec 11130 * w32fns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 11131
048addec 111322001-12-05 Andrew Innes <andrewi@gnu.org>
60a653f1 11133
048addec
JD
11134 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
11135 excessively large.
60a653f1 11136
048addec
JD
11137 * insdel.c (make_gap_larger): New function.
11138 (make_gap_smaller): New function.
11139 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
11140 Call make_gap_smaller if arg is negative.
60a653f1 11141
048addec 111422001-12-04 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11143
048addec
JD
11144 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
11145 Pass a dummy argument when calling interrupt_signal.
11146 (parse_menu_item): Mark disabled items before checking for empty def.
11147 (read_char_minibuf_menu_prompt): Make safety more visible.
11148 (read_key_sequence): Add a `first_unbound' variable.
11149 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
11150 unbound prefix as soon as we can detect it.
60a653f1 11151
048addec
JD
11152 * doc.c (Fsnarf_documentation): Add prototype.
11153 (get_doc_string): Handle negative arguments.
11154 (Fdocumentation): Use AREF and ASIZE.
11155 Move the calls to get_doc_string to a single place.
11156 Don't confuse an interactive-spec for a docstring reference.
11157 (Fdocumentation_property): Take advantage of the fact that
11158 get_doc_string now ignores the sign of the docstring position.
60a653f1 11159
048addec 11160 * eval.c: Use standard syntax for usage in docstrings.
60a653f1 11161
048addec 111622001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11163
a64387ee 11164 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
60a653f1 11165
048addec 111662001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11167
048addec
JD
11168 * xterm.c (x_draw_image_relief): Use predefined macro instead of
11169 constant when the value of `tool_bar_button_relief' is negative.
60a653f1 11170
048addec 111712001-12-02 Richard M. Stallman <rms@gnu.org>
60a653f1 11172
048addec
JD
11173 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
11174 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
60a653f1 11175
048addec 11176 * fileio.c (read_non_regular): Delete Fsignal call.
60a653f1 11177
048addec 111782001-12-01 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11179
048addec 11180 * lisp.h (run_hook_list_with_args): Undo last change.
60a653f1 11181
048addec 111822001-12-01 Gerd Moellmann <gerd@gnu.org>
60a653f1 11183
048addec 11184 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
60a653f1 11185
048addec 111862001-12-01 Jason Rumney <jasonr@gnu.org>
60a653f1 11187
048addec 11188 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
60a653f1 11189
048addec
JD
11190 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
11191 [!WM_MOUSELEAVE]: Define.
60a653f1 11192
048addec
JD
11193 * w32menu.c (current_popup_menu, get_menu_item_info):
11194 (set_menu_item_info): New vars.
11195 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
11196 (w32_menu_show): Set current_popup_menu.
11197 (add_menu_item): Allocate new strings for owner-drawn menu items
11198 and help strings.
11199 Use owner-draw for disabled menu items again.
11200 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
11201 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
60a653f1 11202
048addec
JD
11203 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
11204 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
11205 <WM_EXITMENULOOP>: Free menu strings.
11206 <WM_MOUSELEAVE>: Stop tracking mouse.
11207 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
60a653f1 11208
048addec
JD
11209 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
11210 and mouse face.
60a653f1 11211
048addec 112122001-12-01 Kim F. Storm <storm@cua.dk>
60a653f1 11213
048addec
JD
11214 The following changes add left-fringe and right-fringe
11215 frame parameters to adjust fringe widths, or remove one or
11216 both fringes.
60a653f1 11217
048addec
JD
11218 * frame.h (struct frame): Remove trunc_area_pixel_width and
11219 trunc_area_cols fields.
11220 (Qleft_fringe, Qright_fringe): Declare.
11221 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
60a653f1 11222
048addec
JD
11223 * frame.c (Qleft_fringe, Qright_fringe): New vars.
11224 (syms_of_frame): Initialize them.
60a653f1 11225
048addec
JD
11226 * window.c (coordinates_in_window): Handle separate left and right
11227 fringe widths.
60a653f1 11228
048addec
JD
11229 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
11230 and fringe_cols fields.
11231 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
11232 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
11233 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
11234 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
11235 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
11236 (x_compute_fringe_widths): Add prototype.
60a653f1 11237
048addec
JD
11238 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
11239 fill fringe evenly with small dashes.
11240 (x_draw_fringe_bitmap): Clear background if necessary. Align and
11241 clip the new ZV bitmap to avoid jitter between rows.
11242 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
11243 background. Don't draw fringe bitmaps if fringe width is zero.
11244 (x_compute_fringe_widths): New function.
11245 (x_new_font, x_set_window_size_1): Use it.
60a653f1 11246
048addec
JD
11247 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
11248 (x_set_frame_parameters): Process `font' parameter before other
11249 parameters as fringe widths depend on it.
11250 (x_set_fringe_width): New function.
11251 (x_figure_window_size): Use x_compute_fringe_widths.
11252 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
11253 parameters.
60a653f1 11254
048addec
JD
11255 * widget.c (set_frame_size): Use x_compute_fringe_widths.
11256 (EmacsFrameSetCharSize): Ditto.
60a653f1 11257
048addec
JD
11258 * w32term.h: Merged changes from xterm.h.
11259 * w32term.c: Merged changes from xterm.c.
11260 * w32fns.c: Merged changes from xfns.c.
60a653f1 11261
048addec 112622001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11263
048addec 11264 * COPYING: Removed.
60a653f1 11265
048addec 112662001-11-29 Dave Love <fx@gnu.org>
60a653f1 11267
048addec
JD
11268 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
11269 extra extra slot.
11270 (detect_coding_mask): Fix call of detect_coding_iso2022.
60a653f1 11271
048addec 112722001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11273
048addec
JD
11274 * fileio.c (file-name-coding-system)
11275 (default-file-name-coding-system): Doc fix (links to referenced
11276 variables added).
60a653f1 11277
048addec 112782001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11279
048addec
JD
11280 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
11281 Add dummy uses of gcproN variables.
60a653f1 11282
048addec
JD
11283 * category.c (describe_category, describe_category_1)
11284 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
11285 (syms_of_category): Don't defsubr Sdescribe_categories.
60a653f1 11286
048addec 112872001-11-28 Richard M. Stallman <rms@gnu.org>
60a653f1 11288
048addec 11289 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
60a653f1 11290
048addec
JD
11291 * Makefile.in (lispdir): New variable, referring to build dir.
11292 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
60a653f1 11293
048addec 112942001-11-28 Andrew Innes <andrewi@gnu.org>
60a653f1 11295
048addec
JD
11296 * w32menu.c (w32_menu_display_help): Actually add the new argument
11297 OWNER.
60a653f1 11298
048addec 112992001-11-28 Jason Rumney <jasonr@gnu.org>
60a653f1 11300
048addec
JD
11301 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
11302 menu items. From David Ponce <dponce@wanadoo.fr>.
11303 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
11304 conditionally.
11305 (w32_menu_display_help): New argument OWNER. Rewritten to store a
11306 help event in the owner frame's keyboard buffer.
60a653f1 11307
048addec
JD
11308 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
11309 (Fx_show_tip): Don't subtract last width from row width.
11310
11311 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
11312 (w32_read_socket): Use EQ to compare frames.
60a653f1 11313
048addec 113142001-11-28 Gerd Moellmann <gerd@gnu.org>
60a653f1 11315
048addec
JD
11316 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
11317 OVERLAPS_P.
60a653f1 11318
048addec 113192001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11320
048addec
JD
11321 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
11322 `gcpro3' and `gcpro4'.
60a653f1 11323
048addec 11324 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
60a653f1 11325
048addec 113262001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11327
048addec 11328 * ccl.c: Use AREF and ASIZE.
60a653f1 11329
048addec 113302001-11-27 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11331
048addec
JD
11332 * lisp.h (run_hook_list_with_args): Remove.
11333 (LIST_END_P): Fix call to wrong_type_argument.
11334 (make_fixnum_or_float): Use EMACS_INT rather than int.
60a653f1 11335
048addec 113362001-11-26 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11337
048addec
JD
11338 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
11339 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
60a653f1 11340
048addec
JD
11341 * eval.c: Use AREF and ASIZE.
11342 (Ffetch_bytecode): Add the file name to the error message.
60a653f1 11343
048addec
JD
11344 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
11345 which match the end of the file-name.
11346 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
11347 is not a valid env var, but leave it as is instead.
60a653f1 11348
048addec
JD
11349 * keymap.c (access_keymap): Handle t bindings like nil bindings.
11350 Make nil bindings in char-tables transparent.
11351 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
60a653f1 11352
048addec 113532001-11-26 Richard M. Stallman <rms@gnu.org>
60a653f1 11354
048addec
JD
11355 * textprop.c (set_text_properties_1): Allow START, END in either order.
11356 Do nothing if range is empty.
60a653f1 11357
048addec 11358 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
60a653f1 11359
048addec
JD
11360 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
11361 (clean): Not here.
60a653f1 11362
048addec 113632001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11364
048addec
JD
11365 * textprop.c (set_text_properties_1): Clearly mark that the
11366 interval should not be empty.
60a653f1 11367
048addec
JD
11368 * intervals.c (graft_intervals_into_buffer):
11369 Don't call set_text_properties_1 on an empty interval.
60a653f1 11370
048addec 113712001-11-25 Richard M. Stallman <rms@gnu.org>
60a653f1 11372
048addec 11373 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
60a653f1 11374
048addec
JD
11375 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
11376 don't lose the data in it.
60a653f1 11377
048addec 113782001-11-25 Juanma Barranquero <lektu@terra.es>
60a653f1 11379
048addec 11380 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
60a653f1 11381
048addec 11382 * buffer.c (Fkill_buffer): Use Frun_hooks, not Vrun_hooks.
60a653f1 11383
048addec 11384 * print.c (temp_output_buffer_setup): Use Frun_hooks, not Vrun_hooks.
60a653f1 11385
048addec 113862001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11387
048addec 11388 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
60a653f1 11389
048addec 113902001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 11391
048addec
JD
11392 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
11393 Niemitalo <kon@iki.fi>.
60a653f1 11394
048addec 113952001-11-25 Jason Rumney <jasonr@gnu.org>
60a653f1 11396
048addec 11397 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
60a653f1 11398
048addec
JD
11399 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
11400 (Fx_show_tip): Block input during frame creation.
11401 (Fx_show_tip, Fx_hide_tip): Enable.
60a653f1 11402
048addec 114032001-11-24 Richard M. Stallman <rms@gnu.org>
60a653f1 11404
048addec
JD
11405 * lread.c (Fload): Detect recursive load error for more than 3
11406 nestings of the same file.
11407 (Vrecursive_load_depth_limit): Variable deleted.
11408 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
60a653f1 11409
048addec 114102001-11-24 Jason Rumney <jasonr@gnu.org>
60a653f1 11411
048addec
JD
11412 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
11413 mouse position if either left or top is not specified.
60a653f1 11414
048addec
JD
11415 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
11416 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
11417 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
11418 (my_create_tip_window): Assign tip_window.
11419 (x_create_tip_frame): Use same defaults as X.
11420 (compute_tip_xy): Remove unused variable. Use full screen width.
11421 (Fx_show_tip): Do not double height. Call ShowWindow directly.
60a653f1 11422
048addec
JD
11423 * w32term.c (x_after_update_window_line): Doc fix.
11424 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
11425 frames.
11426 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
60a653f1 11427
048addec
JD
11428 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
11429 for all Windowed systems.
60a653f1 11430
048addec 114312001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 11432
048addec
JD
11433 * msdos.c (IT_clear_screen): If the frame's faces are not yet
11434 realized, use the initial screen colors to clear the screen.
60a653f1 11435
048addec 114362001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11437
048addec
JD
11438 * textprop.c (Fset_text_properties): Remove unused variables
11439 `unchanged', `prev_changed', `s' and `len'.
60a653f1 11440
048addec
JD
11441 * search.c (Freplace_match): Remove unused variable `inslen'.
11442
11443 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
11444
114452001-11-22 Jason Rumney <jasonr@gnu.org>
11446
11447 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
11448 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
11449 (my_create_tip_window): New function.
11450 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
11451 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
11452
114532001-11-20 Jason Rumney <jasonr@gnu.org>
11454
11455 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
11456 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
11457
11458 * w32fns.c (Vw32_system_coding_system): Remove.
11459 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
11460
114612001-11-19 Stefan Monnier <monnier@cs.yale.edu>
11462
11463 * fileio.c (Fwrite_region): Move choose_write_coding_system to
11464 after build_annotations.
11465
11466 * syntax.c (describe_syntax): Add dummy arg.
11467 (describe_syntax_1): Update call to describe_vector.
11468
11469 * category.c (describe_category): Add dummy arg.
11470 (describe_category_1): Update call to describe_vector.
11471
11472 * keymap.c (Fdescribe_vector): Add `describer' parameter.
11473 (describe_command, describe_translation): Add dummy second param.
11474 (describe_map): Call elt_describer with two arguments.
11475 (describe_vector_princ): Add `fun' parameter.
11476 Call it instead of the hardcoded `princ'.
11477 (describe_vector): Add arg `args'.
11478 Pass it as a new second argument to elt_describer.
60a653f1 11479
048addec 11480 * keymap.h (describe_vector): Update prototype.
60a653f1 11481
048addec
JD
11482 * frame.c: Don't include keymap.h any more.
11483 (keys_of_frame): Remove.
60a653f1 11484
048addec 11485 * lisp.h (keys_of_frame): Remove declaration.
60a653f1 11486
048addec 11487 * emacs.c (main): Don't call `keys_of_frame' any more.
60a653f1 11488
048addec 114892001-11-14 Andreas Schwab <schwab@suse.de>
60a653f1 11490
048addec
JD
11491 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
11492 if defined, 0 otherwise.
11493 (MAP_FAILED): Define if not defined and use it to test mmap failure.
11494 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
60a653f1 11495
048addec 114962001-11-19 Richard M. Stallman <rms@gnu.org>
60a653f1 11497
048addec 11498 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
60a653f1 11499
048addec 115002001-11-18 Jason Rumney <jasonr@gnu.org>
60a653f1 11501
048addec
JD
11502 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
11503 (x_draw_bar_cursor): If the background color of the glyph under
11504 the cursor equals the frame's cursor color, use the glyph's
11505 foreground color for drawing the bar cursor.
11506 (x_after_update_window_line): Clear internal border in different
11507 circumstances.
11508 (w32_set_vertical_scroll_bar): Check for width and height > 0.
11509 (w32_draw_relief_rect): Correct relief by 1 pixel.
11510 (x_set_glyph_string_background_width):
11511 Set extends_to_end_of_line_p if the row's fill_line_p is set and
11512 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
11513 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
11514 if cursor_in_non_selected_windows is false.
11515 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
11516 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
11517 Notice if cursor gets overwritten.
11518 (notice_overwritten_cursor): Renamed from
11519 note_overwritten_text_cursor. Rewritten to take glyph widths
11520 into account, and to take X positions as parameters.
11521 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
11522 around call to x_draw_glyphs.
11523 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
11524 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
11525 color to use for image glyph reliefs.
11526 (x_draw_image_relief): Accept zero tool_bar_button_relief.
11527 (glyph_rect): Remove unused variable `area'.
60a653f1 11528
048addec
JD
11529 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
11530 some items.
11531 (x_set_internal_border_width): Set frame garbaged when window
11532 doesn't exist yet.
11533 (Fx_create_frame): Accept zero tool_bar_button_relief.
11534 (x_clear_image_1, four_corners_best, image_background)
11535 (image_background_transparent): New functions.
11536 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
11537 (gs_format): Add `:background' entry.
11538 (lookup_image): Set IMG's background color if specified.
11539 (pbm_load, xbm_load_image, png_load): Set IMG's background field
11540 when appropriate.
11541 (x_clear_image_1): Reset `background_valid' and
11542 `background_transparent_valid' fields.
11543 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
11544 calculating it here. Set IMG's background_transparent field.
11545 (enum xpm_keyword_index): Add XPM_BACKGROUND.
11546 (enum png_keyword_index): Add PNG_BACKGROUND.
11547 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
11548 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
11549 (enum gif_keyword_index): Add GIF_BACKGROUND.
11550 (enum gs_keyword_index): Add GS_BACKGROUND.
11551 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
11552 Pre-calculate image background color where necessary.
11553 (x_create_x_image_and_pixmap, xbm_load, gs_load):
11554 Use display info's n_cbits entry for screen depth.
11555 (Fx_show_tip): Remove unused variables `buffer', `top',
11556 `left', `max_width' and `max_height'.
60a653f1 11557
048addec 11558 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
60a653f1 11559
048addec 115602001-11-18 Gerd Moellmann <gerd@gnu.org>
60a653f1 11561
048addec 11562 * puresize.h (BASE_PURESIZE): Increase to 750000.
60a653f1 11563
048addec 115642001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11565
048addec 11566 * frame.c (Fframe_live_p): Doc fix.
60a653f1 11567
048addec 115682001-11-18 Richard M. Stallman <rms@gnu.org>
60a653f1 11569
048addec
JD
11570 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
11571 (message_dolog_marker3): New static variables hold three markers.
11572 (syms_of_xdisp): Initialize and staticpro them.
11573 (message_dolog): Use message_dolog_marker1..3 instead of
11574 allocating markers each time. Unchain them when done.
60a653f1 11575
048addec 115762001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 11577
048addec 11578 * doc.c (Fsnarf_documentation): Doc fix.
60a653f1 11579
048addec 115802001-11-17 Andreas Schwab <schwab@suse.de>
60a653f1 11581
048addec 11582 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
60a653f1 11583
048addec 115842001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 11585
048addec 11586 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
60a653f1 11587
048addec 115882001-11-17 Jason Rumney <jasonr@gnu.org>
60a653f1 11589
048addec 11590 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
60a653f1 11591
048addec 115922001-11-17 Gerd Moellmann <gerd@gnu.org>
60a653f1 11593
048addec
JD
11594 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
11595 with invalid position.
60a653f1 11596
048addec 115972001-11-16 Richard M. Stallman <rms@gnu.org>
60a653f1 11598
048addec 11599 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
60a653f1 11600
048addec
JD
11601 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
11602 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
11603 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
60a653f1 11604
048addec 11605 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
60a653f1 11606
048addec 116072001-11-16 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11608
048addec
JD
11609 * fileio.c (build_annotations): Split off the tail.
11610 (build_annotations_2): New fun. Extracted from build_annotations.
11611 (Fwrite_region): Split the call to build_annotations into two
11612 calls to build_annotations and build_annotations_2.
077907d4 11613
048addec 116142001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
1756e2fb 11615
048addec
JD
11616 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
11617 clear_waiting_for_input with argument.
1756e2fb 11618
048addec 11619 * xterm.h (x_update_cursor): Remove duplicated prototype.
06e8f738 11620
048addec 11621 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
06e8f738 11622
048addec 11623 * xterm.c (waiting_for_input): Remove unnecessary declaration.
fa336b91 11624
048addec 11625 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
fa336b91 11626
048addec 116272001-11-16 Stefan Monnier <monnier@cs.yale.edu>
fa336b91 11628
048addec
JD
11629 * fileio.c (choose_write_coding_system): New fun, extracted
11630 from Fwrite_region.
11631 (Fwrite_region): Use it.
fa336b91 11632
048addec
JD
11633 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
11634 (funcall_lambda, run_hook_with_args): Make static and add prototype.
11635 (ml_apply, find_handler_clause): Add prototype.
fa336b91 11636
048addec 116372001-11-16 Eli Zaretskii <eliz@gnu.org>
fa336b91 11638
048addec 11639 * config.in: Add #undef HAVE_COFF_H.
fa336b91 11640
048addec
JD
11641 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
11642 Required for ISC 4.1.
fa336b91 11643
048addec 116442001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
fa336b91 11645
048addec
JD
11646 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
11647 Andrew Wiseman <a.wiseman@btclick.com>.
fa336b91 11648
048addec 116492001-11-16 Kim F. Storm <storm@cua.dk>
fa336b91 11650
048addec
JD
11651 The following changes are made to clean up the various internal
11652 references to the fringes to actually use the term `fringe' for
11653 them. Previously, they were called `flags areas', `bitmap areas',
11654 `left/right side of windows', or implicitly as `flags' or
11655 `bitmaps':
fa336b91 11656
048addec
JD
11657 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
11658 Comments fixed. Use renamed symbols.
06e8f738 11659
048addec 11660 * dispnew.c: Comment fix. Use renamed symbols.
06e8f738 11661
048addec
JD
11662 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
11663 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
11664 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
9ce647f4 11665
048addec 11666 * msdos.c: Comment fix.
9ce647f4 11667
048addec 11668 * w32fns.c: Use renamed symbols.
9b784ab8 11669
048addec
JD
11670 * w32term.c: Comment fixes. Use renamed symbols.
11671 (fringe_bitmap_type): Renamed from bitmap_type.
11672 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
11673 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
11674 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
9f7e52b4 11675
048addec
JD
11676 * w32term.h: Comment fixes. Use renamed symbols.
11677 (fringes_extra): Renamed from flags_areas_extra.
11678 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
11679 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
11680 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
11681 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
11682 (FRAME_X_LEFT_FRINGE_WIDTH):
11683 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
11684 (FRAME_X_RIGHT_FRINGE_WIDTH):
11685 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
9f7e52b4 11686
048addec 11687 * widget.c: Use renamed symbols.
9f7e52b4 11688
048addec
JD
11689 * window.c: Comment fixes. Use renamed symbols.
11690 (coordinates-in-window-p): Doc fix.
fa336b91 11691
048addec 11692 * xdisp.c: Comment fixes. Use renamed symbols.
34e5d0af 11693
048addec 11694 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
9b784ab8 11695
048addec 11696 * xfns.c: Use renamed symbols.
89512fcd 11697
048addec
JD
11698 * xterm.c: Comment fixes. Use renamed symbols.
11699 (fringe_bitmap_type): Renamed from bitmap_type.
11700 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
11701 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
11702 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
89512fcd 11703
048addec
JD
11704 * xterm.h: Comment fixes. Use renamed symbols.
11705 (fringes_extra): Renamed from flags_areas_extra.
11706 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
11707 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
11708 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
11709 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
11710 (FRAME_X_LEFT_FRINGE_WIDTH):
11711 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
11712 (FRAME_X_RIGHT_FRINGE_WIDTH):
11713 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
11714
117152001-11-15 Jason Rumney <jasonr@gnu.org>
11716
11717 * w32menu.c (add-menu-item): Make help_echo and radio buttons
11718 work for most menu items. From David Ponce
11719 <david.ponce@wanadoo.fr>.
11720
117212001-11-15 Gerd Moellmann <gerd@gnu.org>
11722
11723 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
11724 Some x_set_* function expect to be called even if old and new
11725 value are equal.
11726
11727 * xdisp.c (build_desired_tool_bar_string): Accept zero
11728 tool_bar_button_relief.
11729
11730 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
11731
11732 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
11733
11734 * xterm.c (x_draw_bar_cursor): If the background color of the
11735 glyph under the cursor equals the frame's cursor color, use
11736 the glyph's foreground color for drawing the bar cursor.
11737
11738 * dispnew.c (direct_output_forward_char): Fix character/byte
11739 position comparison.
7d18891d 11740
048addec 117412001-11-15 Miles Bader <miles@gnu.org>
d2936d21 11742
048addec
JD
11743 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
11744 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
11745 Update arguments to find_field.
11746 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
11747 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
11748 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
11749 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
7d18891d 11750
048addec 117512001-11-14 Richard M. Stallman <rms@gnu.org>
7d18891d 11752
048addec 11753 * editfns.c (Fpropertize): Allow call with 1 arg.
7d18891d 11754
048addec
JD
11755 * dispextern.h (image_background, image_background_transparent):
11756 Conditionalize on HAVE_X_WINDOWS.
7d18891d 11757
048addec 117582001-11-13 Richard M. Stallman <rms@gnu.org>
7d18891d 11759
048addec 11760 * print.c (Fprin1_to_string): Doc fix.
7d18891d 11761
048addec 11762 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
7d18891d 11763
048addec 11764 * floatfns.c (Fceiling, Ffloor): Doc fixes.
7d18891d 11765
048addec 11766 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
7d18891d 11767
048addec 11768 * fileio.c (Ffile_accessible_directory_p): Doc fix.
7d18891d 11769
048addec 11770 * eval.c (syms_of_eval): Doc fix.
7d18891d 11771
048addec 11772 * coding.c (syms_of_coding): Doc fix.
7d18891d 11773
048addec 11774 * doc.c (Fsnarf_documentation): Doc fix.
7d18891d 11775
048addec 11776 * dispnew.c (syms_of_display): Doc fix.
9474c847 11777
048addec 11778 * category.c (Fget_unused_category): Doc fix.
9474c847 11779
048addec 11780 * buffer.c (syms_of_buffer): Doc fixes.
e3059a5d 11781
048addec 117822001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
e3059a5d 11783
048addec 11784 * print.c (prin1, print): Doc fix.
e3059a5d 11785
048addec 117862001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
b3700ae7 11787
048addec
JD
11788 * fontset.h: Remove declarations of variables
11789 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
b3700ae7 11790
048addec
JD
11791 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
11792 `Vclip_large_size_font'.
eae936e2 11793
048addec 117942001-11-13 Jason Rumney <jasonr@gnu.org>
4bb962be 11795
048addec 11796 * w32fns.c: Doc fix.
ddb67bdc 11797
048addec 117982001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3467c402 11799
048addec 11800 * xfaces.c (Fface_attributes_as_vector): Doc fix.
3467c402 11801
048addec 11802 * fns.c: Doc fix.
6e1b91d7 11803
048addec 11804 * emacs.c: Doc fix.
1c1d3d69 11805
048addec 11806 * coding.c: Doc fix.
1c1d3d69 11807
048addec
JD
11808 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
11809 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
11810 `new style' [w/`doc:' keyword].
b6f4c7ba 11811
048addec 118122001-11-12 Richard M. Stallman <rms@gnu.org>
b6f4c7ba 11813
048addec
JD
11814 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
11815 LeaveNotify events. Only FocusIn and FocusOut do that now.
11816 (x_display_and_set_cursor): Do display hollow cursors in active
11817 minibuffer windows when they are not selected.
b6f4c7ba 11818
048addec 118192001-11-12 Jason Rumney <jasonr@gnu.org>
a89f435d 11820
048addec
JD
11821 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
11822 * w32term.c: Change doc-string comments to `new style'.
11823 [w/`doc:' keyword]. Doc fixes.
a89f435d 11824
048addec
JD
11825 * w32fns.c: Don't define max.
11826 (Fx_open_connection): Only execute once.
a4cd0cd7 11827
048addec 118282001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
eafb659a 11829
048addec
JD
11830 * ccl.c: Change macros to use do-while block instead of if-else.
11831 Use braces to follow GNU Coding Standards.
eafb659a 11832
048addec 118332001-11-11 Richard M. Stallman <rms@gnu.org>
a4cd0cd7 11834
048addec 11835 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
a4cd0cd7 11836
048addec 11837 * lread.c (read_escape): Use end_of_file_error for reporting eof.
a4cd0cd7 11838
048addec
JD
11839 * insdel.c (replace_range): Use adjust_markers_for_replace
11840 instead of adjust_markers_for_delete and adjust_markers_for_insert.
a4cd0cd7 11841
048addec 11842 * intervals.h: Declare set_text_properties and set_text_properties_1.
a4cd0cd7 11843
048addec
JD
11844 * textprop.c (set_text_properties_1): New subroutine
11845 broken out of set_text_properties.
11846 (set_text_properties): Use set_text_properties_1.
91823618 11847
048addec
JD
11848 * intervals.c (graft_intervals_into_buffer):
11849 Use set_text_properties_1 to clear out properties.
91823618 11850
048addec
JD
11851 * search.c (Freplace_match): Use replace_range to insert
11852 and delete. Don't request property inheritance from
11853 surrounding text.
86928dfb 11854
048addec 118552001-11-10 Jason Rumney <jasonr@gnu.org>
86928dfb 11856
048addec
JD
11857 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
11858 vertical fonts. Allow them if face name is explicitly specified.
11859 Do not give up if we find a font that cannot be converted to an xlfd.
40ef1eda 11860
048addec 118612001-11-10 Gerd Moellmann <gerd@gnu.org>
ab8469eb 11862
048addec
JD
11863 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
11864 instead of malloc/free.
a78e0303 11865
048addec 118662001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
40ef1eda 11867
048addec
JD
11868 * xfaces.c (merge_face_vectors): Use braces to follow GNU
11869 Coding Standards.
11870 (Finternal_set_lisp_face_attribute): Likewise.
fabf4a91 11871
048addec 11872 * buffer.c (Fbury_buffer): Likewise.
0c99b139 11873
048addec 11874 * indent.c (current_column_1): Remove unused variable `prev_col'.
0c99b139 11875
048addec
JD
11876 * coding.c (encode_coding): Use precomputed value of `src'.
11877 (encode_coding): Remove unused variable `src_end'.
11878 (code_convert_region): Remove unused variables `count'.
830ddd77 11879
048addec 118802001-11-07 Jason Rumney <jasonr@gnu.org>
830ddd77 11881
048addec
JD
11882 * w32term.c (x_display_and_set_cursor): Do not move system caret
11883 if cursor_glyph is NULL.
55c6d645 11884
048addec 118852001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
55c6d645 11886
048addec 11887 * keymap.c (access_keymap): Fix compilation error.
5de38842 11888
048addec 118892001-11-07 Miles Bader <miles@gnu.org>
7a4564a4 11890
048addec 11891 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
5de38842 11892
048addec 118932001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4fa23df5 11894
048addec
JD
11895 * intervals.c (graft_intervals_into_buffer):
11896 Remove #ifdef'd-out code.
11897 (graft_intervals_into_buffer): Remove unused variable `middle'.
4fa23df5 11898
048addec
JD
11899 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
11900 code (eval-current-buffer).
11901 Change doc-string comments to `new style' [w/`doc:' keyword].
7a6a97d7 11902
048addec 119032001-11-06 Richard M. Stallman <rms@gnu.org>
c191d13c 11904
048addec 11905 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
7a6a97d7 11906
048addec 119072001-11-06 Stefan Monnier <monnier@cs.yale.edu>
44dc78e0 11908
048addec 11909 * lread.c (read1): Fix behavior with nested backquoting.
44dc78e0 11910
048addec
JD
11911 * keyboard.c (make_lispy_event): Check integerness and fix
11912 Lisp_Object/int mixup.
17893c65 11913
048addec 119142001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4d994a79 11915
048addec 11916 * fns.c (copy_hash_table): Remove unused variable `v'.
d5360cc7 11917
048addec
JD
11918 * fontset.c (fontset_font_pattern): Remove unused variable
11919 `family_registry'.
d5360cc7 11920
048addec 11921 * indent.c (current_column_1): Remove unused variable `prev_col'.
d5360cc7 11922
048addec 119232001-11-05 Richard M. Stallman <rms@gnu.org>
96238a5a 11924
048addec 11925 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
96238a5a 11926
048addec
JD
11927 * buffer.c (Fkill_buffer): Don't delete auto save file
11928 if buffer is modified.
d9d54213 11929
048addec 119302001-11-05 Andrew Innes <andrewi@gnu.org>
d9d54213 11931
048addec
JD
11932 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
11933 CHECK_NUMBER_CDR.
b116830b 11934
048addec 119352001-11-05 Richard M. Stallman <rms@gnu.org>
b116830b 11936
048addec 11937 * unexelf.c (unexec): Minor changes; clean up comments.
3297e2a1 11938
048addec 119392001-11-05 Sam Steingold <sds@gnu.org>
3297e2a1 11940
048addec 11941 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
6fb8339c 11942
048addec 119432001-11-05 Andreas Schwab <schwab@suse.de>
6fb8339c 11944
048addec 11945 * sound.c (sound_perror): Save errno from being clobbered.
7dd73b78 11946
048addec 119472001-11-05 Dale Hagglund <rdh@yottayotta.com>
7dd73b78 11948
048addec
JD
11949 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
11950 the program image directly.
982f6c7e 11951
048addec 119522001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d31053f9 11953
048addec 11954 * buffer.h (Fbuffer_local_value): Add prototype.
d31053f9 11955
048addec 119562001-11-04 Richard M. Stallman <rms@gnu.org>
d31053f9 11957
048addec
JD
11958 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
11959 and CHECK_BUFFER.
d31053f9 11960
048addec
JD
11961 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
11962 (record_char): Likewise.
d31053f9 11963
048addec
JD
11964 * keyboard.c (make_lispy_event): Don't insist a drag event must
11965 move to a different buffer position. Instead, check for moving at
11966 least double_click_fuzz.
982f6c7e 11967
048addec 11968 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
830047fd 11969
048addec 11970 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
b116830b 11971
048addec
JD
11972 * indent.c (current_column_1, Fmove_to_column): Separate the code
11973 for display-table glyphs from the code for buffer text, to fix
11974 bugs in the former.
830047fd 11975
048addec 119762001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
b116830b 11977
048addec
JD
11978 * buffer.c (Fbuffer_local_value): New function.
11979 (syms_of_buffer): Defsubr it.
2df5238c 11980
048addec
JD
11981 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
11982 value of `cursor-in-non-selected-windows'.
4e397688 11983
048addec
JD
11984 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
11985 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
11986 (syms_of_xdisp): Initialize it.
48b0f3ae 11987
048addec 119882001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2df5238c 11989
048addec 11990 * xfns.c (Fx_create_frame): Doc fix.
3ecaf7e5 11991
048addec
JD
11992 * coding.c: Change doc-string comments to `new style' [w/`doc:'
11993 keyword].
3ecaf7e5 11994
048addec
JD
11995 * eval.c (top_level_value, top_level_set): Remove commented and
11996 #ifdef'd-out code.
11997 (Fdefvar): Fix usage in doc-string.
3ecaf7e5 11998
048addec 119992001-11-03 Richard M. Stallman <rms@gnu.org>
3ecaf7e5 12000
048addec 12001 * xfns.c: Include unistd.h, if it exists.
8db2e33b 12002
048addec 12003 * editfns.c: Move the include of ctype.h after unistd.h.
8db2e33b 12004
048addec 12005 * gmalloc.c: Test BROKEN_PROTOTYPES.
aed29b97 12006
048addec 120072001-11-03 Ken Raeburn <raeburn@gnu.org>
aed29b97 12008
048addec
JD
12009 * lisp.h (CHECK_STRING_CAR): New macro.
12010 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
12011 treating XCAR and XCDR as lvalues.
12012 (openp): Use CHECK_STRING_CAR.
12013 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
aed29b97 12014
048addec 120152001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
6cb16f95 12016
048addec
JD
12017 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
12018 (SIGMASKTYPE): Define.
1b1acc13 12019
048addec 12020 * syssignal.h (sigunblock): Don't define if already defined.
020f9b38 12021
048addec 120222001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
020f9b38 12023
048addec
JD
12024 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
12025 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
12026 Fix typos in comments.
6cb16f95 12027
048addec
JD
12028 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
12029 and #ifdef'd-out code.
12030 Fix and reindent comments.
6cb16f95 12031
048addec 12032 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
6cb16f95 12033
048addec
JD
12034 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
12035 argument `i' in macros.
6cb16f95 12036
048addec
JD
12037 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
12038 `i' in macros.
7e9d3c2f 12039
048addec
JD
12040 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
12041 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
12042 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
12043 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
12044 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
12045 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
12046 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
12047 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
12048 in macros.
7e9d3c2f 12049
048addec
JD
12050 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
12051 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
12052 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
12053 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
12054 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
12055 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
12056 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
12057 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
12058 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
12059 (remove unused second argument).
7e9d3c2f 12060
048addec 120612001-11-02 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 12062
048addec
JD
12063 * syntax.c (describe_syntax): New wrapper.
12064 (Finternal_describe_syntax_value): Rename from describe_syntax.
12065 Don't insert space at front and \n at the end.
12066 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
e6bff182 12067
048addec
JD
12068 * regex.c (re_wctype): Try to fix some warnings.
12069 (regcomp, regexec): Don't forget the __restrict.
9ba48103 12070
048addec 120712001-11-02 Richard M. Stallman <rms@gnu.org>
9ba48103 12072
048addec 12073 * textprop.c (Fget_char_property): Doc fix.
9ba48103 12074
048addec 120752001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9ba48103 12076
048addec 12077 * process.c (Fstart_process): Add usage to doc-string.
c22e59e1 12078
048addec 12079 * data.c (Fsetq_default): Ditto.
c22e59e1 12080
048addec 12081 * callint.c (Finteractive): Ditto.
9271ed2c 12082
048addec 120832001-11-01 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 12084
048addec
JD
12085 * macros.c: Don't include keymap.h any more.
12086
120872001-11-01 Richard M. Stallman <rms@gnu.org>
12088
12089 * data.c (Fmake_local_variable): Doc fix.
12090
12091 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
12092 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
e6bff182 12093
048addec 12094 * keymap.c (Fdescribe_buffer_bindings): Print character property
9271ed2c
RS
12095 bindings along with or instead of the buffer local map.
12096 Make the overriding maps override what they should.
12097
f00691a3 120982001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8b8bd9c6
PJ
12099
12100 * window.c (grow_mini_window): Fix typo in comment.
12101
27188d11
GM
121022001-11-01 Gerd Moellmann <gerd@gnu.org>
12103
7b49b9d2
GM
12104 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
12105 (XTset_vertical_scroll_bar): Likewise.
12106
43f7c3ea
GM
12107 * xfns.c (x_build_heuristic_mask): Use four_corners_best
12108 instead of IMAGE_BACKGROUND.
c22e59e1 12109
b350c2e5
GM
12110 * xfns.c (four_corners_best): Reindent.
12111
c22e59e1 12112 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
27188d11
GM
12113 Handle :box so that it is possible to specify sexprs.
12114
bf00d461
EZ
121152001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
12116
12117 * s/hpux11.h: New file.
12118
f00691a3 121192001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e10df59 12120
2b209b97
PJ
12121 * emacs.c (USAGE1): Show command line option --no-window-system
12122 instead of --no-windows in usage.
12123 (standard_args): Rename --no-windows to --no-window-system.
12124 (bug_reporting_address): Follow Emacs coding conventions.
12125
9dbc9081
PJ
12126 * eval.c (Fcommandp): Doc fix.
12127 Change doc-string comments to `new style' [w/`doc:' keyword].
12128
4e10df59
PJ
12129 * frame.c (Fframe_live_p): Doc fix.
12130
12131 * buffer.c (selective-display-ellipses): Doc fix.
12132
dd387b25
GM
121332001-10-31 Gerd Moellmann <gerd@gnu.org>
12134
fe957e65
GM
12135 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
12136
dd387b25
GM
12137 * xfaces.c (realize_x_face): If C is not a single-byte character,
12138 set the face's colors_copied_bitwise_p instead of the defaulted_p
12139 members which have a different meaning.
12140 (free_face_colors): Do nothing for a face whose colors have been
12141 copied bitwise.
12142
c22e59e1 12143 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
dd387b25 12144
f00691a3 121452001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2e1280f8 12146
687784e8
PJ
12147 * marker.c, mocklisp.c: Change doc-string comments to `new style'
12148 [w/`doc:' keyword].
2e1280f8 12149
b9d9a9b9
GM
121502001-10-31 Gerd Moellmann <gerd@gnu.org>
12151
12152 * fns.c (require_unwind): Return Lisp_Object.
12153
f00691a3 121542001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
48400103 12155
fa1361cb
PJ
12156 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
12157 (last-input-char): Revert doc-string to be the same as the
12158 doc-string of `last-input-event'.
12159
6c465a15 12160 * xdisp.c: Fix typos in comments.
48400103 12161
eafa3196
GM
121622001-10-31 Gerd Moellmann <gerd@gnu.org>
12163
12164 * window.c (grow_mini_window): Handle case that the root
12165 window is already smaller than the nominal mininum height.
12166
747d3f2a
SM
121672001-10-30 Stefan Monnier <monnier@cs.yale.edu>
12168
bf9bb76f
SM
12169 * emacs.c (main): Don't call keys_of_macros any more.
12170
12171 * lisp.h (keys_of_macros): Remove.
12172
12173 * macros.c (keys_of_macros): Remove.
12174
747d3f2a
SM
12175 * xfaces.c (Fface_attribute_relative_p): Declare args.
12176
5e905a57
JR
121772001-10-30 Jason Rumney <jasonr@gnu.org>
12178
12179 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
12180 (enum_font_cb2): Ignore fonts with vertical orientation.
12181
3a426197
RS
121822001-10-30 Richard M. Stallman <rms@gnu.org>
12183
12184 * keyboard.c (Finput_pending_p): Doc fix.
12185
a742d646
GM
121862001-10-30 Gerd Moellmann <gerd@gnu.org>
12187
259cf6bc
GM
12188 * xterm.c (x_after_update_window_line): Don't run the code
12189 clearing in borders for rows whose visible height is 0.
12190
3f99f948
GM
12191 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
12192 resized_p flag is set. If not set, use the much less flickering
12193 method previously used.
12194
12195 * dispnew.c (change_frame_size_1): Set frame's resized_p.
12196
12197 * frame.h (struct frame) <resized_p>: New member.
12198
b4a3be43
GM
12199 * lread.c (to_multibyte): Ensure read_buffer is at least twice
12200 as large as the number of bytes to convert.
747d3f2a 12201
a742d646
GM
12202 * lread.c (to_multibyte): New function.
12203 (read1): Use it.
12204
cacbb9e9
EZ
122052001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
12206
12207 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
12208
99cb6b2f
GM
122092001-10-30 Gerd Moellmann <gerd@gnu.org>
12210
327f42ee 12211 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
747d3f2a
SM
12212 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
12213 if the row's fill_line_p is set and drawing the last glyph with
12214 DRAW_IMAGE_{RAISED,SUNKEN}.
327f42ee 12215
99cb6b2f
GM
12216 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
12217
8e8223e2
SM
122182001-10-29 Stefan Monnier <monnier@cs.yale.edu>
12219
12220 * xmenu.c: Include coding.h and charset.h.
12221 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
12222 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
12223 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
12224 Explicitly set wv->help. Use `TRUE' rather than `True'.
12225 (menu_help_callback): Use empty_string.
12226
12227 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
12228 (Fx_popup_dialog): Explicitly init f.
12229 (w32_menu_display_help): Use empty_string.
12230
4d083a8f
RS
122312001-10-29 Richard M. Stallman <rms@gnu.org>
12232
b2304472
RS
12233 * fns.c (Frequire): Detect recursive try to require the same
12234 feature 3 or more levels deep, and get error.
12235 (require_unwind): New subroutine.
12236 (require_nesting_list): New variable.
12237 (syms_of_fns): Init and staticpro it.
12238
4d083a8f
RS
12239 * print.c (print_object): Clarify indication of insertion type.
12240
2fe41216
EZ
122412001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
12242
90480000
EZ
12243 * coding.c (syms_of_coding): Document that locale-coding-system is
12244 used for decoding input on X.
12245
2fe41216
EZ
12246 * window.c (Fscroll_left, Fscroll_right): Doc fix.
12247
f00691a3 122482001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
74e79967
PJ
12249
12250 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
12251 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
12252
60ebcfe8
GM
122532001-10-29 Gerd Moellmann <gerd@gnu.org>
12254
9a7bdceb
GM
12255 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
12256 use NO_CURSOR if cursor_in_non_selected_windows is false.
12257
3f08fcd2
GM
12258 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
12259 the slant attribute if FRAME is t.
12260
0ccfdad2
GM
12261 * xfns.c (x_set_internal_border_width): Set frame garbaged
12262 when X window doesn't exist yet.
12263
ef253080
GM
12264 * xterm.c (x_after_update_window_line): Clear internal border
12265 in different circumstances.
b116830b 12266
60ebcfe8
GM
12267 * xterm.c (XTread_socket) <KeyPress>: Don't use
12268 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
12269 <handa@etl.go.jp>.
12270
73d25f9c
EZ
122712001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
12272
12273 * m/ibms390.h: New file. From Adam Thornton
12274 <athornton@sinenomine.net>.
12275
cac1daf0
GM
122762001-10-28 Gerd Moellmann <gerd@gnu.org>
12277
053b3256 12278 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
b116830b 12279
cac1daf0
GM
12280 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
12281 a loop counter.
12282
f00691a3 122832001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13b1a09c 12284
186486eb
PJ
12285 * emacs.c: Use argv[0] instead of emacs when -t was specified.
12286
4707d2d0
PJ
12287 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
12288 keyword].
12289 Fix typos in comments.
b116830b 12290
d883731c
PJ
12291 * emacs.c (bug_reporting_address): New function.
12292 Use it when displaying usage message.
12293
04012254
PJ
12294 * minibuf.c (read_minibuf): Remove unused external declaration of
12295 variable `Qread_only'.
12296
13b1a09c
PJ
12297 * keymap.c (access_keymap): Remove unused variable `charset'.
12298
5bbf4378
MB
122992001-10-28 Miles Bader <miles@gnu.org>
12300
12301 * xfaces.c (merge_face_heights): Handle TO being relative as well.
12302 Remove #ifdef'd-out code.
12303 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
12304 (syms_of_xfaces): Initialize them.
12305
1ce1e4ee
JR
123062001-10-27 Jason Rumney <jasonr@gnu.org>
12307
12308 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
12309 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
12310 position using the system caret.
12311
12312 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
12313 (w32_system_caret_height, w32_system_caret_x)
12314 (w32_system_caret_y): New variables for tracking system caret.
12315 (w32_initialize): Initialize them.
c2d53558 12316 (x_display_and_set_cursor): Make system caret follow the active cursor.
1ce1e4ee 12317
c2d53558
SM
12318 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
12319 New messages types.
1ce1e4ee
JR
12320
12321 * w32term.c (note_mouse_highlight): Clear old help_echo.
12322
f00691a3 123232001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e30ce42 12324
bb4600a4
PJ
12325 * xterm.c: Fix typo in a comment.
12326
7db35a48
PJ
12327 * emacs.c: Fix typos in comments.
12328 Remove unnecessary spaces.
12329 Change doc-string comments to `new style' [w/`doc:' keyword].
12330 (USAGE2): Fix typos in usage string.
12331
a7248e4f
PJ
12332 * xterm.c: Fix typo in a comment.
12333
4e30ce42
PJ
12334 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
12335 emacs.c.
12336
62725a92
GM
123372001-10-27 Gerd Moellmann <gerd@gnu.org>
12338
798dbe1f 12339 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
c2d53558 12340 instead of 1/2 line_height in the heuristic for skipping
798dbe1f
GM
12341 farther backward when target_y was not reached.
12342
62725a92
GM
12343 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
12344 Display errno only if non-zero.
12345 (sound_warning): New function.
12346 (vox_configure): Don't treat failing to set sample rate as error.
12347 (various places): Improve error messages.
12348
d4e34d24
EZ
123492001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
12350
944e6f60
EZ
12351 * fileio.c (Faccess_file): Run the argument filename through
12352 Fexpand_file_name, before using it.
12353
d4e34d24
EZ
12354 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
12355 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
12356
38d2af0c
GM
123572001-10-26 Gerd Moellmann <gerd@gnu.org>
12358
da80a8d5
GM
12359 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
12360
38d2af0c
GM
12361 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
12362 Fix clearing in the case of scroll bars on the right.
c2d53558 12363
45de4a6f 123642001-10-26 Juanma Barranquero <lektu@terra.es>
56f508dd
EZ
12365
12366 * w32gui.h (XImage): Add a dummy typedef.
12367
fbd5ceb2
GM
123682001-10-26 Gerd Moellmann <gerd@gnu.org>
12369
c2d53558 12370 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
fbd5ceb2 12371
b23236fb
EZ
123722001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
12373
12374 * frame.c (Fframe_parameter): Fix last change.
12375
5d991fc4
EZ
12376 * fileio.c: Revert last change (which removed old commented-out
12377 version of expand-file-name). Add a comment that explains why
12378 this old version should not be removed.
12379
879eadc3
GM
123802001-10-25 Gerd Moellmann <gerd@gnu.org>
12381
75700ff2
GM
12382 * frame.c (Fframe_parameter): Fix a bug whereby some
12383 ``artificial'' frame parameters, like `minibuffer' were not
12384 obtained by calling Fframe_parameters.
12385
dfe92a6a
GM
12386 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
12387 cursor differently.
12388
879eadc3
GM
12389 * xdisp.c (move_it_vertically_backward): Compute line height
12390 differently. Add heuristic to try to be more compatible to 20.x.
12391
e1010ebe
SM
123922001-10-25 Stefan Monnier <monnier@cs.yale.edu>
12393
d73a471b
SM
12394 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
12395
d6da5a06
GM
12396 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
12397 boolean.
e1010ebe 12398
f66bd220
MB
123992001-10-25 Miles Bader <miles@gnu.org>
12400
12401 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
12402 BG is a pointer to a structure, not a structure.
12403 (gif_format, png_format): Add missing commas.
12404
d436d538
RS
124052001-10-24 Richard M. Stallman <rms@gnu.org>
12406
12407 * xfaces.c (Fface_attributes_as_vector): New function.
c2d53558 12408 (syms_of_xfaces): Defsubr it.
d436d538 12409
f00691a3 124102001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
075c507b
PJ
12411
12412 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
12413 variable `area'.
12414
f00691a3 124152001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d492b584 12416
c2d53558 12417 * search.c (scan_newline): Remove unused variable `selective_display'.
d492b584 12418
e2a57b34
MB
124192001-10-25 Miles Bader <miles@gnu.org>
12420
12421 * dispextern.h (struct image): Add `background',
12422 `background_valid', and `background_transparent' fields.
12423 (image_background, image_background_transparent): New declarations.
12424 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
12425 * xfns.c (image_background, image_background_transparent)
12426 (four_corners_best): New functions.
c2d53558 12427 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
e2a57b34
MB
12428 (gs_format): Add `:background' entry.
12429 (lookup_image): Set IMG's background color if specified.
12430 (pbm_load, xbm_load_image, png_load): Set IMG's background field
12431 when appropriate.
12432 (x_clear_image_1): Reset `background_valid' and
12433 `background_transparent_valid' fields.
12434 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
12435 calculating it here. Set IMG's background_transparent field.
12436 (enum xpm_keyword_index): Add XPM_BACKGROUND.
12437 (enum png_keyword_index): Add PNG_BACKGROUND.
12438 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
12439 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
12440 (enum gif_keyword_index): Add GIF_BACKGROUND.
12441 (enum gs_keyword_index): Add GS_BACKGROUND.
c2d53558 12442 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
e2a57b34
MB
12443 Pre-calculate image background color where necessary.
12444 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
12445 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
12446 color to use for image glyph reliefs.
12447
b547b6e8
GM
124482001-10-24 Gerd Moellmann <gerd@gnu.org>
12449
d9e3b8c6
GM
12450 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
12451 in full-width rows.
c2d53558 12452
b547b6e8
GM
12453 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
12454 Fix clearing of area not covered by scroll bar.
12455
f00691a3 124562001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2beb36f9
PJ
12457
12458 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
12459 and `real_start'.
c2d53558 12460 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
2beb36f9
PJ
12461 (glyph_rect): Remove unused variable `area'.
12462
76cb5e06
GM
124632001-10-24 Gerd Moellmann <gerd@gnu.org>
12464
bdbdebff 12465 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
c2d53558
SM
12466
12467 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
12468 (row_containing_pos): Take additional argument DY.
12469 Treat rows ending in middle of char differently.
62e33982
GM
12470 (display_line): Handle tabs on window systems differently.
12471
12472 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
12473 with additional argument.
12474
12475 * dispextern.h (row_containing_pos): Adjust prototype.
12476
76cb5e06
GM
12477 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
12478 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
12479 (try_window_id, try_window_reusing_current_matrix)
12480 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
6c465a15 12481 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
76cb5e06 12482
f00691a3 124832001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
996fee11 12484
c9e60620
PJ
12485 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
12486 gnuemacs).
12487 (HAVE_BOXES): Fix typo in comment.
12488 (push_menu_pane): Fix typo in comment.
12489
3b552d56
PJ
12490 * xdisp.c: (display_prop_string_p): Remove unused local declaration
12491 of `Qwhen'.
12492 (single_display_prop_string_p): Remove unused local declarations
12493 of `Qwhen' and `Qmargin'.
12494 (string_buffer_position): Remove unused variable `around'.
12495 (store_frame_title): Remove unused variable `width'.
12496
15c565ac
PJ
12497 * window.c: Don't define max.
12498 (coordinates_in_window): Remove unused variable `uy'.
12499
a8818eb9
PJ
12500 * widget.c: Don't define max.
12501
996fee11
PJ
12502 * process.c: Don't define max.
12503 (create_process): Remove unused variable `buffer'.
12504
496e1a5b
GM
125052001-10-23 Gerd Moellmann <gerd@gnu.org>
12506
c2d53558 12507 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
496e1a5b 12508
5905ae8b
EZ
125092001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
12510
12511 * xfaces.c (Finternal_set_lisp_face_attribute)
12512 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
12513 frame is on a windowed display.
12514
24db49fb
GM
125152001-10-23 Gerd Moellmann <gerd@gnu.org>
12516
c2d53558
SM
12517 * dispnew.c (sync_window_with_frame_matrix_rows):
12518 Fix handling of windows which aren't full-width, fix handling
c51488cd
GM
12519 of marginal areas.
12520
c2d53558 12521 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
24db49fb 12522
f0487f05
EZ
125232001-10-23 Andreas Schwab <schwab@suse.de>
12524
12525 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
12526 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
12527
f0a48a01
GM
125282001-10-23 Gerd Moellmann <gerd@gnu.org>
12529
c2d53558 12530 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
f0a48a01
GM
12531 REAL_END. Notice if cursor gets overwritten.
12532 (notice_overwritten_cursor): Take X positions as parameters.
12533 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
12534 around call to x_draw_glyphs.
12535
f00691a3 125362001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
a50a10a0 12537
fc11dff0
PJ
12538 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
12539 instead of C) and usage.
a50a10a0 12540
fc11dff0
PJ
12541 * editfns.c (char-to-string): Fix argument names (use CHAR instead
12542 of C) and usage.
a50a10a0
PJ
12543
12544 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
12545 `left', `max_width' and `max_height'.
12546
8738febd
GM
125472001-10-23 Gerd Moellmann <gerd@gnu.org>
12548
12549 * xdisp.c (display_line): For a tab continued to the next line,
12550 set row's ends_in_middle_of_char_p.
12551
653c329b
GM
125522001-10-22 Gerd Moellmann <gerd@gnu.org>
12553
12554 * xdisp.c (display_line): Fix computation of continuation lines
12555 width for TABs.
12556
f00691a3 125572001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
f958c5ac 12558
7ba51063
PJ
12559 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
12560 `Qlaplace'.
12561
f958c5ac
PJ
12562 * fileio.c: Remove unused code.
12563
eb360291
MB
125642001-10-22 Miles Bader <miles@gnu.org>
12565
12566 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
12567 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
12568 Remove `DOC_STRINGS_IN_COMMENTS' cases.
12569
98515cf0
JR
125702001-10-21 Jason Rumney <jasonr@gnu.org>
12571
12572 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
12573
93026d88
EZ
125742001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
12575
12576 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
12577 (Finsert_string): Avoid the multi-line string literals warning.
12578
c9a95b79
MB
125792001-10-22 Miles Bader <miles@gnu.org>
12580
12581 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
12582 (Fdocumentation): Don't use it.
12583 (syms_of_doc): Don't initialize it.
12584
12585 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
12586 * print.c (Fwith_output_to_temp_buffer): Likewise.
12587 * window.c (Fsave_window_excursion): Likewise.
c2d53558 12588 * editfns.c (Fsave_excursion, Fsave_current_buffer)
c9a95b79 12589 (Fsave_restriction): Likewise.
c2d53558
SM
12590 * eval.c (Frun_hooks, Frun_hook_with_args)
12591 (Frun_hook_with_args_until_failure)
12592 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
12593 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
12594 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
c9a95b79
MB
12595 (Funwind_protect, Fcondition_case): Likewise.
12596 * coding.c (Ffind_operation_coding_system): Likewise.
12597 * keyboard.c (Ftrack_mouse): Likewise.
12598
a3b10252
MB
125992001-10-21 Miles Bader <miles@gnu.org>
12600
c2d53558 12601 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
a3b10252
MB
12602 (Fmake_hash_table): Add usage: string to doc string.
12603 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
c2d53558 12604 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
a3b10252
MB
12605 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
12606 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
12607 (Fml_prefix_argument_loop): Likewise.
12608
f00691a3 126092001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c6f73eec 12610
c2d53558 12611 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
888ebd13 12612
c6f73eec
PJ
12613 * sysdep.c (init_sys_modes): Change doc-string comments to `new
12614 style' [w/`doc:' keyword].
12615
12616 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
12617 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
12618 comments to `new style' [w/`doc:' keyword].
12619
3cf3436e
JR
126202001-10-21 Jason Rumney <jasonr@gnu.org>
12621
12622 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
12623
c169b8f1
JR
12624 * w32term.c (remember_mouse_glyph): New function.
12625 (w32_mouse_position): Use it.
12626 (note_mouse_movement): If the mouse moved off the glyph, remember
12627 its new position.
c2d53558 12628
4fdd691b
JR
12629 * w32term.h (struct w32_output): Correct spelling of x_compatible.
12630 (w32_display_info): Add mouse_face_overlay.
12631
c169b8f1
JR
12632 * w32term.c (notice_overwritten_cursor): Renamed from
12633 note_overwritten_text_cursor. Rewritten to take glyph widths into
12634 account.
12635 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
12636 (fast_find_string_pos): New function.
12637 (fast_find_position): Return the correct vpos. Add parameter
12638 STOP. In the final row, stop before glyphs having STOP as object.
12639 Don't consider glyphs that are not from a buffer.
12640 (fast_find_position) [0]: Add a presumably more correct version
12641 for after 21.1.
12642 (expose_window_tree, expose_frame): Don't compute intersections here.
12643 (expose_window): Do it here instead.
12644 (expose_window_tree, expose_window, expose_line): Return 1 when
12645 overwriting mouse-face.
12646 (expose_window): If W is the window currently being updated, mark
12647 the frame garbaged.
12648 (expose_frame): If mouse-face was overwritten, redo it.
12649 (x_use_underline_position_properties): New variable.
12650 (syms_of_xterm): DEFVAR_BOOL it.
12651 (x_draw_glyph_string): Add comment to use it in future.
12652 (x_draw_glyph_string): Restore clipping after drawing box.
12653 Fix a computation of the underline position.
12654 (w32_get_glyph_string_clip_rect): Minor cleanup.
12655 (x_fill_stretch_glyph_string): Remove an assertion.
12656 (x_produce_glyphs): Don't convert multibyte characters
12657 to unibyte characters in unibyte buffers.
12658 (cursor_in_mouse_face_p): New function.
12659 (x_draw_stretch_glyph_string): Use it to choose a different GC
12660 when drawing a cursor within highlighted text. Don't draw
12661 background again if it has already been drawn.
12662 (x_draw_glyph_string_box): Don't draw a full-width
12663 box just because the glyph row's full_width_p flag is set.
12664 (x_draw_glyphs): Fix computation of rightmost x for
12665 full-width rows.
12666 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
12667 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
12668 change bottom shadow accordingly. Some cleanup.
12669 (x_update_window_end): Handle overwritten mouse face
12670 also for tool bar windows.
12671 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
12672 DRAW is DRAW_IMAGE_RAISED.
12673 (clear_mouse_face): Return 1 if text with mouse face was
2c568af5
SM
12674 actually redrawn. Make the function static.
12675 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
c169b8f1
JR
12676 optimize away highlighting if we pass over that same overlay again.
12677 (note_mouse_highlight): Call mouse_face_overlay_overlaps
12678 to detect a case where we have to highlight a different region
12679 despite not having left the currently highlighted region.
12680 Set mouse_face_overlay in the x_display_info. Avoid changing the
12681 mouse pointer shape when show_mouse_face has already done it, or
12682 there is no need. Handle mouse-face and help-echo in strings.
12683 (glyph_rect): New function.
12684 (w32_mouse_position): Use it to raise the threshold for mouse
12685 movement event generation.
12686 (w32_initialize_display_info): Initialize the x_display_info's
12687 mouse_face_overlay.
12688 (w32_set_vertical_scroll_bar): Don't clear a zero height
12689 or width area.
12690 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
12691 a widget to zero height.
12692
3cf3436e 12693 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
4fdd691b 12694 Protect unibyte strings created by replacing their multibyte
3cf3436e
JR
12695 equivalents in menu_items.
12696 (w32_menu_show): Don't overwrite an item's name with its key
12697 description in case the description is a multibyte string.
12698 (single_submenu): Some cleanup.
12699
12700 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
12701 (postprocess_image): New function.
12702 (lookup_image): Call it for all image types except PostScript.
12703 (x_kill_gs_process): Call postprocess_image.
12704 (tiff_error_handler, tiff_warning_handler): New functions.
12705 (tiff_load): Install them as handlers.
12706 (x_kill_gs_process): Recognize if someone has cleared the image
12707 cache under us.
12708 (valid_image_p): Protect better against invalid image
12709 specifications. Previous code could signal an error.
12710 (Fx_hide_tip, Fshow_tip): Doc fix.
12711 (Fv_max_tooltip_size): New variable.
12712 (syns_of_xfns): DEFVAR_LISP it.
12713 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
12714 window buffer to *tip* right after creating the frame. Set frame's
12715 window_width. Use a maximum tooltip size specified by
12716 Vx_max_tooltip_size, if that has valid contents.
12717 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
12718 Make sure the tooltip is completely visible.
12719 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
12720 (Fx_create_frame): Adjust the frame's height for presence
12721 of the tool bar before calling x_figure_window_size.
12722 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
12723 when the window gets smaller.
12724 (x_set_foreground_color): Set frame's cursor_pixel.
12725 (x_set_foreground_color, x_set_background_color): Cleaned up.
12726 (x_set_font): Handle case of x_new_fontset returning the same name
12727 as before, although there was a change in fontsets.
12728
386ca361
MB
127292001-10-21 Miles Bader <miles@gnu.org>
12730
c2d53558 12731 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
386ca361
MB
12732 (Flogxor): Add usage: string to doc string.
12733 * charset.c (Fstring): Likewise.
12734 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
12735 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
12736
f00691a3 127372001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14ff1ee0 12738
03be2694
PJ
12739 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
12740
12741 * alloc.c: Reindent DEFUNs with doc: keywords.
12742
12743 * abbrev.c (Finsert_abbrev_table_description): Reindent.
12744
14ff1ee0
PJ
12745 * frame.c: Change doc-string comments to `new style' [w/`doc:'
12746 keyword].
12747
2f147815 12748See ChangeLog.9 for earlier changes.
6922b018
KH
12749
12750;; Local Variables:
49b3bd82 12751;; coding: iso-2022-7bit
6922b018 12752;; End:
2a34a036 12753
2f147815 12754 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
2a34a036
GM
12755 Copying and distribution of this file, with or without modification,
12756 are permitted provided the copyright notice and this notice are preserved.
ab5796a9
MB
12757
12758;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4