Provide `register' feature.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
9062aa89
ST
12004-03-14 Steven Tamm <steventamm@mac.com>
2
3 * Makefile.in (XMENU_OBJ): Do not include xmenu.o if
4 HAVE_CARBON is defined.
5
e4b1b5ab
KS
62004-03-14 Kim F. Storm <storm@cua.dk>
7
8 * dispextern.h (x_find_image_file): Add prototype.
9
10 * image.c (x_find_image_file): Make extern.
11
12 * xfns.c (x_find_image_file): Remove prototype.
13
5109b06a
EZ
142004-03-13 Eli Zaretskii <eliz@elta.co.il>
15
16 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is
17 defined.
18
19 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is
20 defined.
21
e69cfac2
RS
222004-03-12 Richard M. Stallman <rms@gnu.org>
23
24 * fns.c (internal_equal): New arg PROPS controls comparing
25 text properties. All callers changed.
26 (Fequal_including_properties): New function.
27 (syms_of_fns): defsubr it.
28
45034953
KS
292004-03-12 Kim F. Storm <storm@cua.dk>
30
31 Fix image support on MAC. From YAMAMOTO Mitsuharu.
32
33 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
34 (image_background, image_background_transparent): Fix prototypes.
35
36 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to
37 dispextern.h.
38
39 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
40 (x_query_font, x_find_ccl_program, x_set_window_size)
41 (x_make_frame_visible, mac_initialize, XCreatePixmap)
42 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
43 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
44
45 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
46 (x_query_font, x_find_ccl_program, x_set_window_size)
47 (x_make_frame_visible, mac_initialize, XCreatePixmap)
48 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
49 (mac_draw_line_to_pixmap): Add prototypes.
50
512004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
52
53 * macterm.c (XTread_socket): Fix mouse click on tool bar.
54
a12d3d87
KS
552004-03-11 Kim F. Storm <storm@cua.dk>
56
d3ab1cf1
KS
57 * dispextern.h: Move image related prototypes from xfns.c section
58 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
59 HAVE_X_WINDOWS.
60
37de9f51 61 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
a12d3d87
KS
62 Move gtkutil.o to new GTK_OBJ list.
63 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
64 (GTK_OBJ) [USE_GTK]: New declaration.
65 (obj): Add $(GTK_OBJ) to list.
66
5243c06a 672004-03-11 Steven Tamm <steventamm@mac.com>
5109b06a 68
5243c06a
ST
69 * image.c [MAC_OSX]: Include sys/stat.h
70
71 * macfns.c (syms_of_macfns): Remove definitions of things now
72 defined in image.c
73
c0f97789
KS
742004-03-11 Kim F. Storm <storm@cua.dk>
75
76 The following changes consolidates the identical/similar image
77 support code previously found in xfns.c, w32fns.c, and macfns.c
78 into a new file image.c.
79
80 * makefile.w32-in (OBJ1): Add image.o.
81 ($(BLD)/image.$(O)): Add dependencies.
82
83 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
84 (image.o): Add dependencies.
85
86 * image.c: New file with consolidated image support code.
87 (COLOR_TABLE_SUPPORT): New define to control whether
88 color table support is available (X only).
89 (Bitmap_Record): Common name for x_bitmap_record,
90 w32_bitmap_record, and mac_bitmap_record.
91 (XImagePtr): Common name for pointer to XImage or equivalent.
92 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
93 to XImagePtr on X+MAC, and to HDC on W32.
94 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
95 (NO_PIXMAP): Common name for "None" or equivalent.
96 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
97 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
98 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
99 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen): Define
100 with suitable equivalents on W32 and MAC for code sharing.
101 (XDrawLine): Define on MAC for code sharing.
102 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
103 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
104 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
105 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
106 (x_reference_bitmap, x_create_bitmap_from_data)
107 (x_create_bitmap_from_file, x_destroy_bitmap)
108 (x_destroy_all_bitmaps, x_create_bitmap_mask)
109 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
110 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
111 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
112 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
113 (define_image_type, lookup_image_type, valid_image_p)
114 (image_error, enum image_value_type, struct image_keyword)
115 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
116 (make_image, free_image, prepare_image_for_display, image_ascent)
117 (four_corners_best, image_background, image_background_transparent)
118 (x_clear_image_1, x_clear_image, x_alloc_image_color)
119 (make_image_cache, free_image_cache, clear_image_cache)
120 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
121 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
122 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
123 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
124 (init_image_func_pointer, image_load_quartz2d)
125 (struct ct_color, init_color_table, free_color_table)
126 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
127 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
128 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
129 (x_disable_image, x_build_heuristic_mask)
130 (XBM support, XPM support, PBM support, PNG support, JPEG support)
131 (TIFF support, GIF support, Ghostscript support): Consolidate image
132 code from xfns.c, w32fns.c, and macfns.c.
133 (syms_of_image): Consolidate image related symbol setup here.
134 (init_image): Consolidate image related initializations here.
135
136 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
137 and init_image. Remove call to init_xfns.
138
139 * macterm.h (struct mac_bitmap_record): Add file member. Not
140 currently used, but simplifies code sharing.
141
142 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
143 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
144 (x_reference_bitmap, x_create_bitmap_from_data)
145 (x_create_bitmap_from_file, x_destroy_bitmap)
146 (x_destroy_all_bitmaps, x_create_bitmap_mask)
147 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
148 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
149 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
150 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
151 (define_image_type, lookup_image_type, valid_image_p)
152 (image_error, enum image_value_type, struct image_keyword)
153 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
154 (make_image, free_image, prepare_image_for_display, image_ascent)
155 (four_corners_best, image_background, image_background_transparent)
156 (x_clear_image_1, x_clear_image, x_alloc_image_color)
157 (make_image_cache, free_image_cache, clear_image_cache)
158 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
159 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
160 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
161 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
162 (init_image_func_pointer, image_load_quartz2d)
163 (struct ct_color, init_color_table, free_color_table)
164 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
165 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
166 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
167 (x_disable_image, x_build_heuristic_mask)
168 (XBM support, XPM support, PBM support, PNG support, JPEG support)
169 (TIFF support, GIF support, Ghostscript support): Merge with image
170 code from xfns.c and macfns.c into image.c.
171 (syms_of_xfns): Move image related symbols to image.c.
172 (init_external_image_libraries, init_xfns): Remove; initialization
173 moved to init_image in image.c.
174
175 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
176 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
177 (x_reference_bitmap, x_create_bitmap_from_data)
178 (x_create_bitmap_from_file, x_destroy_bitmap)
179 (x_destroy_all_bitmaps, x_create_bitmap_mask)
180 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
181 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
182 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
183 (define_image_type, lookup_image_type, valid_image_p)
184 (image_error, enum image_value_type, struct image_keyword)
185 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
186 (make_image, free_image, prepare_image_for_display, image_ascent)
187 (four_corners_best, image_background, image_background_transparent)
188 (x_clear_image_1, x_clear_image, x_alloc_image_color)
189 (make_image_cache, free_image_cache, clear_image_cache)
190 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
191 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
192 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
193 (struct ct_color, init_color_table, free_color_table)
194 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
195 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
196 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
197 (x_disable_image, x_build_heuristic_mask)
198 (XBM support, XPM support, PBM support, PNG support, JPEG support)
199 (TIFF support, GIF support, Ghostscript support): Merge with image
200 code from xfns.c and macfns.c into image.c.
201 (syms_of_xfns): Move image related symbols to image.c.
202 (init_external_image_libraries, init_xfns): Remove; initialization
203 moved to init_image in image.c.
204
205 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
206 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
207 (x_reference_bitmap, x_create_bitmap_from_data)
208 (x_create_bitmap_from_file, x_destroy_bitmap)
209 (x_destroy_all_bitmaps, x_create_bitmap_mask)
210 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
211 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
212 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
213 (define_image_type, lookup_image_type, valid_image_p)
214 (image_error, enum image_value_type, struct image_keyword)
215 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
216 (make_image, free_image, prepare_image_for_display, image_ascent)
217 (four_corners_best, image_background, image_background_transparent)
218 (x_clear_image_1, x_clear_image, x_alloc_image_color)
219 (make_image_cache, free_image_cache, clear_image_cache)
220 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
221 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
222 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
223 (struct ct_color, init_color_table, free_color_table)
224 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
225 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
226 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
227 (x_disable_image, x_build_heuristic_mask)
228 (XBM support, XPM support, PBM support, PNG support, JPEG support)
229 (TIFF support, GIF support, Ghostscript support): Merge with
230 w32fns.c and macfns.c image code into image.c.
231 (syms_of_xfns): Move image related symbols to image.c.
232 (init_xfns): Remove; initialization moved to init_image in image.c.
233
234 * lisp.h (syms_of_image, init_image): Add protoypes.
235 (init_xfns): Remove prototype.
236
237 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
238 (x_reference_bitmap, x_create_bitmap_from_data)
239 (x_create_bitmap_from_file, x_destroy_bitmap)
240 (x_create_bitmap_mask): Move prototypes from dispextern.h.
241 (gamma_correct) [MAC_OS]: Add prototype.
242
243 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
244 (x_reference_bitmap, x_create_bitmap_from_data)
245 (x_create_bitmap_from_file, x_destroy_bitmap)
246 (x_create_bitmap_mask): Move prototypes to dispextern.h.
247
6eced09c
KH
2482004-03-09 Kenichi Handa <handa@etlken2>
249
250 * coding.c (decode_coding_emacs_mule): Handle insufficent source
251 correctly.
252
9a7e95f3
RS
2532004-03-04 Richard M. Stallman <rms@gnu.org>
254
04a6e76b
RS
255 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
256
9a7e95f3
RS
257 * window.c (Fdisplay_buffer): Doc fix.
258
259 * buffer.c (Fpop_to_buffer): Doc fix.
260
6c2488df
KS
2612004-03-03 Kim F. Storm <storm@cua.dk>
262
263 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
264
d8d95bc7
SM
2652004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
266
267 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
268
357589bf
RS
2692004-03-02 Richard M. Stallman <rms@gnu.org>
270
271 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
272
409949b5
KH
2732004-03-02 Kenichi Handa <handa@m17n.org>
274
275 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
276
d24bc50f
KS
2772004-03-02 Kim F. Storm <storm@cua.dk>
278
279 * window.h (struct window): New member overlay_arrow_bitmap.
280
281 * window.c (make_window): Initialize overlay_arrow_bitmap.
282
283 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
284 implement and integrate multiple overlay arrows with redisplay.
285 (syms_of_xdisp): DEFVAR_LISP and initialize it.
286 (last_arrow_position, last_arrow_string): Replace by properties.
287 (Qlast_arrow_position, Qlast_arrow_string)
288 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
289 (syms_of_xdisp): Intern and staticpro them.
290 (overlay_arrow_string_or_property, update_overlay_arrows)
291 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
292 (overlay_arrow_at_row): New functions for multiple overlay arrows.
293 (redisplay_internal): Use them instead of directly accessing
294 Voverlay_arrow_position etc. for multiple overlay arrows.
295 (mark_window_display_accurate): Use update_overlay_arrows.
296 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
297 (try_window_id): Use overlay_arrows_changed_p.
298 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
299 (display_line): Use overlay_arrow_at_row to check multiple
300 overlay arrows, and get relevant overlay-arrow-string and
d8d95bc7 301 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
d24bc50f
KS
302 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
303 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
304
305 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
306 (update_window_fringes): Remove unused code.
307
c1464661
JR
3082004-03-01 Jason Rumney <jasonr@gnu.org>
309
310 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
311
a64387ee
JB
3122004-03-01 Juanma Barranquero <lektu@terra.es>
313
314 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
315
316 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
317
334faa08
JD
3182004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
319
320 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
321 how many colors can be displayed.
322
bb62616f
KH
3232004-03-01 Kenichi Handa <handa@m17n.org>
324
325 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
326 correctly.
327
0fd16104
KS
3282004-02-28 Kim F. Storm <storm@cua.dk>
329
330 * dispnew.c (update_window): Update header line also if there are
331 no other changes in window (move code after set_cursor label).
332
333 * lisp.h (mark_window_display_accurate): Remove prototype.
334
335 * window.c (window_loop, Fforce_window_update): Force mode line
336 updates by setting prevent_redisplay_optimizations_p and
337 update_mode_lines.
338
b59dd9c8
JD
3392004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
340
d8d95bc7 341 * xfns.c (x_window): Fix indentation.
b59dd9c8
JD
342
343 * xterm.c (x_calc_absolute_position): Call x_real_positions
344 to get WM window sizes and use those to calculate position.
d8d95bc7 345 (x_set_offset): Remove code commented out.
b59dd9c8 346
a874691c
MB
3472004-02-28 Miles Bader <miles@gnu.org>
348
349 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
350
3e0c6482
KS
3512004-02-28 Kim F. Storm <storm@cua.dk>
352
353 * keyboard.c (kbd_buffer_store_event_hold): New function to store
354 an event into kbd fifo, but with special handling of quit event;
355 a quit event is saved for later, and further events are discarded
356 until the saved quit event has been processed.
357 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
358 (gen_help_event): Store help event in kbd fifo.
359 (NREAD_INPUT_EVENTS): Remove.
360 (read_avail_input): Adapt to new read_socket_hook interface.
361 Remove allocation and initialization of local input_event buffer,
362 as read_socket_hook stores events directly in fifo. Allocate and
363 initialize local hold_quit event to handle postponed quit event
364 (and store it if set by kbd_buffer_store_event_hold).
365
366 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
367 (gen_help_event): Fix prototype.
368
a64387ee 369 * macterm.c (XTread_socket): Remove bufp_r and
3e0c6482
KS
370 numcharsp args. Add hold_quit arg.
371 Rework to use just one, local, inev input_event. Store inev
372 directly in fifo using kbd_buffer_store_event_hold.
373
374 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
375 (read_input_waiting): Adapt to new read_socket_hook interface.
376 Remove allocation and initialization of local input_event buffer,
377 as read_socket_hook stores events directly in fifo. Allocate and
378 initialize local hold_quit event to handle postponed quit event
379 (and store it if set by kbd_buffer_store_event_hold).
380
a64387ee 381 * term.c (read_socket_hook): Fix arg list.
3e0c6482
KS
382
383 * termhooks.h (read_socket_hook): Fix prototype.
384
385 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
386 numcharsp args. Add hold_quit arg.
387 Rework to use just one, local, inev input_event. Store inev
388 directly in fifo using kbd_buffer_store_event_hold.
389
390 * w32inevt.h (w32_console_mouse_position): Fix prototype.
391
392 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
393 Add hold_quit arg. Rework to use just one, local, inev
394 input_event. Store inev directly in fifo using
395 kbd_buffer_store_event_hold. Update count in one place.
396 Postpone call to gen_help_event until inev is stored; use new
397 local do_help for this.
398 Remove local emacs_event in handing of ButtonPress event; just use
399 inev instead (so no reason to copy it later).
400
401 * xsmfns.c (x_session_check_input): Remove numchars arg.
402
d8d95bc7
SM
403 * xterm.c (x_focus_changed, x_detect_focus_change):
404 Remove numchars arg. Always store event into bufp arg.
405 Return nothing. Callers changed accordingly.
3e0c6482
KS
406 (glyph_rect): Simplify.
407 (STORE_KEYSYM_FOR_DEBUG): New macro.
408 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
409 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
410 (current_hold_quit) [USE_GTK]: Add.
411 (event_handler_gdk): Adapt to new handle_one_xevent.
412 (handle_one_xevent): Remove bufp_r and numcharsp args.
413 Add hold_quit arg. Rework to use just one, local, inev
414 input_event. Store inev directly in fifo using
415 kbd_buffer_store_event_hold. Update count in one place.
416 Postpone call to gen_help_event until inev is stored; use new
417 local do_help for this.
418 Simplify handling of keysyms (consolidate common code). Fix bug
419 where count was updated with nchars instead of nbytes.
420 Remove local emacs_event in handing of ButtonPress event; just use
421 inev instead (so no reason to copy it later).
422 Remove `out' label. Rename label `ret' to `done'; add various
423 `goto done' to clarify code flow in deeply nested blocks.
424 (x_dispatch_event): Simplify as handle_one_xevent now calls
425 kbd_buffer_store_event itself.
426 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
427 arg. Call handle_one_xevent with new arglist. Store event from
428 x_session_check_input in fifo.
429 [USE_GTK]: Setup current_hold_quit.
430 Decrement handling_signal before unblocking input.
431 (x_initialize) [USE_GTK]: Initialize current_count.
432
433 * xterm.h (x_session_check_input): Fix prototype.
434
e3564461 4352004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
a64387ee 436
d8d95bc7 437 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
a64387ee 438
e3564461
ST
439 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
440 macgui.h).
a64387ee 441
e3564461 442 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
a64387ee 443
e3564461
ST
444 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
445 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
446 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
447 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
448 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
449 (Bitmap): Remove typedef.
450 (Pixmap): Change int to GWorldPtr.
451
d8d95bc7 452 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
a64387ee 453
d8d95bc7
SM
454 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
455 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
456 New #define to extract 16-bit depth color components from unsigned
e3564461
ST
457 long representation.
458 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
459 colors used for masks.
460 (struct mac_display_info): Add color_p. Remove n_cbits.
a64387ee 461
e3564461
ST
462 * macfns.c: Include sys/types.h and sys/stat.h.
463 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
464 Include QuickTime/QuickTime.h.
465 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
466 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
467 functions defined in macterm.c.
468 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
469 (ZPixmap): New #define for compatibility with xfns.c.
470 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
471 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
d8d95bc7
SM
472 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
473 New functions.
e3564461 474 (four_corners_best, x_create_x_image_and_pixmap)
d8d95bc7
SM
475 (x_destroy_x_image, unwind_create_frame, x_disable_image)
476 (x_edge_detection, init_color_table, colors_in_color_table)
e3564461
ST
477 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
478 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
479 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
480 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
481 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
482 long mixup.
483 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
484 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
485 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
486 (x_set_cursor_type, Fxw_color_values, valid_image_p)
487 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
488 (x_alloc_image_color, clear_image_cache, lookup_image)
489 (x_find_image_file, xbm_read_bitmap_file_data)
490 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
491 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
492 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
493 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
494 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
d8d95bc7 495 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
e3564461
ST
496 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
497 #if 0.
498 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
499 #if 0. Free white_relief.gc and black_relief.gc.
d8d95bc7
SM
500 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
501 New functions (from xfns.c).
e3564461
ST
502 (Fx_create_frame): Record unwind_create_frame.
503 (Fxw_display_color_p): Use dpyinfo->color_p.
504 (Fx_display_grayscale_p, Fx_display_planes): Don't use
505 dpyinfo->n_cbits.
506 (Fx_display_color_cells): Use dpyinfo->n_planes;
507 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
508 (Qheuristic, cross_disabled_images, emboss_matrix)
509 (laplace_matrix): New variables (from xfns.c).
510 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
511 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
512 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
d8d95bc7
SM
513 (image_background_transparent): New function (from xfns.c).
514 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
515 (image_load_quicktime): Add declaration.
516 [MAC_OSX] (image_load_quartz2d): Likewise.
517 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
518 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
d8d95bc7 519 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
e3564461
ST
520 (xbm_load_image_from_file, x_laplace_read_row)
521 (x_laplace_write_row, pbm_read_file): Remove functions.
522 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
523 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
524 (colors_in_color_table): Sync with xfns.c (although not used).
525 (lookup_rgb_color): Don't lookup color table. Just do gamma
526 correction.
527 (COLOR_INTENSITY): New #define (from xfns.c).
d8d95bc7
SM
528 (x_disable_image): New function (from xfns.c).
529 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
530 (x_build_heuristic_mask): Sync with xfns.c.
531 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
532 (HAVE_PBM): Remove #ifdef.
533 (pbm_load): Sync with xfns.c. Set img->width and img->height
534 before IMAGE_BACKGROUND.
d8d95bc7 535 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
e3564461
ST
536 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
537 Don't enclose with #if HAVE_PNG.
538 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
d8d95bc7
SM
539 symbol _CGImageCreateWithPNGDataProvider is defined.
540 Otherwise use image_load_quicktime.
e3564461 541 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
d8d95bc7
SM
542 [HAVE_PNG] (png_load): Sync with xfns.c.
543 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
544 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
545 HAVE_JPEG.
546 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
547 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
548 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
549 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
550 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
551 (tiff_image_p, tiff_load): Don't enclose declarations with #if
552 HAVE_TIFF.
553 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
554 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
555 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
d8d95bc7
SM
556 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
557 New functions (from xfns.c).
e3564461 558 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
d8d95bc7 559 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
e3564461
ST
560 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
561 Don't enclose with #if HAVE_GIF.
562 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
563 animated gif. Otherwise use image_load_quicktime.
564 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
565 gif_DrawText to avoid conflict with QuickdrawText.h.
566 [HAVE_GIF] (gif_load): Sync with xfns.c.
567 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
568 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
569 Ghostscript is not supported yet).
570 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
571 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
572 cross_disabled_images (from xfns.c). Remove #if 0 for supported
573 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
574 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
575 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
d8d95bc7
SM
576 HAVE_PNG. Call EnterMovies to support animated gifs.
577 Call init_image_func_pointer to bind a symbol
e3564461 578 _CGImageCreateWithPNGDataProvider if it is defined.
a64387ee 579
d8d95bc7 580 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
e3564461
ST
581 (x_draw_bar_cursor): Sync declaration with xterm.c.
582 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
583 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
584 graphics).
585 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
586 (mac_draw_line_to_pixmap, XCreatePixmap)
587 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
d8d95bc7
SM
588 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
589 New functions.
590 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
591 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
592 Cast bits to char *.
e3564461
ST
593 (reflect_byte): New function (from w32fns.c).
594 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
595 due to byte alignment.
d8d95bc7
SM
596 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
597 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
e3564461
ST
598 (XSetForeground): Remove static (now used in macfns.c).
599 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
600 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
601 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
602 (x_draw_glyph_string_box, x_draw_image_foreground)
603 (x_draw_image_foreground_1, x_draw_image_glyph_string)
604 (x_draw_stretch_glyph_string, x_draw_glyph_string)
605 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
606 Sync with xterm.c.
607 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
608 than the xterm.c version when a strictly horizontal or vertical
609 line is drawn.
610 (XTset_terminal_window): Add static.
611 (x_make_frame_visible): Add UNBLOCK_INPUT.
612 (x_free_frame_resources): New funcion (from xterm.c).
613 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
614 occurs in tool bar area.
d8d95bc7
SM
615 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
616 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
e3564461
ST
617 Initialize image cache.
618 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
619 Enclose unused functions with #if 0.
620 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
621 (decode_mac_font_name): New function to apply code conversions
d8d95bc7 622 from a mac font name to an XLFD font name according to its script code.
e3564461 623 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
d8d95bc7 624 font name to a mac font name according to REGISTRY and ENCODING fields.
e3564461
ST
625 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
626 whose name starts with `.'.
627 (init_font_name_table): Use decode_mac_font_name. Add both
628 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
629 of a font is smJapanese.
630 (mac_do_list_fonts): New function to list fonts that match a given
631 pattern.
632 (x_list_fonts, XLoadQueryFont): Use it.
633 (XLoadQueryFont): Set rbearing field for each variable width
634 character to avoid needless redraw.
635 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
636
446f5f3d
KS
6372004-02-26 Kim F. Storm <storm@cua.dk>
638
af617d0f
KS
639 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
640 as read_socket_hook handler on X aborts if buffer is too small
641 and W32 handler doesn't always check buffer limit.
642
446f5f3d
KS
643 * xdisp.c (handle_single_display_prop): Handle left-fringe and
644 right-fringe similar to a display margin image. Specifically,
645 the characters having the fringe prop are no longer shown, and
646 we use IT_IMAGE/next_element_from_image with image_id = -1 to
647 do this. Set fringe bitmap face_id in it->face_id.
648 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
649 still realize it->face (i.e. the fringe bitmap face).
650
7d8a0b55
MB
6512004-02-25 Miles Bader <miles@gnu.org>
652
653 * xdisp.c (check_it): Check string/string_pos consistency.
654 (init_iterator): Initialize string-related fields properly.
655
6562004-02-11 Miles Bader <miles@gnu.org>
657
658 * xdisp.c (produce_image_glyph): Force negative descents to zero.
659
6602004-02-10 Miles Bader <miles@gnu.org>
661
662 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
663 BLOCK_INPUT can be nested, so it doesn't make much sense.
664
a64387ee 6652004-02-24 Michael Mauger <mmaug@yahoo.com>
ce35edd1
JR
666
667 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
668 (xbm_read_bitmap_data): Use unsigned char for image data.
669
92f5fba2
LT
6702004-02-23 Luc Teirlinck <teirllm@auburn.edu>
671
672 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
673
8565fb3d
JR
6742004-02-22 Jason Rumney <jasonr@gnu.org>
675
676 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
677 correctly over other bitmaps.
678
f8125c39
EZ
6792004-02-21 Eli Zaretskii <eliz@elta.co.il>
680
681 * emacs.c (USAGE1): Split into two halves.
682 (USAGE2): Second half of the old USAGE1.
d8d95bc7
SM
683 (USAGE3): Rename from USAGE2.
684 (USAGE4): Rename from USAGE3.
f8125c39 685
4effffca
EZ
6862004-02-21 Juri Linkov <juri@jurta.org>
687
688 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
689 Fix --multibyte. Move --help, --version to USAGE2. Add alias
690 --file. Fix -f, -l. Sort options. Untabify.
691 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
692
923c1e6f
LT
6932004-02-19 Luc Teirlinck <teirllm@auburn.edu>
694
695 * category.c (Fdefine_category, Fcategory_docstring)
696 (Fget_unused_category, Fset_category_table)
697 (Fcategory_set_mnemonics): Doc fixes.
698
b0e225fd
KS
6992004-02-20 Kim F. Storm <storm@cua.dk>
700
701 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
702 The following changes are relative to the 2004-01-21 revision.
703 (NREAD_INPUT_EVENTS): Define as max number of input events to read
704 in one call to read_socket_hook. Value is 8.
705 (read_avail_input): Separate and rework handling of read_socket_hook
706 and non-read_socket_hook cases. Use smaller input_event buffer
d8d95bc7
SM
707 in read_socket_hook case, and repeat if full buffer is read.
708 Use new local variable 'discard' to skip input after C-g.
b0e225fd
KS
709 In non-read_socket_hook case, just use a single input_event, and
710 call kbd_buffer_store_event on the fly for each character.
711
b15aa9f9
SM
7122004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
713
714 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
715 Remove unused `gu' alternative.
716
83c9aa95
AS
7172004-02-19 Andreas Schwab <schwab@suse.de>
718
719 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
720 warning.
721
cc808173
KS
7222004-02-18 Kim F. Storm <storm@cua.dk>
723
724 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
725 Fix last change.
726
ab90a54d
KS
7272004-02-17 Kim F. Storm <storm@cua.dk>
728
b26f249f
KS
729 * xdisp.c (fast_find_position): Fix return value of new version;
730 it was inverted compared to the 21.1 version.
731 (get_window_cursor_type): Don't look at glyph if NULL.
732 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
0bf7d005 733
ab90a54d
KS
734 * keyboard.c: Rework previous change; it didn't consider that the
735 buf array was allocated on the stack.
736 (prev_read): Remove variable.
737 (read_avail_input_buf): New static event buffer array.
b9568dfc 738 (in_read_avail_input): New static variable to handle re-entrancy.
ab90a54d 739 (read_avail_input): Change buf to pinter to read_avail_input_buf.
b9568dfc
KS
740 Use in_read_avail_input to handle re-entrance; when re-entered,
741 fully initialize and use tmp_buf array instead of read_avail_input_buf.
742 Do not initialize read_avail_input_buf in full here; instead assume it
ab90a54d
KS
743 is always cleared on entry. To ensure that, we clear (just) the
744 entries that were used before we return.
745 (init_keyboard): Initialize read_avail_input_buf here.
746
4e039f3f
EZ
7472004-02-16 Jesper Harder <harder@ifa.au.dk> (tiny change)
748
749 * cmds.c (Fend_of_line): Doc fix.
750
7b5368c1
EZ
7512004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
752
753 * keyboard.c (prev_read): New static variable.
754 (read_avail_input): Use it to zero out only those slots in buf[]
755 that were used last time we were called.
756
ca4bc494
EZ
7572004-02-16 Eli Zaretskii <eliz@elta.co.il>
758
759 * Makefile.in (obj): Move fringe.o from here...
760 (XOBJ, MAC_OBJ): ...to here.
761
159c348e
SE
7622004-02-16 Stephen Eglen <stephen@gnu.org>
763
764 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
765
d2f14999
SM
7662004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
767
b15aa9f9
SM
768 * data.c (Fbyteorder):
769 * fringe.c (Fdefine_fringe_bitmap):
770 * xdisp.c (handle_single_display_prop):
d2f14999
SM
771 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
772
8d50508a
JR
7732004-02-16 Jason Rumney <jasonr@gnu.org>
774
775 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
776
dd4497dc
ST
7772004-02-15 Steven Tamm <steventamm@mac.com>
778
779 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
780 controlling emulation of a three button mouse with option and
781 command keys.
782 (Qreverse, mac_get_enumlated_btn): Handle the emulation
b15aa9f9 783 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
dd4497dc 784
c9159cb3
KS
7852004-02-15 Kim F. Storm <storm@cua.dk>
786
2cc52658
KS
787 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
788
c9159cb3
KS
789 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
790 Perform byte-swapping.
791
12fde2dc
KS
7922004-02-14 Kim F. Storm <storm@cua.dk>
793
794 * dispextern.h (struct draw_fringe_bitmap_params): Change member
795 bits from char to short to facilitate wider bitmaps.
796 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
797 member.
798
799 * fringe.c (struct fringe_bitmap): Change member bits from char to
800 short to facilitate 16 bits wide bitmaps. Modify all standard
801 bitmaps accordingly.
802 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
803 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
804 (draw_fringe_bitmap): Ditto.
805 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
806 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
807 handle up to 16 bits wide bitmaps.
808 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
f21a7192 809 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
12fde2dc
KS
810
811 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
812 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
813 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
814
815 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
816 so it is no longer necessary to expand them here.
817
818 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
819
9d7271e8
KS
8202004-02-12 Kim F. Storm <storm@cua.dk>
821
822 * window.c (Fwindow_fringes): Doc fix.
823
706c1e4f
JD
8242004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
825
826 * xselect.c (x_get_foreign_selection): Add new optional parameter
827 time_stamp.
828 (Fx_get_selection_internal): Ditto, pass time_stamp to
829 x_get_foreign_selection.
830
831 * data.c (Fbyteorder): New function.
832
c2d12b5d
JD
8332004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
834
835 * atimer.c: Move include stdio.h to same place as in other files.
836
837 * region-cache.c: Ditto.
838
839 * sysdep.c: Ditto.
840
841 * xfaces.c: Ditto.
842
4c1947b9
SS
8432004-02-09 Sam Steingold <sds@gnu.org>
844
845 * w32term.c (w32_draw_fringe_bitmap): Fixed a typo in the last patch.
846
82722af3
KS
8472004-02-09 Kim F. Storm <storm@cua.dk>
848
849 * fringe.c: New file. Move original fringe related declarations
850 and code from dispextern.h and xdisp.c here.
851 Rework code to support user defined fringe bitmaps, redefining
852 standard bitmaps, ability to overlay user defined bitmap with
853 overlay arrow bitmap, and add faces to bitmaps.
854 (Voverflow_newline_into_fringe): Declare here.
855 (enum fringe_bitmap_align): New enum.
856 (..._bits): All bitmaps are now defined without bitswapping; that
857 is now done in init_fringe_once (if necessary).
858 (standard_bitmaps): New array with specifications for the
859 standard fringe bitmaps.
860 (fringe_faces): New array.
861 (valid_fringe_bitmap_id_p): New function.
862 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
863 (draw_fringe_bitmap): New function which draws fringe bitmap,
864 possibly overlaying bitmap with cursor in right fringe or the
865 overlay arrow in the left fringe.
866 (update_window_fringes): Do not handle overlay arrow here.
867 Compare and copy fringe bitmap faces.
868 (init_fringe_bitmap): New function.
869 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
870 define and destroy user defined fringe bitmaps.
871 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
872 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
873 (syms_of_fringe): New function. Defsubr new DEFUNs.
874 DEFVAR_LISP Voverflow_newline_into_fringe.
875 (init_fringe_once, init_fringe): New functions.
876 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
4c1947b9 877
82722af3
KS
878 * Makefile.in (obj): Add fringe.o.
879 (fringe.o): New dependencies.
880
881 * dispextern.h (FRINGE_ID_BITS): New definition for number of
882 bits allocated to hold a fringe number. Increase number of bits
883 from 4 to 8 to allow user defined fringe bitmaps.
884 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
885 left_user_fringe_face_id, right_user_fringe_bitmap,
886 right_user_fringe_face_id.
887 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
888 Move to new file fringe.c.
889 (MAX_FRINGE_BITMAPS): Define here.
890 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
891 and overlay_p. Change member which to int.
892 (struct redisplay_interface): New members define_fringe_bitmap
893 and destroy_fringe_bitmap.
894 (valid_fringe_bitmap_id_p): Add prototype.
895 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
896
897 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
898 arrows.
899 (update_frame): Do flush_display if force_flush_display_p to
900 ensure display (specifically fringes) are updated in a timely
901 manner when resizing the frame by dragging the mouse.
902 (update_window_line): Update row if overlay arrow changed.
903 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
904 or overlay arrow changed.
905
906 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
907 syms_of_fringe, and init_fringe.
908
909 * frame.h (struct frame): New member force_flush_display_p.
910
911 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
912 Add prototypes.
913
a3993cc8 914 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
a64387ee 915 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
a3993cc8
KS
916 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
917 Use cursor color for displaying cursor in fringe.
82722af3
KS
918 (x_redisplay_interface): Add null handlers for
919 define_fringe_bitmap and destroy_fringe_bitmap functions.
920
921 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
922 xterm.c to handle overlayed fringe bitmaps and to use cursor color
923 for displaying cursor in fringe.
924 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
925 specific functions to define and destroy fringe bitmaps in fringe_bmp.
926 (w32_redisplay_interface): Add them to redisplay_interface.
927 (w32_term_init): Call w32_init_fringe instead of explicitly
928 defining fringe bitmaps in fringe_bmp array.
929 (x_delete_display): Call w32_reset_fringes instead of explicitly
930 destroying fringe bitmaps in fringe_bmp array.
931
932 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
933 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
934 (continued_bits, continuation_bits, ov_bits, first_line_bits)
935 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
936 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
937 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
938 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
939 Move fringe handling vars and code to new file fringe.c.
940 (handle_display_prop): Handle left-fringe and right-fringe
941 display properties; store user fringe bitmaps in iterator.
942 (move_it_in_display_line_to): Handle cursor in fringe at eob.
943 (clear_garbaged_frames): Set force_flush_display_p if resized.
944 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
945 (display_line): Handle cursor in fringe at eob.
946 (display_line): Set row user fringe bitmaps from iterator.
947
948 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
949 Use cursor color for displaying cursor in fringe.
950 (x_redisplay_interface): Add null handlers for
951 define_fringe_bitmap and destroy_fringe_bitmap functions.
952
030400eb
JD
9532004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
954
955 * macfns.c (Fx_change_window_property): Make doc string and
956 parameters same as for X version.
957
958 * w32fns.c (Fx_change_window_property): Ditto.
959
3af55251
KS
9602004-02-07 Kim F. Storm <storm@cua.dk>
961
ec110e9e
KS
962 * xdisp.c (hscroll_window_tree): Position cursor near to right
963 margin in hscrolled window when jumping to end of line (rather
964 than centering cursor).
965
3af55251
KS
966 * process.c (wait_reading_process_input): Don't do adaptive read
967 buffering if waiting for a specific process.
968
b0c138ce
LT
9692004-02-05 Luc Teirlinck <teirllm@auburn.edu>
970
971 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
972 (Fread_minibuffer, Feval_minibuffer)
973 (Fread_string, Fread_no_blanks_input)
974 (Fcompleting_read): Doc fixes.
975 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
976 completion-regexp-list. Define Qcase_fold_search and staticpro it.
977 (read_minibuf): Fix initial comment.
978 (Ftry_completion, Fall_completions, Ftest_completion): Bind
979 case-fold-serach to the value of completion-ignore-case when
980 checking completion-regexp-list.
981 (Fdisplay_completion_list): Make it handle arguments that are
982 symbols. Doc fix.
983
9676f5ad 9842004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
64d1e373 985
9676f5ad 986 * xterm.h: Add declaration of free_frame_menubar.
64d1e373 987
9676f5ad
JD
988 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
989 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
b0c138ce 990 (Fx_change_window_property): Add declaration of parameters type and
9676f5ad 991 format. Remove unused variable cons.
5b698285
JD
992
993 * xselect.c: Include stdio,h.
994
fc1d15f6
KH
9952004-02-05 Kenichi Handa <handa@m17n.org>
996
ebaff4af
KH
997 * fns.c (Fset_char_table_range): Fix previous change.
998
fc1d15f6
KH
999 * buffer.c (Fset_buffer_multibyte): Fix docstring.
1000
9676f5ad
JD
10012004-02-04 Luc Teirlinck <teirllm@auburn.edu>
1002
1003 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
1004
da75761f
SM
10052004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
1006
1007 * keymap.c (Vmouse_events): Rename from Vmenu_events.
1008 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
1009
13c5d120
KH
10102004-02-04 Kenichi Handa <handa@m17n.org>
1011
1012 * fns.c (Fset_char_table_range): Handle charsets ascii,
1013 eight-bit-control, and eight-bit-graphic correctly.
1014
2883d842
JR
10152004-02-03 Jason Rumney <jasonr@gnu.org>
1016
1017 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
1018
1019 * w32fns.c (x_to_w32_font): Likewise.
1020
69eff41f
JD
10212004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1022
1023 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
1024 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
1025
1026 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
1027 ClientMessages.
1028
1029 * xselect.c: Include termhooks.h and X11/Xproto.h
1030 (x_check_property_data, x_fill_property_data)
1031 (x_property_data_to_lisp, mouse_position_for_drop)
1032 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
da75761f 1033 (Fx_send_client_event): Move here from xfns.c.
69eff41f
JD
1034 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
1035
da75761f 1036 * xfns.c (x-send-client-message): Move to xselect.c
69eff41f
JD
1037 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
1038 OUTER_P.
1039 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
1040 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
1041 if vector_ret_p is true.
1042 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
69eff41f 1043
dcdbbb5d
EZ
10442004-02-02 Eli Zaretskii <eliz@elta.co.il>
1045
1046 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
1047 basename of FILE relative to it, not FILE itself.
1048
09721b31
KH
10492004-02-02 Kenichi Handa <handa@m17n.org>
1050
1051 * coding.c (coding_restore_composition): Check invalid
1052 composition data more rigidly.
1053
eb996101
LT
10542004-01-30 Luc Teirlinck <teirllm@auburn.edu>
1055
1056 * fileio.c (Fread_file_name_internal): Correctly handle the case
1057 where insert-default-directory is nil.
1058 (Fread_file_name): Always return an empty string if the user exits
1059 with an empty minibuffer. Adapt the docstring accordingly.
1060 (syms_of_fileio): Adapt the docstring of insert-default-directory
1061 to the change in Fread_file_name.
1062
a0367d42
EZ
10632004-01-29 Eli Zaretskii <eliz@elta.co.il>
1064
1065 * alloca.c [!alloca]: Fix the prototype for xfree.
1066
13f52ed8
KH
10672004-01-29 Kenichi Handa <handa@m17n.org>
1068
1069 * fns.c (string_char_to_byte): Optimize for ASCII only string.
1070 (string_byte_to_char): Likewise.
1071
d57625a0
JR
10722004-01-28 Peter Runestig <peter@runestig.com>
1073
1074 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
1075
a64387ee 10762004-01-27 Steven Tamm <steventamm@mac.com>
911c78b4
ST
1077
1078 * unexmacosx.c (unexec_copy): Do not copy more than was
1079 requested to prevent overwriting during unexec.
1080
eb37b8fd
JD
10812004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1082
ce38070a
JD
1083 * process.c (sigchld_handler): Add comment about not calling malloc.
1084
eb37b8fd
JD
1085 * process.h: Add extern to synch_process_termsig.
1086
a64387ee 10872004-01-27 Steven Tamm <steventamm@mac.com>
21a3e657 1088
da75761f
SM
1089 * macterm.c (make_mac_frame, make_mac_terminal_frame):
1090 Move setting of scroll bars from make_mac_frame to
1091 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
21a3e657 1092
d62a265d
RS
10932004-01-26 Richard M. Stallman <rms@gnu.org>
1094
1095 * search.c (Freplace_match): Handle nonexistent
1096 back-references properly.
1097
10982004-01-03 Richard M. Stallman <rms@gnu.org>
1099
1100 * window.c (decode_any_window): New function.
1101 (Fwindow_height, Fwindow_width, Fwindow_edges)
1102 (Fwindow_pixel_edges, Fwindow_inside_edges)
1103 (Fwindow_inside_pixel_edges): Use decode_any_window.
1104
ff236419
JD
11052004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1106
1107 * process.h: synch_process_termsig new variable.
1108
1109 * callproc.c: Define synch_process_termsig.
1110 (Fcall_process): Initiate synch_process_termsig to zero and
1111 check if non-zero and get signal name after subprocess has ended.
1112
1113 * process.c (sigchld_handler): Set synch_process_termsig
1114 if terminated by a signal. synch_process_death setting removed.
1115
1116 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
1117
41b867ea
AS
11182004-01-26 Andreas Schwab <schwab@suse.de>
1119
1120 * print.c (print_preprocess): Declare size as EMACS_INT to not
1121 lose bits.
1122 (print_object): Likewise.
1123 * alloc.c (Fpurecopy): Likewise.
1124
a08084ff
LT
11252004-01-25 Luc Teirlinck <teirllm@auburn.edu>
1126
1127 * window.c (Fwindow_minibuffer_p): Doc fix.
1128
b19ac475
JY
11292004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
1130
1131 * editfns.c (Fformat): Make both passes accept the same set of flags.
1132
fe905025
KH
11332004-01-23 Kenichi Handa <handa@m17n.org>
1134
1135 * fns.c (Fmd5): If OBJECT is a buffer different from the current
1136 one, set buffer to OBJECT temporarily.
1137
438fc6c0
SM
11382004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
1139
455316e2
SM
1140 * keyboard.c (kbd_buffer_gcpro): Remove.
1141 (kbd_buffer_store_event, clear_event, Fdiscard_input)
1142 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
1143 Don't initialize and/or maintain the variable any more. It was made
1144 redundant by my commit of 2003-06-15.
1145
438fc6c0
SM
1146 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
1147
5335a4ee
JD
11482004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1149
1150 * lisp.h: Add undef DECL_ALIGN.
1151
dcdaeebc
SM
11522004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
1153
1154 * process.c (wait_reading_process_input) [SYNC_INPUT]:
1155 Check interrupt_input_pending explicitly.
1156
1157 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
1158
1159 * keyboard.c (handle_async_input): New fun,
1160 extracted from input_available_signal.
1161 (input_available_signal, reinvoke_input_signal): Use it.
1162
9076a823
SM
11632004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
1164
d7107586
SM
1165 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
1166
1167 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
1168 manipulation macros for when tags are in the lower bits.
1169 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
1170 (DECL_ALIGN): New macro.
1171 (DEFUN): Use it.
1172
1173 * lisp.h [ENABLE_CHECKING]: Don't force union type.
1174
1175 * s/darwin.h (__attribute__): Remove outdated workaround.
1176
1177 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
1178
1179 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
1180 Don't check range of malloc address.
1181 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
1182
9076a823
SM
1183 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
1184
1185 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
1186
ba029065
KH
11872004-01-19 Kenichi Handa <handa@m17n.org>
1188
1189 * fontset.c (fontset_font_pattern): Fix previous change.
1190
7af0e8d7
MB
11912004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
1192
1193 * xdisp.c (Voverflow_newline_into_fringe)
1194 (move_it_in_display_line_to, redisplay_internal)
1195 (update_window_fringes, redisplay_window, display_line, window):
1196 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
1197 that it compiles without a window-system.
1198 * dispnew.c (direct_output_for_insert, update_window): Likewise.
1199
77a9cf69
KS
12002004-01-16 Kim F. Storm <storm@cua.dk>
1201
1202 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
1203
a64387ee 1204 * buffer.c (init_buffer_once): Set buffer_defaults and
77a9cf69
KS
1205 buffer_local_flags for indicate_buffer_boundaries.
1206 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
1207 default- variable for it.
1208
1209 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
1210 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
d7107586 1211 New members exact_window_width_line_p and cursor_in_fringe_p for
77a9cf69
KS
1212 overflowing newlines into right fringe.
1213 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
1214 and indicate_bottom_line_p for buffer boundaries and scrolling.
1215 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
1216 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
1217 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
1218 and HOLLOW_SQUARE_BITMAP.
1219 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
1220 Add prototypes.
1221
1222 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
1223 instead of related indicator fields.
1224 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
1225 (direct_output_for_insert): Handle exact width lines like
1226 contined lines. Call update_window_fringes.
1227 (update_window): Call update_window_fringes.
1228 (scrolling_window): Don't skip desired rows with changed bitmaps.
1229 Check if fringe bitmaps changes when assigning scrolled rows.
1230
1231 * xdisp.c (Voverflow_newline_into_fringe): New variable.
1232 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
1233 (move_it_in_display_line_to): Overflow newline into fringe for
1234 rows that are exactly as wide as the window.
1235 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
1236 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
1237 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
1238 (fringe_bitmaps): Add new bitmaps.
1239 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
1240 Select proper bitmap for cursor in fringe when appropriate.
1241 Handle alignment of bitmap to top or bottom of row.
1242 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
1243 done by update_window_fringes.
1244 (update_window_fringes, draw_window_fringes): New functions.
1245 (redisplay_internal): Call update_window_fringes in case only
1246 cursor row is updated.
1247 (redisplay_window): Call update_window_fringes.
1248 Explicitly call draw_window_fringes if redisplay was done using
1249 the current matrix or the overlay arrow is in the window.
1250 (try_window_reusing_current_matrix): Mark scrolled rows for
1251 fringe update (to update buffer-boundaries / scrolling icons).
1252 (find_last_unchanged_at_beg_row): Handle exact width lines line
1253 continued lines.
1254 (display_line): Overflow newline into fringe for rows that are
1255 exactly as wide as the window. Don't append space for newline
d7107586 1256 in this case.
77a9cf69
KS
1257 (notice_overwritten_cursor): Explicitly clear cursor bitmap
1258 in fringe as if it had been overwritten.
1259 (erase_phys_cursor): Erase cursor bitmap in fringe.
d7107586 1260 (syms_of_xdisp): Mark show-trailing-whitespace and
77a9cf69
KS
1261 void-text-area-pointer as user options.
1262 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
d7107586 1263
77a9cf69
KS
1264 * xterm.c (x_update_window_end): Call draw_window_fringes.
1265 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
1266 in row instead of actually drawing fringe bitmaps.
1267 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
1268 (x_draw_window_cursor): Draw cursor in fringe.
1269
1270 * w32term.c (x_update_window_end): Call draw_window_fringes.
1271 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
1272 in row instead of actually drawing fringe bitmaps.
1273 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
1274 (w32_draw_window_cursor): Draw cursor in fringe.
1275
1276 * macterm.c (x_update_window_end): Call draw_window_fringes.
1277 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
1278 in row instead of actually drawing fringe bitmaps.
1279 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
1280 (mac_draw_window_cursor): Draw cursor in fringe.
1281
a633a954
JD
12822004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1283
1284 * xterm.c (handle_one_xevent): Don't handle characters that are part
1285 of an old style (XLookupString) compose sequence.
1286
80460525
KH
12872004-01-15 Kenichi Handa <handa@m17n.org>
1288
1289 * search.c (Freplace_match): Use make_multibyte_string or
1290 make_unibyte_string according to the buffer multibyteness.
1291
7fc34f85
SM
12922004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
1293
1294 * alloc.c (struct interval_block, struct string_block)
1295 (struct symbol_block, struct marker_block, live_string_p)
1296 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
1297 Better preserve alignment for objects in blocks.
1298 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
1299
1300 * lread.c (defvar_per_buffer): Remove dead declaration.
1301
1302 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
1303 space size.
1304
66070bd1
JD
13052004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1306
1307 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
1308 if a key press should pop down. Only pop down if a key is pressed
1309 outside the menu/dialog.
1310 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
1311 popup_get_selection.
1312 (create_and_show_dialog): Pass 1 for down_on_keypress to
1313 popup_get_selection.
1314
de7515d6
JD
13152004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1316
1317 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
1318 BLOCK/UNBLOCK_INPUT.
1319
160b1b50
JD
13202004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1321
1322 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
1323 specified.
1324
3a9f36e6
KH
13252004-01-08 Kenichi Handa <handa@m17n.org>
1326
1327 * editfns.c (Fformat): Fix '&' to '&&'.
1328
3803eb32
AS
13292004-01-08 Andreas Schwab <schwab@suse.de>
1330
1331 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
1332 size if PSEUDOVECTOR_FLAG is set.
1333
9da88f37
KH
13342004-01-07 Kenichi Handa <handa@m17n.org>
1335
74ac5074
KH
1336 * charset.c (Fdeclare_equiv_charset): Fix docstring.
1337
9da88f37
KH
1338 * fontset.c (fontset_ref_via_base): Fix previous change.
1339
05faee07
KS
13402004-01-07 Kim F. Storm <storm@cua.dk>
1341
1342 * process.c (read_process_output): Only activate adaptive
1343 buffering if we read less than 256 bytes at a time.
1344
634910c8
KS
13452004-01-06 Kim F. Storm <storm@cua.dk>
1346
1347 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
1348 object and image object. Return glyph width and height.
1349 (mode_line_string, marginal_area_string): Ditto.
1350
1351 * dispextern.h (buffer_posn_from_coords, mode_line_string)
1352 (marginal_area_string): Fix prototypes.
1353
1354 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
1355 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
1356 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
1357
1358 * keyboard.c (make_lispy_position): Use modified mode_line_string,
1359 buffer_posn_from_coords, and marginal_area_string functions to
1360 include both string object and image object in the lispy position.
1361 Also add actual glyph width and height to position.
1362 (read_key_sequence): Use real buffer position from mouse
1363 event to find keymap property even when click is in marginal area.
1364
1365 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
1366 mode_line_string and marginal_area_string functions to handle
1367 both string object and image object properties.
d7107586 1368
57951c2e
AS
13692004-01-06 Andreas Schwab <schwab@suse.de>
1370
1371 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
1372 character.
1373
181e6a61
AS
13742004-01-02 Andreas Schwab <schwab@suse.de>
1375
d7107586
SM
1376 * macterm.c (emacs_options, x_initialized, same_x_server):
1377 Remove unused (and duplicated) definitions.
181e6a61 1378
31e0fbdd
KS
13792004-01-02 Kim F. Storm <storm@cua.dk>
1380
1381 * process.h (struct Lisp_Process): New members for adaptive read
1382 buffering: adaptive_read_buffering, read_output_delay, and
1383 read_output_skip.
1384
1385 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
1386 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
1387 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
1388 (process_output_delay_count, process_output_skip): New vars.
1389 (Vprocess_adaptive_read_buffering): New variable.
1390 (make_process): Initialize adaptive read buffering members.
1391 (Fstart_process): Set adaptive_read_buffering member.
1392 (deactivate_process): Cleanup adaptive read buffering.
1393 (wait_reading_process_input): Temporarily omit delayed
1394 subprocesses from the set of file descriptors to read from;
1395 adjust the select timeout if we skipped any subprocesses.
1396 (read_process_output): Increase adaptive read buffering delay if
1397 we read less than a full buffer; reduce delay when we read a
1398 full buffer.
1399 (send_process): Simplify using local Lisp_Process var.
1400 Reset adaptive read buffering delay after write.
1401 (init_process): Initialize process_output_delay_count and
1402 process_output_skip.
1403 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
1404
68c6a789
JR
14052004-01-01 Jason Rumney <jasonr@gnu.org>
1406
d7107586 1407 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
68c6a789 1408
3f70fe82
LT
14092003-12-30 Luc Teirlinck <teirllm@auburn.edu>
1410
1411 * print.c (Ferror_message_string): Add hyperlink in the docstring
1412 to the definition of `signal' in the Elisp manual.
1413 * eval.c (Fsignal): Ditto.
1414
a64387ee 14152003-12-29 James Clark <jjc@jclark.com> (tiny change)
c2be49ed
EZ
1416
1417 * fns.c (internal_equal): Return t for two NaN arguments.
1418
7abd90ea
RS
14192003-12-29 Richard M. Stallman <rms@gnu.org>
1420
1421 * data.c (store_symval_forwarding): Handle setting
1422 default-fill-column, etc., by changing the value in
1423 buffers that use the default.
1424
1425 * minibuf.c (Fset_minibuffer_window): Doc fix.
1426
1427 * fileio.c (choose_write_coding_system): Ignore auto_saving
1428 if using the visited file for auto saves.
1429 (Fwrite_region): Don't update SAVE_MODIFF
1430 if auto-saving in visited file.
1431
3e7cfcdc
KH
14322003-12-29 Kenichi Handa <handa@m17n.org>
1433
1434 * dispextern.h (face_font_available_p): Extern it.
1435
1436 * fontset.c (Voverriding_fontspec_alist): New variable.
1437 (lookup_overriding_fontspec): New function.
d7107586 1438 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
3e7cfcdc
KH
1439 (fontset_font_pattern): Likewise.
1440 (regulalize_fontname): New function.
1441 (Fset_fontset_font): Call regulalize_fontname.
1442 (Fset_overriding_fontspec_internal): New function.
d7107586
SM
1443 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
1444 Defsubr Sset_overriding_fontspec_internal.
3e7cfcdc
KH
1445
1446 * xfaces.c (face_font_available_p): New function.
1447
7abd90ea
RS
14482003-12-28 Richard M. Stallman <rms@gnu.org>
1449
1450 * buffer.c (Fother_buffer): Don't crash if BUF is nil
1451 or if its name is nil.
1452
1453 * buffer.c (Fkill_buffer): Don't delete auto-save file
1454 if it's the same as the visited file.
1455
de1d1a40
LT
14562003-12-28 Luc Teirlinck <teirllm@auburn.edu>
1457
1458 * coding.c (Fcheck_coding_system): Doc fix.
1459
204fb75e
KS
14602003-12-28 Kim F. Storm <storm@cua.dk>
1461
1462 * Makefile.in (eval.o): Depend on dispextern.h.
1463
1464 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
1465 image glyph using image's ascent.
1466 (mode_line_string): Return image glyph as object clicked on.
1467 Adjust y0 for image glyph using image's ascent.
1468
1469 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
1470 (struct glyph): New members, ascent and descent. Used to save
1471 this glyph's ascent and descent, instead of having.
1472 (struct glyph): Declare member face_id using FACE_ID_BITS.
1473 (find_hot_spot): Add prototype.
1474
1475 * keyboard.c (Qimage): Remove extern (now in lisp.h).
1476 (QCmap): Declare extern.
1477 (make_lispy_position): When position is inside image hot-spot,
1478 use hot-spot element's id as posn element.
1479
1480 * lisp.h (IMAGEP): New macro to test for image object type.
1481 (Qimage): Declare extern.
1482
1483 * macfns.c (Qimage): Remove extern (now in lisp.h).
1484 (valid_image_p, parse_image_spec): Use IMAGEP macro.
1485
1486 * macterm.c (Qface, Qmouse_face): Remove unused externs.
1487
1488 * w32fns.c (Qimage): Remove extern (now in lisp.h).
1489 (valid_image_p, parse_image_spec): Use IMAGEP macro.
1490
1491 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
1492
1493 * w32term.c (Qface, Qmouse_face): Remove unused externs.
1494
1495 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
1496 pointer types.
1497 (Qrelative_width, Qalign_to): Remove unused variables.
1498 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
1499 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
1500 image maps.
d7107586 1501 (x_y_to_hpos_vpos): Return glyph relative coordinates through
204fb75e
KS
1502 new dx and dy args.
1503 Remove buffer_only_p arg (always 0). Simplify code accordingly.
1504 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
1505 than row's ascent and height, to get sensible height on tall rows.
1506 (build_desired_tool_bar_string): Remove Qimage extern.
1507 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
1508 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
1509 image glyph is alone on the last line.
1510 (append_glyph, append_composite_glyph, produce_image_glyph)
d7107586 1511 (append_stretch_glyph): Set glyph's ascent and descent.
204fb75e 1512 (on_hot_spot_p): New function to check if position is inside an
d7107586 1513 rectangular, circular, or polygon-shaped image hot-spot,
204fb75e
KS
1514 (find_hot_spot): New function to search for image hot-spot.
1515 (Flookup_image_map): New defun to search for image hot-spot.
1516 (define_frame_cursor1): New aux function to determine frame pointer.
1517 (note_mode_line_or_margin_highlight, note_mouse_highlight):
1518 Handle `pointer' text property and :pointer image property to
1519 control frame pointer shape. Detect image hot-spots for pointer
1520 and help_echo properties. Use define_frame_cursor1.
1521 (note_mouse_highlight): Use Vvoid_text_area_pointer.
1522 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
1523 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
1524
1525 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
1526
1527 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
1528 (Qimage): Remove extern (now in lisp.h).
1529 (valid_image_p, parse_image_spec): Use IMAGEP macro.
1530
1531 * xmenu.c (show_help_event): Remove unused code.
1532
1533 * xterm.c (Qface, Qmouse_face): Remove unused externs.
1534 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
1535 row's ascent and descent, to get a sensible height on tall rows.
1536
fc052137
LT
15372003-12-25 Luc Teirlinck <teirllm@auburn.edu>
1538
1539 * minibuf.c (Fcompleting_read): Undo previous change.
1540
a64387ee 15412003-12-25 Lars Hansen <larsh@math.ku.dk>
b9148500
LH
1542
1543 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
1544 Arguments GCPRO'ed in call to file name handler.
1545
56ffd194
TTN
15462003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
1547
1548 * termcap.c (tgetst1): Scan for "%pN"; if all
1549 N are continuous in [1,9], remove all "%pN".
1550
5202d23d
JD
15512003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1552
f26fab36
JD
1553 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
1554
5202d23d
JD
1555 * xfaces.c (lface_fully_specified_p): Take into account that
1556 MAC OS always have unspecified stipple.
1557
8babaa59
TTN
15582003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
1559
1560 * tparam.c (tparam1): Add handling for `%pN', which
1561 means use param N for the next substitution.
1562
2d176448
TTN
15632003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
1564
1565 * xfaces.c (Fcolor_gray_p): Fix omission bug:
1566 In case `frame' is nil, consult the selected frame.
1567 (Fcolor_supported_p): Likewise.
1568
adb0708c
LT
15692003-12-23 Luc Teirlinck <teirllm@auburn.edu>
1570
000eeb15
LT
1571 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
1572 Doc fixes.
0dc72b11
LT
1573
1574 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
1575 and an integer. Adapt the introductory comment accordingly.
adb0708c
LT
1576 (Fread_from_minibuffer): Delete code moved into read_minibuf.
1577 Doc fix.
1578 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
1579 read_minibuf.
1580 (Fcompleting_read): Delete code moved into read_minibuf.
d7107586 1581 (Ftest_completion): Make it handle obarrays and hash tables correctly.
adb0708c 1582
2e4d132b
KH
15832003-12-03 Kenichi Handa <handa@m17n.org>
1584
1585 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
1586 encoding sequence.
1587
3999c705
KH
15882003-12-01 Kenichi Handa <handa@m17n.org>
1589
1590 * composite.c (syms_of_composite): Don't make the compostion hash
1591 table week.
1592
d344ecbb
LT
15932003-11-30 Luc Teirlinck <teirllm@auburn.edu>
1594
1595 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
1596 * textprop.c (Fget_char_property_and_overlay): New function.
1597 (syms_of_textprop): Defsubr it.
1598
03d6484e
JD
15992003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1600
019b1f0e
JD
1601 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
1602 to compile on terminal configuration.
1603
03d6484e
JD
1604 * fileio.c (Fread_file_name): Check use_file_dialog also before
1605 calling Fx_file_dialog.
1606
1607 * fns.c: use_file_dialog: New variable.
1608 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
1609
442d3fd0
KS
16102003-11-29 Kim F. Storm <storm@cua.dk>
1611
1612 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
1613 (syms_of_msdos): Don't intern and staticpro them.
1614
0f6a07a8
KS
16152003-11-27 Kim F. Storm <storm@cua.dk>
1616
1617 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
1618 coordinates relative to glyph at posn. If glyph is an image,
1619 return that as object at posn. Callers changed.
1620 (mode_line_string, marginal_area_string): Calculate and return
1621 pixel coordinates relative to glyph. Callers changed.
1622
1623 * dispextern.h (buffer_posn_from_coords, mode_line_string)
1624 (marginal_area_string): Fix prototypes.
1625 (window_box_left_offset, window_box_right_offset): Add prototypes.
1626
1627 * frame.h (get_specified_cursor_type, get_window_cursor_type):
1628 Remove prototypes.
1629
1630 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
1631
1632 * keyboard.c (make_lispy_position): Add x and y coordinates
1633 relative to the current glyph as 7th element of position.
1634 If glyph is an image, return it in the object element.
1635 (read_key_sequence): Skip checks for keymap property in cases
1636 where POSN_STRING is not a string (e.g. an image).
1637
1638 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
1639 (Vshow_text_cursor_in_void): New variable.
1640 (glyph_to_pixel_coords): Don't use negative hpos.
1641 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
1642 (append_stretch_glyph): Change ascent arg to be actual value
1643 in pixels rather than ratio to height. Callers changed.
1644 (calc_pixel_width_or_height): New aux function, implementing
1645 pixel based artihmetic for glyph widths and heights.
1646 (produce_stretch_glyph): Use calc_pixel_width_or_height for
1647 :width, :height, :align-to, and :ascent, thus allowing these to
1648 be specified in pixels as well as multiples of characters.
1649 Don't produce stretch glyphs with zero width or height.
1650 (get_specified_cursor_type): Declare static.
1651 (get_window_cursor_type): Declare static. Add glyph arg to be
1652 able to know when cursor is on an image; always substitute
1653 hollow-box cursor for filled-box cursor on images, to avoid
1654 negative images and flicker when blinking the cursor.
1655 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
1656 (note_mode_line_or_margin_highlight): Use non-text cursor rather
1657 than vertical scroll-bar cursor in display margins.
1658 (note_mouse_highlight): Use non-text cursor rather than text
1659 cursor in fringes and over images in the text area.
1660 Use non-text cursor when mouse pointer is outside editable text,
1661 i.e. in the void after end-of-line or end-of-buffer; this was
1662 already done for W32, but is now standard for all systems --
1663 user can toggle show-text-cursor-in-void to get old behaviour.
1664 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
1665 Vdisplay_pixels_per_inch.
1666
00498bfc
AS
16672003-11-25 Andreas Schwab <schwab@suse.de>
1668
1669 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
1670 EMACS_INT to not lose bits.
1671 (Ffillarray): Don't set bits beyond the size of a bool vector.
1672
edaa824d
KS
16732003-11-25 Kim F. Storm <storm@cua.dk>
1674
1675 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
1676 define this defun on systems that cannot use stderr as lvalue.
1677
74d6f539
GM
16782003-11-24 Gerd Moellmann <gerd@gnu.org>
1679
1680 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
1681 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
1682 ld's default is incompatible with unexec.
1683
6a1ff3ba
KS
16842003-11-23 Kim F. Storm <storm@cua.dk>
1685
63dc7c6b
KS
1686 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
1687 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
1688 (Fforce_window_update): New defun.
1689 (syms_of_window): Defsubr it.
1690 (Fset_window_margins, Fset_window_fringes): Doc fix.
1691
6a1ff3ba
KS
1692 * print.c (Fredirect_debugging_output): New defun.
1693 (syms_of_print): Defsubr it.
1694
aef109b7
LT
16952003-11-22 Luc Teirlinck <teirllm@auburn.edu>
1696
1697 * fns.c (Fset_char_table_parent): Doc fix.
1698
6a1ff3ba 16992003-11-22 Kim F. Storm <storm@cua.dk>
63ccbe21
KS
1700
1701 * dispnew.c (buffer_posn_from_coords): Return actual row/column
1702 for glyph clicked on, rather than (unused) pixel positions.
1703 (mode_line_string, marginal_area_string): Change X and Y args to
1704 pointers for returning actual row/column for glyph clicked on.
1705 Simplify and optimize loops.
1706
aef109b7
LT
1707 * dispextern.h (mode_line_string, marginal_area_string):
1708 Update prototypes.
63ccbe21
KS
1709
1710 * keyboard.c (make_lispy_position): New function for generating
1711 mouse click positions from frame and pixel coordinates.
1712 Enhanced to return buffer position and actual row/column for
1713 events outside the text area using updated mode_line_string and
1714 marginal_area_string functions.
1715 Return left-fringe and right-fringe clicks as such, rather than
1716 clicks in text area.
1717 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
1718 pixel_to_glyph_coords, as we never use the results.
1719 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
1720 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
1721 Eliminate unused code in WHEEL_EVENT handling.
1722 (make_lispy_movement): Use make_lispy_position.
1723
1724 * window.c (coordinates_in_window): Remove redundant tests.
1725 Fix returned X pixel value for left-margin.
1726
1727 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
1728 mode_line_string and marginal_area_string parameters.
1729
a64387ee 17302003-11-22 Lars Hansen <larsh@math.ku.dk>
930a9995 1731
d7107586
SM
1732 * w32.c (struct the_group, getgrgid): Add.
1733 * mac.c (struct my_group, getgrgid): Add.
aef109b7 1734
3dbf3426
LT
17352003-11-21 Luc Teirlinck <teirllm@auburn.edu>
1736
1737 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
1738
cae8ddbb 17392003-11-21 Lars Hansen <larsh@math.ku.dk>
ded4064f 1740
d7107586
SM
1741 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
1742 include in call to file name handler. Optionally translate numeric
1743 UID and GID to strings. Update docstring.
1744 (directory_files_internal): Add parameter ID-FORMAT.
1745 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
1746 include in call to file name handler and call to
1747 directory_files_internal. Update Docstring.
1748 (Fdirectory_files): Add dummy parameter in call to
1749 directory_files_internal.
1750 * lisp.h (Qinteger): Add.
1751 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
1752 (Ffile_attributes): Add parameter.
1753 * data.c (Qinteger): Export.
cae8ddbb 1754
2550b848
LT
17552003-11-21 Luc Teirlinck <teirllm@auburn.edu>
1756
3dbf3426 1757 * fns.c (Freverse, Fnreverse): Doc fixes.
2550b848 1758
88380018
KS
17592003-11-19 Kim F. Storm <storm@cua.dk>
1760
1761 * xdisp.c (init_iterator): Initialize it->start to position
1762 before reseating (in case start position is invisible).
1763 (init_to_row_start): Set it->start to row-start.
1764 (redisplay_window): Accept optional_new_start if start position
1765 is invisible (in which case IT_CHARPOS overshoots PT).
1766 (display_line): Setup row->start from it->start (rather than
1767 it->current which is wrong if first char on line is invisible).
1768 When done, reseat it->start to it->current (= start of next row).
1769 (expose_area): Fix exposure of text area when first char (e.g. TAB)
1770 is only partially visible.
1771
1772 * dispextern.h (struct it): New member start.
1773
854c1a59
SM
17742003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
1775
455316e2
SM
1776 * alloc.c (make_float, Fcons): Clear the markbit at init time.
1777 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
1778 of block_index outside of the macro call.
1779 (Fgarbage_collect): Remove null code.
1780
1781 * m/amdx86-64.h: Don't redefine XPNTR.
1782
854c1a59
SM
1783 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
1784 of VALMASK.
1785
1786 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
1787 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
1788 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
1789
1790 * lisp.h (VALMASK): Only define for non-union type.
1791 (MARKBIT): Remove.
1792 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
1793 (XTYPE): Define unconditionally.
1794 (XSETTYPE): Remove one more remnant.
1795 (EQ): Define differently for the union and non-union cases.
1796 (INTMASK): New bit mask.
1797 (struct Lisp_Marker): Move down to prepare for upcoming patch.
1798 (GC_EQ): Delegate to EQ.
1799
1800 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
1801
a0c6ef2d
JD
18022003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1803
1804 * xterm.c (x_window_to_scroll_bar): Move check of display to
1805 where window_id is compared.
1806
859492c4
KS
18072003-11-17 Kim F. Storm <storm@cua.dk>
1808
1809 * dispextern.h (struct it): New member first_vpos.
1810
1811 * xdisp.c (start_display): Set it->first_vpos.
1812 (try_window_id): Use first_vpos to start display in first _text_
1813 line if no reusable lines at start of window with header line.
1814
810f2256
JD
18152003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1816
7c402969 1817 * w32fns.c (XPutPixel):
854c1a59
SM
1818 * w32bdf.c (w32_init_bdf_font):
1819 * sunfns.c (sel_read):
1820 * process.c (Fmake_network_process):
1821 * frame.c (store_frame_param):
1822 * fontset.c (Fset_fontset_font):
1823 * emacs.c (shut_down_emacs):
a64387ee 1824 * ccl.c (ccl_driver): Remove period at end of error message.
7c402969 1825
a32e9bfd
JD
1826 * config.in: Regenerate.
1827
810f2256
JD
1828 * xfns.c (x_window_to_frame, x_any_window_to_frame)
1829 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
1830 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
1831 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
1832 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
1833
1834 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
1835
1836 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
1837 (XTmouse_position, handle_one_xevent): Pass Display* to
1838 x_window_to_scroll_bar.
1839 (x_window_to_scroll_bar): Take a Display* argument.
1840 Check that display for frame is equal to Display* argument.
854c1a59 1841 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
810f2256
JD
1842 x_display_info_for_display instead. Use Display in xev instead
1843 of GDK_DISPLAY.
1844 (x_dispatch_event): Call x_display_info_for_display.
1845 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
1846 (x_connection_closed): Call xg_display_close for GTK.
1847 (x_term_init): Call xg_display_open for additional displays.
1848 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
1849 for GTK.
1850
1851 * xmenu.c (single_menu_item, mouse_position_for_popup)
1852 (x_activate_menubar): Formatting adjustments.
1853
1854 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
1855 adjustments.
1856
1857 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
1858 (xg_display_close, xg_create_default_cursor)
1859 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
1860 handling.
854c1a59
SM
1861 (xg_left_ptr_cursor): Remove.
1862 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
810f2256
JD
1863 cursor here.
1864 (xg_win_to_widget): Take Display* argument, call
1865 gdk_xid_table_lookup_for_display.
1866 (xg_create_frame_widgets, xg_get_file_name, create_menus)
1867 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
1868 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
1869 in FRAME_X_DISPLAY_INFO.
1870 (xg_get_scroll_id_for_window): Take Display* argument.
1871 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
854c1a59 1872 (xg_initialize): Remove xg_left_ptr_cursor.
810f2256
JD
1873
1874 * gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
1875 Display* argument also. Declare xg_display_open,
1876 xg_display_close, xg_create_default_cursor.
1877
0b03cc78
JD
18782003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1879
1880 * xterm.c (x_detect_focus_change): Do not change focus frame for
1881 Enter/LeaveNotify if the current focus frame has explicit focus.
1882
77e688fa
KS
18832003-11-14 Kim F. Storm <storm@cua.dk>
1884
1885 * dispnew.c (update_text_area): Fix redisplay error when hscroll
1886 is active and first glyph is only partially visible.
854c1a59 1887
dd429b03
KH
18882003-11-13 Kenichi Handa <handa@m17n.org>
1889
1890 * xdisp.c (select_frame_for_redisplay): New function.
1891 (redisplay_internal): Record also selected_frame for
1892 unwind_redisplay. Call select_frame_for_redisplay before
1893 redrawing each frame.
1894 (unwind_redisplay): Argument changed to a cons.
1895
6d9266f4
LT
18962003-11-12 Luc Teirlinck <teirllm@auburn.edu>
1897
1898 * fns.c (Fstring_to_multibyte): Doc fix.
1899
80060eb3
KH
19002003-11-11 Kenichi Handa <handa@m17n.org>
1901
1902 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
1903
74305183
JD
19042003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1905
1906 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
1907 program specified positions.
1908
cfda993e
JD
19092003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1910
1911 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
1912
df211069
KH
19132003-11-08 Kenichi Handa <handa@m17n.org>
1914
1915 * Makefile.in (lisp): Add kannada.el.
1916 (shortlisp): Likewise.
1917
4307d534
KH
19182003-11-07 Kenichi Handa <handa@m17n.org>
1919
854c1a59
SM
1920 * coding.c (coding_allocate_composition_data):
1921 Reset coding->composing to COMPOSITION_NO.
4307d534
KH
1922 (coding_restore_composition): Detect invalid composition data.
1923 Give Fstring and Fvector a Lispy integer, not C int.
1924
854c1a59
SM
19252003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
1926
1927 * floatfns.c (Flogb): Don't use VALMASK.
1928
1929 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
1930 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
1931
1932 * lisp.h (XINT): Move the cast to clarify what is going on.
1933 (GCTYPEMASK, XSETTYPE): Remove.
1934 (XGCTYPE): Make it an alias of XTYPE.
1935
d04103a1
JD
19362003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1937
1938 * xterm.c (x_term_init): Fix formatting.
1939
da18b5ac
JD
19402003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1941
1942 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
1943 and xg_did_tearoff.
1944
1945 * gtkutil.c: Remove variable xg_did_tearoff.
1946 (xg_have_tear_offs): New function.
1947 (tearoff_remove): Just decrease xg_detached_menus.
1948 (tearoff_activate): Increase xg_detached_menus and call
1949 tearoff_remove when tearoff is removed.
854c1a59 1950 (xg_keep_popup): Remove function.
da18b5ac
JD
1951 (create_menus): Give add_tearoff_p as argument to recursive
1952 call to create_menus.
1953 (xg_create_widget): Use variables instead of multiple
1954 strcmp. Tell create_menus to create tear off only for
1955 menu bar menus.
1956 (xg_update_menubar): Change title for a detached menu also.
1957 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
1958 of deep_p.
1959 (xg_initialize): Initialize xg_detached_menus, remove
1960 initialization of xg_did_tearoff.
1961
1962 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
1963 xg_have_tear_offs returns non-zero.
1964 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
1965 call to xg_keep_popup.
1966
64d4923e
AC
19672003-11-01 Andrew Choi <akochoi@shaw.ca>
1968
1969 * macterm.c (XTread_socket): Handle menubar selection and grow
1970 window only for mouseDown events.
854c1a59 1971
6cc8bc07
JD
19722003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1973
1974 * xterm.c (x_term_init): For GTK part, increase x_initialized
1975 to check for more than one display. Use error instead of return 0.
1976
043131c4
AC
19772003-10-31 Andrew Choi <akochoi@shaw.ca>
1978
854c1a59 1979 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
043131c4
AC
1980 (copy_dysymtab): Call it.
1981
bdda99a1
LT
19822003-10-31 Luc Teirlinck <teirllm@auburn.edu>
1983
1984 * eval.c (Fdefvaralias): Doc fix.
1985
800f42ff 19862003-10-26 Luc Teirlinck <teirllm@auburn.edu>
0d11571e
LT
1987
1988 * data.c (Fsetplist): Doc fix.
1989
ef35b389
LK
19902003-10-14 Lute Kamstra <lute@gnu.org>
1991
1992 * window.c (Fset_window_fringes): Clarify docstring.
07107abc 1993
ef35b389 19942003-10-14 Kim F. Storm <storm@cua.dk>
854c1a59 1995
07107abc
KS
1996 * window.c (Fset_window_margins): Simplify arg checking.
1997
f7005886
RS
19982003-10-13 Richard M. Stallman <rms@gnu.org>
1999
2000 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
2001 (print_partial_compiled_pattern): Replace assert with a printout.
2002 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
2003
2004 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
2005
2006 * window.c (Fset_window_margins): Allow only integers as args.
2007 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
2008 Doc fixes.
2009
9c0c2af5
LK
20102003-10-13 Lute Kamstra <lute@gnu.org>
2011
2012 * window.c (Fset_window_fringes): Elaborate docstring.
2013
3f080e4e
AC
20142003-10-12 Andrew Choi <akochoi@shaw.ca>
2015
854c1a59 2016 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
a4887377 2017
3f080e4e
AC
2018 * s/darwin.h (GC_MARK_STACK): Define.
2019
0aa513ed
JD
20202003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2021
2022 * window.c (shrink_windows): New function.
2023 (size_window): Call shrink_windows to calculate window sizes when
2024 shrinking frame with more than one window.
2025
6aa8858a
KS
20262003-10-12 Kim F. Storm <storm@cua.dk>
2027
2028 * xdisp.c (compute_fringe_widths): Doc fix.
2029
c2164d91
KH
20302003-10-08 Kenichi Handa <handa@m17n.org>
2031
854c1a59 2032 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
c2164d91 2033
f82ac129
KH
20342003-10-07 Kenichi Handa <handa@m17n.org>
2035
2036 * coding.c (Qcoding_system_define_form): New variable.
2037 (syms_of_coding): Intern and staticpro it.
2038 (Fcheck_coding_system): Try to autoload the definition of
2039 CODING-SYSTEM.
2040
9296c947
LT
20412003-10-05 Luc Teirlinck <teirllm@auburn.edu>
2042
2043 * fns.c (Frequire): Doc fix.
2044
c1f0671a
JD
20452003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2046
3d8c3826
JD
2047 * xfns.c (Fx_send_client_event): New function as a base for
2048 manipulating extended window manager hints.
6dc15d98 2049 (Fx_send_client_event): Remove unused variable s.
3d8c3826 2050
068ae0fd
JD
2051 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
2052 that function is removed.
2053
2054 * xterm.c (x_set_offset): Use move_offset_left/top instead of
2055 x/y_pixels_outer_diff.
2056 (x_check_expected_move): Calculate move_offset_left/top.
2057
2058 * xterm.h (struct x_output): New members: move_offset_top/left.
2059
854c1a59 2060 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
068ae0fd
JD
2061 call x_set_offset directly.
2062
2063 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
2064
96f09305
JD
2065 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
2066
2067 * xterm.c (x_delete_display): Free font names and font_encoder
2068 in dpyinfo->font_table.
2069
854c1a59
SM
2070 * xfns.c (Fx_close_connection): Only call XFreeFont here.
2071 Move xfree of font names to x_delete_display.
96f09305 2072
c1f0671a
JD
2073 * xterm.h (struct x_display_info): New member, wm_type.
2074 (struct x_output): New members, expected_top/left and
2075 check_expected_move.
2076
2077 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
2078 is received.
854c1a59
SM
2079 (handle_one_xevent): Rename x_check_expected_move from
2080 x_check_fullscreen_move.
c1f0671a
JD
2081 (x_set_offset): Only add WM decoration sizes to modified_top/left
2082 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
854c1a59 2083 (x_check_expected_move): Rename from x_check_fullscreen_move.
c1f0671a
JD
2084 Removed fullscreen specific code. Use check_expected_move,
2085 expected_left/top instead. Also, set wm_type.
2086 (x_term_init): Initialize wm_type to unknown.
2087
2088 * frame.c (x_fullscreen_move): Remove addition of WM decoration
2089 sizes to move_x/y.
2090
be2fdba9
KH
20912003-10-03 Kenichi Handa <handa@m17n.org>
2092
2093 * macterm.c (x_load_font): Clear all members of FONTP before start
2094 filling them.
2095
20962003-10-02 Kenichi Handa <handa@m17n.org>
2097
2098 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
2099 before calling find_ccl_program_func. Call find_ccl_program_func
2100 only when fontp->font_encoder is not NULL.
2101
2102 * xterm.c (x_load_font): Clear all members of FONTP before start
2103 filling them.
2104
26a6e439
JPW
21052003-10-03 John Paul Wallington <jpw@gnu.org>
2106
2107 * keymap.c (map_keymap): Don't abort when binding is a vector.
2108
0d4c2dc2
JR
21092003-10-02 Jason Rumney <jasonr@gnu.org>
2110
854c1a59
SM
2111 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
2112 Sync dependencies with Makefile.in.
a63cf46f
JR
2113 (alloca.o): Remove.
2114
0d4c2dc2
JR
2115 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
2116 filling them.
2117
2118 * w32bdf.c (w32_load_bdf_font): Likewise.
2119
ab8f7d5c
RS
21202003-09-30 Richard M. Stallman <rms@gnu.org>
2121
2122 * term.c (set_tty_color_mode): Calculate current_mode_spec
2123 regardless of value of VAL.
2124
854c1a59 2125 * intervals.c (graft_intervals_into_buffer):
ab8f7d5c
RS
2126 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
2127 Handle over_used when splitting UNDER.
2128
a64387ee 21292003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ab8f7d5c
RS
2130
2131 * regex.c (regex_compile): Free the stack when returning from function.
2132
3413f972
KH
21332003-09-28 Kenichi Handa <handa@m17n.org>
2134
2135 * fontset.c (Finternal_char_font): Change return value to
2136 cons (FONT-NAME . GLYPH-CODE).
2137
40409f05
EZ
21382003-09-28 Eli Zaretskii <eliz@elta.co.il>
2139
2140 * term.c (tty_setup_colors): Treat any negative argument as -1.
2141
f98ddc99
KH
21422003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
2143
2144 * process.c (send_process): Delete unused temp_buf.
2145
66c8f1a8
DL
21462003-09-26 Dave Love <fx@gnu.org>
2147
2148 * xterm.c (x_bitmap_mask): Declare.
2149
ca716c26
DL
21502003-09-25 Dave Love <fx@gnu.org>
2151
2152 * Makefile.in (fns.o): Depend on md5.h.
2153
fbe57420
KS
21542003-09-25 Kim F. Storm <storm@cua.dk>
2155
2156 * window.c (set_window_buffer): Fix redisplay problems when
2157 switching between buffers with different display margin widths.
2158
ef6ae4ff
KS
21592003-09-23 Kim F. Storm <storm@cua.dk>
2160
2161 * process.c (set_socket_option): Fix :bindtodevice option.
2162 (Fset_network_process_option): Update process contact list when
2163 setting option succeeds.
2164 (Fmake_network_process): Doc fix.
2165
68e03c1c
DL
21662003-09-23 Dave Love <fx@gnu.org>
2167
7146d1c1 2168 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
68e03c1c 2169
2f809aae
EZ
21702003-09-22 Eli Zaretskii <eliz@elta.co.il>
2171
2172 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
2173 color mode is an integer number (it could be -1).
2174
8fe7d8c8
RS
21752003-09-22 Richard M. Stallman <rms@gnu.org>
2176
2177 * intervals.c (graft_intervals_into_buffer): Correct the main loop
2178 in the case where OVER is longer than UNDER.
2179
2f71b5ea
MY
21802003-09-22 Masatake YAMATO <jet@gyve.org>
2181
7146d1c1 2182 * window.c (Fset_window_scroll_bars): Validate the value of
2f71b5ea 2183 `vertical_type'.
7146d1c1 2184
0c4da023
KS
21852003-09-21 Kim F. Storm <storm@cua.dk>
2186
2187 * frame.c (Vdefault_frame_scroll_bars): New variable.
2188 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
2189 (syms_of_frame): DEFVAR_LISP it, and initialize according to
2190 window-system default scroll bar position.
2191
b648413b
KS
2192 * window.c (Fwindow_scroll_bars): Doc fix.
2193
8f5b9e34
JD
21942003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2195
854c1a59 2196 * xterm.c (x_set_offset): Take window manager decorations into account.
8f5b9e34 2197
b0f23edf
RS
21982003-09-19 Richard M. Stallman <rms@gnu.org>
2199
2200 * atimer.h: Don't include lisp.h.
2201 (P_): Define it here (as well as elsewhere).
2202
2203 * print.c (Fprin1_to_string): Move the PRINTPREPARE
2204 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
2205
2206 * data.c (Fvariable_binding_locus): New function.
2207 (syms_of_data): defsubr it.
2208 (Flocal_variable_p): Delete duplicate call to indirect_variable.
2209
e1283999
DL
22102003-09-18 Dave Love <fx@gnu.org>
2211
ad5f3636
DL
2212 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
2213
e1283999
DL
2214 * process.c (Fnetwork_interface_info): Fix type error.
2215 (Fnetwork_interface_list): Doc fix.
2216 (read_process_output, read_process_output): Delete unused var.
2217
b8c7fd71
KS
22182003-09-17 Kim F. Storm <storm@cua.dk>
2219
2220 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
2221 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
2222 (Fnetwork_interface_info): Check that ifreq struct has required
2223 fields before accessing them; this requires that those fields are
2224 defined as macros, which may be too restrictive on some platforms,
2225 but it is better than failing on other platforms.
2226 (syms_of_process): Only defsubr above fns when included.
2227
11e0a411
DL
22282003-09-17 Dave Love <fx@gnu.org>
2229
2230 * unexalpha.c: Don't include varargs.h.
2231
e9c50801
KS
22322003-09-17 Kim F. Storm <storm@cua.dk>
2233
2234 * process.c (Fset_process_sentinel): Add sentinel to childp plist
2235 for network process.
2236 (socket_options): Add `:' prefix to option names. Add optbit field.
2237 (set_socket_option): Remove no_error arg and special handling of s < 0.
2238 Return 1<<optbit for known option, 0 for unknown.
2239 Do not interpret 0 as false for boolean option (only nil).
2240 Pass failed option and value to report_file_error.
7146d1c1 2241 (Fset_network_process_options): Replace by Fset_network_process_option.
e9c50801
KS
2242 (Fset_network_process_option): New function to set just one option.
2243 (Fmake_network_process): Allow :coding arg to be a cons.
2244 Allow :server arg to be an integer specifying backlog size.
2245 Remove :options arg, and allow options to be specified directly
2246 as :KEY, VALUE pairs. Parse these options before binding socket.
2247 As before, :reuseaddr t is default for a server process, but this
2248 can now be disabled by specifying :reuseaddr nil.
2249 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
2250 (init_process): Availability of network options is now checked with
2251 simpler syntax (featurep 'make-network-process :OPTION); use loop to
2252 setup features.
2253 (syms_of_process): Fix defsubr's for the replaced functions.
2254
a0fc3644
DL
22552003-09-16 Dave Love <fx@gnu.org>
2256
2257 * Makefile.in: Depend on coding.h.
2258
6df2a645
KS
22592003-09-14 Kim F. Storm <storm@cua.dk>
2260
2261 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
2262 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
2263 (syms_of_process): Defsubr them.
2264
2265 * config.in: Regenerate.
7146d1c1
SM
2266
22672003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
2268
2269 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
2270 * m/news-r6.h (XUNMARK): Remove.
2271 * m/mips.h (XUNMARK): Remove.
2272 * m/mips-siemens.h (XUNMARK): Remove.
2273 * m/iris4d.h (XUNMARK): Remove.
2274 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
2275
0930c1a1
SM
22762003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
2277
31003b9e
SM
2278 * lisp.h (VALBITS): Don't remove 1 for the markbit.
2279 (union Lisp_Object): Use unsigned int for types. Remove markbit.
2280 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
2281 (XTYPE): Use unsigned right-shift.
2282 (XMARKBIT, XMARK, XUNMARK): Remove.
2283
0930c1a1
SM
2284 * alloc.c (init_intervals, init_symbol, init_marker):
2285 Don't preallocate anything.
2286 (Fgarbage_collect, mark_object): Ignore the markbit.
2287
2288 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
2289
19bb0fcd 22902003-09-08 Lute Kamstra <lute@gnu.org>
5df034de
LK
2291
2292 * xdisp.c (pint2hrstr): New function.
2293 (decode_mode_spec): Add `%i' and `%I' specs.
2294 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
2295 for `mode-line-format'.
2296
03bb6a06
AS
22972003-09-07 Andreas Schwab <schwab@suse.de>
2298
2299 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
2300 avoid warning.
2301
2063d89c
EZ
23022003-09-07 Eli Zaretskii <eliz@elta.co.il>
2303
0930c1a1 2304 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
2063d89c 2305
ed159bbf
KS
23062003-09-03 Kim F. Storm <storm@cua.dk>
2307
2308 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
2309 change (superseded by 2002-08-30 change); the default blink-off
2310 cursor is now again "no cursor".
2311
fe64a394
JR
23122003-09-01 Jason Rumney <jasonr@gnu.org>
2313
2314 * makefile.w32-in (alloca.o): Remove.
2315 (coding.o): Depend on intervals.h
2316 (emacs.o, bytecode.o): Depend on window.h
2317
c0175e24
DL
23182003-09-01 Dave Love <fx@gnu.org>
2319
2320 * Makefile.in (alloca.o): Remove commands.
2321 (coding.o): Depend on intervals.h composite.h window.h.
2322 (emacs.o): Depend on window.h keyboard.h keymap.h.
2323 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
2324 (bytecode.o): Depend on window.h.
2325
a24d4cb2
JR
23262003-08-31 Jason Rumney <jasonr@gnu.org>
2327
4bc2315e
JR
2328 * w32term.c (w32_per_char_metric): Allow cached metrics to be
2329 returned even when font_type is unknown.
2330
a24d4cb2
JR
2331 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
2332
9d35adc7
JD
23332003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2334
2335 * xterm.c (x_term_init): Initialize new fields in x_display_info.
2336
2337 * xterm.h (struct x_display_info): Add red/green/blue_bits and
2338 *_offset.
2339
2340 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
2341 calculate pixel value.
2342
6f68b035
GM
23432003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
2344
0930c1a1
SM
2345 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
2346 Don't tell redisplay display is accurate when it's actually been
2347 paused for pending input.
6f68b035 2348
4828b4d7
RS
23492003-08-29 Richard M. Stallman <rms@gnu.org>
2350
2351 * dispnew.c (adjust_glyph_matrix): Call window_box
2352 whenever W is nonzero.
2353
2354 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
2355 (Fkill_local_variable, Fmake_variable_frame_local)
0930c1a1 2356 (Flocal_variable_p, Flocal_variable_if_set_p):
4828b4d7
RS
2357 Use indirect_variable to trace thru variable aliases.
2358
2359 * config.in: Updated.
2360
2361 * callint.c (Fcall_interactively): Save and restore
2362 Vthis_command, Vthis_original_command, real_this_command,
2363 and current_kboard->Vlast_command.
2364
2365 * abbrev.c (Fexpand_abbrev): Insert before deleting.
2366
e019878d
GM
23672003-08-29 Gerd Moellmann <gerd@gnu.org>
2368
2369 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
2370
85478bc6
KH
23712003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
2372
0930c1a1 2373 * coding.c (decode_coding_iso2022): Initialize local variable c2.
85478bc6
KH
2374 (decode_coding_sjis_big5): Likewise.
2375
07ce82d3
JR
23762003-08-27 Jason Rumney <jasonr@gnu.org>
2377
d3703de3
JR
2378 * w32.c (sys_pipe): Protect against file descriptor overflow.
2379
ee4a01d1
JR
2380 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
2381
07ce82d3
JR
2382 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
2383
a64387ee 23842003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
72d19c66
LK
2385
2386 * xfns.c (Vgtk_version_string): New variable.
2387 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
2388
5459e42a
EZ
23892003-08-24 Eli Zaretskii <eliz@elta.co.il>
2390
0930c1a1 2391 * term.c (term_init): Remove `const' from buffer_size's declaration.
3d8714e7 2392
5459e42a
EZ
2393 * Makefile.in (msdos.o): Depend on intervals.h.
2394
0930c1a1 2395 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
5459e42a 2396
231d6cfb
JD
23972003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2398
2399 * xterm.h (struct x_display_info): New fields: client_leader_window
2400 and Xatom_wm_client_leader.
2401
2402 * xterm.c (x_initialize): Move call to x_session_initialize to ...
2403 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
2404
2405 * xsmfns.c (create_client_leader_window): New function.
2406 (x_session_initialize): Call create_client_leader_window, take
2407 dpyinfo as argument.
2408
2409 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
2410
2411 * Makefile.in (xsmfns.o): Add more depenedencies.
2412
afa88464
DL
24132003-08-21 Dave Love <fx@gnu.org>
2414
2415 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
2416
f730033e
KH
24172003-08-21 Kenichi Handa <handa@m17n.org>
2418
2419 * term.c (term_init): Fix previous change; don't rely on the
2420 length of `buffer' if TERMINFO is defined.
2421
6dca786c
DL
24222003-08-20 Dave Love <fx@gnu.org>
2423
2424 * atimer.h: Include lisp.h.
2425
2426 * lisp.h (EMACS_LISP_H): New.
2427 (popup_activated_flag): Don't declare.
2428
2429 * alloca.c: Some merging with gnulib. Change logic and doc
2430 concerning (x)malloc/(x)free -- no longer Emacs-specific.
2431 [DO_BLOCK_INPUT]: Don't include lisp.h.
2432 (xmalloc, xfree): Declare.
2433 (malloc): Don't declare.
2434
0930c1a1 2435 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
6dca786c
DL
2436 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
2437 atimer.h, blockinput.h.
2438
2439 * alloc.c (lisp_align_malloc): Change type of `aligned'.
2440
2441 * alloca.s: Removed.
2442
3a06a6d9
RS
24432003-08-19 Gerd Moellmann <gerd@gnu.org>
2444
2445 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
2446 use -lncurses.
2447
2448 * term.c (term_init): Use a buffer of size 4096 for tgetent since
2449 FreeBSD returns something longer than 2044. Abort if the end of
2450 the buffer is overwritten.
2451
27eeee55
MB
24522003-08-19 Miles Bader <miles@gnu.org>
2453
2454 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
2455
2f297815
GM
24562003-08-19 Gerd Moellmann <gerd@gnu.org>
2457
f4446bbf
GM
2458 * alloc.c (lisp_align_malloc): Check for memory full when
2459 allocating ablocks, which also avoids freeing a pointer into an
2460 ablocks structure.
2461
2462 * puresize.h (BASE_PURESIZE): Increase to 1100000.
2463
0930c1a1 2464 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
2f297815 2465
0e7d7aae
RS
24662003-08-16 Richard M. Stallman <rms@gnu.org>
2467
2468 * editfns.c (Fencode_time): Doc fix.
2469
24702003-08-16 David Ponce <david@dponce.com>
2471
2472 * fileio.c (Fwrite_region): Fix conditional expression to issue
2473 the right message.
2474
24752003-08-16 Juri Linkov <juri@jurta.org> (tiny change)
2476
2477 * syntax.c (Fforward_word): Argument changed to optional.
0930c1a1 2478 Set default value to 1.
0e7d7aae 2479
5d551295
KH
24802003-08-15 Kenichi Handa <handa@m17n.org>
2481
2482 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
2483 what autoscaled.
2484 (best_matching_font): Once we find a better scalable font, set
2485 non_scalable_has_exact_height_p to 1.
2486 (try_font_list): Call try_alternative_families to try any family
2487 with the given registry.
2488
1661e56b
AS
24892003-08-09 Andreas Schwab <schwab@suse.de>
2490
f29181dc
AS
2491 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
2492
1661e56b
AS
2493 * print.c (print_string): Fix printing of multibyte string with
2494 nontrivial printcharfun.
2495
465aa50a
JD
24962003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2497
2498 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
2499
2500 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
2501
e430e5ba
KH
25022003-07-31 Kenichi Handa <handa@m17n.org>
2503
2504 * process.c (read_process_output): Return the actually read bytes
2505 instead of the result of decoding.
2506
97e7188e
KH
25072003-07-31 Kenichi Handa <handa@m17n.org>
2508
2509 * xterm.h (struct x_bitmap_record): New member have_mask.
2510
2511 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
2512 to 0.
2513 (x_create_bitmap_from_file): Likewise.
2514 (x_destroy_bitmap): Check have_mask member before freeing a mask.
2515 (x_destroy_all_bitmaps): Likewise.
2516 (x_create_bitmap_mask): Set have_mask member to 1.
2517
b53094d6
RS
25182003-07-30 Richard M. Stallman <rms@gnu.org>
2519
2520 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
2521
631f2082
JD
25222003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2523
2524 * gtkutil.c (xg_mark_data): Update calls to mark_object.
2525
c855f2ca
RS
25262003-07-29 Richard M. Stallman <rms@gnu.org>
2527
2528 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
2529 Conditionalize XIM code on HAVE_XIM.
2530
2531 * fns.c (Fclear_string): New function.
2532 (syms_of_fns): defsubr it.
2533
17e6d491
KH
25342003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
2535
0930c1a1 2536 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
17e6d491 2537
29ea8ae9
SM
25382003-07-22 Stefan Monnier <monnier@cs.yale.edu>
2539
2540 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
2541
2542 * buffer.c (delete_all_overlays): New function.
2543 * buffer.h (delete_all_overlays): Declare.
2544 * coding.c (run_pre_post_conversion_on_str):
2545 * print.c (temp_output_buffer_setup):
2546 * fileio.c (Finsert_file_contents):
2547 * minibuf.c (get_minibuffer): Use it.
2548
1dd7ccf2
AC
25492003-07-22 Andrew Choi <akochoi@shaw.ca>
2550
2551 * unexmacosx.c (unexec_regions_sort_compare):
2552 (unexec_regions_merge): New functions. Sort and merge unexec
2553 regions before dumping them.
2554
f57bd967
DL
25552003-07-22 Dave Love <fx@gnu.org>
2556
2557 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
2558
7cdee936
SM
25592003-07-21 Stefan Monnier <monnier@cs.yale.edu>
2560
2561 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
2562 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
2563 MARKBIT as the gcmarkbit for strings.
2564
e50886d3
RS
25652003-07-21 Richard M. Stallman <rms@gnu.org>
2566
2567 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
2568
29ea8ae9 2569 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
e50886d3
RS
2570 (syms_of_fns): Corresponding change.
2571
2572 * alloc.c (syms_of_alloc): Doc fixes.
2573
25742003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
2575
2576 * s/netbsd.h: Use -Wl syntax.
2577
fdc39b59
RS
25782003-07-17 Richard M. Stallman <rms@gnu.org>
2579
2580 * xterm.c (xim_initialize): Redo 6/24 change.
2581
9c53385f
SM
25822003-07-15 Stefan Monnier <monnier@cs.yale.edu>
2583
2584 * buffer.c (copy_overlays): Use EMACS_INT for positions.
2585 (Fswitch_to_buffer): Don't signal an error when switching to the same
2586 buffer in a dedicated window.
2587
2588 * alloc.c: Use bitmaps for cons, as was done for floats.
2589 (init_float, init_cons): Let the normal code allocate the first block.
2590 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
2591 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
2592 New macros.
2593 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
2594 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
2595 (live_cons_p): Check the pointer is not past the `conses' array.
2596 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
2597 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
2598 (survives_gc_p): Use CONS_MARKED_P and simplify.
2599 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
2600
dde13196
PE
26012003-07-13 Paul Eggert <eggert@twinsun.com>
2602
2603 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
2604 puts it into BSS instead, at least on Solaris 8 and 9.
2605 This is a valid optimization, and it may occur on other platforms,
2606 so Emacs should not assume that initializing a static variable to
2607 zero puts it into data.
2608 * alloc.c (pure, staticvec):
2609 Initialize these arrays to nonzero, so that they're not
2610 put into BSS by that optimization.
2611
a801bc34
SM
26122003-07-13 Stefan Monnier <monnier@cs.yale.edu>
2613
2614 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
2615 (lisp_align_malloc): Use posix_memalign is available.
2616 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
2617 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
2618 for consistency. Update users.
2619
0c8b2afa
RS
26202003-07-13 Richard M. Stallman <rms@gnu.org>
2621
2622 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
2623
668c2ab0
JB
26242003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
2625
2626 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
2627 and use the Gtk+ function gtk_window_icon_from_file if available.
2628
2629 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
2630 handle mask of bitmaps.
2631 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
2632 mask property.
2633 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
2634
2635 * xterm.h (xg_set_icon): New function.
2636
800bebe3
RS
26372003-07-12 Paul Eggert <eggert@twinsun.com>
2638
2639 * unexelf.c (unexec): Consider a section to precede the .bss
2640 section if its addresses overlap that of .bss.
2641
69e38995
RS
26422003-07-12 Richard M. Stallman <rms@gnu.org>
2643
2644 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
2645
2646 * config.in (HAVE_CRTIN): Add #undef.
2647 (INLINE): Really inline only if OPTIMIZE is defined.
2648
2649 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
2650 END_FILES_1.
2651 (START_FILES_1, END_FILES_1): New macros (conditional).
a801bc34 2652 (LD_SWITCH_SYSTEM_TEMACS): Define.
69e38995
RS
2653
2654 * s/openbsd.h: Don't include bsd4-3.h.
a801bc34
SM
2655 (TERMINFO): Define.
2656 (LIBS_TERMCAP): Define.
2657 (LD_SWITCH_SYSTEM): Define (two definitions).
69e38995
RS
2658
2659 * xfns.c: Include libpng/png.h instead of png.h.
2660
f1d0c238
AS
26612003-07-11 Andreas Schwab <schwab@suse.de>
2662
2663 * buffer.c (modify_overlay): Update prototype.
2664 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
2665 Likewise.
2666
5f6bf5fe
SM
26672003-07-09 Stefan Monnier <monnier@cs.yale.edu>
2668
2669 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
2670 (struct interval): Move to intervals.h.
2671 (struct Lisp_Marker): Use EMACS_INT for position info.
2672 (forward_point): Remove prototype of defunct function.
2673 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
2674 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
2675 (syms_of_textprop, set_text_properties): Remove prototypes that are
2676 already in intervals.h.
2677
2678 * intervals.h (struct interval): Move from lisp.h.
2679 Use EMACS_INT for position and size info.
2680
2681 * coding.c: Include intervals.h for Fset_text_properties.
2682
2683 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
2684 position and length information.
2685
2765b457
SM
26862003-07-09 Stefan Monnier <monnier@cs.yale.edu>
2687
2688 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
2689 position and length information.
2690
2410d73a
SM
26912003-07-09 Stefan Monnier <monnier@cs.yale.edu>
2692
2693 Change overlays_after and overlays_before so the overlays themselves
2694 are linked into lists, rather than using cons cells. After all each
2695 Lisp_Misc already occupies 5 words, so we can add a `next' field to
2696 Lisp_Overlay for free and save up one cons cell per overlay (not
2697 to mention one indirection when traversing the list of overlay).
2698
2699 * lisp.h (struct Lisp_Overlay): New field `next'.
2700
2701 * buffer.h (struct buffer): Change overlays_before and overlays_after
2702 from Lisp lists of overlays to pointers to overlays.
2703
2704 * buffer.c (overlay_strings, recenter_overlay_lists):
2705 Fix typo in eassert in last commit.
2706 (unchain_overlay): New function.
2707 (add_overlay_mod_hooklist): Use AREF.
2708 (copy_overlays, reset_buffer, overlays_at, overlays_in)
2709 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
2710 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
2711 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
2712 (report_overlay_modification, evaporate_overlays, init_buffer_once):
2713 Adjust to new type of overlays_(before|after).
2714
2715 * alloc.c (mark_object): Mark the new `next' field of overlays.
2716 (mark_buffer): Manually mark the overlays_(after|before) fields.
2717
2718 * coding.c (run_pre_post_conversion_on_str):
2719 * editfns.c (overlays_around):
2720 * xdisp.c (load_overlay_strings):
2721 * fileio.c (Finsert_file_contents):
2722 * indent.c (current_column):
2723 * insdel.c (signal_before_change, signal_after_change):
2724 * intervals.c (set_point_both):
2725 * print.c (temp_output_buffer_setup): Use new type for
2726 overlays_(before|after).
2727
04812929
SM
27282003-07-08 Stefan Monnier <monnier@cs.yale.edu>
2729
2730 * buffer.c (report_overlay_modification): Don't run hooks while
2731 traversing the list of overlays.
2732
2733 * buffer.h (struct buffer): Use an int for overlay_center.
2734 (overlays_at, evaporate_overlays, recenter_overlay_lists)
2735 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
2736
2737 * buffer.c (reset_buffer, recenter_overlay_lists)
2738 (adjust_overlays_for_insert, adjust_overlays_for_delete)
2739 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
2740 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
2741 (overlays_at, evaporate_overlays, recenter_overlay_lists)
2742 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
2743
2744 * xdisp.c (fast_find_position): Remove unused var.
2745
2746 * cmds.c (Qexpand_abbrev): New sym.
2747 (syms_of_cmds): Initialize it.
2748 (internal_self_insert): Use it to call expand-abbrev.
2749
2e7ecf15
KS
27502003-07-09 Kim F. Storm <storm@cua.dk>
2751
2752 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if emacs
2753 was configured with --without-xim.
42f81f64 2754 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
2e7ecf15 2755
c6de56a0
RS
27562003-07-07 Richard M. Stallman <rms@gnu.org>
2757
2758 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
2759
2760 * alloc.c (Fgarbage_collect): Doc fix.
2761
b93fb365
KH
27622003-07-07 Nozomu Ando <nand@mac.com> (tiny change)
2763
2764 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
2765
bfe1a3f7
SM
27662003-07-06 Stefan Monnier <monnier@cs.yale.edu>
2767
04812929
SM
2768 * minibuf.c (read_minibuf): UNGCPRO before returning.
2769 (Ftry_completion, Fall_completions): Doc fix.
2770
bfe1a3f7
SM
2771 * alloc.c (live_float_p): Check that p is not past the `floats' array,
2772 now that `floats' is not the last element of the struct any more.
2773
ee79d1aa
JR
27742003-07-06 Jason Rumney <jasonr@gnu.org>
2775
2776 * w32term.h (ClipboardSequence_Proc): New type.
2777
2778 * w32fns.c (clipboard_sequence_fn): New variable.
2779 (globals_of_w32fns): Initialize it.
2780
2781 * w32select.c (last_clipboard_sequence_number): New variable.
2782 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
2783 number if possible.
2784
49723c04
SM
27852003-07-06 Stefan Monnier <monnier@cs.yale.edu>
2786
4698665f
SM
2787 * m/amdx86-64.h (MARKBIT):
2788 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
2789 MARKBIT and ARRAY_MARK_FLAG any more.
2790
2791 * m/hp800.h (XSETMARKBIT):
2792 * m/sr2k.h (XSETMARKBIT):
2793 * lisp.h (XSETMARKBIT): Remove unused macro.
2794
49723c04
SM
2795 * lisp.h (mark_object): Change prototype.
2796
2797 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
2798 (last_marked): Change accordingly.
2799 (mark_interval, mark_maybe_object, mark_maybe_pointer)
2800 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
2801 (mark_buffer): Update calls to mark_object.
2802
2803 * bytecode.c (mark_byte_stack):
2804 * fns.c (sweep_weak_table):
2805 * keyboard.c (mark_kboards): Update calls to mark_object.
2806
1d660eca
JR
28072003-07-06 Jason Rumney <jasonr@gnu.org>
2808
2809 * alloc.c (struct ablock): Only include padding when there is some.
2810
618b5ae4
SM
28112003-07-04 Stefan Monnier <monnier@cs.yale.edu>
2812
2813 * alloc.c (ALIGN): Add casts to simplify usage.
2814 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
2815 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
2816 (struct ablock, struct ablocks): New types.
2817 (free_ablock): New global var.
2818 (lisp_align_malloc, lisp_align_free): New functions.
2819 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
2820 (struct float_block): Reorder and add gcmarkbits.
2821 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
2822 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
2823 (init_float, make_float): Use lisp_align_malloc.
2824 (free_float, live_float_p): Don't use `type' any more.
2825 (make_float): Use FLOAT_UNMARK to access to mark bit.
2826 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
2827 Use FLOAT_MARKED_P to access the mark bit.
2828 (pure_alloc): Simplify use of ALIGN.
2829 (mark_object): Use FLOAT_MARK to access the mark bit.
2830 (gc_sweep): Use new macros to access the float's mark bit.
2831 (init_alloc_once): Init free_ablock.
2832
2833 * lisp.h (struct Lisp_Float): Remove unused field `type'.
2834
3ef06d12
SM
28352003-06-27 Stefan Monnier <monnier@cs.yale.edu>
2836
2837 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
2838 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
2839 (allocate_buffer): Move.
2840 (string_bytes): Don't mask markbit of `size_byte'.
2841 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
2842 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
2843 Use the `size' field of buffers (rather than the `name' field) for
2844 the mark bit, as is done for all other vectorlike objects.
2845 Use the new macros to access the mark bit of vectorlike objects.
2846
e81043aa
RS
28472003-06-26 Richard M. Stallman <rms@gnu.org>
2848
2849 * puresize.h (BASE_PURESIZE): Increment base size.
2850
2851 * xdisp.c (fast_find_position): Enable Gerd's new definition.
2852
2853 * xterm.c (xim_initialize): Undo previous change.
2854
2d0834cc
SM
28552003-06-26 Stefan Monnier <monnier@cs.yale.edu>
2856
2857 * alloc.c (survives_gc_p): Simplify.
2858
2859 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
2860
2861 * window.c (Fset_window_dedicated_p): Simplify.
2862 (display_buffer_1): Don't raise the win from which minibuf was entered.
2863 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
2864 (Fminibuffer_selected_window): Simplify.
2865
2866 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
2867
2868 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
2869 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
2870
2871 * insdel.c (check_markers, adjust_markers_for_delete)
2872 (adjust_markers_for_insert, adjust_markers_for_replace)
2873 (prepare_to_modify_buffer, RESTORE_VALUE):
2874 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
2875 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
2876 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
2877 * alloc.c (Fmake_marker, free_marker, gc_sweep):
2878 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
2879 * editfns.c (save_excursion_restore, transpose_markers):
2880 * window.c (delete_window):
2881 * xdisp.c (message_dolog): Update for new types.
2882
d54ae3d8
JD
28832003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2884
a5f696ac
JD
2885 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
2886 (realize_default_face): Use default_face_done_p for the force_p
2d0834cc 2887 argument to set_lface_from_font_name. Set default_face_done_p to one.
a5f696ac
JD
2888
2889 * frame.c (make_frame): Initialize default_face_done_p.
2890
2891 * frame.h (struct frame): Add default_face_done_p.
2892
d54ae3d8
JD
2893 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
2894 will be defined.
2895
2336fe58
SM
28962003-06-25 Stefan Monnier <monnier@cs.yale.edu>
2897
2898 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
2899 Initialize the new field `gcmarkbit'.
2900 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
2901 (mark_interval_tree): Don't mark the tree separately from the nodes.
2902 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
2903 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
2904 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
2905
2906 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
2907 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
2908 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
2909 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
2910 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
2911
bcea31c2
DL
29122003-06-24 Dave Love <fx@gnu.org>
2913
2914 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
2915
2916 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
2917 from gnulib.
2918
2601f59e
RS
29192003-06-21 Richard M. Stallman <rms@gnu.org>
2920
2921 * fileio.c (Fwrite_region): Alternate messages
2922 for append and partial write.
2923
2924 * keyboard.c (read_key_sequence): When converting upcase fn key to
2925 downcase, update fkey and keytran so `backspace' gets translated.
2926
2927 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
2928
2929 * process.c (wait_reading_process_input): Don't signal SIGIO
2930 in batch mode.
2931
b5d2c621
KH
29322003-06-17 Kenichi Handa <handa@m17n.org>
2933
2934 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
2935 composite.h.
2936
2937 * xselect.c: Don't include charset.h, coding.h, composite.h.
2938 (Qforeign_selection): New variable.
2939 (syms_of_xselect): Intern and static it.
2940 (selection_data_to_lisp_data): Return a unibyte string made from
2941 data with `foreign-selection' text property.
2942
6793bc63
SM
29432003-06-15 Stefan Monnier <monnier@cs.yale.edu>
2944
2945 * termhooks.h (EVENT_INIT): New macro.
2946
2947 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
2948
2949 * alloc.c (mark_kboards): Move to keyboard.c.
2950
2951 * keyboard.c (record_asynch_buffer_change, read_avail_input):
2952 * xterm.c (x_dispatch_event):
2953 * xmenu.c (find_and_call_menu_selection):
2954 * xdisp.c (handle_tool_bar_click):
2955 * w32menu.c (menubar_selection_callback):
2956 * sysdep.c (kbd_input_ast, read_input_waiting):
2957 * msdos.c (dos_rawgetc):
2958 * macterm.c (mac_check_for_quit_char):
2959 * macmenu.c (menubar_selection_callback):
2960 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
2961 data to kbd_buffer_store_event.
2962
b3ea810c
KS
29632003-06-15 Kim F. Storm <storm@cua.dk>
2964
2965 * xdisp.c (x_fix_overlapping_area): Always use area relative X
6793bc63 2966 to fix redisplay problem with tall characters (such as \e,AC\e(B).
b3ea810c 2967
b8f75eda
KG
29682003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
2969
2970 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
2971
ba92ce48
KH
29722003-06-12 Kenichi Handa <handa@m17n.org>
2973
2974 * fileio.c (Fwrite_region): Save and restore restriction.
2975
b80263be
DL
29762003-06-12 Dave Love <fx@gnu.org>
2977
2978 * alloca.c (alloca): Declare arg as size_t.
2979
6793bc63
SM
2980 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
2981 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
b80263be 2982
b23c0a83
DL
29832003-06-11 Dave Love <fx@gnu.org>
2984
2985 * search.c (shrink_regexp_cache): Use xrealloc.
2986 (syms_of_search): Use xmalloc.
2987
700e47c2
KS
29882003-06-10 Kim F. Storm <storm@cua.dk>
2989
2990 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
2991 Adjust phys_cursor.x to be relative to window box, rather than
2992 text area before checking -- to ensure cursor is redrawn when
2993 exposing window.
2994 Note: This also fixes a similar (older) bug if display margins
2995 are present.
2996
f11aa0b2
KH
29972003-06-06 Kenichi Handa <handa@m17n.org>
2998
2999 * coding.c (encoding_buffer_size): If coding->type is
3000 coding_type_ccl, double magnification on CRLF encoding.
3001
3d143690
JR
30022003-06-06 Jason Rumney <jasonr@gnu.org>
3003
3004 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
3005 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
3006
3007 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
3008 Mac too.
3009
f16205ca
DL
30102003-06-05 Dave Love <fx@gnu.org>
3011
b23c0a83
DL
3012 * strftime.c: Merge changes from gnulib.
3013
f16205ca
DL
3014 * mktime.c (__mktime_internal): Merge changes from gnulib
3015 involving year 69 and dst2.
3016
3017 Changes to merge with gnulib version and be consistent with the
3018 autoconf test:
3019
6793bc63
SM
3020 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
3021 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
f16205ca
DL
3022 [HAVE_LOCALE_H]: Include locale.h.
3023 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
3024
9b87a0bc
KS
30252003-06-05 Kim F. Storm <storm@cua.dk>
3026
3027 * window.c (coordinates_in_window): Convert X and Y to window
3028 relative coordinates inside mode-line and header-line parts.
3029 Convert X and Y to margin area relative coordinates inside left
3030 and right display margin parts.
3031
5a8a15ec
JR
30322003-06-05 Jason Rumney <jasonr@gnu.org>
3033
3034 * w32fns.c (add_system_logical_colors_to_map): New function.
3035 (Fx_open_connection): Use it.
3036
01ed8ff1
SM
30372003-06-04 Stefan Monnier <monnier@cs.yale.edu>
3038
3039 * process.c (allocate_pty): Revert part of the previous patch.
3040 (Faccept_process_output): Simplify.
3041
b427b65d
JR
30422003-06-04 Jason Rumney <jasonr@gnu.org>
3043
3044 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
3045
3046 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
3047 (lispy_mouse_wheel_names): Remove.
3048 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
3049 Always define drag_and_drop_syms.
3050
3051 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
3052 WHEEL_EVENT events.
3053
914a8c47
SM
30542003-06-03 Stefan Monnier <monnier@cs.yale.edu>
3055
01ed8ff1
SM
3056 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
3057
914a8c47
SM
3058 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
3059
adcb132c
JD
30602003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3061
3062 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
3063 menu item label.
3064
be781fa7
RS
30652003-06-03 Richard M. Stallman <rms@gnu.org>
3066
3067 * window.c (Fwindow_edges): Doc fix.
3068 (Fwindow_pixel_edges, Fwindow_inside_edges)
3069 (Fwindow_inside_pixel_edges): New functions.
3070 (syms_of_window): defsubr them.
3071
3072 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
3073 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
3074
914a8c47
SM
30752003-06-02 Stefan Monnier <monnier@cs.yale.edu>
3076
3077 * dispnew.c (Fsit_for): Don't lie about the number of args.
3078
5b07197a
DL
30792003-06-02 Dave Love <fx@gnu.org>
3080
3081 * callproc.c: Use HAVE_FCNTL_H, not USG5.
3082 (syms_of_callproc) <process-environment>: Doc fix.
3083
3084 * doc.c: Use HAVE_FCNTL_H, not USG5.
3085
3086 * xfaces.c (font_rescale_ratio): Fix for K&R.
3087
3088 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
3089
3090 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
3091
3092 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
3093
3094 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
3095 (xg_create_frame_widgets): Use ENCODE_UTF_8.
3096
d7107586 3097 * xterm.c (Qutf_8): Move to coding.c
5b07197a
DL
3098
3099 * xmenu.c (ENCODE_MENU_STRING): New.
3100 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
3101 Use it.
3102
3103 * coding.h (ENCODE_UTF_8): New.
3104 (Qutf_8): Declare.
3105
3106 * coding.c (Qutf_8): New.
3107 (syms_of_coding): Intern it.
3108
3109 * fns.c: Doc fixes.
3110
7335b336
KH
31112003-06-02 Kenichi Handa <handa@m17n.org>
3112
3113 * buffer.c (Fset_buffer_multibyte): Fix previous change.
3114
914a8c47
SM
31152003-06-01 Stefan Monnier <monnier@cs.yale.edu>
3116
3117 * lread.c (openp): Make sure STR is a string.
3118
9862c135
JR
31192003-06-01 David Ponce <david@dponce.com>
3120
3121 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
3122 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
3123
3124 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
3125 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
3126 (discard_mouse_events): Discard WHEEL_EVENT events too.
3127 (lispy_wheel_names, wheel_syms): New.
3128 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
3129 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
3130 defined.
914a8c47 3131 (make_lispy_event): Add WHEEL_EVENT handler.
9862c135
JR
3132
3133 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
3134 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
3135 WHEEL_EVENT events.
3136
f984e73e
JPW
31372003-05-31 John Paul Wallington <jpw@gnu.org>
3138
3139 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
3140 timer are in lisp/emacs-lisp.
3141
1efcd78f
KH
31422003-05-31 Kenichi Handa <handa@m17n.org>
3143
458c8af4
KH
3144 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
3145 region when a buffer is changed to unibyte.
3146
1efcd78f
KH
3147 * charset.h (VALID_LEADING_CODE_P): New macro.
3148 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
3149
778e2804
KH
3150 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
3151 is nonzero, accept multibyte form of eight-bit-control chars.
3152 (decode_composition_emacs_mule): Likewise.
3153 (decode_coding_emacs_mule): Likewise.
3154 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
3155 multibyte form of eight-bit-control chars.
3156
3157 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
3158 (Finsert_file_contents): If coding-system-for-read is bound to
3159 Qauto_save_coding, use the coding system emacs-mule with special
3160 setting for recovering a file.
3161 (choose_write_coding_system): On auto saving, use the coding
3162 system emacs-mule with special setting for auto saving.
3163 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
3164
034060e4
KH
31652003-05-30 Kenichi Handa <handa@m17n.org>
3166
3167 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
3168 properly before calling ccl_driver.
3169
778e2804 3170 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
034060e4
KH
3171
3172 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
3173 nonzero.
3174 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
3175 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
3176
595f5aa5
GM
31772003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
3178
3179 * xfaces.c (realize_default_face): Do not abort if lface is
3180 non-existent - reverts change from 2003-05-19.
3181
103e0180
KH
31822003-05-29 Kenichi Handa <handa@m17n.org>
3183
3184 * coding.c (decode_coding_iso2022): Pay attention to the byte
3185 sequence of CTEXT extended segment, and retain those bytes as is.
3186
31872003-05-28 Kenichi Handa <handa@m17n.org>
3188
3189 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
3190 of CODING_REPLACEMENT_CHARACTER.
3191 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
3192 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
3193 check this flag on encoding.
3194 (encode_coding_sjis_big5): Check
3195 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
3196 (Fset_terminal_coding_system_internal): Set
3197 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
3198 instead of setting CODING_FLAG_ISO_SAFE flag in
3199 terminal_coding.flags.
3200
3201 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
3202 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
3203 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
3204
ff6a3bfb 32052003-05-28 Richard M. Stallman <rms@gnu.org>
45f266dc 3206
ff6a3bfb
RS
3207 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
3208
3209 * eval.c (unbind_to): Move init of this_binding to separate statement.
45f266dc 3210
1963c428
KS
32112003-05-28 Kim F. Storm <storm@cua.dk>
3212
3213 * xdisp.c (expose_window): Fix error in calculation of
3214 window relative coordinates of area to redisplay.
3215
2b5d4601
JR
32162003-05-27 Jason Rumney <jasonr@gnu.org>
3217
3218 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
3219
1c64a4a2
JB
32202003-05-27 David Ponce <david@dponce.com>
3221
3222 Handle W32 mouse wheel events as mouse click events, like in X.
3223
3224 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
3225 MOUSE_WHEEL_EVENT anymore.
3226
3227 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
3228 Scrolling down/up the mouse wheel is respectively mapped to mouse
3229 button 4 and 5.
3230 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
3231 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
3232 WM_MOUSEWHEEL events.
3233
2d031b89
AS
32342003-05-27 Andreas Schwab <schwab@suse.de>
3235
20464fdf
AS
3236 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
3237
2d031b89
AS
3238 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
3239 partially visible line.
3240
3241 * alloc.c (Fgarbage_collect): Fix last change.
3242
97bc76d4
JPW
32432003-05-26 John Paul Wallington <jpw@gnu.org>
3244
3245 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
3246
56613f06
SM
32472003-05-25 Stefan Monnier <monnier@cs.yale.edu>
3248
3249 * window.c (Fset_window_buffer): Add type of `keep_margins'.
3250 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
3251
3252 * window.h (window_box_text_cols): Declare.
3253
3254 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
3255 (x_draw_vertical_border): Remove unused var `f'.
3256
3257 * xfaces.c (build_scalable_font_name): Remove `unused var
3258 pixel_size' warning.
3259
3260 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
3261
3262 * unexelf.c (unexec): Remove `unused var n' warning.
3263
3264 * strftime.c (my_strftime_localtime_r): Remove `defined but
3265 unused' warning.
3266
3267 * process.c (allocate_pty): Remove `unused var stb' and
3268 `cp might be used uninitialized' warnings.
3269
3270 * dispnew.c (mode_line_string): Remove unused var `f'.
3271
3272 * coding.c (find_safe_codings): Remove unused var `i'.
3273
3274 * bytecode.c (Fbyte_code): Remove `unused val' warning.
3275
3276 * buffer.c (Fkill_buffer): Remove unused var `list'.
3277
3278 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
3279
93421a1f
JD
32802003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3281
3282 * frame.c (make_frame): Condition want_fullscreen with
3283 HAVE_WINDOW_SYSTEM.
3284
c4b8aebc
JB
32852003-05-25 Juanma Barranquero <lektu@terra.es>
3286
3287 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
3288 (Fwindow_scroll_bars): Fix typo in docstring.
3289
0416870b
KS
32902003-05-24 Kim F. Storm <storm@cua.dk>
3291
3292 The following changes serve several purposes:
3293
3294 1) Swap the position of fringes and display margins in windows, i.e.
3295 the fringes are now displayed between the margins and the text area
3296 (by default).
3297
3298 2) Allow fringe and scroll bar parameters to be set per-buffer and
3299 per-window (like display margins). Such settings are now stored
3300 in window configurations, preserved when frames are resized, and
9018a88e 3301 copied when windows are split vertically or horizontally.
0416870b
KS
3302 Several bugs related to display margins have been fixed.
3303
3304 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
9018a88e 3305
0416870b
KS
3306 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
3307 rather than FRAME_WIDTH (FRAME_FONT (f)).
3308
3309 5) Introduce a consistent naming of variables, members and macros
3310 depending on whether their value is measured in pixels or in
3311 canonical columns/lines. Pixel dimensions are named *_width and
3312 *_height, while canonical columns/lines are named *_cols and
3313 *_lines. Pixel positions are named *_x and *_y, while column/line
3314 positions are named *_col and *_line.
3315
3316 6) Consolidate more of the X, W32, and MAC gui code by moving
3317 common data into struct frame, and generalize it for the non-gui
3318 case by using suitable defaults.
3319
3320 7) Cleanup and consolidate the macros controlling frame and window
3321 layout into frame.h and window.h, and generalize the use of the
3322 various window_box_* functions (enhanced to handle the new fringe
3323 position and the per-window fringe and scroll bar settings).
3324
3325 * frame.h (struct frame): Rename members height to text_lines,
3326 width to text_cols, window_height to total_lines, window_width to
3327 total_cols, new_height to new_text_lines, new_width to
3328 new_text_cols. All uses changed.
3329 (struct frame): New members which consolidate common members of
3330 x_output, w32_output, and mac_output structures: left_pos,
3331 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
3332 win_gravity, size_hint_flags, border_width, internal_border_width,
3333 line_height, fringe_cols, left_fringe_width, right_fringe_width,
3334 want_fullscreen. All uses changed.
3335 (struct frame): New member column_width contaning the canonical
3336 column width, analogue to line_height. All uses changed.
3337 (struct frame): Rename members scroll_bar_pixel_width to
3338 config_scroll_bar_width, and scroll_bar_cols to
3339 config_scroll_bar_cols. All uses changed.
3340 (struct frame): New member scroll_bar_actual_width which
3341 consolidates and renames the vertical_scroll_bar_extra member of
3342 x_output, w32_output, and mac_output structures. All uses changed.
3343 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
3344 from x/w32/macterm.h files. All uses changed. Also change code
3345 which referred to f->output_data...->pixel_height.
3346 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
3347 from x/w32/macterm.h files. All uses changed. Also change code
3348 which referred to f->output_data...->pixel_width.
3349 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
3350 Also change code which referred to f->height.
3351 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
3352 Also change code which referred to f->width.
3353 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
3354 to update new_text_lines and new_text_cols members directly.
3355 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
3356 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
3357 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
3358 FRAME_SCROLL_BAR_COLS. All uses changed.
3359 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
3360 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
3361 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
3362 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
3363 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
3364 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
3365 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
3366 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
3367 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
3368 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
3369 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
3370 return line_height member (it now has proper value also for
3371 non-window frames).
3372 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
3373 return new column_width member (rather than the default font width).
3374 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
3375 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
3376 from x/w32/macterm.h files. Unconditionally return corresponding
3377 member of frame structure (they now have proper values also for
3378 non-window frames).
3379 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
3380 Calculate return value from left and right widths.
3381 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
3382 internal_border_width member (has proper value for non-window frame).
3383 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
3384 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
3385 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
3386 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
3387 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
3388 consolidated from xterm.h, macterm.h, and w32term.h.
3389 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
3390 consolidated from xterm.h, macterm.h, and w32term.h.
3391 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
3392 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
3393 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
3394 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
3395 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
3396 consolidated from x/mac/w32term.h.
3397 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
3398 consolidated from x/mac/w32term.h.
3399 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
3400 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
3401 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
3402 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
3403
3404 * window.h (struct window): Rename members left to left_col,
3405 top to top_line, height to total_lines, width to total_cols,
3406 left_margin_width to left_margin_cols, right_margin_width to
3407 right_margin_cols, orig_height to orig_total_lines, orig_top to
3408 orig_top_line. All uses changed.
3409 (struct window): New members left_fringe_width, right_fringe_width,
3410 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
3411 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
3412 New macros primarily used to simplify other macros.
3413 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
3414 referred to XINT (w->width).
3415 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
3416 referred to XINT (w->height).
3417 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
3418 referred to XINT (w->width) * canon_x_unit.
3419 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
3420 referred to XINT (w->height) * canon_y_unit.
3421 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
3422 referred to XINT (w->left).
3423 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
3424 all uses and code that referred to XINT (w->left) + XINT (w->width).
3425 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
3426 referred to XINT (w->top).
3427 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
3428 referred to XINT (w->top) + XINT (w->height).
3429 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
3430 referred to XINT (w->left) * canon_x_unit.
3431 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
3432 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
3433 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
3434 referred to XINT (w->top) * canon_y_unit.
3435 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
3436 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
3437 (WINDOW_LEFTMOST_P): New macro.
3438 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
3439 All uses changed.
3440 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
3441 All uses changed.
3442 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
3443 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
3444 Do not exclude left fringe width.
3445 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
3446 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
3447 Do not exclude fringe widths.
3448 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
3449 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
3450 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
3451 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
3452 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
3453 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
3454 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
3455 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
3456 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
3457 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
3458 New macros. Change code which referenced corresponding
3459 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
3460 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
3461 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
3462 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
3463 allow per-window scroll-bar settings.
3464 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
3465 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
3466 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
3467 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
3468 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
3469 FRAME_SCROLL_BAR_WIDTH.
3470 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
9018a88e 3471 (WINDOW_SCROLL_BAR_AREA_X): New macros.
0416870b
KS
3472 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
3473 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
3474 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
3475 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
3476 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
3477 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
3478 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
3479 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
3480 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
3481 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
3482 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
3483 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
3484 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
3485 (window_from_coordinates): Update prototype.
3486 (Fset_window_buffer): Update EXFUN.
3487 (set_window_buffer): Update prototype.
9018a88e 3488
0416870b 3489 * dispextern.h (struct glyph_matrix): Rename members window_left_x
9018a88e 3490 to window_left_col, window_top_y to window_top_line. All uses
0416870b
KS
3491 changed.
3492 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
3493 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
3494 internal_border_width is now set to 0 for non-window frames.
3495 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
3496 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
3497 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
3498 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
3499 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
3500 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
3501 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
3502 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
3503 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
9018a88e 3504 Move to window.h and renamed [see window.h changes].
0416870b
KS
3505 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
3506 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
9018a88e
SM
3507 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
3508 Use WINDOW_TOTAL_LINES.
0416870b
KS
3509 (frame_update_line_height): Remove prototype.
3510
3511 * buffer.h (struct buffer): Rename members measured in columns:
3512 left_margin_width to left_margin_cols, right_margin_width to
3513 right_margin_cols. All uses changed.
3514 New members left_fringe_width, right_fringe_width,
3515 fringes_outside_margins for per-buffer fringe settings.
3516 New members scroll_bar_width and vertical_scroll_bar_type for
3517 per-buffer scroll bar settings.
3518
3519 * buffer.c (init_buffer_once): Set buffer_defaults and
3520 buffer_local_flags for new buffer-local variables
3521 left_fringe_width, right_fringe_width, fringes_outside_margins,
3522 scroll_bar_width, and vertical_scroll_bar_type.
3523 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
3524 default-* variables for them.
3525
3526 * dispnew.c: Make (many) trivial substitutions for renamed and
3527 new macros in dispextern.h, frame.h and window.h.
3528 (mode_line_string): No need to adjust width for mode lines, as it
3529 is already adjusted by the caller.
3530 (marginal_area_string): Handle fringes inside/outside margins.
9018a88e 3531
0416870b
KS
3532 * frame.c: Make (many) trivial substitutions for renamed and
3533 new macros in dispextern.h, frame.h and window.h.
3534 (make_frame): Initialize left_fringe_width, right_fringe_width,
3535 fringe_cols, scroll_bar_actual_width, border_width,
3536 internal_border_width, column_width, line_height, x_pixels_diff,
3537 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
3538 members with values suitable for a non-window frames.
3539
3540 * gtkutil.c: Make (many) trivial substitutions for renamed and
3541 new macros in dispextern.h, frame.h and window.h.
9018a88e 3542
0416870b
KS
3543 * indent.c: Make (few) trivial substitutions for renamed and
3544 new macros in dispextern.h, frame.h and window.h.
3545
3546 * keyboard.c: Make (many) trivial substitutions for renamed and
3547 new macros in dispextern.h, frame.h and window.h.
3548 (make_lispy_event): Use window positions returned from
3549 window_from_coordinates when constructing the lisp event for
3550 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
3551 (incorrect) values locally.
3552 (make_lispy_movement): Use window positions returned from
3553 window_from_coordinates when constructing the lisp event, rather
3554 than calculating (incorrect) values locally.
3555
3556 * scroll.c: Make (some) trivial substitutions for renamed and
3557 new macros in dispextern.h, frame.h and window.h.
3558
3559 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
3560 scroll-bars.
3561
3562 * sysdep.c: Make (few) trivial substitutions for renamed and
3563 new macros in dispextern.h, frame.h and window.h.
3564
3565 * term.c: Make (some) trivial substitutions for renamed and
3566 new macros in dispextern.h, frame.h and window.h.
3567
3568 * widget.c: Make (few) trivial substitutions for renamed and
3569 new macros in dispextern.h, frame.h and window.h.
3570
3571 * window.c: Make (many) trivial substitutions for renamed and
3572 new macros in dispextern.h, frame.h and window.h.
3573 (make_window): Initialize new members
3574 left_margin_cols, right_margin_cols, left_fringe_width,
3575 right_fringe_width, fringes_outside_margins, scroll_bar_width,
3576 and vertical_scroll_bar_type.
3577 (coordinates_in_window): Adapted to new fringe/margin positions
9018a88e 3578 and per-window fringes and scroll-bars.
0416870b 3579 Fix bug related to incorrectly adjusting coordinates by
9018a88e 3580 frame's internal_border_width (the effect normally negible since
0416870b
KS
3581 the internal_border_width is typically 0 or 1 pixel, but very
3582 noticeable for an internal_border_width of e.g. 25 pixels).
3583 Upon successful return (other than ON_NOTHING), the coordinates
3584 are now always properly converted to window relative for the
3585 given display element.
3586 (window_from_coordinates): Add new parameters wx and wy to
3587 return the window relative x and y position in the returned
3588 window and part. A null arg means, don't return the position.
3589 All callers changed.
3590 (adjust_window_margins): New function which may reduce the width
3591 of the display margins if a window's text area is too small after
3592 resizing or splitting windows.
3593 (size_window): Fix bug that did not account for display margin
3594 widths when checking the minimum width of a window; use
3595 adjust_window_margins.
3596 (set_window_buffer): Call Fset_window_fringes and
3597 Fset_window_scroll_bars to setup per-window elements.
3598 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
3599 existing display margin, fringe widths, and scroll bar settings
9018a88e
SM
3600 (e.g. after splitting a window or resizing the frame).
3601 All callers changed.
0416870b
KS
3602 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
3603 (Fsplit_window): Duplicate original window's display margin,
3604 fringe, and scroll-bar settings; then call Fset_window_buffer with
3605 KEEP_MARGINS non-nil. This fixes a bug which caused a split
3606 window to only preserve the display margins in one of the windows.
c4b8aebc 3607 When splitting horizontally, call adjust_window_margins on both
0416870b
KS
3608 windows to ensure that the text area of the new windows is non too
3609 narrow. This fixes a bug which could cause emacs to trap if the
3610 width of the split window was less than the width of the display
3611 margins.
9018a88e
SM
3612 (window_box_text_cols): Renamed from window_internal_width.
3613 All uses changed. Adapt to per-window fringes and scroll bars.
0416870b
KS
3614 Fix bug that caused vertical separator to be subtracted also on
3615 window frames. Fix another bug that did not reduce the returned
3616 value by the columns used for display margins.
3617 (window_scroll_line_based): Fix bug related to scrolling too much
3618 when display margins are present (implicitly fixed by the fix to
3619 window_box_text_cols).
3620 (scroll_left, scroll_right): Fix bug related to scrolling too far
3621 by default when display margins are present (implicitly fixed by
3622 the fix to window_box_text_cols).
3623 (struct saved_window): Rename members left to left_col, top to
3624 top_line, width to total_cols, height to total_lines, orig_top to
3625 orig_top_line, orig_height to orig_total_lines. All uses changed.
3626 New members left_margin_cols, right_margin_cols,
3627 left_fringe_width, right_fringe_width, fringes_outside_margins,
3628 scroll_bar_width, and vertical_scroll_bar_type for saving
3629 per-window display elements.
3630 (Fset_window_configuration): Restore display margins, fringes,
3631 and scroll bar settings. This fixes a bug which caused display
3632 margins to be discarded when saving and restoring a window
3633 configuration.
3634 (save_window_save): Save display margins, fringes, and scroll bar
3635 settings. This fixes a bug which caused display margins to be
3636 discarded when saving and restoring a window configuration.
3637 (Fset_window_margins): Do nothing if display margins are not
3638 really changed. Otherwise, call adjust_window_margins to ensure
3639 the text area doesn't get too narrow. This fixes a bug which
3640 could cause emacs to trap if setting display margins wider than
3641 the width of the window.
3642 (Fset_window_fringes): New defun to allow user to specifically set
3643 this window's fringe widths and position vs. display margins.
3644 (Fwindow_fringes): New defun to return window's actual fringe
3645 settings.
3646 (Fset_window_scroll_bars): New defun to allow user to specifically
3647 set this window's scroll bar width and position.
3648 (Fwindow_scroll_bars): New defun to return window's actual scroll
3649 bar settings.
3650 (compare_window_configurations): Also compare display margins,
3651 fringes, and scroll bar settings.
3652 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
3653
3654 * xdisp.c: Make (many) trivial substitutions for renamed and
3655 new macros in dispextern.h, frame.h and window.h.
3656 (window_box_width): Adapt to per-window fringes and scroll bars,
3657 and new fringe vs. display margin position. Note that returned
3658 value is no longer guaranteed to be a whole multiple of the frame
3659 column width, since per-window fringes may now be any width.
3660 (window_box_left_offset): New function like window_box_left, but
3661 value is relative to left border of window (rather than frame).
3662 (window_box_right_offset): New function like window_box_right,
3663 but value is relative to left border of window.
3664 (window_box_left): Adapt to per-window fringes and scroll bars,
3665 and new fringe vs. display margin position. Simplify by using
3666 WINDOW_LEFT_EDGE_X and window_box_left_offset.
3667 (window_box): Allow null args for unnecessary return values;
3668 change/simplify relevant callers.
3669 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
9018a88e
SM
3670 and new fringe vs. display margin position.
3671 Use window_box_left_offset and window_box_right_offset
0416870b 3672 (get_glyph_string_clip_rect): Adapt to per-window fringes and
9018a88e
SM
3673 scroll bars, and new fringe vs. display margin position.
3674 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
0416870b
KS
3675 (draw_fringe_bitmap): Rework to handle per-window fringes and new
3676 fringe vs. display margin position.
3677 (hscroll_window_tree): Use window_box_width instead of window_box.
a64387ee
JB
3678 (redisplay_window): Adapt to per-window scroll bars.
3679 (draw_glyphs): Rework to handle per-window fringes and scroll
9018a88e
SM
3680 bars, and new fringe vs. display margin position.
3681 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
a64387ee 3682 (x_clear_end_of_line): Adapt to per-window fringes and scroll
0416870b
KS
3683 bars, and new fringe vs. display margin position. Fix bug which
3684 increased total width of full_width rows by width of scroll bars
3685 although window's total width already includes that.
3686 (x_fix_overlapping_area): Simplify using window_box_left_offset.
3687 (expose_area): Simplify using window_box_left_offset.
3688 (x_draw_vertical_border): Handle per-window scroll bar settings,
3689 mixing windows with left, right and no scroll bars.
3690
3691 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
3692 where it's used in x_list_fonts (for clarity).
3693 (frame_update_line_height): Remove unused function; functionality
3694 is now done directly when setting the default font in x_set_font.
3695
3696 * xfns.c: Make (many) trivial substitutions for renamed and
3697 new macros in dispextern.h, frame.h and window.h.
3698
3699 * xmenu.c: Make (some) trivial substitutions for renamed and
3700 new macros in dispextern.h, frame.h and window.h.
3701
3702 * xterm.h (struct x_output): Move members left_pos, top_pos,
3703 border_width, pixel_height, pixel_width, line_height,
3704 internal_border_width, vertical_scroll_bar_extra,
3705 left_fringe_width, right_fringe_width, fringe_cols,
3706 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
3707 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
3708 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
3709 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
3710 (PIXEL_WIDTH, PIXEL_HEIGHT)
3711 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
3712 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
3713 frame.h and renamed [see frame.h changes].
3714 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
3715 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
3716 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
3717 and renamed [see frame.h changes].
9018a88e 3718
0416870b
KS
3719 * xterm.c: Make (several) trivial substitutions for renamed and
3720 new macros in dispextern.h, frame.h and window.h.
3721 (x_draw_glyph_string_box): Adapt to per-window fringes and
3722 scroll-bars.
3723 (scroll_run): Adapt to new fringe position.
3724 (glyph_rect): Use window coordinates returned from
3725 window_from_coordinates rather than frame_to_window_pixel_xy.
3726 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
3727 scroll-bars.
3728 (handle_one_xevent): Simplify a USE_GTK conditional.
3729 (x_clip_to_row): Remove superfluous whole_line_p arg and code
3730 (fringes are now inside margins, i.e. always in the clipping area).
3731 All callers changed.
3732 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
3733 directly, then call compute_fringe_widths. Don't call
3734 frame_update_line_height.
3735
3736 * w32term.h (struct w32_output): Move members left_pos, top_pos,
3737 border_width, pixel_height, pixel_width, line_height,
3738 internal_border_width, vertical_scroll_bar_extra,
3739 left_fringe_width, right_fringe_width, fringe_cols,
3740 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
3741 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
3742 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
3743 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
3744 (PIXEL_WIDTH, PIXEL_HEIGHT)
3745 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
3746 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
3747 frame.h and renamed [see frame.h changes].
3748 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
3749 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
3750 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
3751 and renamed [see frame.h changes].
9018a88e 3752
0416870b
KS
3753 * w32term.c: Make (several) trivial substitutions for renamed and
3754 new macros in dispextern.h, frame.h and window.h.
3755 (x_draw_glyph_string_box): Adapt to per-window fringes and
3756 scroll-bars.
3757 (glyph_rect): Use window coordinates returned from
3758 window_from_coordinates rather than frame_to_window_pixel_xy.
3759 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
3760 scroll-bars.
3761 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
3762 (fringes are now inside margins, i.e. always in the clipping area).
3763 All callers changed.
3764 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
3765 directly, then call compute_fringe_widths. Don't call
3766 frame_update_line_height.
3767
3768 * w32console.c: Make (few) trivial substitutions for renamed and
3769 new macros in dispextern.h, frame.h and window.h.
3770
3771 * w32fns.c: Make (many) trivial substitutions for renamed and
3772 new macros in dispextern.h, frame.h and window.h.
3773
3774 * w32menu.c: Make (few) trivial substitutions for renamed and
3775 new macros in dispextern.h, frame.h and window.h.
3776
3777 * macterm.h (struct mac_output): Move members left_pos, top_pos,
3778 border_width, pixel_height, pixel_width, line_height,
3779 internal_border_width, vertical_scroll_bar_extra,
3780 left_fringe_width, right_fringe_width, fringe_cols,
3781 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
3782 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
3783 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
3784 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
3785 (PIXEL_WIDTH, PIXEL_HEIGHT)
3786 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
3787 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
3788 frame.h and renamed [see frame.h changes].
3789 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
3790 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
3791 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
3792 and renamed [see frame.h changes].
9018a88e 3793
0416870b
KS
3794 * macterm.c: Make (several) trivial substitutions for renamed and
3795 new macros in dispextern.h, frame.h and window.h.
3796 (x_draw_glyph_string_box): Adapt to per-window fringes and
3797 scroll-bars.
3798 (glyph_rect): Use window coordinates returned from
3799 window_from_coordinates rather than frame_to_window_pixel_xy.
3800 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
3801 scroll-bars.
3802 (x_clip_to_row): Remove superfluous whole_line_p arg and code
3803 (fringes are now inside margins, i.e. always in the clipping area).
3804 All callers changed.
3805 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
3806 directly, then call compute_fringe_widths. Don't call
3807 frame_update_line_height.
3808
3809 * macfns.c: Make (several) trivial substitutions for renamed and
3810 new macros in dispextern.h, frame.h and window.h.
9018a88e 3811 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
0416870b
KS
3812
3813 * macmenu.c: Make (few) trivial substitutions for renamed and
3814 new macros in dispextern.h, frame.h and window.h.
3815
3816 * msdos.h (struct x_output): Remove members left_pos, top_pos,
3817 and line_height, and use corresponding new members in struct
3818 frame. All uses changed.
3819 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
3820 superseeded by corresponding macros in frame.h.
3821
3822 * msdos.c: Make (several) trivial substitutions for renamed and
3823 new macros in dispextern.h, frame.h and window.h.
3824 (IT_note_mouse_highlight): Use updated window coordinates returned
9018a88e 3825 by window_from_coordinates, rather than adjusting them locally.
0416870b
KS
3826 (internal_terminal_init): No need to initialize line_height here;
3827 it now defaults to 1.
3828
9018a88e
SM
38292003-05-24 Stefan Monnier <monnier@cs.yale.edu>
3830
3831 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
3832 dropping `down' events.
3833
016bd3c0
AS
38342003-05-24 Andreas Schwab <schwab@suse.de>
3835
3836 * coding.c (find_safe_codings): Fix last change.
3837
4dacadcc
TTN
38382003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
3839
3840 * xfns.c (x_window): Fix typo from 2003-05-21 change.
3841
319830ce
SM
38422003-05-23 Stefan Monnier <monnier@cs.yale.edu>
3843
9018a88e
SM
3844 * xdisp.c (display_mode_element): Increase max depth.
3845 Simplify the error handling code. Use a different error string
3846 for the case where we hit the depth limit.
3847
319830ce
SM
3848 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
3849
3850 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
3851
38522003-05-21 Stefan Monnier <monnier@cs.yale.edu>
3853
3854 * intervals.c (get_local_map): Don't get char-property of previous
3855 point any more: get_pos_property already does it and better.
3856
c67de8ba
DL
38572003-05-21 Dave Love <fx@gnu.org>
3858
3859 [Merged from unicode branch.]
3860
3861 * xfns.c (x_window, x_window): Use use_xim.
3862
3863 * xterm.c (use_xim): Initialize.
3864 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
3865 (x_term_init): Maybe set use_xim.
3866
3867 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
3868
edd3ff1d
JR
38692003-05-21 Jason Rumney <jasonr@gnu.org>
3870
3871 * unexw32.c (_start): Remove _fmode initialization.
3872
3873 * emacs.c (main) [WINDOWSNT]: Move it here.
3874
463f55ee
DL
38752003-05-20 Dave Love <fx@gnu.org>
3876
3877 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
3878
af253914
RS
38792003-05-19 Richard M. Stallman <rms@gnu.org>
3880
3881 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
3882 as value for QCfont attribute.
3883 (realize_default_face): lface should already exist; crash if not.
3884 Specify 0 for FORCE_P when calling set_lface_from_font_name.
3885
3886 * frame.c (Fignore_event): Doc fix.
3887
1d211019
KH
38882003-05-19 Kenichi Handa <handa@m17n.org>
3889
3890 * coding.c (decode_coding_string): Handle post-read-conversion
3891 even if the coding doesn't require decoding.
3892
4dd68254
RS
38932003-05-18 Richard M. Stallman <rms@gnu.org>
3894
3895 * callproc.c (Fcall_process_region): Doc fix.
3896
14d87dc9
SM
38972003-05-17 Stefan Monnier <monnier@cs.yale.edu>
3898
deca5d96
SM
3899 * lread.c (Fload): Print a message if package is obsolete.
3900
14d87dc9
SM
3901 * window.c (Fselect_window): Add optional `norecord' arg.
3902 (select_window_1): Fold into Fselect_window.
3903 (select_window_norecord): New function.
3904 (temp_output_buffer_show): Use it. Preserve current buffer.
3905
3906 * window.h (Fselect_window): Update declaration.
3907
3908 * window.c (delete_window, Fother_window, Fset_window_configuration):
3909 * minibuf.c (read_minibuf):
3910 * macterm.c (x_new_focus_frame):
3911 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
3912 * callint.c (Fcall_interactively):
3913 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
3914
3915 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
3916
78f52183
DK
39172003-05-17 David Kastrup <dak@gnu.org>
3918
3919 * process.c (read_process_output): Back out change from 2003-03-09.
3920
14d87dc9
SM
39212003-05-17 Stefan Monnier <monnier@cs.yale.edu>
3922
3923 * editfns.c (get_pos_property): Don't assume that `object' = nil.
3924
3925 * textprop.c (text_property_stickiness): New arg `buffer'.
3926
3927 * intervals.h (text_property_stickiness): New arg `buffer'.
3928 (get_pos_property): Declare.
3929
3930 * intervals.c (get_local_map): Use get_pos_property, to obey
3931 stickiness and empty overlays.
3932 (create_root_interval, graft_intervals_into_buffer): Use BEG.
3933 (merge_properties, intervals_equal, merge_properties_sticky):
3934 Use XCAR, XCDR.
3935 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
3936
1fd1cc2f
RS
39372003-05-17 Richard M. Stallman <rms@gnu.org>
3938
4f9f637a
RS
3939 * minibuf.c (read_minibuf): If buffer is empty, record the default
3940 in the history.
3941 (Fminibuffer_complete_word): When deleting the overlap, take account
3942 of its real position.
3943
3944 * fns.c (map_char_table): Fix previous change.
3945
1fd1cc2f
RS
3946 * syntax.c (find_defun_start):
3947 When open_paren_in_column_0_is_defun_start,
3948 return beginning of buffer.
3949
3950 * lisp.h (map_char_table): Declare added arg.
3951
3952 * fns.c (map_char_table): New arg TABLE gets the master table.
3953 All calls changed.
3954 Process default and inheritance, resorting to Faref if necessary.
3955
3956 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
3957 (Faccessible_keymaps): Pass new arg to map_char_table.
3958
3959 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
3960
3961 * casetab.c (set_case_table): Pass new arg to map_char_table.
3962
3963 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
3964
3965 * lisp.h (specbinding_func): New typedef.
3966 (struct specbinding): Use specbinding_func, to put the `volatile'
3967 in the right place.
3968
3969 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
3970 to avoid GCC warning.
14d87dc9 3971
b4bd27c5
RS
39722003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org> (tiny change)
3973
14d87dc9 3974 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
b4bd27c5 3975
35fb885d
SM
39762003-05-15 Stefan Monnier <monnier@cs.yale.edu>
3977
3978 * keyboard.c (apply_modifiers): Don't fill the other cache.
3979
9a274fbd
SM
39802003-05-14 Stefan Monnier <monnier@cs.yale.edu>
3981
c55b5fad
SM
3982 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
3983
9a274fbd
SM
3984 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
3985 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
3986 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
3987 (Fset_window_configuration, Fcurrent_window_configuration)
3988 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
3989 (Fpos_visible_in_window_p, mark_window_cursors_off)
3990 (window_internal_height, window_internal_width, Frecenter)
3991 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
3992 (replace_buffer_in_all_windows, init_window_once, init_window)
3993 (syms_of_window, keys_of_window): Move from lisp.h.
3994 * lisp.h: Move window.c declarations to window.h.
3995
3996 * bytecode.c: Include window.h.
3997 * emacs.c: Include window.h.
3998
14d87dc9 3999 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
9a274fbd
SM
4000 (keyremap): Add `parent' field.
4001 (keyremap_step): Use it. Remove `parent' argument.
4002 (read_key_sequence): Setup and use the new `parent' field.
4003
fd93e331
SM
40042003-05-11 Stefan Monnier <monnier@cs.yale.edu>
4005
4006 * keyboard.c (adjust_point_for_property): Ensure termination.
4007
1c4001a1
SM
40082003-05-10 Stefan Monnier <monnier@cs.yale.edu>
4009
4010 * keyboard.c (follow_key): Remove dead variable `did_meta'.
4011 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
4012 duplicated handling of function-key-map and key-translation-map
4013 in read_key_sequence.
4014 (read_key_sequence): Use them.
4015
4016 * keyboard.c (adjust_point_for_property): Try harder to move point
4017 to the non-sticky end of an invisible property.
4018
4019 * xdisp.c (single_display_prop_intangible_p): Make `space' display
4020 property intangible as well.
4021
780379b1
AS
40222003-05-10 Andreas Schwab <schwab@suse.de>
4023
4024 * xmenu.c (single_menu_item): Change last parameter to void* to
4025 avoid warning.
4026
ca2de342
RS
40272003-05-09 Richard M. Stallman <rms@gnu.org>
4028
4029 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
4030 Bind Qinhibit_modification_hooks to t so there will be no GC.
4031 Rename local `tem' to `save_deactivate_mark'.
4032
4033 * eval.c (specpdl_ptr): Declare volatile.
4034 (unbind_to): Copy the whole binding and decrement specpdl_ptr
4035 before doing the work of unbinding it.
4036
4037 * lisp.h (struct specbinding): Declare elements volatile.
4038 (specpdl_ptr): Declare volatile.
4039
4040 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
4041
4042 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
4043 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
4044
347003be
DL
40452003-05-08 Dave Love <fx@gnu.org>
4046
4047 * coding.c (Vlast_coding_system_used): Doc fix.
4048
5adcec23
JR
40492003-05-07 Jason Rumney <jasonr@gnu.org>
4050
4051 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
4052 when system does not support them.
4053
5fe3b8a4
SM
40542003-05-05 Stefan Monnier <monnier@cs.yale.edu>
4055
4056 * fileio.c (Qwrite_region_annotate_functions): New var.
4057 (build_annotations): Use it to process the global part of the hook.
4058 (syms_of_fileio): Init and staticpro it.
4059
4060 * keyboard.c (safe_run_hooks_error): Display a message instead of
4061 silently ignoring the error.
4062
40632003-05-03 Stefan Monnier <monnier@cs.yale.edu>
4064
4065 * keyboard.c (input_available_signal): Mark static.
4066 (menu_bar_items): Use map_keymap.
4067 (menu_bar_one_keymap): Remove.
4068 (menu_bar_item): Adjust arglist (for use in map_keymap).
4069 Properly hide a second binding when not both are keymaps.
4070
4071 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
4072 (single_keymap_panes): Use it and map_keymap.
4073 (single_menu_item): Use skp as well.
4074
4075 * keymap.h (map_keymap_function_t): New type.
4076 (map_keymap): Declare.
4077
4078 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
4079 (map_keymap_call, Fmap_keymap): New functions.
4080 (syms_of_keymap): Defsubr map-keymap.
4081
4b1b4443
JD
40822003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4083
4084 * gtkutil.c (create_dialog, make_widget_for_menu_item)
4085 (make_menu_item, create_menus, xg_update_menu_item): Don't call
4086 ..._with_mnemonic functions for menu items.
4087
1f816871
KH
40882003-05-01 Kenichi Handa <handa@m17n.org>
4089
4090 * coding.c (coding_system_accept_latin_extra_p): Delete this
4091 function.
4092 (find_safe_codings): Pay attention to
4093 the property tranlsation-table-for-encode of each codings.
4094 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
4095
5ed6ba5b
SM
40962003-05-01 Stefan Monnier <monnier@cs.yale.edu>
4097
4098 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
4099
32c06229
SM
41002003-04-30 Stefan Monnier <monnier@cs.yale.edu>
4101
4102 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
4103
4104 * lisp.h (CHECK): Wrap args in parenthesis.
4105 (specbind): Fix doc: symbol = Qnil is not supported any more.
4106
4107 * bytecode.c (Fbyte_code) <unwind-protect>:
4108 Use Fprogn rather than 0 and Qnil.
4109
4110 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
4111 `double', and `triple' modifiers as well.
4112
ed3c3314
RS
41132003-04-30 Richard M. Stallman <rms@gnu.org>
4114
4115 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
4116
4117 * alloc.c (abort_on_gc): New variable.
4118 (Fgarbage_collect): Abort if abort_on_gc is set.
4119
4120 * lisp.h (abort_on_gc): Add decl.
4121
4122 * eval.c (Fsignal): Clear abort_on_gc.
4123
4124 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
32c06229 4125 Reinit FORMAT_START and END before second scan.
ed3c3314
RS
4126
4127 * xdisp.c (move_it_vertically_backward): Do the final big else
4128 even if nlines is 0.
4129
4130 * xdisp.c (redisplay_internal): Finish the per-frame loop
4131 even if redisplay is suspended by input.
4132
0b325c12
AC
41332003-04-24 Andrew Choi <akochoi@shaw.ca>
4134
4135 * macterm.c (x_list_fonts): Return all fonts that match if
4136 maxnames = -1.
4137
4e837cd0
KH
41382003-04-25 Kenichi Handa <handa@m17n.org>
4139
4140 * syntax.c (skip_chars): Fix previous change.
4141
9af7511a
KH
41422003-04-24 Kenichi Handa <handa@m17n.org>
4143
4144 * syntax.c (skip_chars): Make the code faster by using the common
4145 technique of *p, *stop, and *endp.
4146
e3b2c21f
JD
41472003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4148
4149 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
32c06229 4150 tool_bar_items so GTK tool bar expose callback does not access items
e3b2c21f
JD
4151 being updated.
4152
32c06229
SM
41532003-04-19 Stefan Monnier <monnier@cs.yale.edu>
4154
4155 * eval.c (Fapply): Undo last change and add a comment about why.
4156
c6464167
MB
41572003-04-18 Miles Bader <miles@gnu.org>
4158
4159 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
4160 pickier PARSE_MULTIBYTE_SEQ.
4161
e509f168
SM
41622003-04-17 Stefan Monnier <monnier@cs.yale.edu>
4163
4164 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
4165 Use XCDR, XCAR, CONSP.
4166 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
4167 (Fapply): Remove unnecessary GCPRO.
4168
4169 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
4170
4171 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
4172
4173 * buffer.h: Don't hardcode BEG==1.
4174
4175 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
4176
5ceea398
RS
41772003-04-16 Richard M. Stallman <rms@gnu.org>
4178
4179 * xdisp.c (try_window, try_window_reusing_current_matrix):
4180 When at end of window, set window_end_pos to Z-ZV.
4181
4182 * buffer.c (Foverlay_recenter): Doc fix.
4183
e509f168
SM
41842003-04-14 Stefan Monnier <monnier@cs.yale.edu>
4185
4186 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
4187
d243e605
AC
41882003-04-14 Andrew Choi <akochoi@shaw.ca>
4189
4190 * macterm.c (mac_check_for_quit_char): Don't check more often than
4191 once a second.
4192
6901b111
SM
41932003-04-11 Stefan Monnier <monnier@cs.yale.edu>
4194
4195 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
4196 specially, so that they can't hide an implicit switch-frame event.
4197 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
4198 (head_table): Use switch-frame as event_kind for select-window.
4199 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
4200
4201 * editfns.c (Fformat): Lisp_Object/int mixup.
4202 (format2): Remove unused var numargs.
4203
e301806f 42042003-04-11 Kenichi Handa <handa@m17n.org>
aa95b710 4205
6901b111 4206 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
aa95b710
KH
4207 (Qafter_insert_file_set_coding): New variable.
4208 (syms_of_fileio): Initialize and staticpro it. Delete declaration
4209 for after-insert-file-adjust-coding-function.
4210 (Finsert_file_contents): Call Qafter_insert_file_set_coding
4211 instead of Vafter_insert_file_adjust_coding_function.
4212
38914424
KH
42132003-04-11 Kenichi Handa <handa@m17n.org>
4214
4215 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
4216
4217 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
4218 string. Callers changed.
4219
42202003-04-10 Kenichi Handa <handa@m17n.org>
a288d979 4221
6901b111 4222 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
a288d979 4223 (syms_of_fileio): Declare it as a lisp variable.
6901b111
SM
4224 (Finsert_file_contents):
4225 Call Vafter_insert_file_adjust_coding_function before calling
a288d979
KH
4226 decode-format.
4227
f979dc05
JD
42282003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4229
4230 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
4231 get GtkAdjustment as widget now is a GtkRange.
4232
4233 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
4234 GtkRange to avoid memory leak.
4235
f8c6b4c2 42362003-04-09 Kenichi Handa <handa@m17n.org>
cb98871c 4237
50ebc53d
KH
4238 * xfaces.c (Vface_font_rescale_alist): New variable.
4239 (struct font_name): New member rescale_ratio.
4240 (font_rescale_ratio): New function.
6901b111 4241 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
50ebc53d
KH
4242 (better_font_p): On comparing point sized, pay attention to
4243 recale_ratio member of fonts.
4244 (build_scalable_font_name): Reflect font->rescale_ratio in the
4245 font name.
6901b111 4246 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
50ebc53d 4247
cb98871c
KH
4248 * lread.c (read1): Before calling index, check if the 2nd
4249 arguemnt is in ASCII range.
4250
4773b8ca
RS
42512003-04-08 Richard M. Stallman <rms@gnu.org>
4252
b0ada147
RS
4253 * fileio.c (Ffile_symlink_p): Doc fix.
4254
4255 * editfns.c (Fformat): Translate positions of text properties
4256 in the format string to apply them to the result.
4257
4773b8ca
RS
4258 * fileio.c (Finsert_file_contents): Doc fix.
4259 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
4260
42612003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6901b111 4262
4773b8ca
RS
4263 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
4264
e8f25745 42652003-04-08 Steven Tamm <steventamm@mac.com>
b0ada147 4266
e8f25745
ST
4267 * mac.c (init_mac_osx_environment): Switch libexec and bin so
4268 that self-contained application finds libexec files.
4269
f8c6b4c2 42702003-04-08 Kenichi Handa <handa@m17n.org>
2310d84c 4271
6901b111
SM
4272 * coding.c (code_convert_region_unwind):
4273 Set Vlast_coding_system_used to the argument.
2310d84c
KH
4274 (code_convert_region): If post-read-conversion function changed
4275 the value of last-coding-sytem, keep the new value in
4276 coding->symbol so that it won't be overridden.
4277 (run_pre_post_conversion_on_str): Likewise.
7c086845
KH
4278 (coding_system_accept_latin_extra_p): New function.
4279 (find_safe_codings): Pay attention to characters registered in
4280 latin-extra-code-table.
2310d84c 4281
39c9a034
TTN
42822003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
4283
4284 * Makefile.in (md5.o): Add missing dependency info.
4285
eb67c5d6
RS
42862003-04-06 Richard M. Stallman <rms@gnu.org>
4287
4288 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
4289
4290 * marker.c (verify_bytepos): New function.
4291
4292 * intervals.c (set_intervals_multibyte_1): When becoming
4293 multibyte, adjust right and left child sizes to a whole set of
4294 characters. If an interval gets zero total-length, delete it.
4295 If an interval consists of just its children, delete one of them.
4296
4297 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
4298 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
39c9a034 4299
eb67c5d6
RS
4300 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
4301 All calls deleted.
4302 (lisp_malloc): Do the work here directly.
4303
b1f81fc5
JB
43042003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
4305
4306 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
4307 char tables.
4308
43092003-04-04 Kenichi Handa <handa@m17n.org>
aa8b70ae
KH
4310
4311 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
4312 destructively change "%S" to "%s".
4313
774666fb
MB
43142003-04-03 Miles Bader <miles@gnu.org>
4315
4316 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
4317 always set.
4318
19c37f01
DL
43192003-04-01 Dave Love <fx@gnu.org>
4320
4321 * xfns.c (xpm_lookup_color): Grok "opaque".
4322
2f4b24c3
AC
43232003-03-31 Andrew Choi <akochoi@shaw.ca>
4324
4325 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
4326 parent window ID.
4327
4328 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
4329
4330 * macterm.h (struct mac_output): Define x_pixels_diff and
4331 y_pixels_diff.
b1f81fc5 4332
9443fcf6
JB
43332003-03-31 Juanma Barranquero <lektu@terra.es>
4334
4335 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
4336 blockinput.h and files included from it.
4337
e072891b
KS
43382003-03-31 Kim F. Storm <storm@cua.dk>
4339
4340 The following changes consolidates the common code related to
4341 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
4342 files into frame.c.
9443fcf6 4343
e072891b
KS
4344 * frame.c: Include blockinput.h.
4345 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
4346 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
4347 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
4348 related vars here.
4349 (struct frame_parm_table, frame_parms): New table for describing
4350 frame parameters and their associated Q-variable.
4351 The order of the parameters corresponds to the sequence of the
4352 frame_parm_handlers table in redisplay_interface.
4353 (x_fullscreen_move, x_set_frame_parameters)
4354 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
4355 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
4356 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
4357 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
4358 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
4359 Generic functions for processing of frame parameters.
4360 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
4361 (display_x_get_resource, x_get_resource_string): Functions for
4362 generic access to X resources.
4363 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
4364 (x_default_parameter, Fx_parse_geometry): Functions for generic
4365 access to frame parameters.
6901b111
SM
4366 (x_figure_window_size): Generic calculation of frame size.
4367 Fixed to add space needed for tool bar. Also setup size_hint_flags.
e072891b
KS
4368 (syms_of_frame): Intern and staticpro frame parameter variables.
4369 Defvar_lisp Vx_resource_class and Vx_resource_name here.
4370 Defsubr Sx_get_resource and Sx_parse_geometry.
9443fcf6 4371
e072891b
KS
4372 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
4373 parameter related vars defined in frame.c.
4374 (EMACS_CLASS): Define here.
4375 (enum FULLSCREEN_*): Define here.
4376 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
4377 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
4378 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
4379 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
4380 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
4381 (x_set_visibility, x_set_autoraise, x_set_autolower)
4382 (x_set_unsplittable, x_set_vertical_scroll_bars)
4383 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
4384 (x_figure_window_size): Add prototypes.
4385
4386 * dispextern.h (frame_parm_handler): New typedef.
4387 (struct redisplay_interface): New member frame_parm_handlers.
4388 (enum resource_types): Move declaration here.
4389 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
4390 (x_default_parameter): Add prototypes.
4391
4392 * window.c: Remove extern decl for frame parameter vars.
4393 (change_window_heights): New generic function;
4394 replaces x_change_window_heights. All users changed.
4395
4396 * window.h (change_window_heights): Add prototype.
4397
4398 * xfaces.c: Remove extern decl for frame parameter vars.
4399
4400 * xterm.h (EMACS_CLASS): Remove. Use generic define.
4401 (struct w32_display_info): Fix type of xrdb member.
4402 (enum FULLSCREEN_*): Remove.
4403 Remove prototypes for generic functions (in frame.h).
4404
4405 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
4406 parameters now defined in frame.h and frame.c.
4407 (Vx_resource_name): Remove. Use generic var.
4408 (enum x_frame_parms): Remove (bogus, unused enum).
4409 (check_x_display_info): Make non-static (for frame.c).
4410 (struct x_frame_parm_table, x_frame_parms): Remove.
4411 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
4412 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
4413 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
4414 (x_change_window_heights, x_set_autoraise, x_set_autolower)
4415 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
4416 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
4417 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
4418 Remove. Use generic functions instead.
4419 (enum resource_types): Remove.
4420 (x_set_scroll_bar_default_width): New global function (for frame.c).
4421 (Fx_create_frame): Depend on x_figure_window_size to add space for
4422 toolbar and setup size_hint_flags.
4423 (x_frame_parm_handlers): New table for redisplay_interface.
4424 (syms_of_xfns): Don't intern/staticpro removed vars.
9443fcf6 4425
e072891b
KS
4426 * xterm.c: Remove unnecessary extern declarations.
4427 (x_fullscreen_adjust): Remove. Use generic instead.
4428 (x_redisplay_interface): Add x_frame_parm_handlers member.
4429
4430 * w32gui.h (XrmDatabase): New (dummy) typedef.
4431
4432 * w32term.h (EMACS_CLASS): Remove. Use generic define.
4433 (struct w32_display_info): Fix type of xrdb member.
4434 (enum FULLSCREEN_*): Remove.
4435 (x_fullscreen_adjust): Remove prototype.
4436
4437 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
4438 parameters now defined in frame.h and frame.c.
4439 (Vx_resource_name): Remove. Use generic var.
4440 (enum x_frame_parms): Remove (bogus, unused enum).
4441 (check_x_display_info): Make non-static (for frame.c).
4442 (struct x_frame_parm_table, x_frame_parms): Remove.
4443 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
4444 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
4445 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
4446 (x_change_window_heights, x_set_autoraise, x_set_autolower)
4447 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
4448 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
4449 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
4450 Remove. Use generic functions instead.
4451 (enum resource_types): Remove.
4452 (x_set_scroll_bar_default_width): New global function (for frame.c).
4453 (Fx_create_frame): Depend on x_figure_window_size to add space for
4454 toolbar and setup size_hint_flags.
4455 (w32_frame_parm_handlers): New table for redisplay_interface.
4456 (syms_of_w32fns): Don't intern/staticpro removed vars.
9443fcf6 4457
e072891b
KS
4458 * w32term.c: Remove unnecessary extern declarations.
4459 (x_fullscreen_adjust): Remove. Use generic instead.
4460 (x_redisplay_interface): Add w32_frame_parm_handlers member.
4461
4462 * w32reg.c (x_get_string_resource): Use XrmDatabase.
4463
4464 * macgui.h (XrmDatabase): New (dummy) typedef.
4465
4466 * macterm.h (EMACS_CLASS): Remove.
4467 (struct mac_display_info): Add xrdb member.
4468 (struct mac_output): Add want_fullscreen member.
4469
4470 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
4471 parameters now defined in frame.h and frame.c.
4472 (Vx_resource_name): Remove. Use generic var.
4473 (check_x_display_info): Make non-static (for frame.c).
4474 (struct x_frame_parm_table, x_frame_parms): Remove.
4475 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
4476 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
4477 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
4478 (x_change_window_heights, x_set_autoraise, x_set_autolower)
4479 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
4480 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
4481 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
4482 Remove. Use generic functions instead.
4483 (enum resource_types): Remove.
4484 (x_set_scroll_bar_default_width): New global function (for frame.c).
4485 (mac_frame_parm_handlers): New table for redisplay_interface.
4486 (syms_of_macfns): Don't intern/staticpro removed vars.
9443fcf6 4487
e072891b
KS
4488 * macterm.c: Remove unnecessary extern declarations.
4489 (x_redisplay_interface): Add mac_frame_parm_handlers member.
4490
3e6a560b
KS
4491 * Makefile.in (frame.o): Add dependency on blockinput.h and files
4492 included from it (atimer.h and systime.h).
4493
7b7b454e
AS
44942003-03-30 Andreas Schwab <schwab@suse.de>
4495
4496 * xdisp.c (x_insert_glyphs): Fix swapped width and height
4497 parameters for shift_glyphs_for_insert.
4498
4499 * macterm.c (x_redisplay_interface): Add missing entry for
4500 draw_vertical_window_border.
4501
beb402de
KG
45022003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
4503
4504 * fileio.c (Fexpand_file_name): In the no-handler case, after
4505 expanding, look again for a handler and invoke it. This is needed
4506 for filenames like "/foo/../user@host:/bar/../baz" -- the first
4507 expansion produces "/user@host:/bar/../baz" which needs to be
4508 expanded again for the finame result "/user@host:/baz".
4509
b676f356
JD
45102003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4511
4512 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
4513 of area to be redrawn for better performance.
4514
3c671a56
SM
45152003-03-28 Stefan Monnier <monnier@cs.yale.edu>
4516
4517 * xterm.c (take_vertical_position_into_account): Remove.
4518 (xt_action_hook): Call set_vertical_scroll_bar if needed.
4519 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
4520 (xm_scroll_callback, x_create_toolkit_scroll_bar)
4521 (x_set_toolkit_scroll_bar_thumb): Simplify.
4522 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
4523 (XTread_socket): Remove unused var.
4524 (x_make_frame_invisible): Replace goto with else.
4525
4526 * xdisp.c (set_vertical_scroll_bar): New fun.
4527 (redisplay_window): Use it.
4528
84f2e615
RS
45292003-03-26 Richard M. Stallman <rms@gnu.org>
4530
4531 * xdisp.c (update_tool_bar): Recompute tool bar if
4532 update_mode_lines is set. Set w->update_mode_line
4533 only if the tool bar contents actually change.
4534 (update_menu_bar): Undo previous change.
4535
70b6104c
JD
45362003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4537
5fd6f727
JD
4538 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
4539 (xg_frame_set_char_size): Calculate scroll bar width before frame
4540 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
4541 (xg_separator_p): Check for all documented separator types.
4542 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
4543 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
4544
70b6104c
JD
4545 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
4546 so tool bar gets updated.
4547
d9b36d19
SM
45482003-03-26 Stefan Monnier <monnier@cs.yale.edu>
4549
4550 * data.c (store_symval_forwarding): Re-instate part of the code
4551 that was deleted with too much enthusiasm.
4552
45532003-03-25 Stefan Monnier <monnier@cs.yale.edu>
4554
4555 * data.c (store_symval_forwarding): Delete special read-only
4556 hack for type == -1, since we now use ->constant instead.
4557 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
4558
4559 * buffer.c (overlays_in): Declare static.
4560 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
4561 `constant' field rather than the variable's `type' field.
4562
365fa1b3
AC
45632003-03-24 Andrew Choi <akochoi@shaw.ca>
4564
4565 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
4566
4567 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
4568
4569 * fns.c [MAC_OSX]: Do not redefine vector.
4570
4571 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
4572
4573 * macgui.h: Remove definition of No_Cursor.
4574
d9b36d19 4575 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
365fa1b3
AC
4576
4577 * xdisp.c: Define No_Cursor.
4578 (x_write_glyphs, notice_overwritten_cursor)
4579 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
4580 (note_mouse_highlight): Remove Mac-specific code.
4581 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
d9b36d19 4582
c0bcce6f
JPW
45832003-03-24 John Paul Wallington <jpw@gnu.org>
4584
4585 * xdisp.c (redisplay_window): If mini window's buffer is not
4586 empty, then redisplay it like other windows.
4587
a526b96c
KS
45882003-03-23 Kim F. Storm <storm@cua.dk>
4589
4590 * w32term.c (w32_draw_window_cursor): Fix last change.
4591
37ab321e
KH
45922003-03-23 Kenichi Handa <handa@m17n.org>
4593
a526b96c
KS
4594 * alloc.c (make_string_from_bytes, make_specified_string):
4595 Add `const' for the arg CONTENTS.
37ab321e
KH
4596
4597 * lisp.h (make_string_from_bytes, make_specified_string):
4598 Prototypes adjusted.
4599
7863d625
JD
46002003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4601
a526b96c 4602 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
fd4c9408 4603
7863d625
JD
4604 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
4605 (XG_SB_RANGE): New define.
4606
4607 * gtkutil.c (xg_fixed_handle_expose): New function.
4608 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
4609 expose events.
4610 (xg_update_scrollbar_pos): Take two more arguments, left and width
4611 of scroll bar including borders.
4612 Clear left and right part outside scroll bar separately as some
4613 themes have bars that are not an even number of pixels.
d9b36d19 4614 Don't set reallocate_redraws, don't call
7863d625
JD
4615 gdk_window_process_all_updates.
4616 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
4617 so no need to change it. Calculate size and value with XG_SB_RANGE.
4618
d9b36d19
SM
4619 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
4620 Pass left and width of scroll bar including borders to
7863d625
JD
4621 xg_update_scrollbar_pos.
4622
af0ad939
TTN
46232003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
4624
4625 * Makefile.in: Make sure space precedes end-of-line backslashes.
4626
b22139fd
KS
46272003-03-22 Kim F. Storm <storm@cua.dk>
4628
4629 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
4630 Add generic versions here. Remove system specific versions
4631 defined elsewhere.
4632
4633 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
4634 Add prototypes.
4635
6e6410cf
KS
4636 * xterm.h (STORE_NATIVE_RECT): New macro.
4637
5c9cc435
KS
46382003-03-21 Kim F. Storm <storm@cua.dk>
4639
00c64fab
SM
4640 * xdisp.c (get_glyph_string_clip_rect):
4641 Use FRAME_INTERNAL_BORDER_WIDTH.
5c9cc435
KS
4642
4643 * dispextern.h (struct redisplay_interface): Add active_p
4644 argument to draw_window_cursor member. All uses changed.
4645
acd37560
KS
46462003-03-21 Kim F. Storm <storm@cua.dk>
4647
4648 The following changes consolidate code related to writing and
4649 inserting glyphs, exposing frame, the tool bar, the mouse face,
4650 the output cursor, and help echo from xterm.c, w32term.c and
4651 macterm.c into xdisp.c. It also generalizes the use of the
4652 window_part enum instead of using numeric values throughout.
af0ad939 4653
acd37560
KS
4654 * xdisp.c: Consolidate gui-independent code here.
4655 Include keymap.h.
4656 (Qhelp_echo): Import.
4657 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
4658 (help_echo_string, help_echo_window, help_echo_object)
4659 (previous_help_echo_string, help_echo_pos): Declare here.
4660 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
4661 (estimate_mode_line_height): Define here. Handle windowing
4662 systems directly (without using estimate_mode_line_height_hook).
4663 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
4664 (update_window_cursor, update_cursor_in_window_tree)
4665 (fast_find_position, fast_find_string_pos)
4666 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
4667 (expose_area, expose_line, expose_overlaps, expose_window)
4668 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
4669 declared static as they are only used locally in xdisp.c.
4670 (draw_glyphs): Rename from x_draw_glyphs and make static.
4671 (tool_bar_item_info, notice_overwritten_cursor): Make static.
4672 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
4673 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
af0ad939 4674 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
acd37560
KS
4675 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
4676 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
4677 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
4678 (note_mouse_highlight, x_clear_window_mouse_face)
4679 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
4680 (x_intersect_rectangles): New generic functions for use by xdisp.c
4681 and GUI front-ends.
4682 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
4683 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
4684
4685 * dispextern.h (Display_Info): Generic typedef for *_display_info.
4686 (NativeRectangle): Generic typedef for rectangle type.
4687 (enum window_part): Move here from window.c.
4688 (struct redisplay_interface): New members flush_display_optional,
4689 define_frame_cursor, clear_frame_area, draw_window_cursor,
4690 draw_vertical_window_border, shift_glyphs_for_insert.
4691 Rename member clear_mouse_face to clear_window_mouse_face.
4692 (estimate_mode_line_height_hook): Remove hook.
4693 (auto_raise_tool_bar_buttons_p): Don't declare extern.
4694 (tool_bar_item_info): Remove prototype.
4695 (help_echo_string, help_echo_window, help_echo_object)
4696 (previous_help_echo_string, help_echo_pos)
4697 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
4698 (x_stretch_cursor_p, output_cursor): Declare extern.
4699 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
4700 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
4701 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
4702 (display_and_set_cursor, set_output_cursor, x_cursor_to)
4703 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
4704 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
4705 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
4706 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
4707 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
4708 Add prototypes.
4709 (mode_line_string, marginal_area_string): Fix prototypes.
4710
4711 * window.c (enum window_part): Move to dispextern.h.
4712 (coordinates_in_window): Use enum window_part member names
4713 instead of numbers to describe return value.
4714 (struct check_window_data): Change part member to window_part.
4715 (check_window_containing): Return window_part unaltered.
4716 (window_from_coordinates): Change part arg from int to enum
4717 window_part. Allow part arg to be null. All users changed.
4718
4719 * window.h (window_from_coordinates): Fix prototype.
4720
4721 * term.c (estimate_mode_line_height): Move to xdisp.c.
4722
4723 * keyboard.c (make_lispy_event): Use enum window_part.
4724
4725 * dispnew.c (mode_line_string, marginal_area_string): Use enum
4726 window_part instead of int in arg list. Users changed.
4727
4728 * xterm.h (No_Cursor): Declare as None for X.
4729 (struct mac_output): Replace member cross_cursor by hand_cursor.
af0ad939 4730
acd37560
KS
4731 * xterm.c: Remove consolidated defines and code.
4732 (BETWEEN): Remove unused macro.
4733 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
4734 (x_define_frame_cursor, x_clear_frame_area)
4735 (x_draw_window_cursor): New X-specific functions for RIF.
4736 (x_redisplay_interface): Add new members.
4737
4738 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
4739
4740 * w32term.h (struct w32_output): Remove cross_cursor member.
4741
4742 * w32term.c: Remove consolidated defines and code.
4743 (BETWEEN): Remove unused macro.
4744 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
4745 (w32_define_frame_cursor, w32_clear_frame_area)
4746 (w32_draw_window_cursor): New W32-specific functions for RIF.
4747 (w32_redisplay_interface): Add new members.
4748
a64387ee 4749 * w32gui.h (No_Cursor): Define as 0 for W32.
acd37560
KS
4750 (XRectangle): Add X compatible rectangle type.
4751 (NativeRectangle): Declare as RECT for W32.
4752 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
4753
4754 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
4755
4756 * w32console.c: Remove consolidated defines and code.
af0ad939 4757
acd37560
KS
4758 * msdos.h (Display_Info): Add generic typedef.
4759
4760 * msdos.c: Remove consolidated defines and code.
4761 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
4762
4763 * macterm.h (struct mac_output): Replace member cross_cursor by
4764 hand_cursor.
4765 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
4766
4767 * macterm.c: Remove consolidated defines and code.
4768 (BETWEEN): Remove unused macro.
4769 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
4770 (mac_define_frame_cursor, mac_clear_frame_area)
4771 (mac_draw_window_cursor): New Mac-specific functions for RIF.
4772 (x_redisplay_interface): Add new members.
4773
4774 * macgui.h (No_Cursor): Define as 0 for Mac.
4775 (XRectangle): Add X compatible rectangle type.
4776 (NativeRectangle): Declare as Rect for Mac.
4777 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
4778
204ccab1
KS
4779 * macfns.c (x_set_mouse_color): Setup hand_cursor.
4780 (x_set_cursor_color): Use x_display_and_set_cursor.
acd37560 4781
9443fcf6 4782 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
acd37560
KS
4783 included from it. Add dependency on keymap.h.
4784
4785 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
4786
8ba01a70 47872003-03-21 Kenichi Handa <handa@m17n.org>
3f817c73
KH
4788
4789 * fileio.c (Fexpand_file_name): Fix previous change.
4790
8ba01a70 47912003-03-19 Kenichi Handa <handa@m17n.org>
4f497b0a
KH
4792
4793 * fileio.c (Ffile_name_directory): Reconstruct file name by
4794 make_specified_string.
4795 (Ffile_name_nondirectory, Ffile_name_as_directory)
4796 (Fdirectory_file_name, Fexpand_file_name)
4797 (Fsubstitute_in_file_name): Likewise.
4798 (Fread_file_name): Compare decoded homedir with DIR and
4799 DEFAULT_FILENAME.
4800
4801 * alloc.c (make_specified_string): If NCHARS is negative, count
4802 the number of characters.
4803
19536747
JD
48042003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4805
de38ae5a
JD
4806 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
4807 all widgets.
4808
19536747
JD
4809 * gtkutil.h: Removed xg_ignore_next_thumb.
4810
37ab321e 48112003-03-18 Kenichi Handa <handa@m17n.org>
cb0d4562
KH
4812
4813 * coding.c (Vchar_coding_system_table): Remove this variable.
4814 (Vcoding_system_safe_chars): New variable.
4815 (intersection): Remove this function.
4816 (find_safe_codings): Don't use Vchar_coding_system_table, but try
4817 all codings in SAFE_CODINGS.
00c64fab 4818 (Ffind_coding_systems_region_internal): Adjust for the change of
cb0d4562
KH
4819 find_safe_codings. Get generic coding systems from
4820 Vcoding_system_safe_chars.
4821 (Fdefine_coding_system_internal): New function.
4822 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
4823 Initialize and staticpro Vcoding_system_safe_chars.
4824
17097258
JD
48252003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4826
2a2071c3
JD
4827 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
4828 equal old values before updating.
4829
17097258
JD
4830 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
4831
4832 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
4833
48342003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4835
4836 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
4837 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
4838 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
4839 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
4840 (xg_create_scroll_bar): Pass bar to button event callback.
4841 (xg_find_top_left_in_fixed): New function.
4842 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
4843 whole scroll bar area. Get old position with
4844 xg_find_top_left_in_fixed, calculate and only clear needed areas.
4845 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
4846 dragging is in progress. Calculate whole as for Motif.
4847 Remove code that saved last values. Call gtk_range functions to
4848 set scroll bar sizes.
4849
4850 * gtkutil.h: Removed xg_ignore_next_thumb.
4851
8cb9dfbf
JB
48522003-03-17 Juanma Barranquero <lektu@terra.es>
4853
4854 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
4855 and files included from it.
4856
00c64fab
SM
48572003-03-18 Stefan Monnier <monnier@cs.yale.edu>
4858
4859 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
4860 multiple occurrences of the same keymap under different prefixes.
4861 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
4862
c45bb3b2
JR
48632003-03-16 Jason Rumney <jasonr@gnu.org>
4864
4865 * w32gui.h: Use HDC for Display.
4866
4867 * w32term.c (w32_encode_char): Prevent double-byte chars from
4868 crashing Emacs.
4869
4870 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
4871 as binary.
4872
2a6d0874
JB
48732003-03-16 Juanma Barranquero <lektu@terra.es>
4874
4875 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
4876
03eb5fab
KS
48772003-03-16 Kim F. Storm <storm@cua.dk>
4878
4879 The following changes consolidate some of the gui-independent
4880 parts of the processing and drawing of "glyph strings" from
4881 xterm.c, w32term.c, and macterm.c into xdisp.c.
2a6d0874 4882
03eb5fab
KS
4883 * dispextern.h (struct glyph): Reduce face_id member from 22 to
4884 21 bits (this reduces number of faces from 4M to 2M).
4885 Replace W32 specific w32_font_type member (2 bits) by generic
4886 font_type member (3 bits) for portability.
4887 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
4888 (enum draw_glyphs_face): Define here.
4889 (struct glyph_string): Define here. Merge W32 and X versions.
4890 (struct redisplay_interface): New members per_char_metric,
4891 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
4892 (VCENTER_BASELINE_OFFSET): Define here.
4893 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
4894 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
4895
4896 * xdisp.c: Consolidate gui-independent "glyph string" code here.
4897 (dump_glyph_string): Moved here.
4898 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
4899 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
4900 (fill_composite_glyph_string, fill_glyph_string)
4901 (fill_image_glyph_string, fill_stretch_glyph_string)
4902 (left_overwritten, left_overwriting, right_overwritten)
4903 (right_overwriting, get_char_face_and_encoding)
4904 (set_glyph_string_background_width, compute_overhangs_and_x)
4905 (append_glyph, append_composite_glyph, produce_image_glyph)
4906 (take_vertical_position_into_account, append_stretch_glyph)
4907 (produce_stretch_glyph): New generic functions (based on X version).
4908 Call platform specific functions through rif.
4909 (INIT_GLYPH_STRING): New macro, hides W32 details.
4910 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
4911 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
4912 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
4913 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
4914 (notice_overwritten_cursor):
4915 Generic functions exported to platform modules. Users changed.
4916
4917 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
4918 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
4919 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
fad49844 4920 New macros for consolidated code.
2a6d0874 4921
03eb5fab
KS
4922 * xterm.c: Remove consolidated defines and code.
4923 (x_per_char_metric, x_encode_char)
4924 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
4925 (x_redisplay_interface): Add new members.
4926
4927 * w32gui.h (Display): Add dummy typedef for consolidation.
4928 (XChar2b): Define alias for wchar_t for consolidation.
4929 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
4930
4931 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
2a6d0874 4932 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
03eb5fab
KS
4933 New macros for consolidation.
4934
fad49844 4935 * w32term.c: Remove consolidated defines and code.
03eb5fab
KS
4936 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
4937 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
4938 (w32_per_char_metric): Change font_type arg to int for RIF.
4939 (w32_encode_char): Return int according to RIF requirements.
4940 (w32_compute_glyph_string_overhangs): Adapt to RIF.
4941 (w32_get_glyph_overhangs): New function for RIF. Uses generic
4942 x_get_glyph_overhangs.
4943 (w32_redisplay_interface): Add new members.
4944
4945 * macgui.h (XChar2b): Move typedef here for consolidation.
4946 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
4947
4948 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
4949 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
4950 consolidation.
4951
4952 * macterm.c: Remove consolidated defines and code.
4953 (mac_per_char_metric): New function for RIF.
00c64fab 4954 (mac_encode_char): Adapt to new RIF requirements.
03eb5fab
KS
4955 (mac_compute_glyph_string_overhangs): Adapt for RIF.
4956 (x_redisplay_interface): Add new members.
4957
00c64fab
SM
49582003-03-15 Stefan Monnier <monnier@cs.yale.edu>
4959
4960 * keymap.c (Vmenu_events): New var.
4961 (syms_of_keymap): Initialize it.
4962 (where_is_internal): Check more carefully what is a menu event.
4963
225c7a07
RS
49642003-03-14 Richard M. Stallman <rms@gnu.org>
4965
4966 * lread.c (read1): After #!, exit loop on eof.
4967
cea9be54
JD
49682003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4969
9ea0e54d
JD
4970 * gtkutil.h: Add declaration for xg_frame_cleared.
4971
0cb35f4e
JD
4972 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
4973
cea9be54
JD
4974 * gtkutil.c (struct xg_last_sb_pos): New structure.
4975 (handle_fixed_child): New function.
4976 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
4977 and force a redraw on them.
4978 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
4979 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
4980 so we can avoid unneeded redraws.
4981 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
4982 and force a redraw on the scroll bar.
4983 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
4984 if xg_last_sb_pos shows the positions are up to date.
0cb35f4e 4985 (xg_frame_cleared): New function.
cea9be54 4986
20b853f3
KH
49872003-03-13 Kenichi Handa <handa@m17n.org>
4988
4989 * coding.c (Fdetect_coding_region): Fix docstring.
4990 (Fdetect_coding_string): Fix docstring.
4991
7a555aff
AS
49922003-03-13 Andreas Schwab <schwab@suse.de>
4993
25cc0080
AS
4994 * gtkutil.c: Add prototype for create_menus.
4995
30225431
AS
4996 * data.c (long_to_cons): Fix type of top.
4997
4998 * xselect.c (selection_data_to_lisp_data): Use int instead of
4999 long for an integer of size 4.
5000
7a555aff 5001 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
30225431 5002 (xg_tool_bar_help_callback): Likewise.
7a555aff 5003
a3e4741f
AS
50042003-03-12 Andreas Schwab <schwab@suse.de>
5005
5006 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
5007
9668be7c
KS
50082003-03-12 Kim F. Storm <storm@cua.dk>
5009
03eb5fab 5010 The following changes consolidate the fringe handling from
9668be7c 5011 xterm.c, w32term.c, and macterm.c into xdisp.c.
00a88f32 5012
9668be7c
KS
5013 * xdisp.c: Consolidate fringe handling code here.
5014 (left_bits, right_bits, continued_bits, continuation_bits)
5015 (ov_bits, zv_bits): Define fringe bitmaps.
5016 (fringe_bitmaps): New array holding fringe bitmaps.
5017 (draw_fringe_bitmap): Draw a specific bitmap; call display
5018 specific drawing routine via rif->draw_fringe_bitmap.
5019 (draw_row_fringe_bitmaps): Generic replacement for
5020 x_draw_row_fringe_bitmaps; all callers changed.
5021 (compute_fringe_widths): Generic replacement for
5022 x_compute_fringe_widths; all callers changed.
5023
5024 * dispextern.h (enum fringe_bitmap_type): Define here.
5025 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
5026 (fringe_bitmaps): Declare extern.
5027 (struct redisplay_interface): New member draw_fringe_bitmap.
5028 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
5029
5030 * xterm.c: Remove generic fringe code.
5031 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
5032 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
5033
5034 * w32term.c: Remove generic fringe code.
5035 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
5036 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
00a88f32 5037
9668be7c
KS
5038 * macterm.c: Remove generic fringe code.
5039 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
5040 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
5041
00a88f32
SM
50422003-03-11 Stefan Monnier <monnier@cs.yale.edu>
5043
5044 * print.c (Fprin1_to_string): Return unibyte string if possible.
5045
1d1de695
DK
50462003-03-09 David Kastrup <dak@gnu.org>
5047
5048 * process.c (read_process_output): We have allocated enough space
5049 for readmax and carryover, so actually use the alloted space.
5050
257f40f2
JD
50512003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5052
5053 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
5054 toolkit scrollbar click.
5055
5056 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
5057 for USE_GTK.
5058 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
5059 also.
5060 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
5061 scrollbar and control is pressed, call x_scroll_bar_handle_click.
00a88f32 5062
257f40f2
JD
5063 * gtkutil.h: Declare xg_get_scroll_id_for_window.
5064
5065 * gtkutil.c (xg_get_scroll_id_for_window): New function.
5066 (xg_tool_bar_item_expose_callback): New function.
5067 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
5068 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
5069 on the tool bar widget.
5070 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
5071 to expose on the tool bar item widgets.
5072
15213141
JD
50732003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5074
26b74a0b 5075 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
00a88f32 5076 struct image* when deciding to update (struct image* may have been
26b74a0b
JD
5077 deleted from the image cache).
5078
15213141
JD
5079 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
5080 the event isn't for a frame (i.e. for dialogs).
5081
20b853f3 50822003-03-07 Kenichi Handa <handa@m17n.org>
cb681b34
KH
5083
5084 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
5085 composition components reaches the limit, terminate composing.
5086 (COMPOSITION_OK): New macro.
00a88f32 5087 (detect_coding_iso2022): Use it if an escape sequence for
cb681b34
KH
5088 composition is found.
5089 (coding_restore_composition): Adjust the number of composition
5090 components if it is not sane.
5091
c9029fe5
JB
50922003-03-06 Juanma Barranquero <lektu@terra.es>
5093
5094 * w32term.h (struct w32_display_info): Add xrdb member to support
5095 passing resources via -xrm on Windows.
5096
5097 * w32term.c (w32_make_rdb): New function.
5098 (w32_term_init): Use it to initialize xrdb member of w32_display_info
5099 struct. Delete leftover code.
5100
5101 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
5102 for resources passed on the command line.
5103
5104 * w32reg.c (w32_get_rdb_resource): New function.
5105 (x_get_string_resource): Use it, so resources passed with -xrm
5106 supercede the ones in the registry.
5107
9d00001f
JD
51082003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5109
5110 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
5111 instead of x_top_window_to_frame.
5112
ca2417b9
JD
51132003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5114
5115 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
5116 when restarting Emacs.
5117
5b20caf0
RS
51182003-03-03 Richard M. Stallman <rms@gnu.org>
5119
5120 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
5121 to run kill-buffer-query-functions.
5122 (Qkill_buffer_query_functions): New var.
5123 (syms_of_buffer): Init and staticpro it.
5124
58e91b77
JD
51252003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5126
5127 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
5128
932357b4
KS
51292003-02-25 Kim F. Storm <storm@cua.dk>
5130
5131 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
5132 If centering point failed to make whole line visible and vscroll
5133 is non-zero, disable vscroll and try centering point again.
5134
5135 * lread.c (read1): Accept `single space' syntax like (? x).
5136
bb8db7e1
JD
51372003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5138
5139 * keyboard.c (cancel_hourglass_unwind): Surround with
5140 #ifdef HAVE_X_WINDOWS
5141
47d77aab
KH
51422003-02-25 Kenichi Handa <handa@m17n.org>
5143
5144 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
5145 process only when "subprocesses" is defined.
5146
6a097c0c
SM
51472003-02-24 Stefan Monnier <monnier@cs.yale.edu>
5148
5149 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
5150
0b063c27
JB
51512003-02-24 Juanma Barranquero <lektu@terra.es>
5152
d1135afc
JB
5153 * callint.c (fix_command): Declare as static void and move before
5154 Fcall_interactively.
5155
0b063c27
JB
5156 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
5157 (syms_of_xdisp): Don't initialize Qwhen.
5158
0af912f0
JD
51592003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5160
5161 * keyboard.c (cancel_hourglass_unwind): New function.
5162 (command_loop_1): Cancel hourglass with unwind-protect.
5163
120d0a23
RS
51642003-02-23 Richard M. Stallman <rms@gnu.org>
5165
5166 * callint.c (fix_command): New subroutine, from Fcall_interactively.
5167 Detect (when ... (region-beginning)) etc.
5168 (Fcall_interactively): Call fix_command.
5169 (Qif, Qwhen): New variables.
5170 (syms_of_callint): Init and staticpro them.
0b063c27 5171
120d0a23
RS
5172 * regex.c (print_partial_compiled_pattern): Output to stderr.
5173
4ece81a6
KG
51742003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
5175
5176 * dired.c (directory_files_internal): Don't expand directory.
5177 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
5178 instead. From Lars Hansen <larsh@math.ku.dk>.
5179
e52bd6b7
SM
51802003-02-22 Stefan Monnier <monnier@cs.yale.edu>
5181
5182 * fns.c (string_to_multibyte): Remove unused var i.
5183 (Flanginfo): Fix int/Lisp_Object mixup.
5184 (void_call2): New fun.
5185 (Fmap_char_table): Use it in place of call2.
5186
5187 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
5188
5189 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
5190
5191 * keymap.c (copy_keymap_1): Make it static.
5192
5193 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
5194
c33ef7c4
JB
51952003-02-22 David Ponce <david@dponce.com>
5196
5197 * lread.c (Fload): Don't check STRING_MULTIBYTE.
5198
16782258
JD
51992003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5200
5201 * process.h: Removed subtty field from struct Lisp_Process.
5202
5203 * process.c (create_process): Remove setting of subtty.
5204 (emacs_get_tty_pgrp): New function.
e52bd6b7
SM
5205 (Fprocess_running_child_p, process_send_signal):
5206 Call emacs_get_tty_pgrp instead of ioctl.
16782258
JD
5207 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
5208
3abeca61
KG
52092003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
5210
5211 * keymap.c (Fdefine_key): Doc fix.
5212
92a8ce63
JB
52132003-02-21 Juanma Barranquero <lektu@terra.es>
5214
5215 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
5216
5217 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
5218 POLLING_PROBLEM_IN_SELECT.
5219
5220 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
5221 Delete #undef of POLLING_PROBLEM_IN_SELECT.
5222
5223 * s/hpux10-20.h: New file.
5224
e52bd6b7
SM
5225 * process.c (wait_reading_process_input):
5226 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
92a8ce63 5227
20f1ef2e
KH
52282003-02-20 Kenichi Handa <handa@m17n.org>
5229
32d0a9dc
KH
5230 * fontset.c (check_fontset_name): If NAME is nil, return the
5231 default fontset.
5232 (override_font_info): New function.
e52bd6b7 5233 (Fset_fontset_font): Document that NAME nil means the default fontset.
32d0a9dc
KH
5234 (Ffontset_info): If FONTSET is not the default fontset, merge
5235 FONTSET onto the copy of the default fontset, and work on that
5236 copy. Document that NAME nil means the default fontset.
5237 (Ffontset_font): Document that NAME nil means the default fontset.
5238
20f1ef2e
KH
5239 * process.c (setup_process_coding_systems): If the process's
5240 in/out descriptor is -1, do nothing.
5241
77d1daf2
AS
52422003-02-19 Andreas Schwab <schwab@suse.de>
5243
e52bd6b7
SM
5244 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
5245 Add prototypes.
77d1daf2 5246
f9a45bb3
KH
52472003-02-19 Kenichi Handa <handa@m17n.org>
5248
5249 * xfaces.c (try_alternative_families): Try all scalable fonts if
5250 Vscalable_fonts_allowed is not Qt.
5251
72ecb43c
JD
52522003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5253
5254 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
5255
ee5be7c3
JD
52562003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5257
5258 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
5259 names.
5260
5261 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
e52bd6b7 5262 (sorted_font_list): Move allocation of struct font_name to
ee5be7c3
JD
5263 x_face_list_fonts.
5264 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
5265 (Fx_list_fonts): Set maxnames to -1 to get all font names.
5266
4cd519a7
KS
52672003-02-18 Kim F. Storm <storm@cua.dk>
5268
068f9882
KS
5269 * lread.c (read1): Fix last change.
5270 "`" is not always special. Allow "?" after a character constant.
4cd519a7 5271
7290a344
AC
52722003-02-18 Andrew Choi <akochoi@shaw.ca>
5273
5274 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
5275
1f7fa69b
AS
52762003-02-18 Andreas Schwab <schwab@suse.de>
5277
5278 * window.c (window_scroll_pixel_based): Move outside a
5279 multi-glyph character before setting new window start.
5280
5281 * xdisp.c (in_display_vector_p): New function.
5282 * dispextern.h (in_display_vector_p): Declare.
5283
23e21195
KS
52842003-02-18 Kim F. Storm <storm@cua.dk>
5285
5286 * lread.c (read1): Fix and relax read syntax.
5287 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
5288 Only recognize "," after dotted-pair dot if inside backquote.
5289 Never include "`" or "," (inside backquote) in a symbol.
5290 Allow dotted-pair dot after a character constant.
5291 Allow "`" and "," (inside backquote) after a character constant.
92a8ce63 5292
f098b121
JD
52932003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5294
5295 * gtkutil.c (xg_tool_bar_expose_callback): New function.
5296 (xg_create_tool_bar): Force style of tool bar to be horizontal with
5297 icons. Set name of tool bar to emacs-toolbar.
5298 (update_frame_tool_bar): Connect expose event to
5299 xg_tool_bar_expose_callback.
5300
63020c46
RS
53012003-02-17 Richard M. Stallman <rms@gnu.org>
5302
5303 * keyboard.c (this_command_key_count_reset): New variable.
5304 Initiatize to 0 where this_command_key_count is set.
5305 (read_char): Save and restore this_command_key_count_reset
5306 around input method code.
5307 (read_char): If this_command_key_count_reset, echo reread commands.
5308 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
5309
fb4452cc
KH
53102003-02-17 Kenichi Handa <handa@m17n.org>
5311
5312 * fns.c (string_to_multibyte): Always return a multibyte string.
5313
bd11cc09
JR
53142003-02-16 Jason Rumney <jasonr@gnu.org>
5315
e52bd6b7
SM
5316 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
5317 Negative max_fonts parameter means list all.
bd11cc09 5318
4cdf4bde
DL
53192003-02-14 Dave Love <fx@gnu.org>
5320
5321 * fns.c (Flanginfo): Doc fix.
5322
023b93f6
KS
53232003-02-13 Kim F. Storm <storm@cua.dk>
5324
37cd4238
KS
5325 * lread.c (read_escape): Interpret \s as a SPACE character, except
5326 for \s-X in a character constant which still is the super modifier.
5327 (read1): Signal an `invalid read syntax' error if a character
5328 constant is immediately followed by a digit or symbol character.
5329
140a6b7e
KS
5330 * search.c (Fmatch_data): Doc fix. Explicitly state that
5331 match-data is undefined if last search failed.
5332
023b93f6
KS
5333 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
5334 All uses changed.
5335
7d5c86e5
JB
53362003-02-12 Juanma Barranquero <lektu@terra.es>
5337
5338 * eval.c (Fdefmacro): Fix typo.
5339
295fff2c
KS
53402003-02-12 Kim F. Storm <storm@cua.dk>
5341
5342 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
5343 macro is a string, convert meta modifiers in string when copying
5344 the string into a vector.
5345
60f3202d
KS
53462003-02-11 Kim F. Storm <storm@cua.dk>
5347
5348 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
5349
61cb0b53
KH
53502003-02-11 Kenichi Handa <handa@m17n.org>
5351
5352 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
5353
7392e23c
KS
53542003-02-10 Kim F. Storm <storm@cua.dk>
5355
5356 * process.c: Doc fixes.
5357 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
5358
ce4254bd
KH
53592003-02-10 Kenichi Handa <handa@m17n.org>
5360
9c7a329a
KH
5361 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
5362
ce4254bd
KH
5363 * process.c (QCfilter_multibyte): New variable.
5364 (setup_process_coding_systems): New function.
e52bd6b7
SM
5365 (Fset_process_buffer, Fset_process_filter):
5366 Call setup_process_coding_systems.
ce4254bd
KH
5367 (Fstart_process): Initialize the member `filter_multibyte' of
5368 struct Lisp_Process.
5369 (create_process): Call setup_process_coding_systems.
5370 (Fmake_network_process): New keyward `:filter-multibyte'.
5371 Initialize the member `filter_multibyte' of struct Lisp_Process.
5372 Call setup_process_coding_systems.
5373 (server_accept_connection): Call setup_process_coding_systems.
5374 (read_process_output): If the process has a filter, decide the
5375 multibyteness of a string to given to the filter by
5376 `filter_multibyte' member of the process. If the process doesn't
5377 have a filter and the result of conversion is unibyte, use
5378 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
5379 multibyte form.
5380 (Fset_process_coding_system): Call setup_process_coding_systems.
5381 (Fset_process_filter_multibyte): New function.
5382 (Fprocess_filter_multibyte_p): New function.
5383 (syms_of_process): Intern and staticpro QCfilter_multibyte.
5384 Defsubr Sset_process_filter_multibyte and
5385 Sprocess_filter_multibyte_p.
5386
5387 * process.h (struct Lisp_Process): New member filter_multibyte.
5388
5389 * lisp.h (setup_process_coding_systems): Add prototype.
5390
5391 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
5392 process, update coding systems for the process.
5393
b08d5f59
KH
53942003-02-09 Kenichi Handa <handa@m17n.org>
5395
5396 * fns.c (string_to_multibyte): New function.
5397 (Fstring_to_multibyte): New function.
5398 (syms_of_fns): Defsubr it.
5399
0dfd93c0
AS
54002003-02-08 Andreas Schwab <schwab@suse.de>
5401
5402 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
5403 instead of the substitution.
5404
7b76ca1c
JD
54052003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5406
5407 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
5408
5409 * xmenu.c (menu_position_func): Adjust menu popup position so that
5410 the menu is fully visible.
7b76ca1c 5411
2436a4e4
JD
54122003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5413
5414 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
e52bd6b7
SM
5415 (x_make_frame_invisible, x_wm_set_icon_position):
5416 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
2436a4e4
JD
5417
5418 * xfns.c (x_set_name, x_set_title): Ditto.
5419
37d1e680
RS
54202003-02-04 Richard M. Stallman <rms@gnu.org>
5421
5422 * keyboard.c (echo_now): Update before_command_echo_length.
5423 (Freset_this_command_lengths): Reset this_command_key_count etc.
5424 immediately rather than arranging to do it later.
5425 (before_command_key_count_1, before_command_echo_length_1)
5426 (before_command_restore_flag): Vars deleted.
5427 (add_command_key): Don't handle before_command_restore_flag.
5428 (read_char, record_menu_key): Don't update before_command_key_count or
5429 before_command_echo_length.
5430 (read_char): Don't handle before_command_restore_flag.
5431
5432 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
5433 in direct-output clauses if it wouldn't be called in the ordinary case.
5434
578846a3
KS
54352003-02-04 Kim F. Storm <storm@cua.dk>
5436
5437 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
5438
49853a4d
JD
54392003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5440
5441 * gtkutil.c (remove_from_container): Copying list is not needed.
5442 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
5443 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
5444 on list returned from gtk_container_get_children to avoid memory leak.
5445
8b53dc06
JR
54462003-02-01 Jason Rumney <jasonr@gnu.org>
5447
5d54d177
JR
5448 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
5449 local malloc.
5450 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
5451 definitions in xpm.h.
5452 (init_xpm_functions): New function.
5453 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
5454 (init_external_image_libraries): Try to load libXpm.dll.
5455
8b53dc06
JR
5456 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
5457 timestamp.
5458
b222e415
DL
54592003-01-31 Dave Love <fx@gnu.org>
5460
5461 * syntax.c (Fskip_chars_forward)
5462 (open-paren-in-column-0-is-defun-start): Doc fix.
5463
c60ee5e7
JB
54642003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
5465
5466 * fileio.c: Support // at start of name for Cygwin (just added proper
5467 preprocessor tests).
5468
5469 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
5470
5471 * Makefile.in: Use @EXEEXT@ for Cygwin.
5472
5473 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
5474
5475 * s/cygwin.h: Added for Cygwin port.
5476
53b37591
JB
54772003-01-31 Juanma Barranquero <lektu@terra.es>
5478
5479 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
5480 when including gif_lib.h.
fe929957
JB
5481 (init_gif_functions, init_tiff_functions): New functions.
5482 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
5483 Windows. Disable color table lookups. Call library functions
53b37591 5484 through pointers determined at runtime.
fe929957
JB
5485 (init_external_image_libraries): Try to load libungif.dll and
5486 libtiff.dll.
53b37591 5487
45415a8f
KH
54882003-01-31 Kenichi Handa <handa@m17n.org>
5489
5490 * xdisp.c (SKIP_GLYPHS): New macro.
e52bd6b7 5491 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
45415a8f 5492
a97e4138
JD
54932003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5494
e52bd6b7 5495 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
a97e4138 5496
6eed9bed
DL
54972003-01-30 Dave Love <fx@gnu.org>
5498
5499 * alloc.c (Vgc_elapsed, gcs_done): New variables.
5500 (Fgarbage_collect): Use them.
5501 (init_alloc, syms_of_alloc): Set them up.
5502
100dcd40
JB
55032003-01-30 Juanma Barranquero <lektu@terra.es>
5504
5505 * w32fns.c (init_external_image_libraries): Add missing operator.
5506
fbd852af
JR
55072003-01-29 Jason Rumney <jasonr@gnu.org>
5508
5509 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
5510 an alternative name for jpeg.dll.
5511
8a2d8020
KH
55122003-01-29 Kenichi Handa <handa@m17n.org>
5513
5514 * xdisp.c (set_cursor_from_row): Pay attention to string display
5515 properties.
5516
058c18c7
AC
55172003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
5518
5519 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
5520 <escape>.
5521 (keycode_to_xkeysym_table): Reformat and add more comments.
5522 (XTread_socket): Drop special case for backspace.
5523
385f11cf
AC
55242003-01-28 Andrew Choi <akochoi@shaw.ca>
5525
5526 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
5527 values in old-style RGB specs.
5528
c922a224
JB
55292003-01-27 Juanma Barranquero <lektu@terra.es>
5530
5531 * w32fns.c (init_external_image_libraries): Try alternate names for the
5532 jpeg dll.
5533
0a1d6de0
JD
55342003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5535
5536 * gtkutil.c (create_dialog, xg_separator_p)
5537 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
5538 before calling strcmp or strlen.
5539
a97e4138 55402003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1d1885fc
JD
5541
5542 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
5543 and handle image load failure.
5544
28908312
JR
55452003-01-26 Jason Rumney <jasonr@gnu.org>
5546
5547 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
5548 New functions.
5549 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
5550 Disable color table lookups. Call jpeg library functions
5551 through pointers determined at runtime.
5552 (init_external_image_libraries): Try to load jpeg.dll.
5553
84e47416
RS
55542003-01-25 Richard M. Stallman <rms@gnu.org>
5555
5556 * lisp.h: Declare format2 instead of format1.
5557
5558 * fileio.c (barf_or_query_if_file_exists):
5559 Call format2 instead of format1.
5560
5561 * editfns.c (format2): New function, replaces format1
5562 but takes exactly two Lisp Objects as format args.
5563
5564 * buffer.c (Fkill_buffer): Call format2 instead of format1.
5565
a97e4138 55662003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1fcfb866
JD
5567
5568 * xterm.h: Change to return value of x_dispatch_event to int.
5569
5570 * xterm.c (x_filter_event): New function.
5571 (event_handler_gdk, XTread_socket): Call x_filter_event.
5572 (x_dispatch_event): Change to return value of finish.
5573 (event_handler_gdk): Use return value from x_dispatch_event.
5574
5575 * xfns.c (x_window): Call create_frame_xic for GTK version to
5576 initialize input methods.
5577
5578 * gtkutil.h: Add (void) prototypes.
5579
5580 * gtkutil.c (create_menus): Remove code that puts the help menu to
5581 the right.
5582
54eefef1
JR
55832003-01-25 Jason Rumney <jasonr@gnu.org>
5584
5585 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
5586 [HAVE_PNG]: Sync with xfns.c version.
5587 (png_load): Adjust colors for Windows. Use Windows
5588 bitmaps. Disable color table lookups.
c262430d
JR
5589 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
5590 (init_png_functions): New function.
5591 (png_read_from_memory, png_load): Call png library functions
5592 through pointers determined at runtime.
5593 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
5594 (init_external_image_libraries): New function.
5595 (init_xfns): Call it.
54eefef1 5596
1a9e275b
AS
55972003-01-24 Andreas Schwab <schwab@suse.de>
5598
5599 * minibuf.c (Fminibuffer_message): Verify type of parameter.
5600
a97e4138 56012003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
81e302ef
JD
5602
5603 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
5604 of static initializer.
5605
422eec7e
DL
56062003-01-24 Dave Love <fx@gnu.org>
5607
5608 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
5609 architectures.
5610
5611 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
5612 Use __alignof__.
5613
2a026b04
KH
56142003-01-24 Kenichi Handa <handa@m17n.org>
5615
5616 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
e52bd6b7 5617 It it is nonzero, don't pretend that an invisible area doesn't exist.
2a026b04
KH
5618 (command_loop_1): Call adjust_point_for_property with proper
5619 second arg.
5620
a18bb28d
JR
56212003-01-22 Jason Rumney <jasonr@gnu.org>
5622
5623 Sync changes with xterm.c and xfns.c.
5624
5625 * w32term.c (x_draw_glyph_string_foreground)
5626 (x_draw_composite_glyph_string_foreground): Implement overstriking.
5627
5628 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
5629 phys_cursor's hpos is overwritten. This is still not completely
5630 correct, as it doesn't really make sense to use hpos at all to
5631 get the cursor glyph (as that is relative to the width of the
5632 characters on the line, which may have changed during the update).
5633
5634 * w32term.c (notice_overwritten_cursor): Handle the special case
5635 of the cursor being in the first blank non-text line at the
5636 end of a window.
5637
5638 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
5639 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
5640 Compute from the x position returned by x_draw_glyphs.
5641
5642 (x_display_and_set_cursor): Don't set phys_cursor_width here,
5643 except for NO_CURSOR and system caret, to make phys_cursor_width
5644 contain what its name suggests.
5645 (notice_overwritten_cursor): Consider the cursor image erased if
5646 the output area intersects the cursor image in y-direction.
5647
6a097c0c
SM
5648 * w32term.c (note_mode_line_or_margin_highlight): Rename from
5649 note_mode_line_highlight and extend.
a18bb28d
JR
5650
5651 * w32term.c (last_window): New variable.
5652 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
5653 (note_mouse_movement): Remove reimplemented code in #if 0.
5654
5655 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
5656 not update_mode_lines, and always set it to 1.
5657
ac6e47ef
JR
56582003-01-21 Jason Rumney <jasonr@gnu.org>
5659
5660 * w32fns.c (IDC_HAND): Define it if system headers don't.
5661
56622003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
5663
5664 * w32term.h (struct w32_output): New member hand_cursor.
5665 (WM_EMACS_SETCURSOR): New message definition.
5666
5667 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
5668 function w32_define_cursor.
5669 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
5670 position, change member name output_data.x to output_data.w32 and
5671 add function w32_define_cursor.
5672 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
5673 and change member name output_data.x to output_data.w32.
e52bd6b7
SM
5674 (w32_initialize_display_info):
5675 Setup dpyinfo->vertical_scroll_bar_cursor.
ac6e47ef
JR
5676
5677 * w32fns.c (Vx_hand_shape): New variable.
5678 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
5679 WM_EMACS_SETCURSOR.
5680 (x-create-frame): Setup Cursor types.
5681
ceb39a17
JB
56822003-01-21 David Ponce <david@dponce.com>
5683
ac6e47ef
JR
5684 * w32term.c (w32_encode_char): For DIM=1 charset, set
5685 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
5686 x_encode_char change by Kenichi Handa <handa@m17n.org> on
ceb39a17 5687 2002-09-30.)
ac6e47ef
JR
5688 (w32_draw_relief_rect): Declare all args.
5689 (w32_define_cursor): New.
5690
5691 * w32fns.c (w32_load_cursor): New function.
5692 (w32_init_class): Use it.
5693 (x_put_x_image): Declare all args.
5694
46cf0bed
JB
56952003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
5696
5697 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
5698
a97e4138 56992003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e8794476
JD
5700
5701 * gtkutil.c: Must include stdio.h before termhooks.h
5702
83fc9c63
DL
57032003-01-21 Dave Love <fx@gnu.org>
5704
5705 * alloc.c (Fgc_status): Print zombie list.
5706 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
5707 Fix assignment of zombies.
5708 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
5709 Don't take car of non-cons.
5710
5711 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
5712
5713 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
5714
fe04b8c8
JR
57152003-01-20 David Ponce <david@dponce.com>
5716
5717 * w32menu.c (digest_single_submenu): Declare all args.
5718
5719 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
5720 changes in xmenu.c:
5721
5722 (parse_single_submenu): Use individual keymap's prompt
5723 string as pane name, if there is one.
5724 (set_frame_menubar): Save menu_items_n_panes from each call to
5725 parse_single_submenu and use it when calling digest_single_submenu.
5726
539e69a9
ST
57272003-01-20 Steven Tamm <steventamm@mac.com>
5728
5729 * macterm.c (XTread_socket): Checks for valid, visible window
5730 before sending a scroll-wheel event.
5731
675d000f
RS
57322003-01-20 Richard M. Stallman <rms@gnu.org>
5733
5734 * xdisp.c (redisplay_window): If mini window's buffer is not
5735 a minibuffer, then redisplay it like other windows.
5736
a97e4138 57372003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22174d10
JD
5738
5739 * gtkutil.c (xg_create_frame_widgets): Check if there is an
5740 external tool bar before setting tool bar height.
5741
048addec
JD
57422003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5743
5744 * xterm.c (handle_one_xevent): Surround popup_activated
5745 with #ifdef:s for non-toolkit version.
5746
5747 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
5748 (gtkutil.o): New file.
5749 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
5750 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
5751
5752 * gtkutil.c: New file for GTK version.
5753
5754 * gtkutil.h: New file for GTK version.
5755
5756 * xterm.h: Add xt_or_gtk_widget.
5757 Include gtk files for USE_GTK.
5758 (struct x_output): Add toolbar_height.
5759 (struct x_output): Add GTK widgets and Gdk size_hints.
5760 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
5761 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
5762 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
5763
5764 * xterm.c: Include gtkutil.h for USE_GTK.
5765 Declare extern void free_frame_menubar for USE_GTK.
5766 (note_mouse_highlight): Check popup_activated for USE_GTK.
5767 (xt_action_hook): Don't compile if USE_GTK.
5768 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
5769 (xg_scroll_callback): New function.
5770 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
5771 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
5772 for USE_GTK.
5773 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
5774 xg_show_scroll_bar for USE_GTK.
5775 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
5776 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
5777 (event_handler_gdk): New function for USE_GTK.
5778 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
5779 (handle_one_xevent): Make sure widget is mapped before
5780 calling x_real_positions for USE_GTK.
5781 (XTread_socket): Add GTK event loop for USE_GTK.
5782 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
5783 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
5784 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
5785 (x_iconify_frame): Add code for USE_GTK.
5786 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
5787 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
5788 is in gtkutil.c.
5789 (x_term_init): Add initialization for GTK.
5790 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
5791
5792 * xmenu.c: Include gtkutil.h for USE_GTK.
5793 (Fx_popup_menu): Use current position if x and y is NIL.
6bdb309a
SM
5794 (single_menu_item, single_menu_item, Fx_popup_dialog):
5795 Check for USE_GTK.
048addec
JD
5796 (popup_widget_loop): New function for USE_GTK.
5797 (x_activate_menubar): Add code for USE_GTK.
5798 (popup_activate_callback, popup_deactivate_callback)
6bdb309a
SM
5799 (menu_highlight_callback, menubar_selection_callback):
5800 Add USE_GTK versions.
048addec
JD
5801 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
5802 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
5803 (free_frame_menubar): Only compile if not USE_GTK. GTK version
5804 is in gtkutil.c.
5805 (popup_selection_callback): New version for USE_GTK.
5806 (create_and_show_popup_menu): New fuction, one USE_GTK version and
6bdb309a 5807 one USE_X_TOOLKIT version.
048addec
JD
5808 (xmenu_show): Call create_and_show_popup_menu.
5809 (dialog_selection_callback): New version for USE_GTK.
5810 (create_and_show_dialog): New fuction, one USE_GTK version and
6bdb309a 5811 one USE_X_TOOLKIT version.
048addec
JD
5812 (xdialog_show): Call create_and_show_dialog.
5813
5814 * xfns.c: Include gtkutil for USE_GTK.
5815 (x_window_to_frame, x_any_window_to_frame)
5816 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
5817 (x_top_window_to_frame): Add code for USE_GTK.
5818 (x_set_background_color): Call xg_set_background_color for GTK.
5819 (x_set_menu_bar_lines): Check for USE_GTK.
5820 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
5821 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
5822 (x_window): Call xg_create_frame_widgets for USE_GTK.
5823 (Fx_create_frame): Check for USE_GTK
5824 (Fx_file_dialog): New implementation for USE_GTK.
5825
5826 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
5827 (update_menu_bar): Add check for USE_GTK.
5828 (update_tool_bar): Add check for USE_GTK and external tool bar.
5829 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
5830 (redisplay_internal): Add check for USE_GTK and popup_activated.
5831 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
5832 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
5833 (display_menu_bar): Add check for USE_GTK
5834
5835 * lisp.h: Declare Vx_resource_name extern.
5836
a64387ee 5837 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
048addec
JD
5838 for USE_GTK.
5839 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
5840
5841 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
5842 (FRAME_EXTERNAL_TOOL_BAR): New macro.
5843 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
5844
5845 * fileio.c (Fread_file_name): Add check for USE_GTK.
5846
6bdb309a
SM
5847 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
5848 Add check for USE_GTK.
048addec
JD
5849
5850 * config.in: Added HAVE_GTK
5851
5852 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
5853
58542003-01-18 Stefan Monnier <monnier@cs.yale.edu>
5855
5856 * charset.h (Funibyte_char_to_multibyte): Export.
5857
58582003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5859
5860 * xmenu.c (mouse_position_for_popup): New function.
5861 (Fx_popup_menu): Call mouse_position_for_popup for X and
5862 mouse_position_hook for others.
5863
58642003-01-17 Kim F. Storm <storm@cua.dk>
5865
5866 * editfns.c (Finsert): Mention `string-make-multibyte' and
5867 `string-as-multibyte' in doc string.
5868
58692003-01-17 Kenichi Handa <handa@m17n.org>
5870
5871 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
3c02a6f5 5872
048addec
JD
5873 * editfns.c (Fformat): Convert an unibyte char argument that is
5874 formatted by "%c" to multibyte if the total result must be a
5875 multibyte string.
cd7df9c0 5876
048addec 58772003-01-16 Kim F. Storm <storm@cua.dk>
cd7df9c0 5878
048addec
JD
5879 * process.c (set-process-filter): Document unibyte/multibyte-ness
5880 of string argument.
56210ecd 5881
048addec 58822003-01-16 Kenichi Handa <handa@m17n.org>
56210ecd 5883
048addec 5884 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
56210ecd 5885
048addec
JD
5886 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
5887 (re_search_2): Likewise.
6df8b9fe 5888
048addec 58892003-01-15 Kenichi Handa <handa@m17n.org>
6df8b9fe 5890
048addec
JD
5891 * xdisp.c (message_dolog): Fix bug of the case that *Message*
5892 buffer is unibyte.
292ddc31 5893
048addec 58942003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
292ddc31 5895
048addec 5896 * fns.c (Fsubstring): Clarify doc string.
292ddc31 5897
048addec
JD
5898 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
5899 (Fprevious_char_property_change)
5900 (Fnext_single_char_property_change)
5901 (Fprevious_single_char_property_change, Fnext_property_change)
5902 (Fnext_single_property_change, Fprevious_property_change)
5903 (Fprevious_single_property_change, Fadd_text_properties)
5904 (Fput_text_property, Fset_text_properties)
5905 (Fremove_text_properties, Fremove_list_of_text_properties)
5906 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
63e4e4c6 5907
048addec 59082003-01-14 Kim F. Storm <storm@cua.dk>
63e4e4c6 5909
048addec
JD
5910 * process.h (struct Lisp_Process): New member plist replaces old
5911 member private_vars. All uses changed.
63e4e4c6 5912
048addec 5913 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
6bdb309a 5914 (QCplist): Rename from QCvars. Change all uses.
048addec 5915 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
6bdb309a 5916 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
048addec 5917 (syms_of_process): Intern, staticpro, defsubr these.
6bdb309a 5918 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7ed16567 5919
048addec 59202003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7ed16567 5921
6bdb309a 5922 * m/delta.h: Remove (obsolete).
e833850f 5923
048addec 59242003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
e833850f 5925
048addec
JD
5926 * fileio.c (Fdelete_directory, Fdelete_file): Document the
5927 behaviour in front of symlinks.
5928 (Fdelete_file): Raise an error on directories.
817cb127 5929
048addec 59302003-01-13 Dave Love <fx@gnu.org>
817cb127 5931
048addec 5932 * fns.c (Freverse): Use QUIT.
3e8cf2ea 5933
048addec 59342003-01-13 Richard M. Stallman <rms@gnu.org>
3e8cf2ea 5935
048addec
JD
5936 * minibuf.c (minibuffer_completion_contents):
5937 Error if point is inside prompt.
3e8cf2ea 5938
048addec
JD
5939 * keyboard.c (command_loop_1): Don't redisplay directly
5940 if there's a post-command-hook.
3e8cf2ea 5941
048addec
JD
5942 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
5943 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
2c10f029 5944
048addec 59452003-01-12 Kim F. Storm <storm@cua.dk>
94e8ffca 5946
048addec 5947 * process.h (struct Lisp_Process): New member private_vars.
94e8ffca 5948
048addec
JD
5949 * process.c (QCvars): New variable.
5950 (syms_of_process): Intern and staticpro it.
5951 (Fset_process_contact): Removed function.
5952 (Fprocess_variable, Fset_process_variable): New functions.
5953 (syms_of_process): Defsubr them.
5954 (Fstart_process): Initialize private_vars plist to nil.
5955 (Fmake_network_process): New arg :vars to setup the private
5956 variables for new network process.
5957 (server_accept_connection): Copy server's private variables to
5958 client process.
2c10f029 5959
048addec
JD
5960 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
5961 crashes). Code rewritten and simplified. Now directly aligns the
5962 pointer and recalculates pure_bytes_used, rather than aligning the
5963 size and adjusting the pointer.
b8a76c6c 5964
048addec 59652003-01-11 Kim F. Storm <storm@cua.dk>
b8a76c6c 5966
048addec
JD
5967 * process.c (Fset_process_contact): New function.
5968 (syms_of_process): defsubr it.
5969 (make-network-process): Update doc.
3a8d0899 5970
048addec 59712003-01-10 Andreas Schwab <schwab@suse.de>
3a8d0899 5972
048addec
JD
5973 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
5974 Reported by Berthold Gunreben <b.gunreben@web.de>.
4abc7470 5975
048addec 59762003-01-10 Dave Love <fx@gnu.org>
4abc7470 5977
048addec 5978 * composite.c (syms_of_composite): Make composition_hash_table weak.
b809d662 5979
048addec 59802003-01-09 Kim F. Storm <storm@cua.dk>
b809d662 5981
048addec
JD
5982 * process.c (Fmake_network_process): Convert new port number
5983 to host byte order for `:service t' case. From Mario Lang.
bf338245 5984
048addec 59852003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
bf338245 5986
048addec
JD
5987 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
5988 instead of XtAppProcessEvent.
bf338245 5989
048addec
JD
5990 * xterm.c (handle_one_xevent): New function.
5991 (x_dispatch_event): New function.
5992 (XTread_socket): Call handle_one_xevent.
bf338245 5993
048addec 5994 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
e833850f 5995
048addec
JD
5996 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
5997 call XQueryPointer to get coordinates.
5998 (popup_get_selection): Do not set popup_activated_flag to zero,
5999 let popup_deactivate_callback do that. Needed for Motif.
6000 Call x_dispatch_event instead of XtDispatchEvent.
6001 (xmenu_show): Calculate root coordinate from frame top/left position.
c4af2bce 6002
048addec 60032003-01-08 Kim F. Storm <storm@cua.dk>
c4af2bce 6004
6bdb309a 6005 * process.c (server_accept_connection): Fix recording of new
048addec
JD
6006 connection's local address in :local property of contact info.
6007 (Fmake_network_process): Record local network address for new
6008 client processes in :local property of contact info.
6bdb309a 6009 (format-network-address): Add arg OMIT-PORT. Change callers.
00e3ab56 6010
048addec 60112003-01-07 Dave Love <fx@gnu.org>
00e3ab56 6012
048addec 6013 * Makefile.in (fns.o): Depend on coding.h.
f387e1fd 6014
048addec 60152003-01-07 Markus Rost <rost@math.ohio-state.edu>
f387e1fd 6016
048addec 6017 * minibuf.c (Fread_variable): Doc fix.
f387e1fd 6018
048addec
JD
6019 * eval.c (Fuser_variable_p): Doc change. For custom variables,
6020 use the same test as for custom-variable-p.
8c6d74c6 6021
048addec 60222003-01-05 Richard M. Stallman <rms@gnu.org>
e833850f 6023
048addec
JD
6024 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
6025 Count LAST_LINE_MISFIT in scroll margin for end of window.
6026 Move label too_near_end before setting SCROLL_MARGIN_POS.
6027 Set LAST_LINE_MISFIT before jumping there.
8c6d74c6 6028
048addec
JD
6029 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
6030 scroll_conservatively case. If scrolling that much doesn't change
6031 STARTP, move it down one line.
e833850f 6032
048addec
JD
6033 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
6034 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8c6d74c6 6035
048addec
JD
6036 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
6037 selected frame.
8c6d74c6 6038
048addec
JD
6039 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
6040 (syms_of_keymap): staticpro them.
6041 (Fapropos_internal): Initialize them and clear them out.
6042 Don't GCPRO them.
8c6d74c6 6043
048addec
JD
6044 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
6045 Doc fixes.
8c6d74c6 6046
048addec
JD
6047 * lisp.h: New misc type Lisp_Save_Value.
6048 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
6049 (XSAVE_VALUE): New macro.
6050 (struct Lisp_Save_Value): New data type.
6051 (union Lisp_Misc): Add u_save_value alternative.
6052 (make_save_value): Declared.
8c6d74c6 6053
048addec 6054 * alloc.c (make_save_value): New function.
8c6d74c6 6055
048addec
JD
6056 * xterm.c (x_catch_errors): Save dpy using make_save_value.
6057 (x_catch_errors_unwind): Call XSync.
8c6d74c6 6058
048addec 60592003-01-01 Richard M. Stallman <rms@gnu.org>
8c6d74c6 6060
048addec 6061 * window.c (window_scroll_pixel_based): Partially undo last change.
8c6d74c6 6062
048addec
JD
6063 * keyboard.c (command_loop_1): Call adjust_point_for_property
6064 in direct action cases for Qforward_char and Qbackward_char.
6065 Set already_adjusted so it won't be done twice.
8c6d74c6 6066
048addec 60672002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
8c6d74c6 6068
048addec
JD
6069 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
6070 type definition of size_t.
8c609cff 6071
048addec 60722003-01-02 Steven Tamm <steventamm@mac.com>
8c609cff 6073
048addec
JD
6074 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
6075 distinguish Carbon GUI builds from X11 builds on darwin.
b37113a1 6076
048addec 60772002-12-30 Steven Tamm <steventamm@mac.com>
b37113a1 6078
048addec
JD
6079 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
6080 to default to t.
fa634a5e 6081
048addec 60822002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
fa634a5e 6083
048addec 6084 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
ce0669d4 6085
048addec 60862002-12-28 Steven Tamm <steventamm@mac.com>
ce0669d4 6087
048addec
JD
6088 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
6089 allow building in a different directory than source. Uses some
6090 GNU Make extensions, but there is no other make on Mac OS X.
2308af15 6091
048addec 60922002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
2308af15 6093
048addec
JD
6094 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
6095 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
6096 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
6097 (Fstring_to_number): Mention the returned value in the doc strings.
2155ecf3 6098
048addec 60992002-12-23 Richard M. Stallman <rms@gnu.org>
2155ecf3 6100
048addec
JD
6101 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
6102 <scroll-down-aggressively>: Doc fix.
2155ecf3 6103
048addec
JD
6104 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
6105 string as pane name, if there is one.
6106 (set_frame_menubar): Save menu_items_n_panes from each call to
6107 parse_single_submenu and use it when calling digest_single_submenu.
2155ecf3 6108
048addec
JD
6109 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
6110 Don't try to make last line fully visible if it is past end of window.
61f1d295 6111
048addec 61122002-12-22 Steven Tamm <steventamm@mac.com>
61f1d295 6113
048addec
JD
6114 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
6115 (mac_menu_show): Add support for hierarchical popup menus.
6116 (add_menu_item): Remove indentation support.
6117 (fill_submenu, fill_menu): Create hierarchical menus
6118 instead of using indentation.
0b17a217 6119
048addec 61202002-12-22 Richard M. Stallman <rms@gnu.org>
0b17a217 6121
048addec
JD
6122 * xdisp.c (try_cursor_movement): Don't call try_window here.
6123 (redisplay_window): Never redisplay minibuffer when inactive.
0b17a217 6124
048addec 6125 * window.c (select_window_1): Undo 9/21 change.
402e4f8b 6126
048addec 61272002-12-22 Steven Tamm <steventamm@mac.com>
402e4f8b 6128
048addec
JD
6129 * macterm.c (XTread_socket): Call KeyTranslate for control and
6130 meta to deal correctly shifted non-alpha characters, like C-S-5
6131 being treated like C-%. Does not look for shift key to deal
6132 with masking off control-key with mac-reverse-ctrl-meta.
f02cac82 6133
048addec 61342002-12-21 Richard M. Stallman <rms@gnu.org>
f02cac82 6135
048addec
JD
6136 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
6137 If it is non-nil, run timers. Use an unwind-protect to requeue
6138 the events that were read ahead.
6139 (popup_get_selection_unwind): New subroutine.
6140 (popup_get_selection_queue): File-scope variable now holds that queue.
6141 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
6142 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
6143 Use an unwind-protect to pop down the dialog box.
6144 (xdialog_show_unwind): New subroutine implements that.
f02cac82 6145
048addec
JD
6146 * xdisp.c (row_containing_pos): Change exit test using last_y.
6147 (try_window_id): Abort if row_containing_pos returns null.
f02cac82 6148
048addec
JD
6149 * lread.c (load_error_handler): New function.
6150 (Fload): Handle errors in Fsubstitute_in_file_name.
6151 Don't expect Fsignal to return.
f02cac82 6152
048addec
JD
6153 * eval.c: Errors and throws work right with interrupt blocking.
6154 (struct catchtag): New elt interrupt_input_blocked.
6155 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
6156 (internal_catch, Fcondition_case, internal_condition_case)
6157 (internal_condition_case_1, internal_condition_case_2): Save it.
6158 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
f02cac82 6159
048addec 6160 * editfns.c (Fformat): Add parens.
f02cac82 6161
048addec
JD
6162 * dired.c (file_name_completion): Fix that change.
6163 Delete special quit-handling code; just use QUIT.
f02cac82 6164
048addec 61652002-12-21 Tak Ota <Takaaki.Ota@am.sony.com> (tiny change)
f02cac82 6166
048addec
JD
6167 * dired.c (file_name_completion): Close directory on error
6168 just as in directory_files_internal.
1a590729 6169
048addec 61702002-12-19 David Kastrup <David.Kastrup@t-online.de>
1a590729 6171
048addec
JD
6172 * window.c (Fset_window_configuration): Set old_point to correct
6173 value when new_current_buffer == current_buffer.
f02cac82 6174
048addec 61752002-12-17 Ben Key <bkey1@tampabay.rr.com>
2308af15 6176
048addec
JD
6177 Revisited my earlier fix for the following entry in etc/PROBLEMS:
6178 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
6179 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9785d95b 6180
048addec
JD
6181 These changes were in part based upon suggestions made by Peter
6182 'Luna' Runestig [peter@runestig.com].
9785d95b 6183
048addec
JD
6184 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
6185 g_b_init_get_token_information, g_b_init_lookup_account_sid,
6bdb309a 6186 g_b_init_get_sid_identifier_authority ): Add several static
048addec 6187 global variables.
9785d95b 6188
048addec
JD
6189 * w32.c (globals_of_w32): New function. Used to initialize those
6190 global variables that must always be initialized on startup even
6191 when the global variable initialized is non zero. Its primary
6192 purpose at this time is to set the global variables
6193 g_b_init_is_windows_9x, g_b_init_open_process_token,
6194 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
6195 g_b_init_get_sid_identifier_authority to 0 on startup.
6196 Called from main.
9785d95b 6197
048addec
JD
6198 * w32.c (is_windows_9x): Perform initialization only if
6199 g_b_init_is_windows_9x is equal to 0. On initialization set
6200 g_b_init_is_windows_9x equal to 1.
2308af15 6201
048addec
JD
6202 * w32.c (open_process_token): Perform initialization only if
6203 g_b_init_open_process_token is equal to 0. On initialization set
6204 g_b_init_open_process_token equal to 1.
2308af15 6205
048addec
JD
6206 * w32.c (get_token_information): Perform initialization only if
6207 g_b_init_get_token_information is equal to 0. On initialization
6208 set g_b_init_get_token_information equal to 1.
9785d95b 6209
048addec
JD
6210 * w32.c (lookup_account_sid): Perform initialization only if
6211 g_b_init_lookup_account_sid is equal to 0. On initialization
6212 set g_b_init_lookup_account_sid equal to 1.
9785d95b 6213
048addec
JD
6214 * w32.c (get_sid_identifier_authority): Perform initialization
6215 only if g_b_init_get_sid_identifier_authority is equal to 0.
6216 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
9785d95b 6217
048addec
JD
6218 * w32fns.c (globals_of_w32fns): New function. Used to initialize
6219 those global variables that must always be initialized on startup
6220 even when the global variable initialized is non zero.
6221 Its primary purpose at this time is to initialize the global variable
6222 track_mouse_event_fn.
9785d95b 6223
a64387ee 6224 * w32fns.c (w32_wnd_proc): Remove initialization of
048addec 6225 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
9785d95b 6226
048addec 6227 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
9785d95b 6228
a64387ee 6229 * w32menu.c (globals_of_w32menu): New function. Used to
048addec
JD
6230 initialize those global variables that must always be initialized
6231 on startup even when the global variable initialized is non zero.
6232 Its primary purpose at this time is to initialize the global
6233 variables get_menu_item_info and set_menu_item_info.
9785d95b 6234
048addec
JD
6235 * w32menu.c (initialize_frame_menubar): Remove initialization of
6236 get_menu_item_info and set_menu_item_info.
9785d95b 6237
048addec 6238 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
9785d95b 6239
048addec
JD
6240 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
6241 Declare them.
9785d95b 6242
048addec
JD
6243 * emacs.c (main): Call globals_of_w32 prior to calling
6244 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
6245 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
6246 is defined.
9785d95b 6247
048addec
JD
6248 * w32term.c (x_update_window_begin): Fix Windows API error
6249 detected by BoundsChecker. Test to determine if
6250 w32_system_caret_hwnd is NULL prior to attempting to use
6251 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
2308af15 6252
048addec
JD
6253 * w32term.c (x_update_window_end): Fix Windows API error
6254 detected by BoundsChecker. Test to determine if
6255 w32_system_caret_hwnd is NULL prior to attempting to use
6256 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
b6da19ef 6257
048addec 62582002-12-17 Kenichi Handa <handa@m17n.org>
b6da19ef 6259
048addec
JD
6260 * coding.c (coding_system_require_warning): New variable.
6261 (syms_of_coding): DEFVAR it.
b6da19ef 6262
048addec 6263 * coding.h (coding_system_require_warning): Extern it.
b6da19ef 6264
048addec
JD
6265 * fileio.c (choose_write_coding_system): Even if
6266 Vcoding_system_for_write is non-nil, if
6267 coding_system_require_warning is nonzero, call
6268 Vselect_safe_coding_system_function.
bfcf6dbe 6269
048addec 62702002-12-17 Markus Rost <rost@math.ohio-state.edu>
bfcf6dbe 6271
048addec
JD
6272 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
6273 (lisp): Add font-core.
2c568af5 6274
048addec 62752002-12-13 Stefan Monnier <monnier@cs.yale.edu>
2c568af5 6276
048addec
JD
6277 * textprop.c (text_read_only): New arg `propval'.
6278 (get_char_property_and_overlay): Remove unused var `next_overlay'.
6279 (verify_interval_modification): Use text_read_only's new arg.
b8c6225c 6280
048addec 62812002-12-13 Kenichi Handa <handa@m17n.org>
b8c6225c 6282
048addec 6283 * coding.c (Funencodable_char_position): Set pend correctly.
706ddb8f 6284
048addec 62852002-12-12 Jason Rumney <jasonr@gnu.org>
706ddb8f 6286
048addec
JD
6287 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
6288 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
6289 Be more careful about when help_events are generated.
96720f09 6290
048addec 62912002-12-12 Steven Tamm <steventamm@mac.com>
96720f09 6292
048addec
JD
6293 * macterm.c (mac_check_for_quit_char): Correctly set the
6294 modifiers of the event to 0.
6295 * mac.c (sys_select): Duplicate rfds before calling select to
6296 ensure that rfds survive the while loop.
e5ae1c49 6297
048addec 62982002-12-11 Kim F. Storm <storm@cua.dk>
e5ae1c49 6299
048addec
JD
6300 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
6301 row_containing_pos returned NULL.
2eb46b2d 6302
048addec 63032002-12-10 Steven Tamm <steventamm@mac.com>
2eb46b2d 6304
6bdb309a 6305 * mac.c (sys_read): Fix sys_read to not call select if IO is
048addec 6306 non-blocking.
6bdb309a 6307 (sys_select): Fix sys_select to not use a timeout larger than
048addec 6308 the one given.
b11f1d8a 6309
048addec 63102002-12-10 Juanma Barranquero <lektu@terra.es>
b11f1d8a 6311
048addec 6312 * editfns.c (Fformat): Use alloca, not _alloca.
d8528226 6313
048addec 63142002-12-09 Richard M. Stallman <rms@gnu.org>
d8528226 6315
048addec
JD
6316 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
6317 as the last thing.
a4ac5b17 6318
048addec 63192002-12-09 Dave Love <fx@gnu.org>
a4ac5b17 6320
048addec 6321 * s/sol2-8.h: Removed. (Not necessary.)
ac42d7b9 6322
048addec 63232002-12-09 Matthew Swift <swift@alum.mit.edu>
ac42d7b9 6324
048addec
JD
6325 * editfns.c (Fformat): Handle precision in string conversion
6326 specifiers like libc functions do (ie, print at most that many
6327 characters).
85cce843 6328
048addec 63292002-12-08 Richard M. Stallman <rms@gnu.org>
85cce843 6330
048addec
JD
6331 * xdisp.c (row_containing_pos): Check more carefully
6332 whether charpos is really in the row before returning it.
0d4d26a7 6333
048addec 63342002-12-07 Steven Tamm <steventamm@mac.com>
0d4d26a7 6335
048addec 6336 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
b11f1d8a 6337
048addec
JD
6338 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
6339 each stack frame. This may change as it could be time consuming.
0d4d26a7 6340
048addec
JD
6341 * macterm.c (mac_check_for_quit_char, quit_char_comp)
6342 (init_quit_char_handler, mac_determine_quit_char_modifiers)
6bdb309a 6343 (mac_initialize): Add code to check for pressing of quit_char
048addec 6344 in the OS event queue.
b11f1d8a 6345
048addec
JD
6346 * mac.c (sys_select): Call mac_check_for_quit_char every second
6347 while blocking on select.
0d4d26a7 6348
048addec
JD
6349 * mac.c (sys_read): Use sys_select to test for input first
6350 before calling read, to allow C-g to break.
9252f7bc 6351
048addec 63522002-12-07 Richard M. Stallman <rms@gnu.org>
9252f7bc 6353
048addec 6354 * minibuf.c (Fcompleting_read): Doc fix.
9252f7bc 6355
048addec 6356 * lread.c (syms_of_lread) <load-history>: Doc fix.
9252f7bc 6357
048addec 6358 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9252f7bc 6359
048addec
JD
6360 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
6361 autoload.
9252f7bc 6362
048addec 6363 * data.c (Fdefalias): Record in load-history redefining an autoload.
9252f7bc 6364
048addec 6365 * alloca.c: Undo ifdef change accidentally made on 12-04.
bfa261c0 6366
048addec 63672002-12-06 Francesco Potorti` <pot@gnu.org>
bfa261c0 6368
048addec 6369 * xfns.c (png_load): Avoid double gamma correction for PNG images.
c5992177 6370
048addec 63712002-12-04 Richard M. Stallman <rms@gnu.org>
c5992177 6372
048addec 6373 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 6374
048addec 6375 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 6376
048addec 6377 * alloca.c: Don't use #error.
02d588e2 6378
048addec 63792002-12-03 Dave Love <fx@gnu.org>
02d588e2 6380
048addec
JD
6381 * buffer.c (Qucs_set_table_for_input): New.
6382 (Fget_buffer_create): Use it.
6383 (Qset_buffer_major_mode_hook): Deleted.
6384 (Fset_buffer_major_mode): Revert previous change.
6385 (init_buffer_once): Intern ucs-set-table-for-input.
6386 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
6387 Add &Qucs_set_table_for_input.
451e2697 6388
048addec 63892002-12-03 Andreas Schwab <schwab@suse.de>
451e2697 6390
048addec
JD
6391 * callint.c (Fcall_interactively): Use next_event only if less
6392 than key_count.
72742a99 6393
048addec 63942002-12-02 Andrew Choi <akochoi@shaw.ca>
72742a99 6395
048addec
JD
6396 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
6397 names to 255 characters.
72742a99 6398
048addec
JD
6399 * macterm.c (XTread_socket): If all frames have been collapsed,
6400 expand the first one before handling drag-and-drop events.
72742a99 6401
048addec
JD
6402 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
6403 which is detected by autoconf.
40e6ff95 6404
048addec 64052002-12-01 Steven Tamm <steventamm@mac.com>
40e6ff95 6406
048addec
JD
6407 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
6408 offset in two hints table to allow prebinding to be redone and
6409 allow the executable to be stripped.
c02138c6 6410
048addec 64112002-11-29 Dave Love <fx@gnu.org>
c02138c6 6412
048addec
JD
6413 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
6414 already provided.
0e47bbf7 6415
048addec 64162002-11-29 Richard M. Stallman <rms@gnu.org>
0e47bbf7 6417
048addec
JD
6418 * xdisp.c (start_display): Check more intelligently for
6419 whether the line is continued.
6420 (move_it_vertically_backward): Clear it->continuation_lines_width.
44129dcb 6421
048addec 64222002-11-28 Dave Love <fx@gnu.org>
44129dcb 6423
048addec
JD
6424 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
6425 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
f707342d 6426
048addec 64272002-11-27 Steven Tamm <steventamm@mac.com>
f707342d 6428
048addec
JD
6429 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
6430 more descriptive error output from lread.c:Fload upon most require
6431 cycles during boostrapping.
1637fd2c 6432
048addec 64332002-11-27 Jason Rumney <jasonr@gnu.org>
1637fd2c 6434
048addec
JD
6435 * fileio.c (Finsert_file_contents): Give a more appropriate error
6436 for files bigger than 2Gb when off_t is 32 bit.
1637fd2c 6437
048addec
JD
6438 * dired.c (Ffile_attributes): Don't return negative file sizes for
6439 files bigger than 2Gb when off_t is 32 bit.
540c2788 6440
048addec 64412002-11-27 Dave Love <fx@gnu.org>
6b2fd6ea 6442
048addec 6443 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6b2fd6ea 6444
048addec
JD
6445 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
6446 Test GETPGRP_VOID instead.
6447 [BSD_TERMIOS]: Remove definitions (never used).
6b2fd6ea 6448
048addec
JD
6449 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
6450 Don't define.
6451 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
540c2788 6452
048addec 6453 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8cc03716 6454
048addec 64552002-11-25 Jason Rumney <jasonr@gnu.org>
8cc03716 6456
048addec
JD
6457 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
6458 supported.
4042a81a 6459
048addec 64602002-11-25 Dave Love <fx@gnu.org>
4042a81a 6461
048addec 6462 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
4042a81a 6463
048addec 6464 * Makefile.in (TEMACS_LDFLAGS): Update last change.
be4ee72f 6465
048addec 64662002-11-25 Andreas Schwab <schwab@suse.de>
be4ee72f 6467
048addec 6468 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
82122254 6469
048addec 64702002-11-24 Steven Tamm <steventamm@mac.com>
82122254 6471
048addec
JD
6472 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
6473 determine the size of pointers alloced in unexed space instead
6474 of using possibly invalid emacs_zone pointers. This fixes the
6475 binary incompatibility problems caused by updates to libSystem.B.
c1ee53bc 6476
048addec 64772002-11-24 Richard M. Stallman <rms@gnu.org>
c1ee53bc 6478
048addec 6479 * search.c (Fstring_match): Doc fix.
c1ee53bc 6480
048addec
JD
6481 * callint.c (Fcall_interactively): If a command fails because
6482 `*' detects a read-only buffer, but RECORD_FLAG is set,
6483 record it anyway if the args don't actually do tty input.
5598c32e 6484
048addec 64852002-11-22 Dave Love <fx@gnu.org>
5598c32e 6486
048addec 6487 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
5598c32e 6488
048addec
JD
6489 * keyboard.c (interrupt_signal): Provide forward declaration.
6490 (kbd_buffer_store_event): Don't declare interrupt_signal.
5598c32e 6491
048addec 6492 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
97b14e22 6493
048addec 64942002-11-21 Richard M. Stallman <rms@gnu.org>
97b14e22 6495
048addec
JD
6496 * eval.c (interactive_p): Skip any number of bytecode
6497 and special form frames, in any order.
516eea8e 6498
048addec 64992002-11-20 Jason Rumney <jasonr@gnu.org>
516eea8e 6500
048addec
JD
6501 * w32fns.c (convert_mono_to_color_image): New function.
6502 (xbm_load, xbm_load_image): Use it when foreground or background
6503 is explicitly set.
04dbfa08 6504
048addec 65052002-11-19 Dave Love <fx@gnu.org>
04dbfa08 6506
048addec 6507 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
b4aebae3 6508
048addec 65092002-11-18 Jason Rumney <jasonr@gnu.org>
b4aebae3 6510
048addec
JD
6511 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
6512 (XPutPixel): Swap blue and red.
6513 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
6514 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
6515 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
6516 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
1998560a 6517
048addec 65182002-11-18 Dave Love <fx@gnu.org>
d824beee 6519
048addec 6520 * m/orion105.h (HAVE_ALLOCA): Don't define.
d824beee 6521
048addec 6522 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
d824beee 6523
048addec 6524 * m/intel386.h: Don't include alloca.h or define alloca.
d824beee 6525
048addec
JD
6526 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
6527 malloc, realloc, calloc.
d824beee 6528
048addec
JD
6529 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
6530 (bcmp): Don't define.
d824beee 6531
048addec 6532 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
d824beee 6533
048addec 6534 * m/amdahl.h: Don't define LIB_STANDARD.
d824beee 6535
048addec 6536 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
d824beee 6537
048addec 6538 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
d824beee 6539
048addec
JD
6540 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
6541 Don't include alloca.h.
d824beee 6542
048addec 6543 * s/aix3-2.h (HAVE_FSYNC): Don't define.
1998560a 6544
048addec 6545 * regex.c (_GNU_SOURCE): Don't define.
1998560a 6546
048addec 6547 * process.c (_GNU_SOURCE): Don't define.
1998560a 6548
048addec 6549 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8704a6ab 6550
048addec 65512002-11-18 Markus Rost <rost@math.ohio-state.edu>
8704a6ab 6552
048addec 6553 * s/sol2-8.h: Include sol2-6.h.
6ae2cd57 6554
048addec 65552002-11-18 Miles Bader <miles@gnu.org>
6ae2cd57 6556
048addec
JD
6557 * dispextern.h (struct face): Add `overstrike' field.
6558 * xterm.c (x_draw_glyph_string_foreground)
6559 (x_draw_composite_glyph_string_foreground): Implement overstriking.
6560 * xfaces.c (load_face_font): Set `face->overstrike' based on
6561 result from choose_face_font.
6562 (best_matching_font, choose_face_font): Add `needs_overstrike'
6563 argument, and use it to return whether overstriking is desirable
6564 for this face/font combo.
6565 (set_font_frame_param: Pass new argument to choose_face_font.
6ae2cd57 6566
048addec 65672002-11-17 Ben Key <BKey1@tampabay.rr.com>
3582b6a3 6568
048addec
JD
6569 This change is my fix for the following entry in etc/PROBLEMS:
6570 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
6571 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
f60ae425 6572
048addec
JD
6573 * w32.c: Added wrapper functions around the win32 API functions
6574 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
6575 GetSidIdentifierAuthority. These wrapper functions serve two
6576 purposes:
6577 1. They ensure that the wrapped function can never be called
6578 when Emacs is running on an operating system on which they are
6579 not supported (Microsoft Windows 95 / 98 / ME).
6580 2. They call the wrapped functions via function pointers rather
6581 than calling them directly. This avoids taking advantage of the
6582 undocumented fact that although these functions are not supported
6583 in the 9x branch of Microsoft Windows, the functions do exist in
6584 the version of advapi32.dll that is found in the 9x branch of
6585 Microsoft Windows.
f60ae425 6586
6bdb309a 6587 * w32.c (init_user_info): Replace the calls to the win32 API
048addec
JD
6588 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
6589 and GetSidIdentifierAuthority with calls to the newly added
6590 wrapper functions.
f60ae425 6591
048addec
JD
6592 * w32.h: Added extern declarations for the following functions:
6593 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
6594 syms_of_w32menu, and void syms_of_fontset.
f60ae425 6595
6bdb309a 6596 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
048addec
JD
6597 function pointer track_mouse_event_fn in the handler for the
6598 WM_SETFOCUS message.
3582b6a3 6599
6bdb309a 6600 * w32menu.c (initialize_frame_menubar): Add code to
048addec
JD
6601 reinitialize the function pointers set_menu_item_info and
6602 get_menu_item_info.
f60ae425 6603
048addec 66042002-11-17 Ben Key <BKey1@tampabay.rr.com>
f60ae425 6605
048addec
JD
6606 * sound.c: Added a partial implementation of play-sound-internal
6607 for Microsoft Windows. Added various #ifdef / #else / #endif
6608 code blocks to separate the code that will compile under
6609 Microsoft Windows from the code that is specific to Gnu/Linux.
6610 Moved several blocks of code around to make this separation of code
6611 into Windows compatible and Gnu/Linux compatible code blocks easier.
f60ae425 6612
048addec 6613 * makefile.w32-in: Include sound.c and link with WinMM.lib.
a0f0878d 6614
048addec
JD
6615 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
6616 added support for play-sound-internal under Windows would be
6617 included in the build of Emacs.
517f42a0 6618
048addec 66192002-11-16 Jason Rumney <jasonr@gnu.org>
517f42a0 6620
048addec 6621 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
517f42a0 6622
048addec 6623 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
a0f0878d 6624
048addec 66252002-11-15 Stefan Monnier <monnier@cs.yale.edu>
a0f0878d 6626
048addec
JD
6627 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
6628 (adjust_point_for_property): Move out of display and invisible even if
6629 we were already inside before (in case a property was added while
6630 we weren't looking). Be more careful when handling invisible props.
6631 Skip invisible text as if it really wasn't there at all.
aab83f91 6632
048addec 66332002-11-15 Jason Rumney <jasonr@gnu.org>
aab83f91 6634
048addec
JD
6635 * w32term.c (x_draw_image_foreground)
6636 (w32_draw_image_foreground_1): Use standard copy and invert
6637 operations to draw images.
aab83f91 6638
048addec
JD
6639 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
6640 depth of 1.
6641 (xbm_read_bitmap_data): Invert bits as xbm is read in.
6642 (XPutPixel): Don't invert bits here.
a4478a76 6643
048addec 66442002-11-15 Jason Rumney <jasonr@gnu.org>
a4478a76 6645
048addec
JD
6646 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
6647 (w32_draw_image_foreground_1): Handle image masks.
6648 (x_draw_image_glyph_string): Don't BitBlt transparently.
a4478a76 6649
048addec
JD
6650 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
6651 (x_from_xcolors): Adjust RGB values for W32.
6652 (image_background, image_background_transparent)
6653 (postprocess_image, x_to_xcolors, x_disable_image)
6654 (x_build_heuristic_mask): Adapt for W32 and enable.
6655 (x_create_x_image_and_pixmap): Mark images with palettes as such.
6656 (xbm_load): Remove unused variable.
03670a65 6657
048addec 66582002-11-14 Richard M. Stallman <rms@gnu.org>
03670a65 6659
048addec 6660 * buffer.c (syms_of_buffer): Doc fix.
59daa29a 6661
048addec 66622002-11-14 Dave Love <fx@gnu.org>
59daa29a 6663
048addec 6664 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
59daa29a 6665
048addec
JD
6666 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
6667 * xmenu.c (unuse_menu_items, digest_single_submenu):
6668 * xfns.c (x_put_x_image):
6669 * xdisp.c (message2_nolog, set_message):
6670 * undo.c (record_point):
6671 * terminfo.c (tparam):
6672 * syntax.c (scan_sexps_forward):
6673 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
6674 * composite.c (update_compositions):
6675 * cm.c (calccost, cmgoto):
6676 * charset.c (c_string_width): Declare all args (per C99).
59daa29a 6677
048addec 6678 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
59daa29a 6679
048addec
JD
6680 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
6681 Don't declare.
59daa29a 6682
048addec 6683 * emacs.c (main) [!VMS]: Avoid third arg.
59daa29a 6684
048addec
JD
6685 * fns.c (Fcopy_sequence): Doc fix.
6686 (Fmap_char_table): Cast `call2'.
3947677c 6687
048addec
JD
66882002-11-14 Francesco Potorti` <pot@gnu.org>
6689
6690 * s/sol2-8.h: New file.
6691
66922002-11-14 Kim F. Storm <storm@cua.dk>
6693
6694 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
6695 dependency on `risky-local-variable' and the :propertize form.
6696
66972002-11-12 Stefan Monnier <monnier@cs.yale.edu>
6698
6699 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
6700
6701 * syntax.c (scan_sexps_forward): Undo last patch.
6702 Use a more obvious fix: check eob before updating the syntax table.
6703
67042002-11-09 Stefan Monnier <monnier@cs.yale.edu>
6705
6706 * syntax.c (scan_sexps_forward): Update syntax table before reading
6707 a char rather than after so we don't update the table past eob.
6708
67092002-11-09 Dave Love <fx@gnu.org>
6710
6711 * buffer.c (Fset_buffer_major_mode): Fix last change.
6712
6713 * regex.c (regexec): Fix pmatch declaration.
6714
6715 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
6716
6717 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
6718 to self-inserting characters.
6719 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
6720
6721 * coding.c (Vtranslation_table_for_input): New.
6722 (syms_of_coding): DEFVAR it.
6723
67242002-11-08 Juanma Barranquero <lektu@terra.es>
6725
6726 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
6727 window.
6728
67292002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6730
6bdb309a 6731 * process.c (Fformat_network_address): Remove unused locals p,
048addec
JD
6732 cp, and i.
6733
67342002-11-06 Dave Love <fx@gnu.org>
6735
6736 * buffer.c (Qset_buffer_major_mode_hook): New.
6737 (Fset_buffer_major_mode): Use it.
6738
67392002-11-06 Richard M. Stallman <rms@gnu.org>
6740
6741 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
6742 and stop_polling.
6743
6744 * process.c (wait_reading_process_input):
6745 Test POLLING_PROBLEM_IN_SELECT, not hpux.
6746 Avoid initialization for auto Lisp_Object var.
6747
6748 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
6749
6750 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
6751
67522002-11-05 Richard M. Stallman <rms@gnu.org>
6753
6754 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
6755
6756 * callint.c (Fcall_interactively): New local filter_specs.
6757 (Fcall_interactively): Check for progn as well as let.
6758 Add a gcpro.
6759 (Qprogn): New variable.
6760 (syms_of_callint): Staticpro and init Qprogn.
6761
67622002-11-04 John Paul Wallington <jpw@shootybangbang.com>
6763
6764 * lread.c (Feval_buffer): Doc fix.
6765
67662002-11-04 Dave Love <fx@gnu.org>
6767
6768 * keyboard.c (read_char): Always translate iff
6769 Vkeyboard_translate_table is a char table and c is valid.
6770
6771 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
6772 and fix C types.
6773
67742002-11-03 Stefan Monnier <monnier@cs.yale.edu>
6775
6776 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
6777
6778 * editfns.c (get_pos_property): Don't hardcode Qfield.
6779
6780 * keyboard.c (adjust_point_for_property): Handle `display' prop on
6781 overlays. Also handle `invisible' prop.
6782
67832002-11-02 Stefan Monnier <monnier@cs.yale.edu>
6784
6785 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
6786 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
6787
67882002-11-01 Andreas Schwab <schwab@suse.de>
6789
6790 * editfns.c (Fmessage): Revert last change to properly handle %%.
6791
67922002-11-01 Stefan Monnier <monnier@cs.yale.edu>
6793
6794 * xmenu.c (unuse_menu_items): New fun.
6795 (menu_items_inuse): New var.
6796 (syms_of_xmenu): Initialize it.
6797 (init_menu_items): Use it to detect re-entrance.
6798 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
6799 (Fx_popup_menu): Remove spurious XSETFRAME.
6800
6801 * editfns.c (find_field): Make an exception for nil fields.
6802
68032002-11-01 Dave Love <fx@gnu.org>
6804
6805 * m/gec63.h: Deleted.
6806
68072002-10-31 Dave Love <fx@gnu.org>
6808
6809 * xterm.c (XTread_socket): Fix last change.
6810 (xaw_scroll_callback): Cast call_data to long to avoid warning.
6811
68122002-10-31 Stefan Monnier <monnier@cs.yale.edu>
6813
6814 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
6815
68162002-10-30 Stefan Monnier <monnier@cs.yale.edu>
6817
6818 * editfns.c (overlays_around, get_pos_property): New funs.
6819 (find_field): Use them.
6820 Also be careful not to modify POS before its last use.
6821 (Fmessage): Don't Fformat if there's nothing to format.
6822
68232002-10-30 Dave Love <fx@gnu.org>
6824
6825 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
6826 [HAVE_PTY_H]; Include pty.h.
6827
6828 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
6829
6830 * xterm.c (Qeql): Declare.
6831 (Vx_keysym_table): New.
6832 (syms_of_xterm): Initialize it.
6833 (XTread_socket): Use it. Deal with ASCII keysyms.
6834 (XSetIMValues) [HAVE_X11R6]: Prototype.
6835
6836 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
6837 (lispy_kana_keys): Comment out.
6838 (make_lispy_event) [XK_kana_A]: Comment out.
6839 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
6840 Fix sprintf call.
6841
6842 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
6843 regexp.h change).
6844 (TERMINFO, LIBS_TERMCAP): Define.
6845
6846 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
6847 (bcmp): Define conditional on HAVE_BCMP.
6848 (NO_SIOCTL_H): Don't define.
6849 (TIOCSIGSEND): Don't make conditional on IRIX6.
6850
6851 * s/sol2-5.h: Don't include strings.h.
6852 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
6853
6854 * s/irix6-0.h (IRIX6): Don't define.
6855 (bcopy, bcmp, bzero): Don't undef.
6856
6857 * s/irix6-5.h: Don't include strings.h.
6858 (IRIX6): Don't define.
6859 (bcopy, bcmp, bzero): Don't undef.
6860
6861 * syntax.c (Fforward_comment): Doc fix.
6862
68632002-10-29 Kim F. Storm <storm@cua.dk>
6864
6865 * process.c (Fsignal_process): Allow PROCESS to be specified by
6866 name in addition to pid (as integer or string).
6867
68682002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
6869
6870 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
6871 environments.
6872
68732002-10-27 Kim F. Storm <storm@cua.dk>
6874
6875 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
6876
6877 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
6878
6879 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
6880
6881 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
6882
68832002-10-26 Richard M. Stallman <rms@gnu.org>
6884
6885 * editfns.c (Fformat): Detect invalid format letters for floats.
6886
68872002-10-25 Kenichi Handa <handa@m17n.org>
6888
6889 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
6890 (x_set_title): Likewise.
6891
68922002-10-25 Juanma Barranquero <lektu@terra.es>
6893
6894 * macgui.h:
6895 * w32gui.h: Remove definition of XColor.
6896
6897 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
6898
68992002-10-24 Kim F. Storm <storm@cua.dk>
6900
6901 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
6902 Callers changed (supply dummy arg).
6903
6904 * lisp.h (get_window_cursor_type): Update prototype.
6905
6906 * w32term.c (x_display_and_set_cursor): Get active_cursor from
6907 get_window_cursor_type to track system caret.
6908
69092002-10-24 Kim F. Storm <storm@cua.dk>
6910
6911 * process.c (Fformat_network_address): New function.
6912 (syms_of_process): Defsubr it.
6913 (list_processes_1): Use it to format :local/:remote address if
6914 service/host is not set; before emacs would crash in that case.
6915 (Fmake_network_process): Don't use Ffind_operation_coding_system
6916 to setup coding system if host or service is not set.
6917
69182002-10-23 Juanma Barranquero <lektu@terra.es>
6919
6920 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
6921
6922 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
6923 COLORREF.
6924
6925 * macgui.h:
6926 * w32gui.h: Add definition of XColor.
6927
6928 * macfns.c:
6929 * w32fns.c:
6930 * xfaces.c: Remove definition of XColor.
6931
69322002-10-22 Stefan Monnier <monnier@cs.yale.edu>
6933
6934 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
6935
6936 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
6937 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
6938 window if it is dedicated.
6939 (Fshrink_window): Add preserve_before as was done for enlarge_window.
6940 (Vspecial_display_function): Update docstring.
6941
6942 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
6943 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
6944 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
6945
69462002-10-21 Stefan Monnier <monnier@cs.yale.edu>
6947
6948 * casefiddle.c (casify_region): Don't treat a prefix char as part
6949 of a word when at the beginning.
6950
69512002-10-17 Juanma Barranquero <lektu@terra.es>
6952
6953 * lread.c (syms_of_lread): Fix typos.
6954
69552002-10-17 Dave Love <fx@gnu.org>
6956
6957 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
6958
69592002-10-16 Richard M. Stallman <rms@gnu.org>
6960
6961 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
6962
69632002-10-14 Juanma Barranquero <lektu@terra.es>
6964
6965 * w16select.c (syms_of_win16select): Fix docstring for
6966 `selection-coding-system'.
6967
6968 * w32select.c (syms_of_w32select): Likewise.
6969
69702002-10-14 Stefan Monnier <monnier@cs.yale.edu>
6971
6972 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
6973 a backslash-quoted char.
6974 (scan_lists, scan_sexps_forward): Pacify the compiler.
6975
69762002-10-13 Richard M. Stallman <rms@gnu.org>
6977
6978 * window.c (window_scroll): Set immediate_quit.
6979
6980 * print.c (print): When backquote form is the car of a list,
6981 output in old style. Use old_backquote_output to output all
6982 comma forms inside it in old style too.
6983
6984 * buffer.h (struct buffer): Move `undo_list' down below `name'.
6985
69862002-10-11 Markus Rost <rost@math.ohio-state.edu>
6987
6988 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
6989 batch mode).
6990
6991 * lread.c (Fload): Doc fix (load-suffixes).
6992
69932002-10-10 Steven Tamm <steventamm@mac.com>
6994
6995 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
6996 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
6997 Also switch the default to Qnil from Qt.
6998
69992002-10-08 Kenichi Handa <handa@m17n.org>
7000
7001 * coding.c (code_convert_region): When we need more GAP for
7002 conversion, pay attention to the case that coding->produced is not
7003 greater than coding->consumed.
7004
70052002-10-07 Richard M. Stallman <rms@gnu.org>
7006
7007 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
7008
70092002-10-06 Andrew Choi <akochoi@shaw.ca>
7010
7011 * macmenu.c (mac_menu_show): Add j to count menu items; match
7012 menu_item_selection to it to find selected item.
7013
70142002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7015
7016 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
7017 cases. The correct fix is to pass ReparentNotify to Xt.
7018 The shell widget interprets ConfigureNotify differently depending
7019 on if it has been reparented or not.
7020
70212002-10-05 Markus Rost <rost@math.ohio-state.edu>
7022
7023 * editfns.c (Fformat_time_string): Doc fix.
7024
70252002-10-05 John Paul Wallington <jpw@shootybangbang.com>
7026
7027 * fns.c (Flength): Doc fix.
7028
70292002-10-04 Stefan Monnier <monnier@cs.yale.edu>
7030
7031 * keyboard.c (keyremap): New struct.
7032 (read_key_sequence): Use it: globally replace keytran_foo with
7033 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
7034 keytran_next and fkey_next to just `next'.
7035
70362002-10-04 Steven Tamm <steventamm@mac.com>
7037
7038 * macterm.c (keycode_to_xkeysym_table): Change return to be
7039 treated like an X keysym.
7040
70412002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7042
7043 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
7044 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
7045 This is to also handle x/y changes that occur because of a resize.
7046
70472002-10-02 John Paul Wallington <jpw@shootybangbang.com>
7048
7049 * frame.c (Vdelete_frame_functions): New variable.
7050 (syms_of_frame): Initialize and defvar it.
7051 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
7052 it when frame's `tooltip' parameter is non-nil.
7053
7054 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
7055
7056 * w32fns.c (x_create_tip_frame): Likewise.
7057
7058 * macfns.c (x_create_tip_frame): Likewise.
7059
70602002-09-30 Kenichi Handa <handa@m17n.org>
7061
7062 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
7063 -1 before calling ccl_driver.
7064
7065 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
7066 Only when it is non-nil, handle composition sequence.
7067 (setup_coding_system) <0>: Don't force composition handling.
7068
7069 * Makefile.in (lisp, shortlisp): Add utf-16.elc
7070
70712002-09-29 Richard M. Stallman <rms@gnu.org>
7072
7073 * search.c (Freplace_match): Adjust match data for the substitution
7074 just made in the buffer.
7075
7076 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
7077 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
7078
70792002-09-27 Richard M. Stallman <rms@gnu.org>
7080
7081 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
7082 (read_char): Use them. Do all exits thru the end of the function.
7083
70842002-09-27 Kenichi Handa <handa@etl.go.jp>
7085
7086 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
7087 is nil.
7088
70892002-09-26 Richard M. Stallman <rms@gnu.org>
7090
7091 * regex.h (__restrict_arr): Don't define if already defined.
7092
7093 * coding.c (run_pre_post_conversion_on_str):
7094 Save and restore Vdeactivate_mark.
7095
70962002-09-26 John Paul Wallington <jpw@shootybangbang.com>
7097
7098 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
7099
71002002-09-26 Kenichi Handa <handa@etl.go.jp>
7101
7102 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
7103 nonzero, try face's family at first. Otherwise try FAMILY at first.
7104 (choose_face_font): If C is a single byte char or latin-1, call
7105 try_font_list with PREFER_FACE_FAMILY 1.
7106
71072002-09-21 Richard M. Stallman <rms@gnu.org>
7108
7109 * window.c (select_window_1): Don't select frame.
7110 Set frame's selected window only when frame itself is selected.
7111 (Fselect_window): Doc fix.
7112
71132002-09-18 Kim F. Storm <storm@cua.dk>
7114
7115 * process.c (make-network-process): Doc fix (there is no
7116 network-server-log-function hook).
7117
71182002-09-18 Richard M. Stallman <rms@gnu.org>
7119
7120 * print.c (print): Clear out the unused parts of Vprint_number_table.
7121 (syms_of_print): Doc fix for `print-number-table'.
7122
7123 * unexelf.c (unexec): Undo previous change.
7124
71252002-09-17 Andreas Schwab <schwab@suse.de>
7126
7127 * m/alpha.h [LINUX]: Don't define DATA_START.
7128
71292002-09-16 Dave Love <fx@gnu.org>
7130
7131 * unexelf.c (unexec): Deal with .got, reinstating change from
7132 25-08-1999.
7133
71342002-09-13 Richard M. Stallman <rms@gnu.org>
7135
7136 * s/sol2-6.h (UNEXEC): Comment out definition.
7137
7138 * unexsol.c (unexec): Don't downcase first letter of error msg.
7139
7140 * xfaces.c (Fcolor_supported_p): Just one arg is required.
7141
71422002-09-12 Markus Rost <rost@math.ohio-state.edu>
7143
7144 * unexsol.c: Include buffer.h, charset.h, coding.h.
7145
71462002-09-11 Richard M. Stallman <rms@gnu.org>
7147
7148 * unexsol.c: Don't use report_file_error; do it by hand
7149 using dlerror.
7150
7151 * process.c (wait_reading_process_input, both versions):
7152 Before calling turn_on_atimers, call stop_polling.
7153
7154 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
7155
7156 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
7157 we go to too_near_end, call clear_glyph_matrix.
7158 (redisplay_window): After make_cursor_line_fully_visible,
7159 call clear_glyph_matrix and bypass `goto done'.
7160
7161 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
7162 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
7163
71642002-09-10 Richard M. Stallman <rms@gnu.org>
7165
7166 * fileio.c (Fdo_auto_save): Catch error making directory.
7167 Only call push_message if we need to.
7168 At the same time, make an unwind-protect to pop it.
7169 Rename local message_p to old_message_p.
7170 (do_auto_save_make_dir, do_auto_save_eh): New functions.
7171 (do_auto_save_unwind): Don't call pop_message.
7172
7173 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
7174
7175 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
7176
7177 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
7178
7179 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
7180
71812002-09-10 Stefan Monnier <monnier@cs.yale.edu>
7182
7183 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
7184 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
7185 (re_match_2_internal): Be more careful with infinite loops.
7186
71872002-09-10 Kim F. Storm <storm@cua.dk>
7188
7189 * macros.c (end_kbd_macro): New function.
7190 (Fend_kbd_macro): Use it.
7191
7192 * macros.h (end_kbd_macro): Declare extern.
7193
7194 * keyboard.c (Fdiscard_input): If defining keyboard macro,
7195 end and save it instead of discarding it.
7196
71972002-09-09 Markus Rost <rost@math.ohio-state.edu>
7198
7199 * s/sol2-6.h: Fix typo. Add comment.
7200
72012002-09-09 Richard M. Stallman <rms@gnu.org>
7202
7203 * regex.c (regnum_t): Use signed int, not unsigned int.
7204
7205 * s/sol2-6.h: New file.
7206
7207 * s/sol2-5.h (UNEXEC): Definition deleted.
7208
72092002-09-08 Kim F. Storm <storm@cua.dk>
7210
7211 * macros.c (executing_macro_index): Change type to EMACS_INT.
7212 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
7213
7214 * macros.h (executing_macro_index): Change type to EMACS_INT.
7215
72162002-09-06 Richard M. Stallman <rms@gnu.org>
7217
7218 * casetab.c (set_case_table): Make canon table point to eqv table.
7219
72202002-09-06 Juanma Barranquero <lektu@terra.es>
7221
7222 * coding.c (syms_of_coding): Fix spacing.
7223
7224 * composite.c (Fcompose_region_internal)
7225 (Fcompose_string_internal): Likewise.
7226
7227 * data.c (Flsh): Likewise.
7228
7229 * fontset.c (Fset_fontset_font): Likewise.
7230
7231 * macfns.c (Fx_server_max_request_size): Likewise.
7232
7233 * w16select.c (syms_of_win16select): Likewise.
7234
7235 * w32select.c (syms_of_w32select): Likewise.
7236
7237 * xselect.c (syms_of_xselect): Likewise.
7238
72392002-09-05 Richard M. Stallman <rms@gnu.org>
7240
7241 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
7242 call EXTEND_RANGE_TABLE and return a proper value.
7243 (set_image_of_range): Don't call set_image_of_range_1
7244 if no TRANSLATE or if range includes all of Latin-1.
7245 Only call it for the Latin-1 part of the range.
7246 For other cases, make two separate ranges,
7247 one for the original specified characters and one for
7248 their case-conversions.
7249
72502002-09-04 Richard M. Stallman <rms@gnu.org>
7251
7252 * s/sol2-5.h (UNEXEC): Use unexsol.o.
7253
7254 * window.c (displayed_window_lines): Correct for one-off bug
7255 in HEIGHT on non-window displays.
7256
7257 * regex.c (set_image_of_range_1): New function.
7258 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
7259 Return a value to indicate running out of memory.
7260 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
7261 (extend_range_table_work_area): New subroutine.
7262 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
7263 Different calling conventions, and used from set_image_of_range{,_1}.
7264 (IMMEDIATE_QUIT_CHECK): Definitions moved.
7265
72662002-09-04 Juanma Barranquero <lektu@terra.es>
7267
7268 * makefile.w32-in: All dependencies updated.
7269
72702002-09-01 Richard M. Stallman <rms@gnu.org>
7271
7272 * unexsol.c: New file.
7273
7274 * xfns.c (Qbox): Declare external, don't define.
7275
7276 * xdisp.c (redisplay_window) <force-start case>:
7277 If point is on semi-visible last line, reposition
7278 it at previous line.
7279
7280 * alloc.c (display_malloc_warning): Use display-warning.
7281 (malloc_warning_1): Function deleted.
7282
7283 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
7284
7285 * lread.c (read1): Handle #! by skipping the line.
7286
72872002-08-31 Richard M. Stallman <rms@gnu.org>
7288
7289 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
7290 Don't include LDFLAGS.
7291 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
7292
72932002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
7294
7295 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
7296 member of x_display_info unless we compile for some window system.
7297
72982002-08-31 Kim F. Storm <storm@cua.dk>
7299
7300 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
7301 (get_window_cursor_type): Don't use them.
7302 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
7303
73042002-08-30 Kenichi Handa <handa@etl.go.jp>
7305
7306 * xdisp.c (get_next_display_element): Fix previous change.
7307
73082002-08-30 Andrew Choi <akochoi@shaw.ca>
7309
7310 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
7311 (expose_window): Use it to fix the display of overlapping
7312 rows (merge code from xterm.c).
7313
7314 * macfns.c (Qbox): Add extern declaration.
7315
73162002-08-30 Juanma Barranquero <lektu@terra.es>
7317
7318 * w32fns.c (Qbox): Make extern.
7319 (syms_of_w32fns): Remove initialization of Qbox.
7320
73212002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
7322
7323 * xfns.c (Fx_open_connection): Fix error message.
7324
73252002-08-30 Kim F. Storm <storm@cua.dk>
7326
7327 The following changes consolidates the handling of the cursor
7328 type in xdisp.c, moving duplicate code and functionality from
7329 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
7330
7331 * frame.h (enum text_cursor_kinds): Consolidated here.
7332 Added DEFAULT_CURSOR value.
7333 (struct frame) <desired_cursor, cursor_width>
7334 <blink_off_cursor, blink_off_cursor_width>: New fields.
7335 Consolidated from output_x, output_w32 and output_mac structs.
7336 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
7337 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
7338
7339 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
7340 Variables consolidated here.
7341 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
7342 (Vcursor_in_non_selected_windows): Renamed from
7343 cursor_in_non_selected_windows and changed to Lisp_Object.
7344 (syms_of_xdisp): Define and staticpro new and moved variables.
7345 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
7346 consolidated here. Recognize Qhollow setting.
7347 (set_frame_cursor_types): New function to set frame cursor types
7348 based on the frame parameters.
7349 (get_window_cursor_type): New function to calculate new cursor
7350 type and width for the specified window. Based on duplicated
7351 code consolidated here.
7352 Enhancements: cursor-in-non-selected-windows may be a cursor type,
7353 check buffer-local alternate-cursor-type and blink-cursor-alist
7354 before using built-in blink off methods.
7355
7356 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
7357
7358 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
7359 (get_specified_cursor_type, get_window_cursor_type)
7360 (set_frame_cursor_types): Added prototypes.
7361
7362 * macfns.c (x_specified_cursor_type): Removed.
7363 (x_set_cursor_type): Use set_frame_cursor_types.
7364 (Qbar, Qbox): Removed.
7365 (syms_of_macfns): Don't intern or staticpro them.
7366
7367 * macterm.c (x_specified_cursor_type): Remove prototype.
7368 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
7369 (x_display_and_set_cursor): Use get_window_cursor_type.
7370 Remove unused local variables cursor_non_selected, active_cursor.
7371 Redraw cursor if hbar cursor width changes.
7372 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
7373
7374 * macterm.h (enum text_cursor_kinds): Removed.
7375 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
7376 <blink_off_cursor, blink_off_cursor_width>: Members removed.
7377 (FRAME_DESIRED_CURSOR): Macro removed.
7378
7379 * w32fns.c (Vblink_cursor_alist): Removed.
7380 (Qbar, Qhbar, Qbox, Qhollow): Removed.
7381 (syms_of_w32fns): Don't intern, staticpro, or define them.
7382 (x_specified_cursor_type): Removed.
7383 (x_set_cursor_type): Use set_frame_cursor_types.
7384
7385 * w32term.c (x_specified_cursor_type): Remove prototype.
7386 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
7387 (x_display_and_set_cursor): Use get_window_cursor_type.
7388 Remove unused local variables cursor_off_state.
7389 Redraw cursor if hbar cursor width changes.
7390 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
7391
7392 * w32term.h (enum text_cursor_kinds): Removed.
7393 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
7394 <blink_off_cursor, blink_off_cursor_width>: Members removed.
7395 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
7396 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
7397 (struct w32_display_info) <x_highlight_frame>: Renamed member from
7398 w32_highlight_frame.
7399
7400 * xfns.c (Vblink_cursor_alist): Removed.
7401 (Qbar, Qhbar, Qbox, Qhollow): Removed.
7402 (syms_of_xfns): Don't intern, staticpro, or define them.
7403 (x_specified_cursor_type): Removed.
7404 (x_set_cursor_type): Use set_frame_cursor_types.
7405
7406 * xterm.c (x_specified_cursor_type): Remove prototype.
7407 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
7408 (x_display_and_set_cursor): Use get_window_cursor_type.
7409 Remove unused local variables cursor_off_state.
7410 Redraw cursor if hbar cursor width changes.
7411
7412 * xterm.h (enum text_cursor_kinds): Removed.
7413 (struct output_x) <current_cursor, desired_cursor, cursor_width>
7414 <blink_off_cursor, blink_off_cursor_width>: Members removed.
7415 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
7416 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
7417 (x_specified_cursor_type): Remove prototype.
7418
74192002-08-28 Richard M. Stallman <rms@gnu.org>
7420
7421 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
7422 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
7423 (Vblink_cursor_alist): New variable.
7424 (syms_of_w32fns): Initialize and defvar it.
7425 (x_specified_cursor_type): Recognize Qbox for filled box.
7426 Exceptions are hollow boxes.
7427 (Qbox, Qhollow): New variables.
7428 (syms_of_w32fns): Initialize and staticpro them.
7429
7430 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
7431 New macros.
7432 (struct w32_output): New fields blink_off_cursor,
7433 blink_off_cursor_width.
7434 (FRAME_CURSOR_WIDTH): New macro.
7435
7436 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
7437 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
7438
7439 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
7440 for bar cursor.
7441
7442 * w32term.c (expose_overlaps): New function.
7443 (expose_window): Use it to fix the display of overlapping rows.
7444
74452002-08-28 Simon Josefsson <jas@extundo.com>
7446
7447 * xfns.c (Fx_open_connection): Improve help when X connection
7448 fails, xhost is insecure and xauth is better.
7449
74502002-08-28 Juanma Barranquero <lektu@terra.es>
7451
7452 * makefile.w32-in: Add missing dependencies on w32term.h and
7453 composite.h.
7454
7455 * emacs.c (USAGE1): Add missing newline.
7456
74572002-08-27 Andrew Choi <akochoi@shaw.ca>
7458
7459 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
7460
74612002-08-27 Richard M. Stallman <rms@gnu.org>
7462
7463 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
7464 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
7465 (Vblink_cursor_alist): New variable.
7466 (syms_of_xfns): Initialize and defvar it.
7467 (x_specified_cursor_type): Recognize Qbox for filled box.
7468 Exceptions are hollow boxes.
7469 (Qbox, Qhollow): New variables.
7470 (syms_of_xfns): Initialize and staticpro them.
7471
7472 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
7473 New macros.
7474 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
7475
7476 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
7477 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
7478
7479 * emacs.c (main): Handle --script.
7480 (USAGE1): Mention --script.
7481 (standard_args): Define sort order for --script.
7482
74832002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
7484
7485 * xdisp.c (redisplay_updating_p): Variable removed.
7486 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
7487 New variables.
7488 (init_iterator): Don't free realized faces if
7489 inhibit_free_realized_faces is set.
7490 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
7491 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
7492 initialize Qinhibit_free_realized_faces.
7493
7494 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
7495 when iterator is adding glyphs to a glyph matrix.
7496
74972002-08-27 Kenichi Handa <handa@etl.go.jp>
7498
7499 * xdisp.c (get_next_display_element): In unibyte case, don't use
7500 octal form for such eight-bit characters that can be converted to
7501 multibyte char.
7502
75032002-08-26 Kim F. Storm <storm@cua.dk>
7504
7505 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize foreground
7506 and background colors. From Joe Buehler (tiny change).
7507
75082002-08-26 Miles Bader <miles@gnu.org>
7509
7510 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
7511
75122002-08-25 Andrew Choi <akochoi@shaw.ca>
7513
7514 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
7515 defined instead of MAC_OSX.
7516
7517 * s/darwin.h (select): Define select to sys_select only if
7518 HAVE_CARBON is defined.
7519 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
7520 (DONT_REOPEN_PTY): #def it.
7521
7522 * macterm.c (XTread_socket): Remove code to call
7523 SendEventToEventTarget for keys with command modifiers when
7524 mac_command_key_is_meta is nil.
7525
75262002-08-24 Andreas Schwab <schwab@suse.de>
7527
7528 * eval.c (Fdefvar): Fix last change.
7529
75302002-08-23 Richard M. Stallman <rms@gnu.org>
7531
7532 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
7533 Record variables in load history as (defvar . VAR).
7534 (Fdefvar): Don't record in load history if no initial value.
7535 (Qdefvar): New variable.
7536 (syms_of_eval): Init and staticpro it.
7537
7538 * lread.c (syms_of_lread): Doc fix.
7539 (build_load_history): Use Fmember to see if a definition
7540 is already in the Vload_history element.
7541
7542 * process.c (Fstart_process): Remove /: from program name.
7543
7544 * emacs.c (decode_env_path): Don't add /: if file name handler
7545 has a `safe-magic' property.
7546
7547 * callproc.c (Fcall_process): Remove /: from program name.
7548
75492002-08-23 Stefan Monnier <monnier@cs.yale.edu>
7550
7551 * regex.c (PATFETCH): Remove the translating fetch.
7552 (PATFETCH_RAW): Rename to PATFETCH.
7553 (set_image_of_range): New fun.
7554 (SET_RANGE_TABLE_WORK_AREA): Use it.
7555 (regex_compile): Don't translate the pattern chars so eagerly.
7556 Only do it when inserting an `exactn' bytecode or when handling
7557 a char-range.
7558 (mutually_exclusive_p): Avoid empty statement.
7559
75602002-08-22 Kim F. Storm <storm@cua.dk>
7561
7562 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
7563 end up on a partially visible line; this reverts a specific part
7564 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
7565 display error which has been reported several times now.
7566 However it introduces the problem that changes was supposed to fix.
7567 See my comments in the source if you want to debug this further.
7568
75692002-08-20 Kenichi Handa <handa@etl.go.jp>
7570
7571 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
7572
75732002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
7574
7575 * msdos.c (croak): Add `void' to definition.
7576
7577 * sysdep.c [MSDOS] (request_sigio, unrequest_sigio):
7578 Don't define them, they are defined in msdos.c.
7579
7580 * mem-limits.h [MSDOS]: Declare etext.
7581
7582 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
7583 `const' since CORRECT_DIR_SEPS modifies its target.
7584
75852002-08-19 Kim F. Storm <storm@cua.dk>
7586
7587 * keyboard.c (Fclear_this_command_keys): Added optional arg
7588 KEEP-RECORD to avoid clearing lossage when we just want to clear
7589 the current key sequence (kmacro needs this).
7590
75912002-08-19 Kenichi Handa <handa@localhost>
7592
7593 * composite.c (run_composition_function): Call FUNC if it is fboundp.
7594
7595 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
7596 cons, return Qnil.
7597
75982002-08-17 Richard M. Stallman <rms@gnu.org>
7599
7600 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
7601
7602 * sysdep.c [!VMS]: Include sys/files.h.
7603
7604 * editfns.c (save_restriction_restore): Defend from unchained marker.
7605
7606 * buffer.c (overlays_at): Handle extending vec uniformly.
7607 (overlays_in): Handle extending vec from length 0 as in overlays_at.
7608
76092002-08-15 Andrew Choi <akochoi@shaw.ca>
7610
7611 * mac.c (init_mac_osx_environment): New function.
7612
7613 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
7614
76152002-08-14 Kim F. Storm <storm@cua.dk>
7616
7617 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
7618 executing macro before appending to it (when used from Lisp).
7619 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
7620 which is called prior to each iteration of macro (for kmacro.el).
7621 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
7622
7623 * lisp.h (Fexecute_kbd_macro): Update prototype.
7624
7625 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
7626
76272002-08-14 Kenichi Handa <handa@etl.go.jp>
7628
7629 * xselect.c (QUTF8_STRING): New variable.
7630 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
7631 (x_atom_to_symbol): Likewise.
7632 (x_get_local_selection): New argument local_request. If it is
7633 nonzero, call handler_fn with the second arg nil.
7634 (x_handle_selection_request): Call x_get_local_selection with
7635 local_request 0.
7636 (lisp_data_to_selection_data): Don't encode the string here.
7637 (Fx_get_selection_internal): Call x_get_local_selection with
7638 local_request 1.
7639 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
7640
7641 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
7642
7643 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
7644
76452002-08-13 Richard M. Stallman <rms@gnu.org>
7646
7647 * minibuf.c (Fminibufferp): New function.
7648 (syms_of_minibuf): Defsubr it.
7649 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
7650
76512002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
7652
7653 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
7654
76552002-08-12 Richard M. Stallman <rms@gnu.org>
7656
7657 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
7658 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
7659 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
7660 already.
7661
7662 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
7663
76642002-08-11 Andrew Choi <akochoi@shaw.ca>
7665
7666 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
7667 (Vmac_pass_command_to_system): New variable.
7668 (Vmac_pass_control_to_system): New variable.
7669 (do_mouse_moved): Check wp with is_emacs_window.
7670 (XTread_socket): Check window_ptr with is_emacs_window.
7671 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
7672 events back to Mac Toolbox for processing, depending on values of
7673 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
7674 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
7675 Vmac_pass_control_to_system.
7676
76772002-08-10 Kenichi Handa <handa@etl.go.jp>
7678
7679 * coding.c (unencodable_char_position): New function.
7680 (Funencodable_char_position): New function.
7681 (syms_of_coding): Defsubr Funencodable_char_position.
7682
76832002-08-10 Andrew Choi <akochoi@shaw.ca>
7684
7685 * mac.c (sys_select) [MAC_OSX]: New function.
7686
7687 * macterm.c (MakeMeTheFrontProcess): New function.
7688 (mac_initialize): Call MakeMeTheFrontProcess.
7689
7690 * s/darwin.h: Define select to sys_select.
7691
76922002-08-09 Richard M. Stallman <rms@gnu.org>
7693
7694 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
7695
76962002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
7697
7698 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
7699 end of the buffer.
7700
77012002-08-08 Ken Raeburn <raeburn@mit.edu>
7702
7703 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
7704
7705 * puresize.h (BASE_PURESIZE): Increase to 910000.
7706
77072002-08-08 Kenichi Handa <handa@etl.go.jp>
7708
7709 * coding.c (Ffind_operation_coding_system): For write-region, if
7710 VISIT is a filename, make it the target.
7711
77122002-08-07 Richard M. Stallman <rms@gnu.org>
7713
7714 * alloc.c (mark_object): Detect long lists for debugging.
7715 (mark_object_loop_halt): New variable.
7716
7717 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
7718
7719 * data.c (Fmake_variable_frame_local): Doc fix.
7720
77212002-08-01 David Ponce <david@dponce.com>
7722
7723 * w32menu.c (local_heap, local_alloc, local_free): New macros.
7724 (malloc_widget_value, free_widget_value)
7725 (w32_free_submenu_strings): Use them.
7726
7727 (push_submenu_start, push_submenu_end, push_left_right_boundary)
7728 (push_menu_pane, push_menu_item, single_keymap_panes)
7729 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
7730 (single_submenu, set_frame_menubar)
7731 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
7732
7733 (Fx_popup_menu): Don't show pop up menu until preceding one is
7734 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
7735
7736 * w32menu.c: Changes adapted from xmenu.c
7737 (set_frame_menubar): First parse all submenus,
7738 then make widget_value trees from them.
7739 Don't allocate any widget_value objects
7740 until we are done with the parsing.
7741 (parse_single_submenu): New function.
7742 (digest_single_submenu): New function.
7743 (single_submenu): Function deleted, replaced by those two.
7744
77452002-08-04 Andrew Choi <akochoi@shaw.ca>
7746
7747 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
7748 returns a valid window pointer before proceeding for keyDown and
7749 autoKey events.
7750
77512002-08-03 Andrew Choi <akochoi@shaw.ca>
7752
7753 * macterm.c (USE_CARBON_EVENTS): New macro.
7754 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
7755 (x_iconify_frame): Call CollapseWindow.
7756 (Vmac_reverse_ctrl_meta): New variable.
7757 (Vmac_wheel_button_is_mouse_2): New variable.
7758 (init_mac_drag_n_drop): New function.
7759 (mac_do_receive_drag): New function.
7760 (mac_handle_service_event): New function.
7761 (init_service_handler): New function.
7762 (mac_to_emacs_modifiers): New function.
7763 (mac_event_to_emacs_modifiers): New function.
7764 (mac_get_mouse_btn): New function.
7765 (mac_convert_event_ref): New function.
7766 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
7767 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
7768 mac_get_mouse_btn.
7769 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
7770
7771 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
7772 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
7773 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
7774 TOOL_BAR_EVENT for MAC_OS as well.
7775 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
7776 as for WINDOWS_NT.
7777 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
7778
7779 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
7780
77812002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
7782
7783 * xdisp.c (forward_to_next_line_start): Fix a condition that
7784 lead to a newline being skipped.
7785
77862002-08-02 Andrew Choi <akochoi@shaw.ca>
7787
7788 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
7789
77902002-08-01 Richard M. Stallman <rms@gnu.org>
7791
7792 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
7793
77942002-07-31 Andrew Choi <akochoi@shaw.ca>
7795
7796 * macfns.c: #undef init_process before #define-ing it.
7797
7798 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
7799 HAVE_CARBON is defined.
7800
78012002-07-31 Richard M. Stallman <rms@gnu.org>
7802
7803 * xmenu.c (set_frame_menubar): First parse all submenus,
7804 then make widget_value trees from them.
7805 Don't allocate any widget_value objects
7806 until we are done with the parsing.
7807 (parse_single_submenu): New function.
7808 (digest_single_submenu): New function.
7809 (single_submenu): Function deleted, replaced by those two.
7810
78112002-07-30 Juanma Barranquero <lektu@terra.es>
7812
7813 * w32proc.c (syms_of_ntproc): Fix docstring of
7814 `w32-get-true-file-attributes'.
7815
78162002-07-28 Richard M. Stallman <rms@gnu.org>
7817
7818 * s/hpux8.h (HPUX8): Define this before including hpux.h.
7819 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
7820
7821 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
7822
7823 * keyboard.c (make_lispy_event):
7824 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
7825 Explicitly clear up_modifier in event->modifiers.
7826
78272002-07-27 Richard M. Stallman <rms@gnu.org>
7828
7829 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
7830
7831 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
7832 for bar cursor.
7833
78342002-07-26 Kenichi Handa <handa@etl.go.jp>
7835
7836 * coding.c (detect_coding_iso2022): While checking a byte sequence
7837 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
7838 it in the normal loop.
7839
78402002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
7841
7842 * xterm.c (expose_overlaps): New function.
7843 (expose_window): Use it to fix the display of overlapping rows.
7844
7845 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
7846
78472002-07-23 Ken Raeburn <raeburn@gnu.org>
7848
7849 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
7850 since it only depends on XUINT.
7851
7852 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
7853 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
7854 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
7855 Macros deleted.
3947677c 7856
77d1daf2
AS
7857 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
7858 its value over other approaches.
7859 * sysdep.c (start_of_data): Don't define the function if a macro
7860 form has been defined.
8a8e19a3 7861
048addec
JD
78622002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
7863
7864 * xdisp.c (redisplay_updating_p): New variable.
7865 (init_iterator): Don't free realized faces when
7866 redisplay_updating_p is set.
7867 (redisplay_internal): Set redisplay_updating_p while updating
7868 the display.
7869
78702002-07-23 Richard M. Stallman <rms@gnu.org>
7871
7872 * editfns.c (Fmessage): Treat "" like nil.
7873
78742002-07-23 Kenichi Handa <handa@etl.go.jp>
7875
7876 * xdisp.c (face_before_or_after_it_pos):
7877 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
7878
78792002-07-22 Juanma Barranquero <lektu@terra.es>
7880
7881 * callproc.c (init_callproc) [DOS_NT]:
7882 Initialize Vshared_game_score_directory to nil.
7883 (syms_of_callproc) [DOS_NT]: Likewise.
7884
78852002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
7886
7887 * xdisp.c (display_line): Replace an abort with xassert.
7888
78892002-07-21 Richard M. Stallman <rms@gnu.org>
7890
7891 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
7892 and END_UNCHANGED when setting buffer_unchanged_p.
7893 Use current_matrix_up_to_date_p to decide whether to use
7894 try_cursor_movement.
7895
7896 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
7897
7898 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
7899
7900 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
7901 Set to nil if dir does not exist.
7902 (syms_of_callproc): Init unconditionally and simply.
7903
7904 * buffer.c (Fbuffer_list): Doc fix.
7905
79062002-07-21 Ken Raeburn <raeburn@gnu.org>
7907
7908 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
7909
7910 * buffer.c (mmap_realloc): When shrinking, make sure number of
7911 pages to unmap is rounded towards zero.
7912
7913 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
7914 (XSETINT): Deleted.
7915
7916 * m/att3b.h (XINT): Don't define.
7917 (VALBITS, VALMASK, XTYPE): Deleted.
7918 (DATA_SEG_BITS): Define.
7919 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
7920 ARRAY_MARK_FLAG): Deleted.
7921 (DATA_SEG_BITS): Define.
7922 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
7923 (DATA_SEG_BITS): Define.
7924
79252002-07-20 Richard M. Stallman <rms@gnu.org>
7926
7927 * print.c (print_error_message): New args CONTEXT and CALLER.
7928 Calls changed.
7929
7930 * lisp.h (print_error_message): Declare new args.
7931
7932 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
7933 and CONTEXT to print_error_message, don't print them here.
7934 For a Quit, don't use Vsignaling_function.
7935 Call message_log_maybe_newline.
7936
7937 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
7938
79392002-07-20 Kim F. Storm <storm@cua.dk>
7940
7941 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
7942
79432002-07-19 Ken Raeburn <raeburn@gnu.org>
7944
7945 * bytecode.c (struct byte_stack): Pointers into byte string now
7946 point to const.
7947 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
7948 const.
7949 * charset.h (BCOPY_SHORT): Source pointer now points to const.
7950 * coding.c (encode_eol, detect_coding, detect_eol):
7951 (decode_coding, encode_coding, detect_coding_system):
7952 Source strings now treated as const.
7953 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
7954 modify Lisp string contents.
7955 * coding.h (decode_coding, encode_coding, detect_coding,
7956 detect_eol): Declarations updated.
7957 * composite.c (compose_chars_in_text): Treat Lisp string contents
7958 as const.
7959 * dispnew.c (safe_bcopy): Source pointer now points to const.
7960 * lisp.h (STRING_COPYIN): New macro.
7961 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
7962 (internal_with_output_to_temp_buffer): Declarations updated.
7963 * print.c (temp_output_buffer_setup):
7964 (internal_with_output_to_temp_buffer): Buffer name argument is now
7965 pointer to const.
7966 * sound.c (struct sound_device): Function pointer field "write"
7967 buffer argument now points to const.
7968 (vox_write): Buffer argument points to const.
7969 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
7970 contents as const.
7971 * sysdep.c (emacs_write): Buffer pointer now const.
7972 * term.c (encode_terminal_code): Buffer pointer now const.
7973 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
7974 (x_face_list_fonts, x_update_menu_appearance):
7975 (hash_string_case_insensitive): Treat Lisp string contents as const.
7976
79772002-07-19 Juanma Barranquero <lektu@terra.es>
7978
7979 * fileio.c (Ffile_name_as_directory): Fix argument name in docstring.
7980 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
7981
7982 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
7983
7984 * fileio.c (syms_of_fileio): Likewise.
7985
79862002-07-18 Richard M. Stallman <rms@gnu.org>
7987
7988 * data.c (Fdefalias): Doc fix.
7989
79902002-07-17 Dave Love <fx@gnu.org>
7991
7992 * intervals.h (text_property_stickiness): Use P_.
7993
7994 * ccl.c: Remove `emacs' conditionals.
7995 (ccl_backtrace_table): Fix size spec.
7996 (ccl_driver): Fix type errors.
7997
79982002-07-16 Ken Raeburn <raeburn@gnu.org>
7999
8000 * alloc.c (xstrdup, make_string, make_unibyte_string)
8001 (make_multibyte_string, build_string): String pointer args now
8002 point to const.
8003 * charset.c (find_charset_in_text, c_string_width):
8004 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
8005 * fileio.c (report_file_error):
8006 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
8007 (count_combining_before, count_combining_after, insert_1_both):
8008 (insert, insert_and_inherit, insert_string):
8009 (insert_before_markers, insert_before_markers_and_inherit):
8010 * lread.c (intern, oblookup, hash_string):
8011 * minibuf.c (temp_echo_area_glyphs):
8012 * search.c (fast_c_string_match_ignore_case):
8013 * sysdep.c (emacs_open, set_file_times):
8014 * xfaces.c (xstricmp):
8015 * xdisp.c (store_frame_title, string_char_and_length):
8016 (message_dolog, message2, message2_nolog, set_message): Likewise.
8017 (set_message_1): Cast message string argument to const pointer.
8018 * editfns.c (general_insert_function): Insertion function now
8019 takes pointer to const for input data.
8020 * charset.h (find_charset_in_text, c_string_width):
8021 (parse_str_as_multibyte): Declarations updated.
8022 * dispextern.h (xstricmp): Declaration updated.
8023 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
8024 (count_size_as_multibyte, count_combining_before):
8025 (count_combining_after, insert_1, insert_1_both, message_dolog):
8026 (insert, insert_and_inherit, insert_before_markers)
8027 (insert_before_markers_and_inherit, set_message, message2):
8028 (message2_dolog, build_string, make_string, make_unibyte_string):
8029 (make_multibyte_string, intern, oblookup, report_file_error):
8030 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
8031 (emacs_open, xstrdup): Declarations updated.
8032 * systime.h (set_file_times): Declaration updated.
8033
8034 * charset.c (find_charset_in_text, lisp_string_width): Use const
8035 for pointer to lisp string data.
8036 * charset.h (FETCH_STRING_CHAR_ADVANCE):
8037 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
8038 * coding.c (Ffind_coding_systems_region_interval):
8039 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
8040 (Fmake_directory_internal, Fdelete_directory):
8041 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
8042 * fontset.c (font_family_registry, fs_query_fontset):
8043 (list_fontsets):
8044 * frame.c (Fframe_parameter):
8045 * keyboard.c (cmd_error_internal):
8046 * keymap.c (Fdescribe_buffer_bindings):
8047 * lread.c (complete_filename_p, openp):
8048 * minibuf.c (Fminibuffer_complete_word):
8049 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
8050 (face_before_or_after_it_pos, next_element_from_string):
8051 (get_overlay_arrow_glyph_row, display_mode_element):
8052 (decode_mode_spec_coding):
8053 * xterm.c (same_x_server): Likewise.
8054
8055 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
8056 settings of non-existent fields.
8057
8058 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
8059 copy a lisp value.
8060
8061 * lread.c (Fintern_soft): Use string macros instead of
8062 Lisp_String fields.
8063 * keyboard.c (echo_char, parse_modifiers_uncached):
8064 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
8065 * textprop.c (validate_interval_range, interval_of): Likewise.
8066
8067 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
8068
8069 * charset.h (FETCH_STRING_CHAR_ADVANCE)
8070 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
8071 XSTRING()->size_byte.
8072
8073 * lisp.h (SDATA, SREF): Produce rvalue.
8074 (SSET): New macro.
8075 * alloc.c (make_event_array): Use SSET for storing into a string.
8076 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
8077 a string.
8078 * casefiddle.c (casify_object): Use SSET.
8079 * charset.h (FETCH_STRING_CHAR_ADVANCE)
8080 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
8081 address of string contents.
8082 * data.c (Faref): Use SDATA.
8083 (Faset): Use SDATA, SSET.
8084 * dired.c (directory_files_internal): Use SSET.
8085 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
8086 (Fread_file_name): Use SREF, SSET.
8087 * fns.c (concat): Use SSET.
8088 (concat, Fdelete): Use SDATA.
8089 * insdel.c (insert_from_string_1): Use SDATA.
8090 * keyboard.c (Fevent_convert_list): Use SREF.
8091 * lread.c (Fload): Use SDATA, SSET.
8092 * macfns.c (validate_x_resource_name): Use SSET.
8093 * process.c (status_message): Use SSET.
8094 * search.c (wordify): Use SDATA.
8095 (Freplace_match): Use SREF.
8096 * w32fns.c (validate_x_resource_name): Use SSET.
8097 * xfns.c (validate_x_resource_name): Use SSET.
8098 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
8099
81002002-07-16 Richard M. Stallman <rms@gnu.org>
8101
8102 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
8103
8104 * xdisp.c (reconsider_clip_changes):
8105 Don't test prevent_redisplay_optimizations_p.
8106 (redisplay_internal): Test prevent_redisplay_optimizations_p
8107 along with clip_changed in some cases.
8108 (try_window_id): Likewise.
8109 (redisplay_window): New local var buffer_unchanged_p.
8110
8111 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
8112
8113 * process.c (create_process): Test USG_SUBTTY_WORKS.
8114 (process_send_signal): Clean up handling of GID.
8115 Detect errors in ioctls meant to set GID.
8116
8117 * window.c (temp_output_buffer_show):
8118 Don't set prevent_redisplay_optimizations_p.
8119
81202002-07-15 Juanma Barranquero <lektu@terra.es>
8121
8122 * eval.c (Fdefvaralias): Add docstring argument.
8123
81242002-07-15 Ken Raeburn <raeburn@gnu.org>
8125
8126 * lisp.h (STRING_INTERVALS): Produce rvalue.
8127 (STRING_SET_INTERVALS): New macro.
8128 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
8129 * fns.c (Fstring_as_multibyte): Likewise.
8130 * intervals.c (balance_possible_root_interval, delete_interval)
8131 (create_root_interval, copy_intervals_to_string): Likewise.
8132 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
8133 instead of 0.
8134
81352002-07-14 Ken Raeburn <raeburn@gnu.org>
8136
8137 * lisp.h (STRING_SET_CHARS): New macro.
8138 (SCHARS, SBYTES): Produce rvalues.
8139 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
8140 * fns.c (concat): Likewise.
8141 * lread.c (read_vector): Likewise.
8142
8143 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
8144 (STRING_SET_UNIBYTE): New macro.
8145 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
8146 length of -1) changed to use STRING_SET_UNIBYTE.
8147 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
8148 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
8149 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
8150 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
8151 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
8152 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
8153 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
8154 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
8155 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
8156 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
8157 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
8158 STRING_BYTES or indirection changed to SCHARS, SBYTES,
8159 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
8160 unchanged for now.
8161
81622002-07-13 Kim F. Storm <storm@cua.dk>
8163
8164 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
8165
81662002-07-12 Richard M. Stallman <rms@gnu.org>
8167
8168 * fileio.c (Fwrite_region): Doc fix.
8169
8170 * print.c (print_error_message): Don't handle Vsignaling_function here.
8171
8172 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
8173 (command_loop_1): Avoid certain actions after memory-full error.
8174
8175 * eval.c (Fsignal): Don't call cancel_hourglass.
8176 For a memory-full error, don't call Vsignal_hook_function
8177 and don't set Vsignaling_function.
8178
8179 * process.c (process_send_signal): Add abort call.
8180
81812002-07-11 Markus Rost <rost@math.ohio-state.edu>
8182
8183 * keymap.c (Fkey_binding): Fix typo.
8184
81852002-07-11 Richard M. Stallman <rms@gnu.org>
8186
8187 * alloc.c (Vmemory_full): New variable.
8188 (Vmemory_signal_data): Renamed from memory_signal_data.
8189 Uses changed.
8190 (syms_of_alloc): Defvar them.
8191 (memory_full, buffer_memory_full): Set Vmemory_full.
8192
8193 * lisp.h (Vmemory_full): Add declaration.
8194 (current_column, indented_beyond_p): Change declaration.
8195
8196 * indent.c (last_known_column): Declare as double, not float.
8197 (current_column, current_column_1, string_display_width)
8198 (position_indentation): Return `double'.
8199 (indented_beyond_p): Arg `column' is `double'. Callers changed.
8200
8201 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
8202 (back_to_previous_visible_line_start)
8203 (reseat_at_next_visible_line_start, next_element_from_buffer):
8204 Use `double', not `float', when calling indented_beyond_p.
8205
8206 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
8207
8208 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
8209
82102002-07-11 Juanma Barranquero <lektu@terra.es>
8211
8212 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
8213 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
8214 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
8215 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
8216 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
8217 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
8218
82192002-07-10 Juanma Barranquero <lektu@terra.es>
8220
8221 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE. All callers
8222 changed.
8223
82242002-07-09 Stefan Monnier <monnier@cs.yale.edu>
8225
8226 * data.c (Fdefalias): Add an optional `docstring' argument.
8227 (set_internal, Fsetq_default): Use XCAR/XCDR.
8228
8229 * composite.c (HASH_VALUE, HASH_KEY):
8230 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
8231
82322002-07-09 Kenichi Handa <handa@etl.go.jp>
8233
8234 * callproc.c (Fcall_process): Fix previous change.
8235
82362002-07-07 Stefan Monnier <monnier@cs.yale.edu>
8237
8238 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
8239 Add support for hash-tables.
8240 (Ftry_completion): Return t even if the string appears multiple times.
8241
8242 * fns.c (Fnconc): Use XCDR.
8243 (Fprovide): Use CONSP and XCDR.
8244 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
8245 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
8246 (Fmake_hash_table): Accept `:size nil'.
8247 (Fmakehash): Delete: moved to subr.el.
8248 (syms_of_fns): Don't defsubr makehash.
8249
8250 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
8251 (HASH_TABLE_SIZE): Move from fns.c.
8252
82532002-07-07 Richard M. Stallman <rms@gnu.org>
8254
8255 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
8256 Instead just return 0 when there is something to be done.
8257 (try_scrolling): If make_cursor_line_fully_visible returns 0,
8258 retry scrolling as if cursor were off the bottom.
8259 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
8260 return CURSOR_MOVEMENT_MUST_SCROLL.
8261 (redisplay_window): If make_cursor_line_fully_visible returns 0,
8262 go to try_to_scroll.
8263
8264 * buffer.c (Fbuffer_local_value): Store current value into its binding
8265 so we get the up-to-date value for the binding that is loaded.
8266
8267 * eval.c (Fdefmacro): Doc fix.
8268
82692002-07-05 Dave Love <fx@gnu.org>
8270
8271 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
8272 correctly.
8273
8274 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
8275 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
8276 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
8277 CCL_LookupCharConstTbl.
8278 (syms_of_ccl): Defvar translation-hash-table-vector.
8279
82802002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8281
8282 * xdisp.c: Remove unused variable `face'.
8283
82842002-07-04 Juanma Barranquero <lektu@terra.es>
8285
8286 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
8287 obsolescence information.
8288
82892002-07-03 Andrew Choi <akochoi@shaw.ca>
8290
8291 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
8292 pattern. Search cache first.
8293 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
8294 for Japanese font.
8295 (XLoadQueryFont): Use it.
8296
82972002-07-02 Richard M. Stallman <rms@gnu.org>
8298
8299 * keymap.c (Fdefine_key): Doc fix.
8300
8301 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
8302
83032002-07-02 Juanma Barranquero <lektu@terra.es>
8304
8305 * keymap.c (syms_of_keymap): Fix typo.
8306
83072002-07-01 Andrew Choi <akochoi@shaw.ca>
8308
8309 * s/darwin.h: Define POSIX_SIGNALS.
8310
8311 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
8312 and FSRefMakePath to convert FSSpec returned with Apple Event to
8313 Posix pathname.
8314 (mac_initialize) [TARGET_API_MAC_CARBON]:
8315 Call init_required_apple_events and disable the `Quit' menu item
8316 provided automatically by the Carbon Toolbox.
8317
83182002-07-01 Dave Love <fx@gnu.org>
8319
8320 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
8321 for K&R.
8322
8323 * xterm.c: Fix prototype for K&R.
8324
8325 * term.c (costs_set): Declare static, non-initialized for pcc.
8326
83272002-07-01 Richard M. Stallman <rms@gnu.org>
8328
8329 * keyboard.c (timer_last_idleness_start_time): New variable.
8330 (timer_start_idle): Set that.
8331 (read_key_sequence): Use that to reset timer_idleness_start_time
8332 to previous value.
8333
8334 * window.c (Frecenter): With arg, set optional_new_start.
8335
8336 * xdisp.c (redisplay_internal): Make optional_new_start really work.
8337
8338 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
8339 buffer for completion.
8340
83412002-06-29 Ken Raeburn <raeburn@gnu.org>
8342
8343 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
8344
83452002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8346
8347 * keyboard.c (readable_filtered_events): New function that filters
8348 FOCUS_IN_EVENT depending on parameter.
8349 (readable_events): Calls readable_filtered_events, not filtering
8350 FOCUS_IN_EVENT.
8351 (get_filtered_input_pending): New function, filtering parameter passed
8352 to readable_filtered_events.
8353 (get_input_pending): Calls get_filtered_input_pending, not filtering
8354 FOCUS_IN_EVENT.
8355 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
8356 FOCUS_IN_EVENT.
8357
8358 * xterm.h (struct x_output): Add focus_state.
8359
8360 * xterm.c (x_focus_changed): New function.
8361 (x_detect_focus_change): New function.
8362 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
8363 EnterNotify and LeaveNotify to track X focus changes.
8364
83652002-06-28 Andreas Schwab <schwab@suse.de>
8366
8367 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
8368
83692002-06-27 Kim F. Storm <storm@cua.dk>
8370
8371 * xdisp.c: (mode_line_string_list, mode_line_string_face)
8372 (mode_line_string_face_prop): New variables.
8373 (store_mode_line_string): New function.
8374 (display_mode_element): Use store_mode_line_string to
8375 add mode-line string elements to mode_line_string_list
8376 when mode_line_string_list is non-nil.
8377 (Fformat_mode_line): Now returns propertized string by
8378 default. New arg NO-PROPS to ignore properties.
8379 (decode_mode_spec): Only add two dashes for %- in propertized
8380 mode-line string.
8381 (syms_of_xdisp): Init and staticpro mode_line_string_list.
8382
83832002-06-27 Stefan Monnier <monnier@cs.yale.edu>
8384
8385 * minibuf.c (minibuffer_completion_contents): Add return type.
8386
83872002-06-27 Juanma Barranquero <lektu@terra.es>
8388
8389 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
8390
83912002-06-26 Juanma Barranquero <lektu@terra.es>
8392
8393 * fileio.c (read_file_name_cleanup): Add missing return.
8394
83952002-06-26 Richard M. Stallman <rms@gnu.org>
8396
8397 * window.c (Frecenter): Don't set force_start flag.
8398
8399 * minibuf.c (do_completion, Fminibuffer_complete_word)
8400 (Fminibuffer_completion_help): Complete just the text before point.
8401 (minibuffer_completion_contents): New function.
8402
8403 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
8404
8405 * frame.c (frames_bury_buffer): Function deleted.
8406
84072002-06-25 Miles Bader <miles@gnu.org>
8408
8409 * callint.c (Fcall_interactively): When checking to see if doprnt hit
8410 the end of callint_message, allow for a terminating '\0'.
8411
84122002-06-24 Juanma Barranquero <lektu@terra.es>
8413
8414 * w32select.c: Include composite.h
8415
8416 * w16select.c: Likewise.
8417
84182002-06-24 Kenichi Handa <handa@etl.go.jp>
8419
8420 * callproc.c (Fcall_process): If code detection is necessary,
8421 call detect_coding directly here.
8422
8423 * coding.c (detect_eol): Preserve coding->cmp_data.
8424
8425 * w16select.c (Fw16_get_clipboard_data):
8426 * w32fns.c (w32_to_x_font):
8427 * w32select.c (Fw32_get_clipboard_data):
8428 * xselect.c (selection_data_to_lisp_data):
8429 * xterm.c (XTread_socket): Disable composition handling.
8430
84312002-06-24 Stefan Monnier <monnier@cs.yale.edu>
8432
8433 * print.c (temp_output_buffer_setup): Kill all local variables.
8434
84352002-06-22 Stefan Monnier <monnier@cs.yale.edu>
8436
8437 * lread.c (Fread): Remove redundant and imprecise declaration.
8438
8439 * xfns.c (check_x_display_info): Use check_x_frame.
8440
8441 * .gdbinit (xprintsym): Use the new `xname' field.
8442 (xsymbol): Use it.
8443
84442002-06-22 Jason Rumney <jasonr@gnu.org>
8445
8446 * w32fns.c (file_dialog_callback): New function.
8447 (Fx_file_dialog): Allow selecting directories as well as files.
8448
84492002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8450
8451 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
8452 OpenBSD. Add support for mipseb-*-netbsd* machines.
8453
84542002-06-17 Andrew Choi <akochoi@shaw.ca>
8455
8456 * macterm.c (mac_scroll_area): Set foreground and backcolor to
8457 black and white before scrolling. Restore frame background and
8458 foreground color after scrolling.
8459 (do_window_update): Call XClearWindow before calling expose_frame.
8460 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
8461 FRAME_FOREGROUND_PIXEL of frame.
8462
8463 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
8464 test Mac command key as <ALT> key.
8465
84662002-06-17 Stefan Monnier <monnier@cs.yale.edu>
8467
8468 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
8469
8470 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
8471 Lookup keys in function-key-map immediately so that key-translation-map
8472 can be applied earlier.
8473 Remove function_key_possible and key_translation_possible, replaced
8474 by checking `keytran_start < t'.
8475
8476 * .gdbinit (xsymbol): Use the new `xname' field.
8477
84782002-06-17 Andrew Choi <akochoi@shaw.ca>
8479
8480 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
8481 test Mac command key as <ALT> key.
8482
8483 * mac.c (do_applescript): Call initialize_applescript if necessary
8484 when first called. Dispose of result_desc only when there is no error.
8485 (Fdo_applescript): Use %d format specifier instead of %ld.
8486
84872002-06-16 Andrew Choi <akochoi@shaw.ca>
8488
8489 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
8490 of FrontWindow for cases keyDown and autoKey.
8491
8492 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
8493 Vdefault_fontset to Monaco with mac-roman coding.
8494
8495 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
8496 init_process before and after inclusion of Carbon/Carbon.h, resp.
8497
8498 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
8499 cursor_gc.
8500 (add_font_name_table_entry): New function.
8501 (init_font_name_table): Use add_font_name_table_entry; add italic,
8502 bold, and bold-italic entries for truetype fonts.
8503
8504 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
8505 for Mac too.
8506 (try_font_list) [MAC_OS]: If no font matches given registry, try
8507 fonts with any registry matching face_family.
8508 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
8509
8510 * s/darwin.h: If autoconf detects the Ncurses library, define
8511 LIBS_TERMCAP to -lncurses to use it.
8512
85132002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
8514
8515 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
8516
85172002-06-15 Richard M. Stallman <rms@gnu.org>
8518
8519 * window.c (Fset_window_configuration): Explicitly preserve
8520 the point value that new_current_buffer had at the start.
8521
85222002-06-14 Juanma Barranquero <lektu@terra.es>
8523
8524 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
8525 Fix typos.
8526
85272002-06-14 Kim F. Storm <storm@cua.dk>
8528
8529 * insdel.c (insert_1_both, insert_from_string_1)
8530 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
8531 insert happened in the end_unchanged region. Otherwise, the
8532 redisplay may be confused and duplicate the last line in the
8533 buffer [seen after save-buffer when require-final-newline==t].
8534
85352002-06-13 Jason Rumney <jasonr@gnu.org>
8536
8537 * w32.c (init_environment): Remove EMACSLOCKDIR.
8538 (stat): Swap _S_IFDIR and _S_IFREG.
8539
85402002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8541
8542 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
8543 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
8544 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
8545 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
8546 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
8547 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
8548 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
8549 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
8550 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
8551 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
8552 SELECTION_REQUEST_EVENT, selection_clear_event to
8553 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
8554 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
8555 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
8556 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
8557 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
8558 no_event to NO_EVENT.
8559
85602002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8561
8562 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
8563
85642002-06-12 Stefan Monnier <monnier@cs.yale.edu>
8565
8566 * intervals.c (textget): Don't forget to `return'.
8567 (lookup_char_property): Use XCAR/XCDR.
8568
85692002-06-12 Juanma Barranquero <lektu@terra.es>
8570
8571 * xdisp.c (Fformat_mode_line): Fix typo.
8572
85732002-06-12 Kim F. Storm <storm@cua.dk>
8574
8575 * xdisp.c (Fformat_mode_line): New function.
8576 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
8577 (store_frame_title_char, store_frame_title): Use unconditionally.
8578 (init_xdisp): Defsubr Fformat_mode_line.
8579 Initialize frame_title_buf etc. unconditionally.
8580
85812002-06-11 Stefan Monnier <monnier@cs.yale.edu>
8582
8583 * keyboard.c (read_key_sequence):
8584 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
8585 things through those maps after downcasing events.
8586 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
8587 applies after function-key-map.
8588 Make sure that keytran can be done in the middle in the sequence.
8589 Be careful not to throw away events past the one we downcase.
8590
8591 * lread.c (read_integer): Remove unused var `tem'.
8592 (read1): Fix int/Lisp_Object mixup.
8593
8594 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
8595
85962002-06-11 Richard M. Stallman <rms@gnu.org>
8597
8598 * keyboard.c (readable_events): Ignore any number of
8599 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
8600
86012002-06-09 Miles Bader <miles@gnu.org>
8602
8603 * xfaces.c (Ftty_supports_face_attributes_p): New function.
8604 (parse_rgb_list, tty_lookup_color): New functions.
8605 (tty_defined_color): Use `tty_lookup_color' to do all the work.
8606 (color_distance, Fcolor_distance): New functions.
8607 (TTY_SAME_COLOR_THRESHOLD): New macro.
8608 (Qtty_color_standard_values): New variable.
8609 (syms_of_xfaces): Initialize new vars & functions.
8610
86112002-06-08 Colin Walters <walters@verbum.org>
8612
8613 * textprop.c (Vchar_property_alias_alist): New variable.
8614 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
8615
8616 * intervals.c (lookup_char_property): New function for looking up
8617 overlay and text properties, created from textget.
8618 (textget): Use it.
8619
8620 * intervals.h (lookup_char_property): Declare.
8621 (Vchar_property_alias_alist): Declare.
8622
8623 * buffer.c (Foverlay_get): Use lookup_char_property.
8624
86252002-06-07 Sam Steingold <sds@gnu.org>
8626
8627 * xselect.c (lisp_data_to_selection_data): Fix last change:
8628 *data_ret is not a Lisp string, while unibyte_string is.
8629
86302002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
8631
8632 * xselect.c (lisp_data_to_selection_data): Fix last change:
8633 set size_ret.
8634
86352002-06-07 Andreas Schwab <schwab@suse.de>
8636
8637 * m/amdx86-64.h: New file.
8638
86392002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
8640
8641 * fns.c (Fstring_make_unibyte): Doc fix.
8642
8643 * xselect.c (lisp_data_to_selection_data): If the requested type
8644 is STRING, call string_make_unibyte to encode the selected text
8645 as a string.
8646
8647 * window.c (Fset_window_hscroll): Doc fix.
8648
86492002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8650
8651 * fileio.c (choose_write_coding_system):
8652 Call select-safe-coding-system properly.
8653
86542002-06-03 Richard M. Stallman <rms@gnu.org>
8655
8656 * xdisp.c (message_with_string): Error if STRING is not a string.
8657
8658 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
8659
8660 * fileio.c (choose_write_coding_system): Pass FILE arg to
8661 Vselect_safe_coding_system_function.
8662
86632002-06-03 Ken Raeburn <raeburn@gnu.org>
8664
8665 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
8666
86672002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
8668
8669 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
8670 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
8671 * keymap.c (describe_command): Likewise.
8672 * minibuf.c (read_minibuf): Likewise.
8673
8674 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
8675 Cast `current_column' return value to int.
8676 (back_to_previous_visible_line_start)
8677 (reseat_at_next_visible_line_start, next_element_from_buffer):
8678 Cast `indented_beyond_p' 3rd arg to float.
8679
8680 * indent.c (last_known_column): Now a float.
8681 (current_column_1, position_indentation, current_column)
8682 (string_display_width): Return float.
8683 (Fcurrent_column): Cast `current_column' return value to int.
8684 (Fcurrent_indentation): Cast `position_indentation' retval to int.
8685 (indented_beyond_p): Third arg now a float.
8686 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
8687
8688 * lisp.h (current_column): Now returns float.
8689 (indented_beyond_p): 3rd arg now a float.
8690
86912002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
8692
8693 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
8694 is Qcompound_text_with_extensions.
8695
8696 * xselect.c (lisp_data_to_selection_data): Always set selection
8697 type as string if x_encode_text returns streingp non-NULL.
8698
8699 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
8700
87012002-05-30 Richard M. Stallman <rms@gnu.org>
8702
8703 * window.c (Fset_window_configuration): Correct the handling
8704 of point in current buffer, to work with multiple windows.
8705
87062002-05-29 Colin Walters <walters@verbum.org>
8707
8708 * lread.c (Fread_from_string): Don't depend on order of evaluation
8709 for C function parameters.
8710
87112002-05-28 Richard M. Stallman <rms@gnu.org>
8712
8713 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
8714 way for blinked-off state and for a nonselected window.
8715
8716 * window.c (window_scroll_pixel_based): Don't call Fbolp;
8717 instead, see if the new start pos is at beginning of line.
8718
8719 * fileio.c (Fwrite_region): If START is a string, don't
8720 make any annotations.
8721
8722 * eval.c (syms_of_eval): Doc fix.
8723
87242002-05-28 Colin Walters <walters@debian.org>
8725
8726 * emacs.c (USAGE1): Add --no-splash.
8727 (standard_args): Ditto.
8728
87292002-05-28 Colin Walters <walters@gnu.org>
8730
8731 * lread.c (readchar_count): New variable.
8732 (readchar): Increment it.
8733 (unreadchar): Decrement it.
8734 (read_multibyte): Decrement it.
8735 (Vread_with_symbol_positions): New variable.
8736 (Vread_symbol_positions_list): New variable.
8737 (read_internal_start): New function, created from Fread and
8738 Fread_from_string. Handle Vread_symbol_positions_list and
8739 Vread_with_symbol_positions.
8740 (readevalloop, Fread, Fread_from_string): Use it.
8741 (read1): Use readchar_count to add symbol positions to
8742 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
8743 (syms_of_lread): DEFVAR_LISP and initialize them.
8744
8745 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
8746 (substitute_object_recurse, substitute_object_in_subtree)
8747 (substitute_in_interval): Prototype.
8748 (read_multibyte): Return c if it's less than zero.
8749
87502002-05-28 Kim F. Storm <storm@cua.dk>
8751
8752 * fileio.c (Fread_file_name_internal): Added brute-force
8753 speed up for using predicate file-directory-p.
8754
87552002-05-28 Kim F. Storm <storm@cua.dk>
8756
8757 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
8758 New variables.
8759 (syms_of_fileio): DEFVAR_LISP them.
8760 (read_file_name_cleanup): New unwind function.
8761 (Fread_file_name_internal): Only return completions satifying
8762 Vread_file_name_predicate. Temporarily unwind protect and rebind
8763 default-directory while checking completions against the predicate.
8764 (Fread_file_name): Added PREDICATE argument. Specbind it to
8765 Vread_file_name_predicate during completion.
8766 Call Vread_file_name_function to read the file name if non-nil.
8767
8768 * lisp.h (Fread_file_name): Now has 6 args.
8769
8770 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
8771 predicate for Fread_file_name when reading directory name.
8772 Supply Qnil for predicate in other calls to Fread_file_name.
8773
87742002-05-26 Miles Bader <miles@gnu.org>
8775
8776 * term.c (tty_capable_p): New function.
8777 * dispextern.h (tty_capable_p): New function declaration.
8778 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
8779 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
8780
87812002-05-23 Stefan Monnier <monnier@cs.yale.edu>
8782
8783 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
8784 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
8785 (Vwrite_region_annotate_functions): Docstring fix.
8786
87872002-05-23 Kim F. Storm <storm@cua.dk>
8788
8789 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
8790 phys_cursor's hpos is overwritten. This is still not completely
8791 correct, as it doesn't really make sense to use hpos at all to
8792 get the cursor glyph (as that is relative to the width of the
8793 characters on the line, which may have changed during the update).
8794
87952002-05-22 Jason Rumney <jasonr@gnu.org>
8796
8797 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
8798 Lisp_Object.
8799 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
8800 Use modified enumfont_t struct.
8801
8802 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
8803
8804 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
8805 Handle the `hbar' cursor type.
8806 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
8807
8808 * w32fns.c (Qhbar): New variable.
8809 (x_specified_cursor_type): Use it.
8810
88112002-05-21 Ken Raeburn <raeburn@gnu.org>
8812
8813 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
8814 now, when the address is needed.
8815
88162002-05-21 Colin Walters <walters@gnu.org>
8817
8818 * Makefile.in (shortlisp): Add font-core.el.
8819
88202002-05-20 Richard M. Stallman <rms@gnu.org>
8821
8822 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
8823
8824 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
8825 equivalent key bindings here.
8826
88272002-05-20 Ken Raeburn <raeburn@gnu.org>
8828
8829 Change symbol structure to contain a lisp object for the symbol
8830 name:
8831 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
8832 object field named "xname".
8833 (SYMBOL_NAME): New macro.
8834 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
8835 name field.
8836 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
8837 (mark_object, gc_sweep): Use symbol xname field and XSTRING
8838 instead of name field.
8839 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
8840 SYMBOL_NAME instead of XSYMBOL and name field.
8841 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
8842 instead of XSYMBOL and name field.
8843 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
8844 and SYMBOL_NAME instead of XSYMBOL and name field.
8845 * coding.c (Fread_coding_system, code_convert_region1)
8846 (code_convert_string1, code_convert_string_norecord)
8847 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
8848 XSYMBOL and name field.
8849 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
8850 (Fmake_variable_buffer_local, Fmake_local_variable)
8851 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
8852 of XSYMBOL and name field.
8853 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
8854 XSYMBOL and name field.
8855 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
8856 instead of XSYMBOL and name field.
8857 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
8858 XSYMBOL and name field.
8859 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
8860 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
8861 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
8862 instead of XSYMBOL and name field.
8863 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
8864 (parse_modifiers, apply_modifiers, Fevent_convert_list)
8865 (parse_solitary_modifier, Fexecute_extended_command):
8866 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
8867 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
8868 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
8869 of XSYMBOL and name field.
8870 (describe_command, describe_translation): Use SYMBOL_NAME and
8871 assignment instead of XSYMBOL and name field and XSETSTRING.
8872 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
8873 instead of XSYMBOL and name field.
8874 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
8875 name field and XSETSTRING.
8876 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
8877 of XSYMBOL and name field.
8878 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
8879 assignment instead of XSYMBOL and name field and XSETSTRING.
8880 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
8881 XSTRING instead of XSYMBOL and name field.
8882 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
8883 and XSTRING instead of XSYMBOL and name field.
8884 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
8885 and XSTRING instead of XSYMBOL and name field.
8886 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
8887 XSTRING instead of XSYMBOL and name field.
8888 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
8889 of XSYMBOL and name field.
8890 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
8891 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
8892
88932002-05-19 Ken Raeburn <raeburn@gnu.org>
8894
8895 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
8896 and XCDR real rvalues in most configurations.
8897
8898 * buffer.c (fix_overlays_in_range, fix_overlays_before):
8899 Don't take the address of the cdr part of a cons cell; instead, track
8900 the parent cell and call XSETCDR, or set the variable for the head
8901 of the list if we haven't started down the list yet.
8902
89032002-05-19 Richard M. Stallman <rms@gnu.org>
8904
8905 * doc.c (reread_doc_file): Don't ask for confirmation.
8906
89072002-05-18 Jason Rumney <jasonr@gnu.org>
8908
8909 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
8910 (xbm_load_image): Use it.
8911 (xbm_load): Ditto.
8912 (xbm_read_bitmap_data): Reverted to xfns.c version.
8913 From David Ponce <david@dponce.com>.
8914
89152002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
8916
8917 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
8918 2.02 and later.
8919
89202002-05-16 Juanma Barranquero <lektu@terra.es>
8921
8922 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
8923
89242002-05-15 Stefan Monnier <monnier@cs.yale.edu>
8925
8926 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
8927 meaningful test.
8928 (read_char_minibuf_menu_prompt): Fix typo.
8929
89302002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
8931
8932 * eval.c (Fcommandp): Doc fix.
8933
89342002-05-13 Stefan Monnier <monnier@cs.yale.edu>
8935
8936 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
8937 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
8938 (Fset_keymap_parent): Gcpro a bit more.
8939 (access_keymap): Gcpro around meta_map call and around the main loop.
8940 (get_keyelt): Gcpro when following indirect references.
8941 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
8942 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
8943 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
8944 Remove useless ad-hoc remap code.
8945
89462002-05-13 Richard M. Stallman <rms@gnu.org>
8947
8948 * search.c (search_buffer): Give up boyer moore search if inverse
8949 translation change charset_base.
8950
89512002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
8952
8953 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
8954 characters is carried over from the previous block of text, adjust
8955 coding->produced to account for the extra character.
8956
89572002-05-11 Andreas Schwab <schwab@suse.de>
8958
8959 * coding.c (intersection): Keep the elements of the returned list
8960 in the same order as in the first list.
8961
89622002-05-11 Kim F. Storm <storm@cua.dk>
8963
8964 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
8965 only update cmm_size if realloc actually succeeds.
8966 Testing with initial size of 2 elements revealed that using
8967 realloc on GNU/Linux would cause a random trap in xmalloc
8968 later on, so I rewrote the code to use malloc/bcopy/free instead
8969 of realloc.
8970
89712002-05-10 Jason Rumney <jasonr@gnu.org>
8972
8973 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
8974
89752002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
8976
8977 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
8978 parens, to ensure correct evaluation order.
8979
89802002-05-10 Kim F. Storm <storm@cua.dk>
8981
8982 * keymap.c (Vemulation_mode_map_alists): New variable.
8983 (syms_of_keymap): DEFVAR_LISP it.
8984 (current_minor_maps): Process keymap alists in that list before
8985 minor-mode-overriding-map-alist and minor-mode-map-alist.
8986
89872002-05-09 Richard M. Stallman <rms@gnu.org>
8988
8989 * search.c (Freplace_match): Doc fix.
8990
89912002-05-09 Kim F. Storm <storm@cua.dk>
8992
8993 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
8994 Enlarge cursor rectangle drawn around image with non-zero relief.
8995
8996 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
8997 Enlarge cursor rectangle drawn around image with non-zero relief.
8998
8999 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
9000 Enlarge cursor rectangle drawn around image with non-zero relief.
9001
90022002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
9003
9004 * xselect.c (lisp_data_to_selection_data): Don't set selection
9005 type if comes from the Lisp object's car. If the selection
9006 contains a pure ASCII text, always return QSTRING as its type.
9007
90082002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9009
9010 * mac.c (mac-cut-function): Doc fix.
9011
90122002-05-05 Richard M. Stallman <rms@gnu.org>
9013
9014 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
9015
90162002-05-04 Jason Rumney <jasonr@gnu.org>
9017
9018 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
9019 for event-click-count.
9020
9021 * process.c (init_process): Only add server subfeature if we can
9022 use non-blocking I/O.
9023
90242002-05-04 Andrew Choi <akochoi@shaw.ca>
9025
9026 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
9027 repeatedly.
9028
90292002-05-03 Jason Rumney <jasonr@gnu.org>
9030
9031 * process.c (Fmake_network_process): Only support server sockets
9032 when we can make them non-blocking.
9033
9034 * s/ms-w32.h (HAVE_SELECT): Define.
9035
9036 * w32.h (FILE_NDELAY): New flag.
9037
9038 * w32.c (sys_getpeername, fcntl): New functions.
9039 (_sys_read_ahead): Temporarily block on non-blocking sockets.
9040
9041 * w32proc.c: include sys/file.h.
9042
90432002-05-03 Colin Walters <walters@verbum.org>
9044
9045 * callproc.c (Vgame_score_directory): Renamed to
9046 Vshared_game_score_directory.
9047
90482002-04-30 Richard M. Stallman <rms@gnu.org>
9049
9050 * s/gnu.h [emacs]: Include stdio.h.
9051 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
9052
9053 * eval.c (do_autoload): Error if called while preparing to dump.
9054
9055 * fns.c (Frequire): Error if need to load while preparing to dump.
9056
90572002-04-28 Colin Walters <walters@verbum.org>
9058
9059 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
9060 Default to "~/.emacs.d/games".
9061
90622002-04-29 Stefan Monnier <monnier@cs.yale.edu>
9063
9064 * lread.c (openp): Change arg exec_only to predicate.
9065 (build_load_history): Use XCAR/XCDR.
9066 (Flocate_file_internal): New fun.
9067 (syms_of_lread): Defsubr it.
9068 (Fload): Update call to openp.
9069
9070 * lisp.h (openp): Update prototype.
9071
9072 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
9073 * w32proc.c (sys_spawnve):
9074 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
9075 * w32.c (check_windows_init_file):
9076 * sound.c (Fplay_sound_internal):
9077 * process.c (Fstart_process):
9078 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
9079 * mac.c (run_mac_command):
9080 * emacs.c (init_cmdargs):
9081 * callproc.c (Fcall_process): Update call to openp.
9082
9083 * textprop.c (remove_properties): Don't use XCAR without CONSP.
9084
9085 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
9086
90872002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9088
9089 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
9090 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
9091
90922002-04-28 Richard M. Stallman <rms@gnu.org>
9093
9094 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
9095
9096 * eval.c (Fcommandp): New arg for_call_interactively.
9097 * lisp.h (Fcommandp): Declare new arg.
9098
90992002-04-28 Jason Rumney <jasonr@gnu.org>
9100
9101 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
9102
9103 * w32.c (stat, fstat): Use file index information to generate
9104 inodes for directories where available.
9105
91062002-04-26 Andrew Choi <akochoi@shaw.ca>
9107
9108 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
9109 [HAVE_CARBON]: Include Mac object files.
9110
9111 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
9112 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
9113 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
9114 MAC_OSX, and MAC_OS instead of macintosh.
9115
9116 * editfns.c [MAC_OS8]: Include stdio.h.
9117
9118 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
9119
9120 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
9121 Apple Monaco.
9122
9123 * process.c: Declare QCfamily and QCfilter as extern.
9124 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
9125 calling select.
9126
9127 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
9128
9129 * tparam.c [MAC_OSX]: Don't define BC and UP.
9130
9131 * config.in [HAVE_CARBON]: Add.
9132
9133 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
9134 Move here from mac/src and mac/inc.
9135
9136 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
9137
91382002-04-26 Gerd Moellmann <gerd@gnu.org>
9139
9140 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
9141 Compute phys_cursor_width from the x position returned
9142 by x_draw_glyhs, which is cheaper.
9143 (x_display_and_set_cursor): Compute the buffer-local value
9144 of `cursor-in-non-selected-windows' only when needed.
9145
91462002-04-25 Gerd Moellmann <gerd@gnu.org>
9147
9148 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
9149 cursor on a stretch glyph has a width that depends on
9150 x_stretch_cursor_p.
9151
91522002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9153
9154 * abbrev.c (abbrev-start-location): Doc fix.
9155
9156 * indent.c (Fvertical_motion): Fix last change.
9157
91582002-04-25 Gerd Moellmann <gerd@gnu.org>
9159
9160 * indent.c (Fvertical_motion): Move to the start of the line
9161 containing PT before moving up or down.
9162
91632002-04-24 Gerd Moellmann <gerd@gnu.org>
9164
9165 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
9166 case of writing a whole row, more or less analogous to the case of
9167 writing only parts of a row.
9168
9169 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
9170 0 for NO_CURSOR.
9171
9172 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
9173
91742002-04-23 Colin Walters <walters@verbum.org>
9175
9176 * buffer.c (syms_of_buffer): Doc fix.
9177
91782002-04-23 Gerd Moellmann <gerd@gnu.org>
9179
9180 * xterm.c (notice_overwritten_cursor): Handle the special case
9181 of the cursor being in the first blank non-text line at the
9182 end of a window.
9183
9184 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
9185 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
9186 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
9187 bar cursors only, to make phys_cursor_width contain what its name
9188 suggests.
9189 (notice_overwritten_cursor): Consider the cursor image erased if
9190 the output area intersects the cursor image in y-direction.
9191
91922002-04-23 Simon Marshall <simon@gnu.org>
9193
9194 * xfns.c (x_set_mouse_color): Change default for cross_cursor
9195 to XC_hand2.
9196
91972002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9198
9199 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
9200
92012002-04-22 Kim F. Storm <storm@cua.dk>
9202
9203 * textprop.c (remove_properties): Fixed trap for malformed plist.
9204
92052002-04-22 Richard M. Stallman <rms@gnu.org>
9206
9207 * cmds.c (Fend_of_line): Handle intangible text in mid line.
9208
9209 * window.c (make_window): Initialize height_fixed_p,
9210 last_cursor_off_p, and p->cursor_off_p slots.
9211
92122002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9213
9214 * fns.c (use-dialog-box): Doc fix.
9215
92162002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9217
9218 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
9219 variables `row', `i' and `area'.
9220 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
9221 toolkit library.
9222
92232002-04-19 Stefan Monnier <monnier@cs.yale.edu>
9224
9225 * xfaces.c (clear_font_table): Don't free the default font of
9226 a frame even if it's on another display.
9227 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
9228 that could be Qt.
9229
92302002-04-19 Juanma Barranquero <lektu@terra.es>
9231
9232 * indent.c (Fmove_to_column): Remove unused local variable
9233 `next_boundary_byte'.
9234 (current_column_1): Likewise.
9235
92362002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
9237
9238 * msdos.c (Qhbar): New variable.
9239 (syms_of_msdos): Intern and staticpro it.
9240 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
9241 cursor type.
9242
92432002-04-19 Dave Lambert <dlambert@acm.org>
9244
9245 Theses change implement an underscore-like (`hbar') cursor.
9246
9247 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
9248
9249 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
9250 Handle the `hbar' cursor type.
9251 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
9252
9253 * xfns.c (Qhbar): New variable.
9254 (syms_of_xfns): Intern and staticpro it.
9255 (x_specified_cursor_type): Handle `hbar' cursor.
9256
9257 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
9258 not defined.
9259
92602002-04-18 Richard M. Stallman <rms@gnu.org>
9261
9262 * textprop.c (remove_properties): New arg LIST allows scanning
9263 either a list or a plist.
9264 (interval_has_some_properties_list): New function, like
9265 interval_has_some_properties using list instead of plist.
9266 All callers changed.
9267 (Fremove_list_of_text_properties): New function.
9268 (syms_of_textprop): Defsubr it.
9269
92702002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
9271
9272 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
9273
92742002-04-17 Juanma Barranquero <lektu@terra.es>
9275
9276 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
9277
92782002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
9279
9280 * window.c (coordinates_in_window): Don't report on margin area
9281 if its width is zero.
9282
92832002-04-16 Jason Rumney <jasonr@gnu.org>
9284
9285 * w32fns.c (Fx_file_dialog): Decode file name before using.
9286
9287 * w32term.c (construct_drag_n_drop): Likewise.
9288
92892002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
9290
9291 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
9292 store load-history in pure space.
9293
9294 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
9295
92962002-04-16 Stefan Monnier <monnier@cs.yale.edu>
9297
9298 * xterm.c (Qlatin_1, Qutf_8): New vars.
9299 (syms_of_xterm): Initialize them.
9300 (XTread_socket): Eliminate incorrect optimization that tried to avoid
9301 decoding the output of X*LookupString.
9302 Always use latin-1 to decode the output of XLookupString.
9303 Try Xutf8LookupString if XmbLookupString failed.
9304
9305 * region-cache.c (new_region_cache): Use BEG.
9306
93072002-04-16 Gerd Moellmann <gerd@gnu.org>
9308
9309 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
9310 configuration files.
9311 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
9312 returns 0.
9313
93142002-04-15 Andreas Schwab <schwab@suse.de>
9315
9316 * config.in: Regenerated using autoheader.
9317
9318 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
9319 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
9320 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
9321 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
9322 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
9323 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
9324 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
9325 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
9326 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
9327 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
9328 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
9329 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
9330 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
9331 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
9332 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
9333 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
9334 STACK_DIRECTION, now set by autoconf.
9335
93362002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9337
9338 * dispnew.c (marginal_area_string): Sort arguments.
9339
9340 * dispextern.h (marginal_area_string): Add prototype.
9341
93422002-04-13 Richard M. Stallman <rms@gnu.org>
9343
9344 * fileio.c (Finsert_file_contents):
9345 Don't call temp_output_buffer_setup--do just part, by hand.
9346
9347 * coding.c (run_pre_post_conversion_on_str):
9348 Don't call temp_output_buffer_setup--do just part, by hand.
9349
9350 * keyboard.c (command_loop_1): Don't call start_hourglass
9351 or cancel_hourglass when executing a macro.
9352
9353 * marker.c (count_markers): New function.
9354
9355 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
9356 grow without limit. Move recently used elements to the front.
9357
93582002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
9359
9360 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
9361
93622002-04-12 Gerd Moellmann <gerd@gnu.org>
9363
9364 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
9365 rows marginal areas.
9366 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
9367 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
9368
9369 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
9370
93712002-04-12 Dave Love <fx@gnu.org>
9372
9373 * dispnew.c (marginal_area_string): New.
9374
9375 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
9376 (Qleft_margin, Qright_margin): Declare.
9377 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
9378
9379 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
9380 note_mode_line_highlight and extended.
9381
9382 * keyboard.c (Qleft_margin, Qright_margin): Declare.
9383 (make_lispy_event): Deal with mouse events in margins.
9384
93852002-04-12 Stefan Monnier <monnier@cs.yale.edu>
9386
9387 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
9388
9389 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
9390 than deactivating the mark if tmm is set to `lambda'.
9391 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
9392 Use a single event for HELP_EVENT.
9393 (Fexecute_extended_command): Save last_point_position.
9394
93952002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9396
9397 * lisp.h (Fpropertize): Add prototype.
9398
9399 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
9400
94012002-04-10 Colin Walters <walters@verbum.org>
9402
9403 * config.in: Add HAVE_SHARED_GAME_DIR.
9404
9405 * callproc.c: (Vgame_score_directory): New variable.
9406 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
9407
94082002-04-10 Richard M. Stallman <rms@gnu.org>
9409
9410 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
9411
94122002-04-09 Stefan Monnier <monnier@cs.yale.edu>
9413
9414 * minibuf.c (read_minibuf): Use empty_string.
9415 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
9416 Short-circuit the search as soon as it "failed".
9417 (Fall_completions): Allow lambda forms and lists of strings for alist.
9418 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
9419 when require_match is nil.
9420 (Ftest_completion): Rename from `test_completion' and export to elisp.
9421 Call the predicate also when alist is a list.
9422 Obey Vcompletion_regexp_list.
9423 (do_completion, Fminibuffer_complete_and_exit): Use it.
9424 (Fassoc_string): Rename from `assoc_for_completion'.
9425 Allow list of strings as well and export to elisp.
9426
94272002-04-08 Stefan Monnier <monnier@cs.yale.edu>
9428
9429 * puresize.h (BASE_PURESIZE): Increase to 900KB.
9430
94312002-04-08 Juanma Barranquero <lektu@terra.es>
9432
9433 * w32.c (sys_accept): Don't hide variable `s'.
9434
94352002-04-05 Gerd Moellmann <gerd@gnu.org>
9436
9437 * callint.c (Fcall_interactively): Use INTEGERP instead of
9438 NUMBERP for checking Vhistory_length.
9439
94402002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9441
9442 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
9443 Doc fix to reflect it.
9444
94452002-04-04 Richard M. Stallman <rms@gnu.org>
9446
9447 * xdisp.c (display_mode_element): New arg RISKY.
9448 Disregard text props found or specified within a variable
9449 that isn't marked risky-local-variable.
9450 (Qrisky_local_variable): New variable.
9451 (syms_of_xdisp): Init and staticpro it.
9452
94532002-04-04 Stefan Monnier <monnier@cs.yale.edu>
9454
9455 * undo.c (record_point): New fun.
9456 (record_delete, record_insert): Use it.
9457
94582002-04-03 Juanma Barranquero <lektu@terra.es>
9459
9460 * doc.c (Fdocumentation): Add missing parentheses.
9461 (Fdocumentation_property): Likewise.
9462
94632002-04-03 Stefan Monnier <monnier@cs.yale.edu>
9464
9465 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
9466 data is 0, just return nil.
9467
94682002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
9469
9470 * msdos.c (syms_of_msdos): Fix last change with
9471 mouse_autoselect_window.
9472
94732002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9474
9475 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
9476 mouse_autoselect_window.
9477
94782002-04-02 Stefan Monnier <monnier@cs.yale.edu>
9479
9480 * keyboard.c (make_lispy_event): Handle unknown keysyms together
9481 with system-specific keysyms. Use it also for unknown function keys.
9482
9483 * doc.c (reread_doc_file): Return whether reload was attempted.
9484 (Fdocumentation, Fdocumentation_property): Don't try to reload
9485 if the doc is 0 and only ask once.
9486
9487 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
9488
94892002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
9490
9491 * keyboard.c (read_char): If the event was Qselect_window,
9492 restore timer_idleness_start_time to its previous value.
9493
9494 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
9495
94962002-04-01 Stefan Monnier <monnier@cs.yale.edu>
9497
9498 * region-cache.c (new_region_cache): Use BEG.
9499
9500 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
9501 Use BEG and BEG_BYTE.
9502
9503 * doc.c (get_doc_string): Return nil if the location is wrong.
9504 (reread_doc_file): New fun.
9505 (Fdocumentation, Fdocumentation_property):
9506 Call it if get_doc_string fails.
9507 (Fsnarf_documentation): Make it work for a dumped Emacs.
9508
9509 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
9510 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
9511
9512 * charset.c (Fstring): Allow 0 arguments.
9513
9514 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
9515
9516 * process.c (DATAGRAM_CONN_P, list_processes_1)
9517 (Fprocess_datagram_address, Fset_process_datagram_address)
9518 (Fset_network_process_options, server_accept_connection):
9519 Fix some int/Lisp_Object confusions (thank you union types).
9520
95212002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9522
9523 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
9524
9525 * w32term.c: Likewise.
9526 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
9527
9528 * keyboard.c (Qselect_window): New symbol.
9529 (head_table): Use it.
9530 (keys_of_keyboard): Bound select-window event to handle-select-window.
9531 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
9532
9533 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
9534 (last_window): New variable.
9535 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
9536 (note_mouse_movement): Remove reimplemented code in #if 0.
9537 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
9538 Emacs windows.
9539
9540 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
9541
95422002-03-31 Gerd Moellmann <gerd@gnu.org>
9543
9544 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
9545 Callers changed.
9546
95472002-03-30 Richard M. Stallman <rms@gnu.org>
9548
9549 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
9550 loop whenever it stops making progress.
9551
9552 * widget.c (set_frame_size): Don't call change_frame_size.
9553
95542002-03-30 Gerd Moellmann <gerd@gnu.org>
9555
9556 * dispnew.c (direct_output_for_insert):
9557 Call mark_window_display_accurate.
9558
95592002-03-29 Jason Rumney <jasonr@gnu.org>
9560
9561 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
9562
95632002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
9564
9565 * Makefile.in (lread.o): Depend on coding.h.
9566
9567 * lread.c (openp, Fload): Encode the file name before passing it
9568 to `stat', `access', and `emacs_open'.
9569 (openp): GCPRO the encoded file name. Don't recompute Lisp
9570 strings unnecessarily.
9571
95722002-03-29 Kim F. Storm <storm@cua.dk>
9573
9574 * fns.c (Flax_plist_put): Doc fix.
9575
95762002-03-28 Miles Bader <miles@gnu.org>
9577
9578 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
9579
95802002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9581
9582 * process.c (set-network-process-options): Add usage.
9583 (make-network-process): Doc fix.
9584
95852002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
9586
9587 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
9588
95892002-03-26 Richard M. Stallman <rms@gnu.org>
9590
9591 * fns.c (Fsubstring_no_properties): New function.
9592 (Flax_plist_get, Flax_plist_put): New functions.
9593 (syms_of_fns): defsubr them.
9594
9595 * xdisp.c (update_menu_bar): Test only update_mode_lines;
9596 don't test or alter w->update_mode_line.
9597
9598 * window.c (Fdisplay_buffer): Doc fix.
9599
96002002-03-24 Richard M. Stallman <rms@gnu.org>
9601
9602 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
9603
96042002-03-24 Gerd Moellmann <gerd@gnu.org>
9605
9606 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
9607 (Fdefmacro): Handle `(declare ...)'.
9608 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
9609 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
9610
96112002-03-24 Jason Rumney <jasonr@gnu.org>
9612
9613 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
9614 (xbm_file_p): Add prototypes.
9615 (xbm_format, xbm_image_p): Sync with xfns.c.
9616 (reflect_byte): New function.
9617 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
9618 (xbm_load_image): Create bitmaps with a depth of 1.
9619 (init_xfns): Enable XBM images.
9620
96212002-03-23 Jason Rumney <jasonr@gnu.org>
9622
9623 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
9624 correctly. Do not pass up_modifier to keyboard buffer.
9625
9626 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
9627
96282002-03-22 Stefan Monnier <monnier@cs.yale.edu>
9629
9630 * Makefile.in (bootstrapclean): New target.
9631 (bootstrap-temacs, bootstrap-doc): Remove.
9632 (bootstrap-emacs): Use a bog-standard `temacs'.
9633 Don't bother to build a DOC file.
9634
9635 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
9636
9637 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
9638 in temacs even if !CANNOT_DUMP.
9639 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
9640
9641 * alloc.c (check_pure_size): Only output a warning.
9642
96432002-03-22 Jason Rumney <jasonr@gnu.org>
9644
9645 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
9646 supported.
9647
9648 * w32term.c (zv_bits): Declare as short, for word alignment.
9649 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
9650 (syms_of_w32term): Define x-use-underline-position-properties.
9651
9652 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
9653 (clear_image_cache): Block input, fix logic, clear matrices in
9654 all frames that share this cache.
9655
96562002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
9657
9658 * emacs.c (main): Update the Copyright year in the blurb printed
9659 by "emacs --version".
9660
9661 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
9662
9663 * xterm.c (XTread_socket): If XK_ISO_Lock and
9664 XK_ISO_Last_Group_Lock are defined, handle keysyms between
9665 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
9666
96672002-03-21 Kim F. Storm <storm@cua.dk>
9668
9669 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
9670 menu-bar bindings in keymap and local-map properties _are_ used.
9671 But try keymap property first in accordance with 2002-01-03 patch.
9672 Added comment describing why this is not always reliable.
9673 (tool_bar_items): Ditto for tool-bar.
9674
96752002-03-21 Jason Rumney <jasonr@gnu.org>
9676
9677 * w32fns.c (x_clear_image_1): Disable color table code.
9678
96792002-03-21 Kim F. Storm <storm@cua.dk>
9680
9681 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
9682 removed the wrong version of the DEFUN macro; fixed it.
9683
9684 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
9685 Fmember rather than Fmemq).
9686 (Fprovide): Check that subfeatures is a list.
9687
9688 * process.c (QCfeature, QCdatagram): Removed variables.
9689 (QCtype, Qdatagram): New variables.
9690 (network_process_featurep): Removed function.
9691 (Fmake_network_process): Removed :feature check.
9692 Use :type 'datagram instead of :datagram t to create a datagram
9693 socket. This allows us to add other connection types (e.g. raw
9694 sockets) later in a consistent manner.
9695 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
9696 supported subfeatures for feature make-network-process.
9697 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
9698 Intern and staticpro QCtype and Qdatagram.
9699 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
9700
9701 * xfns.c: (QCtype): Remove duplicate declaration and
9702 initialization (is now declared in process.c).
9703
9704 * w32fns.c: (QCtype): Remove duplicate declaration and
9705 initialization (is now declared in process.c).
9706
97072002-03-21 Richard M. Stallman <rms@gnu.org>
9708
9709 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
9710 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
9711 when jumping to `fail' to avoid undoing reg changes in the
9712 last iteration of the loop.
9713 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
9714
9715 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
9716 Depend on process.h.
9717
97182002-03-20 Jason Rumney <jasonr@gnu.org>
9719
9720 Most of the following changes are still conditional on HAVE_IMAGES
9721 which is not set by default on Windows.
9722
9723 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
9724
9725 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
9726 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
9727 (four_corners_best, x_clear_image_1, x_clear_image)
9728 (x_alloc_image_color, postprocess_image)
9729 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
9730 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
9731 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
9732
9733 * w32gui.h (struct XImage): Define.
9734
9735 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
9736 extract mouse co-ordinates.
9737
97382002-03-20 Jason Rumney <jasonr@gnu.org>
9739
9740 * w32.c (init_winsock): Dynamically load new server and UDP
9741 socket functions.
9742 (socket_to_fd): New function.
9743 (sys_socket): Use it.
9744 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
9745 (sys_recvfrom, sys_sendto): New wrapper functions.
9746
9747 * process.c (QCfamily, QCfilter): Remove duplicate declaration
9748 and initialization.
9749
9750 * makefile.w32-in (LIBS): Remove $(WSOCK32).
9751
97522002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
9753
9754 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
9755 Don't use "sun" as a variable, it's a predefined constant on Sun
9756 machines.
9757
97582002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9759
9760 * bytecode.c (Fbyte_code): Revert last change.
9761
97622002-03-19 Kim F. Storm <storm@cua.dk>
9763
9764 * makefile.w32-in (LIBS): Add $(WSOCK32).
9765 From David Ponce <dponce@voila.fr>.
9766
97672002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9768
9769 * process.c (wait_reading_process_input): Move variables `pname'
9770 and `pnamelen' down where they are used.
9771
9772 * bytecode.c (Fbyte_code): Discard unused computed value to
9773 prevent gcc warning.
9774
9775 * lisp.h (Fplist_member): Add prototype.
9776
97772002-03-18 Kim F. Storm <storm@cua.dk>
9778
9779 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
9780 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
9781
9782 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
9783 Remove explicit GNU_LINUX settings for datagram support.
9784
97852002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9786
9787 * process.c (Fmake_network_process): Remove unused variable `sa'.
9788 Doc fix. Add usage:.
9789 (set_socket_options): Remove unused variables `optnum' and `opttype'.
9790
97912002-03-17 Richard M. Stallman <rms@gnu.org>
9792
9793 * xdisp.c (cursor_type_changed): New variable.
9794 (redisplay_internal): Redisplay all windows if cursor_type_changed.
9795 Clear it when clearing windows_or_buffers_changed.
9796 (try_cursor_movement, redisplay_window, try_window_id)
9797 (try_window_reusing_current_matrix): Test cursor_type_changed
9798 along with windows_or_buffers_changed.
9799
9800 * window.h (cursor_type_changed): New variable.
9801
9802 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
9803 not update_mode_lines, and always set it to 1.
9804
9805 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
9806 if no frames needed redrawing.
9807
98082002-03-17 Kim F. Storm <storm@cua.dk>
9809
9810 The following changes add support for network server processes,
9811 datagram connections, and local (unix) sockets.
9812
9813 * process.h (struct Lisp_Process): New member log.
9814 Doc fix: Member command used to indicate stopped network process.
9815 Doc fix: Member childp contains plist for network process.
9816 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
9817
9818 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
9819 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
9820 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
9821 New variables.
9822 (NETCONN1_P): New macro.
9823 (DATAGRAM_SOCKETS): New conditional symbol.
9824 (datagram_address): New array.
9825 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
9826 (status_message): Use concat3.
9827 (Fprocess_status): Add `listen' status to doc string. Return `stop'
9828 for a stopped network process.
9829 (Fset_process_buffer): Update contact plist for network process.
9830 (Fset_process_filter): Ditto. Don't enable input for stopped
9831 network processes. Server must listen, even if filter is t.
9832 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
9833 New functions.
9834 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
9835 (Fprocess_contact): Added KEY argument. Handle datagrams.
9836 (list_processes_1): Optionally show only processes with the query
9837 on exit flag set. Dynamically adjust column widths. Omit tty
9838 column if not needed. Report stopped network processes.
9839 Identify server and datagram network processes.
9840 (Flist_processes): New optional arg `query-only'.
9841 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
9842 (conv_lisp_to_sockaddr, set_socket_options)
9843 (network_process_featurep, unwind_request_sigio): New helper functions.
9844 (Fprocess_datagram_address, Fset_process_datagram_address):
9845 (Fset_network_process_options): New lisp functions.
9846 (Fopen_network_stream): Removed. Now defined in simple.el.
9847 (Fmake_network_process): New lisp function. Code is based on previous
9848 Fopen_network_stream, but heavily reworked with new property list based
9849 argument list, support for datagrams, server processes, and local
9850 sockets in addition to old client-only functionality.
9851 (server_accept_connection): New function.
9852 (wait_reading_process_input): Use it to handle incoming connects.
9853 Do not enable input on a new connection if process is stopped.
9854 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
9855 (send_process): Handle datagram sockets.
9856 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
9857 network process is indicated by setting command field to t .
9858 (Fprocess_send_eof): No-op if datagram connection.
9859 (Fstatus_notify): Don't read input for a stream server socket or a
9860 stopped network process.
9861 (init_process): Initialize datagram_address array.
9862 (syms_of_process): Intern and staticpro new variables, defsubr new
9863 functions.
9864
98652002-03-16 Jason Rumney <jasonr@gnu.org>
9866
9867 * w32fns.c (w32_to_all_x_charsets): Return correct type in
9868 startup case.
9869
98702002-03-16 Richard M. Stallman <rms@gnu.org>
9871
9872 * xdisp.c (redisplay_internal, redisplay_windows):
9873 Use list_of_error to call internal_condition_case_1.
9874 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
9875 so as to catch all errors with no possibility of debugger redisplay.
9876 (list_of_error): New variable.
9877 (syms_of_xdisp): Init and staticpro it.
9878
9879 * print.c (print_object): Delete `\ ' from printed rep of frame.
9880
98812002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
9882
9883 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
9884 until its implementation is fixed.
9885
98862002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9887
9888 * xfns.c (png_load): Remove unused variable `gamma_str'.
9889
98902002-03-14 Richard M. Stallman <rms@gnu.org>
9891
9892 * xfns.c (x_real_positions): Handle failure in XQueryTree.
9893
98942002-03-14 Miles Bader <miles@gnu.org>
9895
9896 * intervals.c (adjust_for_invis_intang): New function.
9897 (set_point_both): Use `adjust_for_invis_intang' to do most of the
9898 work for dealing with invisible+intangible regions. Do so before
9899 and after both forward and backward movements, to handle both
9900 front-sticky and rear-sticky cases.
9901 * textprop.c (text_property_stickiness): Function moved here from
9902 `editfns.c'.
9903 * intervals.h (text_property_stickiness): New declaration.
9904 * editfns.c (char_property_eq): Function removed.
9905 (text_property_stickiness): Function moved to `textprop.c'.
9906
99072002-03-13 Jason Rumney <jasonr@gnu.org>
9908
9909 * config.in: Add STRFTIME_NO_POSIX2.
9910
9911 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
9912 and %OX when underlying strftime does not.
9913
99142002-03-13 Stefan Monnier <monnier@cs.yale.edu>
9915
9916 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
9917 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
9918 line) to avoid annoying flicker.
9919 (xm_scroll_callback): Get rid of the now unnecessary kludge.
9920 (XTread_socket): Mark it static.
9921
9922 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
9923
99242002-03-13 Kim F. Storm <storm@cua.dk>
9925
9926 * puresize.h (BASE_PURESIZE): Increase to 775000.
9927
99282002-03-12 Juanma Barranquero <lektu@terra.es>
9929
9930 * editfns.c (syms_of_editfns): Fix typo.
9931
99322002-03-12 Gerd Moellmann <gerd@gnu.org>
9933
9934 * xsmfns.c: Include stdio.h because termhooks.h needs it.
9935 Include termopt.h for interrupt_input.
9936
99372002-03-11 Andreas Schwab <schwab@suse.de>
9938
9939 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
9940
99412002-03-11 Gerd Moellmann <gerd@gnu.org>
9942
9943 * xterm.c (note_mouse_movement): Put code for
9944 x_autoselect_window_p in #if 0.
9945
9946 * lread.c (Fload): Don't assume that message_with_string uses the
9947 string it is given like a C string.
9948
99492002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9950
9951 * xterm.h (x_session_check_input, x_session_initialize): Declared.
9952
9953 * xterm.c: (XTread_socket): Add call to x_session_check_input and
9954 x_session_have_connection.
9955 (x_initialize): Add call to x_session_initialize.
9956
9957 * termhooks.h (enum event_kind): Add save_session_event.
9958
9959 * keyboard.c: Add Emacs event save_session_event.
9960
9961 * emacs.c (main): Add call to syms_of_xsmfns.
9962
9963 * lisp.h: Declare syms_of_xsmfns as extern.
9964
9965 * config.in: Add HAVE_X_SM.
9966
9967 * Makefile.in (LIBXT): Add -lSM -lICE
9968 if HAVE_X_SM and not USE_X_TOOLKIT.
9969 (XOBJ): New file xsmfns.c added.
9970
9971 * xsmfns.c: New file for X session management.
9972
99732002-03-09 Jason Rumney <jasonr@gnu.org>
9974
9975 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
9976 read-only when setting modified time.
9977
99782002-03-08 Gerd Moellmann <gerd@gnu.org>
9979
9980 * xdisp.c (move_it_vertically_backward): At the end of the function,
9981 when moving forward by lines, treat terminal frames specially.
9982
9983 * keyboard.c (echo_char): Make sure to add a separator between
9984 keys even if echo_dash hasn't been called.
9985
9986 * xdisp.c: Use new string macros.
9987 (update_echo_area): Pass number of bytes to message3 instead of
9988 number of chars.
9989 (set_message_1): Don't access a string's size_byte directly.
9990 (decode_mode_spec_coding): Use number of bytes of eoltype string
9991 instead number of chars.
9992
9993 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
9994
99952002-03-08 Juanma Barranquero <lektu@terra.es>
9996
9997 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
9998 24-bit.
9999
100002002-03-06 Jason Rumney <jasonr@gnu.org>
10001
10002 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
10003
100042002-03-06 Gerd Moellmann <gerd@gnu.org>
10005
10006 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
10007 (cancel_echoing, echo_length, echo_truncate): Changed to
10008 work with new kboard definition.
10009 (echo_now): Use message3_nolog instead of message2_nolog.
10010
10011 * alloc.c (mark_kboards): Mark echo_string.
10012
10013 * keyboard.h (ECHOBUFSIZE): Removed.
10014 (struct kboard): Member echoptr removed, member echobuf renamed
10015 to echo_string.
10016
10017 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
10018 message3 instead of message2 to display the message using STRING's
10019 text properties.
10020
100212002-03-05 Andreas Schwab <schwab@suse.de>
10022
10023 * xdisp.c (hscroll_margin): Change to EMACS_INT.
10024
100252002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
10026
10027 * frame.c (default-frame-alist): Explain that setting it doesn't
10028 affect existing frames.
10029
100302002-03-05 Stefan Monnier <monnier@cs.yale.edu>
10031
10032 * indent.c (skip_invisible): Fix my brain fart.
10033
10034 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
10035
100362002-03-04 Stefan Monnier <monnier@cs.yale.edu>
10037
10038 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
10039 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
10040 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
10041 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
10042 and variables to use EMACS_INT instead of just int.
10043
10044 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
10045
100462002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
10047
10048 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
10049 environment, pass it down with corrected value.
10050
100512002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10052
10053 * lread.c (read_filtered_event): Do not call start_hourglass
10054 before returning.
10055
100562002-03-04 Juanma Barranquero <lektu@terra.es>
10057
10058 * w32term.c (x_display_and_set_cursor): Fix typo.
10059
100602002-03-03 Richard M. Stallman <rms@gnu.org>
10061
10062 * fileio.c (Fmake_temp_name): Doc fix.
10063
100642002-03-03 Gary Wong <gtw@gnu.org>
10065
10066 * termcap.c [!emacs]: Replace ospeed for building standalone
10067 libtermcap, for binary compatibility.
10068
10069 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
10070
100712002-03-03 Richard M. Stallman <rms@gnu.org>
10072
10073 * xrdb.c (file_p): Rename arg `path' to `filename'.
10074
10075 * abbrev.c (Fexpand_abbrev): Increment plist as use count
10076 only if it is an integer.
10077
10078 * xfns.c (png_load): Set screen_gamma based on f->gamma.
10079 If png_get_sRGB gives an answer, call png_set_gamma
10080 using the default image gamma value.
10081
10082 * lread.c (read1): When reading from a file, default string to
10083 multibyte only if it has some multibyte characters.
10084
10085 * print.c (print_object): Output multibyte chars 128...255
10086 using \x even if ! print_escape_multibyte.
10087
10088 * xdisp.c (display_mode_element): Move the places where
10089 bytepos, charpos, this, and lisp_string are set.
10090 Use lisp_string to set bytepos.
10091
10092 * xdisp.c (redisplay_internal):
10093 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
10094
10095 * xdisp.c (display_mode_element): Merge properties specified with
10096 :propertize onto those that come with the string.
10097
100982002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
10099
10100 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
10101 automatic-hscrolling. Users changed.
10102 <hscroll-margin>: Renamed from automatic-hscroll-margin.
10103 Users changed.
10104 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
10105
101062002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
10107
10108 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
10109
101102002-03-02 Kim F. Storm <storm@cua.dk>
10111
10112 * window.c (Fminibuffer_selected_window): New function.
10113 (syms_of_window): Defsubr it.
10114
101152002-03-01 Kim F. Storm <storm@cua.dk>
10116
10117 * window.h (struct window): New member phys_cursor_width.
10118
10119 * window.c (make_window, replace_window): Init phys_cursor_width.
10120
10121 * xterm.c (x_display_and_set_cursor): Blink box cursor using
10122 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
10123
10124 * w32term.c (x_display_and_set_cursor): Blink box cursor using
10125 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
10126
10127 * lisp.h (GCPRO6): New macro.
10128
10129 * process.c (Fopen_network_stream): Use GCPRO6.
10130
101312002-03-01 Kim F. Storm <storm@cua.dk>
10132
10133 * process.c (Qconnect, Qfailed): New variables.
10134 (syms_of_process): Intern and staticpro them.
10135 (Fprocess_status): Document connect and failed return values.
10136 [NON_BLOCKING_CONNECT]: New conditional.
10137 (connect_wait_mask, num_pending_connects): New variables.
10138 (status_message): Convert Qfailed status.
10139 (Fopen_network_stream): Added support for non-blocking connect.
10140 New optional args: filter, sentinel, non_blocking. Doc updated.
10141 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
10142 (deactivate_process): Handle pending non-blocking connect.
10143 (wait_reading_process_input): Poll for status of non-blocking
10144 connects. Exec sentinel directly when connect succeeds.
10145 (status_notify): Don't read process output if not yet connected.
10146
101472002-02-28 Kim F. Storm <storm@cua.dk>
10148
10149 * window.c: (minibuf_selected_window): Renamed from
10150 Vminibuf_selected_window. Users changed.
10151 (syms_of_window): Staticpro it.
10152
101532002-02-26 Kim F. Storm <storm@cua.dk>
10154
10155 The following changes add a new Vminibuf_selected_window variable
10156 which is similar to Vminibuf_scroll_window, but which is only set
10157 on entry to the minibuffer (from a non-minibuffer window):
10158
10159 * window.c: (Vminibuf_selected_window): New variable.
10160 (struct save_window_data): New member minibuf_selected_window.
10161 (Fset_window_configuration): Restore Vminibuf_selected_window.
10162 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
10163 Set minibuf_scroll_window member to nil if minibuf_level is 0.
10164 (compare_window_configurations): Compare minibuf_selected_window.
10165
10166 * window.h: (Vminibuf_selected_window): Declare extern.
10167
10168 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
10169 entry to minibuffer or on entry from a non-minibuffer window.
10170
10171 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
10172 Vminibuf_selected_window instead of Vminibuf_scroll_window.
10173
10174 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
10175 instead of Vminibuf_scroll_window when deciding in which window
10176 the region should be highlighted. Consequently, the region remains
10177 highlighteded even when a completion buffer is also displayed.
10178
101792002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
10180
10181 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
10182
10183 * xselect.c (Qcompound_text_with_extensions): Renamed from
10184 Qcompound_text_no_extensions.
10185 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
10186
101872002-02-26 Juanma Barranquero <lektu@terra.es>
10188
10189 * w32proc.c (syms_of_ntproc): Doc fix.
10190
101912002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10192
10193 * intervals.h: Include "dispextern.h" unconditionally.
10194
101952002-02-24 Jason Rumney <jasonr@gnu.org>
10196
10197 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
10198 and disp-table.elc.
10199 (lisp): Add emacs-lisp/backquote.elc.
10200
102012002-02-24 Kim F. Storm <storm@cua.dk>
10202
10203 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
10204 The validation of the event type was too strict as it didn't
10205 allow string events; buffer names are used in bindings for
10206 menu-bar-select-buffer (see `menu-bar-update-buffers').
10207
102082002-02-23 Kim F. Storm <storm@cua.dk>
10209
10210 The following changes rework my patch of 2002-02-06 which
10211 added command remapping by entering the commands directly into
10212 the keymaps. Now, command remapping uses an explicit `remap'
10213 prefix in the keymaps, i.e. [remap COMMAND].
10214
10215 * keymap.c (Qremap, remap_command_vector): New variables.
10216 (is_command_symbol): Removed function.
10217 (Fdefine_key): No longer accept a symbol for KEY.
10218 Added validation of [remap COMMAND] argument for KEY.
10219 The DEF is no longer required to be a symbol when remapping a command.
10220 (Fremap_command): New function to remap command through keymaps.
10221 (Flookup_key): Perform command remapping initiated by
10222 Fremap_command directly for speed.
10223 (Fkey_binding): Use Fremap_command for command remapping.
10224 (where_is_internal): Handle new command remapping representation.
10225 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
10226 staticpro them. Defsubr Fremap_command.
10227
10228 * keymap.h (Fremap_command): Declare extern.
10229 (is_command_symbol): Remove extern.
10230
10231 * keyboard.c (command_loop_1): Use Fremap_command for command
10232 remapping; now try command remapping for all symbols.
10233
102342002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
10235
10236 * coding.h (run_pre_post_conversion_on_str): Add prototype.
10237
102382002-02-23 Jason Rumney <jasonr@gnu.org>
10239
10240 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
10241 on the string before encoding it.
10242 (Fw32_get_clipboard_data): Run post-read-conversion on the string
10243 after decoding it.
10244
10245 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
10246
102472002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10248
10249 * w32term.c (enter_timestamp): Remove unused static variable to
10250 prevent warning.
10251
10252 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
10253
102542002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
10255
10256 * w16select.c (Fw16_get_clipboard_data): Fix last change.
10257
10258 * xselect.c (selection_data_to_lisp_data): Fix last change.
10259
102602002-02-22 Jason Rumney <jasonr@gnu.org>
10261
10262 * w32term.h (struct w32_output): New member menu_command_in_progress.
10263
10264 * w32menu.c (menubar_selection_callback): Free the menu and
10265 clear the menu_command_in_progress flag.
10266
10267 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
10268 (menu_free_timer): New variable.
10269 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
10270 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
10271 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
10272 menu command is in progress.
10273 <WM_COMMAND>: Set the menu_command_in_progress flag.
10274 Kill any menu_free_timer that is running.
10275
10276 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
10277 Call ExtTextOutA rather than ExtTextOut.
10278
102792002-02-22 Eli Zaretskii <eliz@gnu.org>
10280
10281 * puresize.h (BASE_PURESIZE): Increase to 755000.
10282
102832002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
10284
10285 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
10286 on the string before encoding it.
10287 (Fw16_get_clipboard_data): Run post-read-conversion on the string
10288 after decoding it.
10289
102902002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
10291
10292 Support for ICCCM Extended Segments in X selections:
10293
10294 * xselect.c <Qcompound_text_no_extensions>: New variable.
10295 (syms_of_xselect): Intern and staticpro it.
10296 (selection_data_to_lisp_data): Run post-read-conversion on decoded
10297 selection text.
10298 (lisp_data_to_selection_data): If next-selection-coding-system is
10299 compound-text-no-extensions, set the type of selection to be
10300 compound-text.
10301
10302 * xterm.h (x_encode_text): Update prototype.
10303
10304 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
10305 callers changed. If SELECTIONP is non-zero, run the
10306 pre-write-conversion function before encoding the selection text.
10307
103082002-02-21 Kim F. Storm <storm@cua.dk>
10309
10310 * frame.c (syms_of_frame): Change mouse-highlight default to t.
10311
10312 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
10313 Correct composing of language-change event.
10314
103152002-02-20 Kim F. Storm <storm@cua.dk>
10316
10317 * keyboard.c (menu_bar_items): Don't include keymap or local-map
10318 bindings at PT when building menu (the menu is not updated often
10319 enough for this to work reliable).
10320 (tool_bar_items): Likewise.
10321 (current_active_maps): Removed unused (and buggy) function.
10322
103232002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10324
10325 * xfns.c (gif_load): Use correct width and height for GIF images.
10326
103272002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
10328
10329 * floatfns.c (Fatan): Accept an optional second arg and call
10330 atan2 if passed 2 args.
10331
103322002-02-18 Jason Rumney <jasonr@gnu.org>
10333
10334 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
10335
103362002-02-17 Jason Rumney <jasonr@gnu.org>
10337
10338 * w32term.c (x_autoselect_window_p): New variable.
10339 (syms_of_w32term): DEFVAR_BOOL and initialize it.
10340 (note_mouse_movement): Use it.
10341
10342 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
10343
10344 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
10345
10346 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
10347 New variables.
10348 (syms_of_w32fns): Intern and staticpro them.
10349 (x_frame_parms) <"fullscreen">: New parameter.
10350 (x_fullscreen_move, x_set_fullscreen): New functions.
10351 (x_set_frame_parameters): Support Qfullscreen.
10352 (x_real_positions): Save x/y_pixels_diff frame params.
10353 (x_figure_window_size): Support full-screen frames.
10354 (Fx_create_frame): Default the fullscreen parameter.
10355
10356 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
10357 (x_fullscreen_adjust): New functions.
10358 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
10359 fullscreen. Call x_check_fullscreen_move, and set the
10360 want_fullscreen member of output_data.w32
10361 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
10362
10363 * w32term.h: New enum for FULLSCREEN_* constants.
10364 (struct w32_output): New members want_fullscreen, x_pixels_diff,
10365 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
10366 (x-fullscreen-adjust): New prototype.
10367
103682002-02-17 Kim F. Storm <storm@cua.dk>
10369
10370 * frame.c: (Vmouse_highlight): New variable.
10371 (syms_of_frame): DEFVAR_LISP it.
10372
10373 * frame.h: (Vmouse_highlight): Declare extern.
8a8e19a3 10374
048addec 10375 * xterm.h (struct x_display_info): Add mouse_face_hidden.
8a8e19a3 10376
048addec
JD
10377 * xterm.c (disable_mouse_highlight): Removed variable.
10378 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
10379 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
10380 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
10381 and on after keyboard input.
10382 (x_term_init): Initialize mouse_face_hidden.
8a8e19a3 10383
048addec 10384 * msdos.h (struct display_info): Add mouse_face_hidden.
8a8e19a3 10385
048addec
JD
10386 * msdos.c (disable_mouse_highlight): Removed variable.
10387 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
10388 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
10389 (internal_terminal_init): Initialize mouse_face_hidden.
10390 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
10391 and on after keyboard input.
4f1b1854 10392
048addec 10393 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
4f1b1854 10394
048addec
JD
10395 * w32term.c (disable_mouse_highlight): Removed variable.
10396 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
10397 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
10398 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
10399 and on after keyboard input.
10400 (w32_initialize_display_info): Initialize mouse_face_hidden.
4f1b1854 10401
048addec 104022002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
4f1b1854 10403
048addec
JD
10404 * msdos.c (last_mouse_window): New variable.
10405 (dos_rawgetc): Fix last change--if the mouse is in the same window
10406 as recorded in last_mouse_window, don't select this window.
5cb6905d 10407
048addec 10408 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
5cb6905d 10409
048addec
JD
10410 * msdos.c (x_autoselect_window_p): New variable.
10411 (syms_of_msdos): Defvar it.
10412 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
10413 which the last mouse movement occured, unless it is already selected.
437dfb9f 10414
048addec
JD
10415 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
10416 New variables.
10417 (syms_of_xdisp): DEVFAR them.
10418 (hscroll_window_tree): Use automatic_hscroll_margin and
10419 Vautomatic_hscroll_step to compute the amount of window scrolling.
437dfb9f 10420
048addec 104212002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9f696a00 10422
048addec
JD
10423 * xterm.c (x-autoselect-window): New variable.
10424 (note_mouse_movement): Use it.
9f696a00 10425
048addec 10426 * keyboard.c: Do not include "systime.h" twice.
d57966d7 10427
048addec 104282002-02-15 Andreas Schwab <schwab@suse.de>
d57966d7 10429
048addec 10430 * puresize.h (BASE_PURESIZE): Increase to 9/5.
d57966d7 10431
048addec 10432 * alloc.c (NSTATICS): Increase to 1280.
74779f52 10433
048addec 104342002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
74779f52 10435
048addec 10436 * alloc.c (NSTATICS): Bump to 1026.
a474d59c 10437
048addec
JD
10438 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
10439 (Vx_super_keysym): New variables.
10440 (syms_of_xterm): DEFVAR_LISP them.
10441 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
10442 variables to determine which keys to use for the various modifiers.
a474d59c 10443
048addec 104442002-02-13 Kim F. Storm <storm@cua.dk>
fbb70ad9 10445
048addec
JD
10446 * window.c: (Vmode_line_in_non_selected_windows): Removed.
10447 (mode_line_in_non_selected_windows): New variable.
10448 (syms_of_window): DEFVAR_BOOL it.
fbb70ad9 10449
048addec
JD
10450 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
10451 Use mode_line_in_non_selected_windows.
10452 (mode_line_in_non_selected_windows): Declare extern.
10453 (Vmode_line_in_non_selected_windows): Removed extern.
2d10309f 10454
048addec 104552002-02-13 Richard M. Stallman <rms@gnu.org>
2d10309f 10456
048addec
JD
10457 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
10458 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
10459 (Fclear_this_command_keys): Doc fixes.
2d10309f 10460
048addec
JD
10461 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
10462 (update_face_from_frame_parameter): Increment face_change_count
10463 and windows_or_buffers_changed to force redisplay using changed faces.
7f2cddf3 10464
048addec
JD
10465 * xdisp.c (QCpropertize): New variable.
10466 (mode_line_proptrans_alist): New variable.
10467 (display_mode_element): New arg PROPS; all calls changed.
10468 Implement this, for strings.
10469 Handle literal output of strings by sharing the
10470 main-line code for strings, using local var `literal'.
10471 Handle :propertize feature.
10472 (syms_of_xdisp): Initialze and staticpro QCpropertize and
10473 mode_line_proptrans_alist.
0b1e6b54 10474
048addec 104752002-02-11 Kim F. Storm <storm@cua.dk>
7f2cddf3 10476
048addec
JD
10477 * window.c: (Vmode_line_in_non_selected_windows): New variable.
10478 (syms_of_window): DEFVAR_LISP it.
7f2cddf3 10479
048addec
JD
10480 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
10481 (CURRENT_MODE_LINE_FACE_ID): Use it.
10482 (Vmode_line_in_non_selected_windows): Declare extern.
e17144de 10483
048addec
JD
10484 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
10485 to get mode line face.
e17144de 10486
048addec 104872002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 10488
048addec
JD
10489 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
10490 variables; cus-start.el doesn't need them anymore.
44368f8f 10491
048addec 104922002-02-09 Kim F. Storm <storm@cua.dk>
f884b6f4 10493
048addec
JD
10494 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
10495 reduction. This fixes a display problem where stray newlines were
10496 inserted in the window (corrected by C-l). Clarified code (IMHO).
6637c996 10497
048addec 104982002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 10499
048addec 10500 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
6637c996 10501
048addec 10502 * xdisp.c (display_mode_lines): Fix last change.
453c5510 10503
048addec 105042002-02-09 Jason Rumney <jasonr@gnu.org>
453c5510 10505
048addec
JD
10506 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
10507 match each other.
10508 (w32_load_system_font): Prevent Cleartype fonts from loading.
10509 (Fx_show_tip): Ensure tip frames are above other topmost windows.
d1d070e3 10510
048addec 105112002-02-09 Kim F. Storm <storm@cua.dk>
d1d070e3 10512
048addec
JD
10513 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
10514 (CURRENT_MODE_LINE_HEIGHT): Use it.
10515 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 10516
048addec
JD
10517 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
10518 (pos_visible_p, handle_face_prop): Likewise.
10519 (display_mode_lines): Likewise, but for the real selected window.
10520 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 10521
048addec
JD
10522 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
10523 in non-selected windows.
10524 (realize_basic_faces): Realize it.
10525 (syms_of_term): Intern and staticpro it.
308dd672 10526
048addec 105272002-02-08 Kim F. Storm <storm@cua.dk>
edde72f6 10528
048addec
JD
10529 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
10530 Changed mail addresses to emacs-devel@gnu.org.
308dd672 10531
048addec 105322002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
3c1e6b46 10533
048addec
JD
10534 * fileio.c (Fsubstitute_in_file_name): If the file name includes
10535 ~user, and there's no such user, don't discard everything before ~user.
03950b5b 10536
048addec 10537 * floatfns.c (Fround): Doc fix.
3c1e6b46 10538
048addec 105392002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c1e11810 10540
048addec 10541 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
c1e11810 10542
048addec 105432002-02-07 Stefan Monnier <monnier@cs.yale.edu>
1996baee 10544
048addec 10545 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
1996baee 10546
048addec 105472002-02-07 Kim F. Storm <storm@cua.dk>
0065bb74 10548
048addec
JD
10549 * keymap.c (where_is_internal): Only check whether definition is
10550 remapped if it fulfills is_command_symbol.
0065bb74 10551
048addec 105522002-02-07 Andreas Schwab <schwab@suse.de>
0065bb74 10553
048addec 10554 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
b5cb6072 10555
048addec 10556 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
b5cb6072 10557
048addec 105582002-02-06 Kim F. Storm <storm@cua.dk>
15fff01d 10559
048addec
JD
10560 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
10561 defining command remapping. Doc updated.
10562 (Flookup_key): Remap command through keymap if KEY is a symbol.
10563 (is_command_symbol): New function.
10564 (Fkey_binding): Use it. New optional argument NO-REMAP.
10565 Doc updated. Callers changed. Perform command remapping via
10566 recursive call unless that arg is non-nil.
10567 (where_is_internal): New argument no_remap. Callers changed.
10568 Call recursively to find original key bindings for a remapped
10569 comand unless that arg is non-nil.
10570 (Fwhere_is_internal): New optional argument NO-REMAP.
10571 Doc updated. Callers changed. Pass arg to where_is_internal.
0065bb74 10572
048addec
JD
10573 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
10574 (is_command_symbol): Added prototype.
0d8466cc 10575
048addec
JD
10576 * keyboard.c (Vthis_original_command): New variable.
10577 (syms_of_keyboard): DEFVAR_LISP it.
10578 (command_loop_1): Set it, and perform command remapping.
15fff01d 10579
048addec 105802002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2fae9111 10581
048addec 10582 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
2d6c1fc0 10583
048addec 105842002-02-06 Jason Rumney <jasonr@gnu.org>
07025a55 10585
048addec 10586 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
07025a55 10587
048addec 105882002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
07025a55 10589
048addec 10590 * charset.c (get_charset_id): Use if-else instead of ?:.
3a232704 10591
048addec 105922002-02-06 Richard M. Stallman <rms@gnu.org>
539e92ad 10593
048addec 10594 * filelock.c (S_ISLNK): Define if not defined.
3a232704 10595
048addec 105962002-02-03 Richard M. Stallman <rms@gnu.org>
0cb8bb48 10597
048addec 10598 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
539e92ad 10599
048addec
JD
10600 * lread.c (read1): Redesign strategy for force_multibyte and
10601 force_singlebyte. Now is_multibyte records whether read_buffer
10602 is multibyte. Encountering any multibyte character makes it so.
4e02881b 10603
048addec 106042002-02-02 Stefan Monnier <monnier@cs.yale.edu>
4e02881b 10605
048addec
JD
10606 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
10607 with the same sequence, map that sequence to f10 rather than f0.
1ab964d7 10608
048addec 106092002-02-03 Andreas Schwab <schwab@suse.de>
1ab964d7 10610
048addec
JD
10611 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
10612 latter never being defined on GNU/Linux.
749f499f 10613
048addec 106142002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
749f499f 10615
048addec
JD
10616 * xfaces.c (realize_default_face): Don't set the weight and slant of
10617 the default face to Qnormal, unless these attributes are unspecified.
b5d9aaba 10618
048addec 106192002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3a232704 10620
048addec
JD
10621 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
10622 Call cancel_hourglass unconditionally.
d0fd26dd 10623
048addec
JD
10624 * eval.c (Fsignal): Remove duplicated declaration of
10625 the variable `display_hourglass_p'.
b4c45162 10626
048addec 106272002-01-31 Richard M. Stallman <rms@gnu.org>
d0fd26dd 10628
048addec 10629 * editfns.c (region_limit): Nicer error message.
c95eaa61 10630
048addec
JD
10631 * coding.c (decode_composition_emacs_mule):
10632 Give up if NCOMPONENT gets too large to index `component'.
c95eaa61 10633
048addec
JD
10634 * callint.c (check_mark): New arg to specify clearer error message.
10635 Callers changed.
c95eaa61 10636
048addec 106372002-01-27 Richard M. Stallman <rms@gnu.org>
c95eaa61 10638
048addec 10639 * minibuf.c (Fcompleting_read): Doc fix.
c95eaa61 10640
048addec 106412002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c95eaa61 10642
048addec
JD
10643 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
10644 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
10645 Fix doc-strings.
c95eaa61 10646
048addec 106472002-01-26 Richard M. Stallman <rms@gnu.org>
c95eaa61 10648
048addec 10649 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
c95eaa61 10650
048addec
JD
10651 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
10652 and scroll_up_aggressively.
c95eaa61 10653
048addec 106542002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
31877e0a 10655
048addec 10656 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
31877e0a 10657
048addec 106582002-01-25 Stefan Monnier <monnier@cs.yale.edu>
e2c3786a 10659
048addec
JD
10660 * textprop.c (Fnext_property_change, Fnext_single_property_change)
10661 (Fprevious_property_change, Fprevious_single_property_change):
10662 Stay within the narrowed-buffer boundaries.
e2c3786a 10663
048addec 106642002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
c513fc03 10665
048addec
JD
10666 * term.c (Ftty_display_color_cells): New function.
10667 (syms_of_term): Defsubr it.
10668 (Ftty_display_color_cells, Ftty_display_color_p): Change the
10669 argument name to DISPLAY. Doc fix.
bf794306 10670
048addec
JD
10671 * dispextern.h: Add prototype for set_tty_color_mode and
10672 tty_setup_colors.
bf794306 10673
048addec 106742002-01-24 Jason Rumney <jasonr@gnu.org>
bf794306 10675
048addec
JD
10676 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
10677 If region left to draw is not what was expected, mark the frame as
10678 garbaged.
62582985 10679
048addec
JD
10680 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
10681 Combine the regions returned by BeginPaint and GetUpdateRect.
c513fc03 10682
048addec 106832002-01-23 Jason Rumney <jasonr@gnu.org>
3509a04c 10684
048addec
JD
10685 * w32term.c (x_update_window_begin): Only hide caret if
10686 w32_use_visible_system_caret is set.
10687 (x_update_window_end): Only show caret if
10688 w32_use_visible_system_caret is set.
10689 (syms_of_w32term): Handle SystemParametersInfo call failing.
3509a04c 10690
048addec 10691 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
3509a04c 10692
048addec 106932002-01-22 Richard M. Stallman <rms@gnu.org>
3509a04c 10694
048addec
JD
10695 * unexelf.c (unexec): Define n so as to cause compilation error
10696 for the code where people have often written n instead of nn.
1e9a6186 10697
048addec 10698 * .gdbinit (hookpost-run): Defined.
1e9a6186 10699
048addec 107002002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e4e34e31 10701
048addec 10702 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
e4e34e31 10703
048addec 107042002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4521d1fc 10705
048addec
JD
10706 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
10707 if fullscreen is being set.
7c75be36 10708
048addec 107092002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4521d1fc 10710
048addec
JD
10711 * minibuf.c (Fminibuffer_contents)
10712 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
10713 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
4521d1fc 10714
048addec 107152002-01-21 Richard M. Stallman <rms@gnu.org>
4521d1fc 10716
048addec 10717 * window.c (check_frame_size): Fix minimum height calculation.
93dec019 10718
048addec 107192002-01-20 Ken Raeburn <raeburn@gnu.org>
93dec019 10720
048addec
JD
10721 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
10722 height before comparison.
10723 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
905cc05a 10724
048addec 107252002-01-20 Jason Rumney <jasonr@gnu.org>
2ed06289 10726
048addec
JD
10727 * w32term.c (w32_system_caret_width): Remove.
10728 (w32_use_visible_system_caret): New user flag.
10729 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
10730 Windows reports a screen reader running.
10731 (x_update_window_begin): Hide the system caret.
10732 (x_update_window_end): Show the system caret.
10733 (x_display_and_set_cursor): Don't draw a cursor when
10734 w32_use_visible_system_caret is set. Do not adjust width.
0e79d667 10735
048addec
JD
10736 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
10737 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
10738 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
10739 the user requests it. Use system default width when creating.
10740 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
0e79d667 10741
048addec
JD
10742 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
10743 New window messages.
905cc05a 10744
048addec 107452002-01-20 Richard M. Stallman <rms@gnu.org>
82a7ab23 10746
048addec 10747 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
d75bec6a 10748
048addec 107492002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
52dcb476 10750
048addec 10751 * doprnt.c (doprnt1): Fix typos in error call.
82a7ab23 10752
048addec 107532002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
82a7ab23 10754
048addec 10755 * unexelf.c (unexec) [__sgi]: Support the .got sections.
82a7ab23 10756
048addec 107572002-01-20 Jason Rumney <jasonr@gnu.org>
4d0fa4f3 10758
048addec
JD
10759 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
10760 that Windows returns. If a double check fails, try to guess how
10761 ExtTextOut is going to act.
4d0fa4f3 10762
048addec
JD
10763 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
10764 in place of stricmp.
10765 (w32_list_synthesized_fonts): Removed.
10766 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
10767 (struct enumfont_t): New element; list.
10768 (enum_font_cb2): List all style and charset variations of a font.
10769 (Fw32_select_font): New optional argument; include_proportional.
10770 Exclude vertical fonts. Exclude proportional fonts unless
10771 include_proportional is non-nil.
10772 (w32_enable_synthesized_fonts): Change to a boolean.
10773 (Fw32_send_sys_command): Doc fix.
493faf20 10774
048addec 107752002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
493faf20 10776
048addec
JD
10777 * dispnew.c (update_frame): Move the variable `tem' to the block
10778 where it is used.
4971e491 10779
048addec 107802002-01-19 Jason Rumney <jasonr@gnu.org>
4971e491 10781
048addec
JD
10782 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
10783 call to face-set-after-frame-default.
4971e491 10784
048addec 107852002-01-18 Richard M. Stallman <rms@gnu.org>
d911a0fa 10786
048addec
JD
10787 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
10788 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
d911a0fa 10789
048addec 107902002-01-17 Richard M. Stallman <rms@gnu.org>
d911a0fa 10791
048addec
JD
10792 * window.c (enlarge_window): When exceeding size of parent,
10793 directly delete all the siblings instead of trying to resize it.
201c831a 10794
048addec 107952002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
201c831a 10796
048addec 10797 * term.c (set_tty_color_mode): Remove unused variable `tem'.
201c831a 10798
048addec 107992002-01-16 Henrik Enberg <henrik@enberg.org>
34e39c95 10800
048addec 10801 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
34e39c95 10802
048addec 108032002-01-16 Kim F. Storm <storm@cua.dk>
d77fbc16 10804
048addec
JD
10805 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
10806 is invisible. This can happen if cursor is on top line of a
10807 window, and we switch to a buffer with a header line.
d77fbc16 10808
048addec 10809 * w32term.c (x_erase_phys_cursor): Ditto.
61e3b944 10810
048addec 108112002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
61e3b944 10812
048addec
JD
10813 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
10814 `dont_resize' only when used.
61e3b944 10815
048addec 10816 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
70da46c3 10817
048addec 108182002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
70da46c3 10819
048addec
JD
10820 * xdisp.c (display_mode_element): When computing charpos, depend
10821 on multibyteness of elt, not the text in field.
8af01033 10822
048addec 108232002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8af01033 10824
048addec
JD
10825 * buffer.c (Fkill_all_local_variables):
10826 Increment `update_mode_lines' only once.
7363986a 10827
048addec 108282002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7363986a 10829
048addec
JD
10830 * lisp.h (adjust_after_replace_noundo)
10831 (Fupdate_coding_systems_internal): Add prototypes.
d9e6c4b1 10832
048addec 10833 * sound.c (Fplay_sound): Initialize header_size also for :data case.
d20fc48a 10834
048addec 108352002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
d9e6c4b1 10836
048addec
JD
10837 Support for the --color command-line argument and tty-color-mode
10838 frame parameter:
f1a85b89 10839
048addec
JD
10840 * term.c (tty_default_color_capabilities, tty_setup_colors)
10841 (set_tty_color_mode): New functions.
10842 (term_init): Call tty_default_color_capabilities.
10843 (Qtty_color_mode_alist): New variable.
10844 (syms_of_term): Intern and staticpro it.
f1a85b89 10845
048addec
JD
10846 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
10847 frames.
10848 (do_switch_frame): For termcap frames, switch the tty
10849 color mode as specified by the frame's parameters.
10850 (Qtty_color_mode): New variable.
10851 (syms_of_frame): Intern and staticpro it.
3a62677f 10852
048addec
JD
10853 * emacs.c (USAGE2): Add the --color option.
10854 (standard_args): Ditto.
72244db2 10855
048addec
JD
108562002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10857
10858 * xterm.h (struct x_output): New members want_fullscreen,
10859 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
10860 y_pixels_outer_diff.
10861 New enum for FULLSCREEN_* constants.
10862 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
10863 is NULL.
10864 (x_fullscreen_adjust): Add prototype.
3a62677f 10865
048addec
JD
10866 * emacs.c (USAGE2): Add the new full-screen arguments.
10867 (standard_args): Ditto.
3a62677f 10868
048addec
JD
10869 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
10870 New variables.
10871 (syms_of_xfns): Intern and staticpro them.
10872 (x_frame_parms) <"fullscreen">: New parameter.
10873 (x_fullscreen_move, x_set_fullscreen): New functions.
10874 (x_set_frame_parameters): Support for Qfullscreen.
10875 (x_real_positions): More accurate computation of the frame position.
10876 (x_figure_window_size): Support full-screen frames.
10877 (Fx_create_frame): Default the fullscreen parameter.
3a62677f 10878
048addec
JD
10879 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
10880 (XTread_socket) <Expose>: Call x_check_fullscreen.
10881 <ConfigureNotify>: Don't resize to fullscreen.
10882 Call x_check_fullscreen_move, and set the want_fullscreen member of
10883 output_data.x.
3a62677f 10884
048addec 108852002-01-13 Jason Rumney <jasonr@gnu.org>
9d113d9d 10886
048addec
JD
10887 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
10888 for mice with more than 3 buttons.
b8523839 10889
048addec
JD
10890 * w32term.c (parse_button): New parameter xbutton. Callers changed.
10891 (w32_read_socket): Handle new "XBUTTON" messages.
9464dea4 10892
048addec
JD
10893 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
10894 (syms_of_w32fns): DEFVAR_BOOL it.
10895 (w32_wnd_proc): Handle new "XBUTTON" messages.
9d113d9d 10896
048addec 108972002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
70ec1377 10898
048addec 10899 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
70ec1377 10900
048addec 109012002-01-13 Andreas Schwab <schwab@suse.de>
92f7dd37 10902
048addec 10903 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
92f7dd37 10904
048addec 109052002-01-12 Andreas Schwab <schwab@suse.de>
c93674bb 10906
048addec
JD
10907 * .gdbinit (xbuffer): Remove address operator since data is now a
10908 pointer.
c93674bb 10909
048addec 109102002-01-11 Richard M. Stallman <rms@gnu.org>
59b59892 10911
048addec 10912 * insdel.c (adjust_after_replace_noundo): New function.
59b59892 10913
048addec 10914 * coding.c (code_convert_region): Don't copy old text if undo disabled.
c6ea2775 10915
048addec 109162002-01-09 Jason Rumney <jasonr@gnu.org>
c6ea2775 10917
048addec
JD
10918 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
10919 when checking for multiple frames.
91175673 10920
048addec 109212002-01-08 Richard M. Stallman <rms@gnu.org>
91175673 10922
048addec
JD
10923 * window.c (delete_window): Rewrite the code for changing the
10924 selected window to handle the case where WINDOW is not a leaf.
91175673 10925
048addec 109262002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
e0fead5d 10927
048addec
JD
10928 * process.c (send_process): Set src_multibyte to 1 after the call
10929 top setup_coding_system, not before the call.
e0fead5d 10930
048addec 109312002-01-07 Jason Rumney <jasonr@gnu.org>
e0fead5d 10932
048addec
JD
10933 * xmenu.c (set_frame_menubar, xmenu_show):
10934 (xdialog_show): Initialize wv->help to Qnil.
c186cdb3 10935
048addec
JD
10936 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
10937 (w32_dialog_show): Initialize wv->help to Qnil.
c186cdb3 10938
048addec 109392002-01-06 Jason Rumney <jasonr@gnu.org>
c186cdb3 10940
048addec 10941 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
c186cdb3 10942
048addec 10943 * w32menu.c (w32_menu_display_help): Revert last change.
58cfce98 10944
048addec 10945 * xmenu.c (menu_highlight_callback): Revert last change.
58cfce98 10946
048addec 109472002-01-06 Andreas Schwab <schwab@suse.de>
62854fe2 10948
048addec
JD
10949 * insdel.c (make_gap_larger): Make sure buffer size does not
10950 overflow range of int.
62854fe2 10951
048addec 109522002-01-05 Jason Rumney <jasonr@gnu.org>
656f46bb 10953
048addec
JD
10954 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
10955 OVERLAPS_P.
656f46bb 10956
048addec 10957 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
656f46bb 10958
048addec
JD
10959 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
10960 to the left or to the right of the pointer, put it against
10961 the left screen edge.
10962 (x_frame_parms): Add missing braces around initializer.
036e218d 10963
048addec
JD
10964 * w32term.c (x_setup_relief_colors): Don't compute an image's
10965 background color if it doesn't have a Pixmap.
10966 (notice_overwritten_cursor): Don't depend on
10967 output_cursor and updated_area. Compare pixel coordinates with
10968 window's cursor pixel coordinates.
10969 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
10970 Call notice_overwritten_cursor with new arg list.
10971 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
10972 unconditionally.
10973 (x_draw_image_relief): Use predefined macro instead of
10974 constant when the value of `tool_bar_button_relief' is negative.
036e218d 10975
048addec 10976 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
7ddb2c16 10977
048addec 109782002-01-04 Richard M. Stallman <rms@gnu.org>
7ddb2c16 10979
048addec 10980 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
ace9b298 10981
048addec 109822002-01-03 Richard M. Stallman <rms@gnu.org>
90647b07 10983
048addec
JD
10984 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
10985 (Fkey_binding): Try the `keymap' property map first.
10986 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
10987 minor mode bindings.
90647b07 10988
048addec 109892002-01-03 Kim F. Storm <storm@cua.dk>
ace9b298 10990
048addec 10991 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
ace9b298 10992
048addec 109932002-01-02 Richard M. Stallman <rms@gnu.org>
ace9b298 10994
048addec
JD
10995 * keyboard.c (read_key_sequence): Handle the keymap property
10996 before minor mode maps.
9fbc32aa 10997
048addec
JD
10998 * editfns.c (Fformat): Update thissize from field_width
10999 based on the actual width, in the string case.
036e218d 11000
048addec 110012002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fbc32aa 11002
048addec
JD
11003 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
11004 when used as truth value to prevent gcc warnings.
9fbc32aa 11005
048addec
JD
11006 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
11007 * w32proc.c: Include <config.h>.
9fbc32aa 11008
048addec 110092002-01-01 Andreas Schwab <schwab@suse.de>
9fbc32aa 11010
048addec
JD
11011 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
11012 not EMACS_INT, to make them compatible with DEFVAR_INT.
11013 * lisp.h (max_specpdl_size): Adjust declaration.
9fbc32aa 11014
048addec 110152002-01-01 Richard M. Stallman <rms@gnu.org>
9fbc32aa 11016
048addec
JD
11017 * print.c (print_object): Test print_escape_nonascii only for
11018 unibyte strings.
11019 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
11020 when outputting to a multibyte buffer.
9fbc32aa 11021
048addec 110222001-12-29 Richard M. Stallman <rms@gnu.org>
9fbc32aa 11023
048addec
JD
11024 * print.c (print_object): In multibyte string, use hex escapes.
11025 Use octal only for unibyte strings.
11026 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
0142178a 11027
048addec
JD
11028 * lread.c (read_escape): New arg BYTEREP for reporting whether
11029 escape forces unibyte or multibyte.
11030 (read1): When reading a string, take note of that info.
0142178a 11031
048addec 110322001-12-29 Ken Raeburn <raeburn@gnu.org>
d4824a5d 11033
048addec
JD
11034 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
11035 comparison to test lisp value returned by Fget.
d4824a5d 11036
048addec 110372001-12-29 Richard M. Stallman <rms@gnu.org>
b1356234 11038
048addec 11039 * lisp.h (max_specpdl_size): Add declaration.
b1356234 11040
048addec 11041 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
3ce081f5 11042
048addec
JD
11043 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
11044 Handle modifier bits. Correct typo in error message.
99e380ee 11045
048addec 110462001-12-28 Richard M. Stallman <rms@gnu.org>
3ce081f5 11047
048addec
JD
11048 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
11049 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
11050 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
11051 Update calls to Fdefine_abbrev.
11052 (write_abbrev): Update for changed data format.
11053 Don't list "system" abbrevs.
11054 (Fexpand_abbrev): Update use count with new data format.
11055 (describe_abbrev): Update for changed data format.
11056 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
66458f32 11057
048addec 11058 * config.in (HAVE_MBSINIT): Add #undef.
66458f32 11059
048addec 11060 * strftime.c (mbsinit): Define as no-op if not available.
66458f32 11061
048addec
JD
11062 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
11063 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
59a86c99 11064
048addec
JD
11065 * keymap.c (Flookup_key): Error message if key has wrong data type.
11066 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
11067 (exclude_key): New variable.
59a86c99 11068
048addec 110692001-12-28 Gerd Moellmann <gerd@gnu.org>
eb77a5f4 11070
048addec
JD
11071 * xterm.c (x_setup_relief_colors): Don't compute an image's
11072 background color if it doesn't have a Pixmap.
eb77a5f4 11073
048addec
JD
11074 * xterm.c (notice_overwritten_cursor): Don't depend on
11075 output_cursor and updated_area. Compare pixel coordinates with
11076 window's cursor pixel coordinates.
11077 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
11078 Call notice_overwritten_cursor with new arg list.
11079 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
11080 unconditionally.
eb77a5f4 11081
048addec
JD
11082 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
11083 height of the cursor line to the amount to scroll.
eb77a5f4 11084
048addec 110852001-12-27 Richard M. Stallman <rms@gnu.org>
bb313871 11086
048addec
JD
11087 * intervals.c (set_point_both): The position after an invisible,
11088 intangible character is not an acceptable stopping point.
bb313871 11089
048addec 110902001-12-27 Ken Raeburn <raeburn@gnu.org>
55b43a63 11091
048addec
JD
11092 * window.c (enlarge_window): In new preserve_before code, convert
11093 CURBEG from lisp object to integer before doing arithmetic.
6052529b 11094
048addec 110952001-12-27 Richard M. Stallman <rms@gnu.org>
3ce081f5 11096
048addec 11097 * bytecode.c (Fbyte_code): Undo previous change.
3ce081f5 11098
048addec 110992001-12-26 Kim F. Storm <storm@cua.dk>
3ce081f5 11100
048addec
JD
11101 * keyboard.c (record_char): Ignore duplicate help-echo events only
11102 separated by mouse-movement. When tracking mouse, only record
11103 first and last mouse-movement event in same window.
11104 Don't record mouse-movement events in keyboard macros.
3ce081f5 11105
048addec 111062001-12-25 Richard M. Stallman <rms@gnu.org>
55b43a63 11107
048addec
JD
11108 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
11109 (Fenlarge_window): New arg PRESERVE_BEFORE.
111ed14e 11110
048addec
JD
11111 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
11112 instead of Fstring_as_unibyte.
9fabb2f5 11113
048addec 111142001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fabb2f5 11115
048addec 11116 The following changes remove mocklisp support:
9fabb2f5 11117
048addec 11118 * mocklisp.h, mocklisp.c: Files removed.
111ed14e 11119
048addec
JD
11120 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
11121 `Qmocklisp' and `Qmocklisp_arguments'.
11122 Remove prototype of syms_of_mocklisp.
2fa0eedf 11123
048addec 11124 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
d1420435 11125
048addec
JD
11126 * callint.c: Do not include mocklisp.h.
11127 (Fcall_interactively): Do not test for mocklisp case.
2fa0eedf 11128
048addec
JD
11129 * eval.c: Remove variables `Qmocklisp_arguments',
11130 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
11131 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
11132 Do not test for mocklisp case.
11133 (Fwhile): Remove unused variable `tem'.
11134 (syms_of_eval): Remove variable `moclisp-arguments'.
ebcbef4e 11135
048addec 11136 * data.c (wrong_type_argument): Remove mocklisp case.
5c131048 11137
048addec 11138 * doc.c (Fdocumentation): Remove mocklisp case.
5c131048 11139
048addec 11140 * emacs.c (main): Do not call syms_of_mocklisp.
5c131048 11141
048addec 111422001-12-21 Richard M. Stallman <rms@gnu.org>
96d276c3 11143
048addec
JD
11144 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
11145 to the left or to the right of the pointer, put it against
11146 the left screen edge.
6108b49c 11147
048addec 111482001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
96d276c3 11149
048addec
JD
11150 * Makefile.in (distclean): Remove .gdbinit if we are building
11151 outside the source tree.
5eea19a4 11152
048addec 111532001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
5eea19a4 11154
048addec 11155 * w32.c (emacs_root_dir): New function.
5eea19a4 11156
048addec 11157 * msdos.c (emacs_root_dir): New function.
5eea19a4 11158
048addec
JD
11159 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
11160 of the current drive as the fallback for default_directory.
438e57dd 11161
048addec
JD
11162 * dired.c (file_name_completion): Run the elements of
11163 completion-ignored-extensions through ENCODE_FILE.
438e57dd 11164
048addec
JD
11165 * lisp.h (scmp): Remove prototype, since it's now a static
11166 function private to dired.c.
c88e5347 11167
048addec 111682001-12-18 Richard M. Stallman <rms@gnu.org>
c88e5347 11169
048addec
JD
11170 * dired.c (scmp): Function moved from minibuf.c.
11171 Delete multibyte handling--used only on encoded strings.
59ce1461 11172
048addec 11173 * minibuf.c (scmp): Function moved to dired.c.
59ce1461 11174
048addec 11175 * fns.c (merge): Add QUIT call.
59ce1461 11176
048addec 111772001-12-18 Dave Love <fx@gnu.org>
8727d588 11178
048addec
JD
11179 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
11180 language/georgian.el.
8727d588 11181
048addec 111822001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
cc63037e 11183
048addec
JD
11184 * Makefile.in (lisp, shortlisp): Synchronize with changes to
11185 lisp/Makefile.in:DONTCOMPILE.
cc63037e 11186
048addec 111872001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
cc63037e 11188
048addec
JD
11189 * xdisp.c (window_box_height): Do not return negative values.
11190 From Gerd Moellmann <gerd@gnu.org>.
cc63037e 11191
048addec 11192 * keyboard.c (head_table): Add missing braces around initializer.
cc63037e 11193
048addec 11194 * term.c (keys): Likewise.
deece6f5 11195
048addec 11196 * xfns.c (x_frame_parms, visual_classes): Likewise.
deece6f5 11197
048addec 111982001-12-17 Sam Steingold <sds@gnu.org>
1b944d9c 11199
048addec
JD
11200 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
11201 patch (COMPOSING_P, not COMPOSING).
28ff4293 11202
048addec 112032001-12-17 Richard M. Stallman <rms@gnu.org>
a395ef6a 11204
048addec 11205 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
a395ef6a 11206
048addec
JD
11207 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
11208 before calling decode_coding.
9b46de40 11209
048addec 11210 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
9b46de40 11211
048addec
JD
11212 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
11213 instead of only for COMPOSITION_DISABLED.
9b46de40 11214
048addec 112152001-12-16 Richard M. Stallman <rms@gnu.org>
aff37336 11216
048addec 11217 * alloc.c (pure_alloc): After overflow, allocate just a small block.
aff37336 11218
048addec 11219 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
b9937f07 11220
048addec
JD
11221 * buffer.h (struct buffer): New field `display_error_modiff'.
11222 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
b9937f07 11223
048addec 11224 * window.c (Frecenter): Clear display_error_modiff field.
2cd23960 11225
048addec
JD
11226 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
11227 Call redisplay_window, but not if display_error_modiff field says no.
11228 (redisplay_window_error): New function.
11229 (displayed_buffer): New variable.
11230 (redisplay_internal, redisplay_windows): Call the new functions
11231 instead of redisplay_window directly.
2cd23960 11232
048addec 112332001-12-15 Richard M. Stallman <rms@gnu.org>
2cd23960 11234
048addec 11235 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
2cd23960 11236
048addec 112372001-12-14 Andrew Innes <andrewi@gnu.org>
a4184c1c 11238
048addec
JD
11239 * makefile.w32-in (EMACSLOADPATH): Define.
11240 ($(EMACS)): Run `list-load-path-shadows' after dumping emacs.
11241 (bootstrap-temacs): Remove dependency on bootstrap-clean.
a4184c1c 11242
048addec 112432001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
f6fa0866 11244
048addec
JD
11245 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
11246 parameter have a numeric value all the time.
f6fa0866 11247
048addec 11248 * w32fns.c (x_report_frame_params): Likewise.
f4ca4b00 11249
048addec 112502001-12-12 Richard M. Stallman <rms@gnu.org>
f4ca4b00 11251
048addec 11252 * fileio.c (Fwrite_region): Doc fix.
f4e25f94 11253
048addec
JD
11254 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
11255 (redisplay_internal): Call clear_image_cache only for window terminals.
f4e25f94 11256
048addec 112572001-12-12 Gerd Moellmann <gerd@gnu.org>
91c153e2 11258
048addec
JD
11259 * xdisp.c (move_it_vertically_backward): Change heuristic
11260 for the case that we didn't move far enough initially.
91c153e2 11261
048addec
JD
11262 * window.c (Frecenter): Simplify computation in the case of window
11263 system frames and ARG < 0; use window_box_height.
65b7d3e7 11264
048addec 112652001-12-11 Richard M. Stallman <rms@gnu.org>
65b7d3e7 11266
048addec
JD
11267 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
11268 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
6b5f6311 11269
048addec 112702001-12-11 Andrew Innes <andrewi@gnu.org>
6b5f6311 11271
048addec
JD
11272 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
11273 arg is negative.
be676094 11274
048addec 112752001-12-11 Richard M. Stallman <rms@gnu.org>
be676094 11276
048addec
JD
11277 * m/hp800.h: Split the __hpux conditional into the parts
11278 that are right for GNU/Linux too and the parts that are not.
11279 Use the former if GNU_LINUX.
11280 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
032a857d 11281
048addec 11282 * s/gnu-linux.h (GNU_LINUX): Defined.
032a857d 11283
048addec 112842001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
032a857d 11285
048addec
JD
11286 * macros.c, msdos.c, w16select.c: Change doc-string comments to
11287 `new style' [w/`doc:' keyword].
032a857d 11288
048addec 112892001-12-10 Jason Rumney <jasonr@gnu.org>
b6270150 11290
048addec
JD
11291 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
11292 before using.
b6270150 11293
048addec 112942001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
792e5cbd 11295
048addec
JD
11296 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
11297 keyword].
98cbb9fa 11298
048addec 112992001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
98cbb9fa 11300
048addec 11301 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
98cbb9fa 11302
048addec 11303 * s/hpux10.h (srand48): Don't undefine.
98cbb9fa 11304
048addec 113052001-12-09 Jason Rumney <jasonr@gnu.org>
792e5cbd 11306
048addec
JD
11307 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
11308 Add comment to explain where the struct came from.
11309 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
11310 (add_menu_item): Process pop-up menus first to avoid memory leak.
11311 (add_menu_item, w32_menu_display_help): Use `help' field as
11312 Lisp_Object.
11313 (w32_free_submenu_strings): Only free owner-drawn strings.
fa336b91 11314
048addec 113152001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
fa336b91 11316
048addec 11317 * COPYING: Moved back.
fa336b91 11318
048addec
JD
11319 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
11320 Add parentheses around && within ||.
077907d4 11321
048addec 11322 * indent.c (compute_motion): Likewise.
aa2af83a 11323
048addec 11324 * intervals.c (merge_properties_sticky): Likewise.
60a653f1 11325
048addec
JD
11326 * coding.c (setup_coding_system, shrink_encoding_region)
11327 (Fdecode_sjis_char): Likewise.
60a653f1 11328
048addec 113292001-12-07 Andreas Schwab <schwab@suse.de>
60a653f1 11330
048addec
JD
11331 * xdisp.c (display_mode_element): Don't read past end of string if
11332 it ends with '%'.
60a653f1 11333
048addec
JD
11334 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
11335 can hold.
60a653f1 11336
048addec
JD
11337 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
11338 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
11339 type changed to Lisp_Object.
11340 (syms_of_data): DEFVAR_LISP them.
60a653f1 11341
048addec 113422001-12-07 Richard M. Stallman <rms@gnu.org>
60a653f1 11343
048addec
JD
11344 * callproc.c (init_callproc): Set Vdata_directory based on the source
11345 location whenever Emacs was run uninstalled.
60a653f1 11346
048addec 113472001-12-06 Paul Eggert <eggert@twinsun.com>
60a653f1 11348
048addec
JD
11349 * config.in (HAVE_WORKING_VFORK): New #undefs.
11350 * process.c (create_process):
11351 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
11352 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
11353 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
11354 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
11355 * m/intel386.h (HAVE_VFORK): Likewise.
11356 * m/mips-siemens.h (HAVE_VFORK): Likewise.
11357 * m/mips.h (HAVE_VFORK): Likewise.
11358 * s/freebsd.h (vfork): Remove #define.
11359 * s/lynxos.h (HAVE_VFORK): Remove #undef.
11360 * s/usg5-4-2.h: Fix comment about vfork.
60a653f1 11361
048addec 113622001-12-06 Richard M. Stallman <rms@gnu.org>
60a653f1 11363
048addec
JD
11364 * s/hpux10.h (random): Add undef.
11365 (HAVE_RANDOM): Define it just once.
60a653f1 11366
048addec 113672001-12-06 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11368
048addec 11369 * eval.c: Undo last change: the standard syntax is not wanted.
60a653f1 11370
048addec 113712001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 11372
048addec
JD
11373 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
11374 scroll bars of the frame before deleting the frame itself. If the
11375 frame has a widget, delete the frame with XtDestroyWidget, and do
11376 not call XDestroyWindow before that.
60a653f1 11377
048addec 113782001-12-06 Kim F. Storm <storm@cua.dk>
60a653f1 11379
048addec 11380 * xfns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 11381
048addec 11382 * w32fns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 11383
048addec 113842001-12-05 Andrew Innes <andrewi@gnu.org>
60a653f1 11385
048addec
JD
11386 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
11387 excessively large.
60a653f1 11388
048addec
JD
11389 * insdel.c (make_gap_larger): New function.
11390 (make_gap_smaller): New function.
11391 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
11392 Call make_gap_smaller if arg is negative.
60a653f1 11393
048addec 113942001-12-04 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11395
048addec
JD
11396 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
11397 Pass a dummy argument when calling interrupt_signal.
11398 (parse_menu_item): Mark disabled items before checking for empty def.
11399 (read_char_minibuf_menu_prompt): Make safety more visible.
11400 (read_key_sequence): Add a `first_unbound' variable.
11401 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
11402 unbound prefix as soon as we can detect it.
60a653f1 11403
048addec
JD
11404 * doc.c (Fsnarf_documentation): Add prototype.
11405 (get_doc_string): Handle negative arguments.
11406 (Fdocumentation): Use AREF and ASIZE.
11407 Move the calls to get_doc_string to a single place.
11408 Don't confuse an interactive-spec for a docstring reference.
11409 (Fdocumentation_property): Take advantage of the fact that
11410 get_doc_string now ignores the sign of the docstring position.
60a653f1 11411
048addec 11412 * eval.c: Use standard syntax for usage in docstrings.
60a653f1 11413
048addec 114142001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11415
a64387ee 11416 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
60a653f1 11417
048addec 114182001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11419
048addec
JD
11420 * xterm.c (x_draw_image_relief): Use predefined macro instead of
11421 constant when the value of `tool_bar_button_relief' is negative.
60a653f1 11422
048addec 114232001-12-02 Richard M. Stallman <rms@gnu.org>
60a653f1 11424
048addec
JD
11425 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
11426 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
60a653f1 11427
048addec 11428 * fileio.c (read_non_regular): Delete Fsignal call.
60a653f1 11429
048addec 114302001-12-01 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11431
048addec 11432 * lisp.h (run_hook_list_with_args): Undo last change.
60a653f1 11433
048addec 114342001-12-01 Gerd Moellmann <gerd@gnu.org>
60a653f1 11435
048addec 11436 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
60a653f1 11437
048addec 114382001-12-01 Jason Rumney <jasonr@gnu.org>
60a653f1 11439
048addec 11440 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
60a653f1 11441
048addec
JD
11442 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
11443 [!WM_MOUSELEAVE]: Define.
60a653f1 11444
048addec
JD
11445 * w32menu.c (current_popup_menu, get_menu_item_info):
11446 (set_menu_item_info): New vars.
11447 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
11448 (w32_menu_show): Set current_popup_menu.
11449 (add_menu_item): Allocate new strings for owner-drawn menu items
11450 and help strings.
11451 Use owner-draw for disabled menu items again.
11452 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
11453 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
60a653f1 11454
048addec
JD
11455 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
11456 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
11457 <WM_EXITMENULOOP>: Free menu strings.
11458 <WM_MOUSELEAVE>: Stop tracking mouse.
11459 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
60a653f1 11460
048addec
JD
11461 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
11462 and mouse face.
60a653f1 11463
048addec 114642001-12-01 Kim F. Storm <storm@cua.dk>
60a653f1 11465
048addec
JD
11466 The following changes add left-fringe and right-fringe
11467 frame parameters to adjust fringe widths, or remove one or
11468 both fringes.
60a653f1 11469
048addec
JD
11470 * frame.h (struct frame): Remove trunc_area_pixel_width and
11471 trunc_area_cols fields.
11472 (Qleft_fringe, Qright_fringe): Declare.
11473 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
60a653f1 11474
048addec
JD
11475 * frame.c (Qleft_fringe, Qright_fringe): New vars.
11476 (syms_of_frame): Initialize them.
60a653f1 11477
048addec
JD
11478 * window.c (coordinates_in_window): Handle separate left and right
11479 fringe widths.
60a653f1 11480
048addec
JD
11481 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
11482 and fringe_cols fields.
11483 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
11484 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
11485 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
11486 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
11487 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
11488 (x_compute_fringe_widths): Add prototype.
60a653f1 11489
048addec
JD
11490 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
11491 fill fringe evenly with small dashes.
11492 (x_draw_fringe_bitmap): Clear background if necessary. Align and
11493 clip the new ZV bitmap to avoid jitter between rows.
11494 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
11495 background. Don't draw fringe bitmaps if fringe width is zero.
11496 (x_compute_fringe_widths): New function.
11497 (x_new_font, x_set_window_size_1): Use it.
60a653f1 11498
048addec
JD
11499 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
11500 (x_set_frame_parameters): Process `font' parameter before other
11501 parameters as fringe widths depend on it.
11502 (x_set_fringe_width): New function.
11503 (x_figure_window_size): Use x_compute_fringe_widths.
11504 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
11505 parameters.
60a653f1 11506
048addec
JD
11507 * widget.c (set_frame_size): Use x_compute_fringe_widths.
11508 (EmacsFrameSetCharSize): Ditto.
60a653f1 11509
048addec
JD
11510 * w32term.h: Merged changes from xterm.h.
11511 * w32term.c: Merged changes from xterm.c.
11512 * w32fns.c: Merged changes from xfns.c.
60a653f1 11513
048addec 115142001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11515
048addec 11516 * COPYING: Removed.
60a653f1 11517
048addec 115182001-11-29 Dave Love <fx@gnu.org>
60a653f1 11519
048addec
JD
11520 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
11521 extra extra slot.
11522 (detect_coding_mask): Fix call of detect_coding_iso2022.
60a653f1 11523
048addec 115242001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11525
048addec
JD
11526 * fileio.c (file-name-coding-system)
11527 (default-file-name-coding-system): Doc fix (links to referenced
11528 variables added).
60a653f1 11529
048addec 115302001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11531
048addec
JD
11532 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
11533 Add dummy uses of gcproN variables.
60a653f1 11534
048addec
JD
11535 * category.c (describe_category, describe_category_1)
11536 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
11537 (syms_of_category): Don't defsubr Sdescribe_categories.
60a653f1 11538
048addec 115392001-11-28 Richard M. Stallman <rms@gnu.org>
60a653f1 11540
048addec 11541 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
60a653f1 11542
048addec
JD
11543 * Makefile.in (lispdir): New variable, referring to build dir.
11544 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
60a653f1 11545
048addec 115462001-11-28 Andrew Innes <andrewi@gnu.org>
60a653f1 11547
048addec
JD
11548 * w32menu.c (w32_menu_display_help): Actually add the new argument
11549 OWNER.
60a653f1 11550
048addec 115512001-11-28 Jason Rumney <jasonr@gnu.org>
60a653f1 11552
048addec
JD
11553 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
11554 menu items. From David Ponce <dponce@wanadoo.fr>.
11555 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
11556 conditionally.
11557 (w32_menu_display_help): New argument OWNER. Rewritten to store a
11558 help event in the owner frame's keyboard buffer.
60a653f1 11559
048addec
JD
11560 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
11561 (Fx_show_tip): Don't subtract last width from row width.
11562
11563 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
11564 (w32_read_socket): Use EQ to compare frames.
60a653f1 11565
048addec 115662001-11-28 Gerd Moellmann <gerd@gnu.org>
60a653f1 11567
048addec
JD
11568 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
11569 OVERLAPS_P.
60a653f1 11570
048addec 115712001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11572
048addec
JD
11573 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
11574 `gcpro3' and `gcpro4'.
60a653f1 11575
048addec 11576 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
60a653f1 11577
048addec 115782001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11579
048addec 11580 * ccl.c: Use AREF and ASIZE.
60a653f1 11581
048addec 115822001-11-27 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11583
048addec
JD
11584 * lisp.h (run_hook_list_with_args): Remove.
11585 (LIST_END_P): Fix call to wrong_type_argument.
11586 (make_fixnum_or_float): Use EMACS_INT rather than int.
60a653f1 11587
048addec 115882001-11-26 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11589
048addec
JD
11590 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
11591 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
60a653f1 11592
048addec
JD
11593 * eval.c: Use AREF and ASIZE.
11594 (Ffetch_bytecode): Add the file name to the error message.
60a653f1 11595
048addec
JD
11596 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
11597 which match the end of the file-name.
11598 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
11599 is not a valid env var, but leave it as is instead.
60a653f1 11600
048addec
JD
11601 * keymap.c (access_keymap): Handle t bindings like nil bindings.
11602 Make nil bindings in char-tables transparent.
11603 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
60a653f1 11604
048addec 116052001-11-26 Richard M. Stallman <rms@gnu.org>
60a653f1 11606
048addec
JD
11607 * textprop.c (set_text_properties_1): Allow START, END in either order.
11608 Do nothing if range is empty.
60a653f1 11609
048addec 11610 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
60a653f1 11611
048addec
JD
11612 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
11613 (clean): Not here.
60a653f1 11614
048addec 116152001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11616
048addec
JD
11617 * textprop.c (set_text_properties_1): Clearly mark that the
11618 interval should not be empty.
60a653f1 11619
048addec
JD
11620 * intervals.c (graft_intervals_into_buffer):
11621 Don't call set_text_properties_1 on an empty interval.
60a653f1 11622
048addec 116232001-11-25 Richard M. Stallman <rms@gnu.org>
60a653f1 11624
048addec 11625 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
60a653f1 11626
048addec
JD
11627 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
11628 don't lose the data in it.
60a653f1 11629
048addec 116302001-11-25 Juanma Barranquero <lektu@terra.es>
60a653f1 11631
048addec 11632 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
60a653f1 11633
048addec 11634 * buffer.c (Fkill_buffer): Use Frun_hooks, not Vrun_hooks.
60a653f1 11635
048addec 11636 * print.c (temp_output_buffer_setup): Use Frun_hooks, not Vrun_hooks.
60a653f1 11637
048addec 116382001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11639
048addec 11640 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
60a653f1 11641
048addec 116422001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 11643
048addec
JD
11644 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
11645 Niemitalo <kon@iki.fi>.
60a653f1 11646
048addec 116472001-11-25 Jason Rumney <jasonr@gnu.org>
60a653f1 11648
048addec 11649 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
60a653f1 11650
048addec
JD
11651 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
11652 (Fx_show_tip): Block input during frame creation.
11653 (Fx_show_tip, Fx_hide_tip): Enable.
60a653f1 11654
048addec 116552001-11-24 Richard M. Stallman <rms@gnu.org>
60a653f1 11656
048addec
JD
11657 * lread.c (Fload): Detect recursive load error for more than 3
11658 nestings of the same file.
11659 (Vrecursive_load_depth_limit): Variable deleted.
11660 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
60a653f1 11661
048addec 116622001-11-24 Jason Rumney <jasonr@gnu.org>
60a653f1 11663
048addec
JD
11664 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
11665 mouse position if either left or top is not specified.
60a653f1 11666
048addec
JD
11667 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
11668 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
11669 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
11670 (my_create_tip_window): Assign tip_window.
11671 (x_create_tip_frame): Use same defaults as X.
11672 (compute_tip_xy): Remove unused variable. Use full screen width.
11673 (Fx_show_tip): Do not double height. Call ShowWindow directly.
60a653f1 11674
048addec
JD
11675 * w32term.c (x_after_update_window_line): Doc fix.
11676 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
11677 frames.
11678 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
60a653f1 11679
048addec
JD
11680 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
11681 for all Windowed systems.
60a653f1 11682
048addec 116832001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 11684
048addec
JD
11685 * msdos.c (IT_clear_screen): If the frame's faces are not yet
11686 realized, use the initial screen colors to clear the screen.
60a653f1 11687
048addec 116882001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11689
048addec
JD
11690 * textprop.c (Fset_text_properties): Remove unused variables
11691 `unchanged', `prev_changed', `s' and `len'.
60a653f1 11692
048addec
JD
11693 * search.c (Freplace_match): Remove unused variable `inslen'.
11694
11695 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
11696
116972001-11-22 Jason Rumney <jasonr@gnu.org>
11698
11699 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
11700 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
11701 (my_create_tip_window): New function.
11702 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
11703 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
11704
117052001-11-20 Jason Rumney <jasonr@gnu.org>
11706
11707 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
11708 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
11709
11710 * w32fns.c (Vw32_system_coding_system): Remove.
11711 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
11712
117132001-11-19 Stefan Monnier <monnier@cs.yale.edu>
11714
11715 * fileio.c (Fwrite_region): Move choose_write_coding_system to
11716 after build_annotations.
11717
11718 * syntax.c (describe_syntax): Add dummy arg.
11719 (describe_syntax_1): Update call to describe_vector.
11720
11721 * category.c (describe_category): Add dummy arg.
11722 (describe_category_1): Update call to describe_vector.
11723
11724 * keymap.c (Fdescribe_vector): Add `describer' parameter.
11725 (describe_command, describe_translation): Add dummy second param.
11726 (describe_map): Call elt_describer with two arguments.
11727 (describe_vector_princ): Add `fun' parameter.
11728 Call it instead of the hardcoded `princ'.
11729 (describe_vector): Add arg `args'.
11730 Pass it as a new second argument to elt_describer.
60a653f1 11731
048addec 11732 * keymap.h (describe_vector): Update prototype.
60a653f1 11733
048addec
JD
11734 * frame.c: Don't include keymap.h any more.
11735 (keys_of_frame): Remove.
60a653f1 11736
048addec 11737 * lisp.h (keys_of_frame): Remove declaration.
60a653f1 11738
048addec 11739 * emacs.c (main): Don't call `keys_of_frame' any more.
60a653f1 11740
048addec 117412001-11-14 Andreas Schwab <schwab@suse.de>
60a653f1 11742
048addec
JD
11743 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
11744 if defined, 0 otherwise.
11745 (MAP_FAILED): Define if not defined and use it to test mmap failure.
11746 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
60a653f1 11747
048addec 117482001-11-19 Richard M. Stallman <rms@gnu.org>
60a653f1 11749
048addec 11750 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
60a653f1 11751
048addec 117522001-11-18 Jason Rumney <jasonr@gnu.org>
60a653f1 11753
048addec
JD
11754 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
11755 (x_draw_bar_cursor): If the background color of the glyph under
11756 the cursor equals the frame's cursor color, use the glyph's
11757 foreground color for drawing the bar cursor.
11758 (x_after_update_window_line): Clear internal border in different
11759 circumstances.
11760 (w32_set_vertical_scroll_bar): Check for width and height > 0.
11761 (w32_draw_relief_rect): Correct relief by 1 pixel.
11762 (x_set_glyph_string_background_width):
11763 Set extends_to_end_of_line_p if the row's fill_line_p is set and
11764 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
11765 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
11766 if cursor_in_non_selected_windows is false.
11767 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
11768 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
11769 Notice if cursor gets overwritten.
11770 (notice_overwritten_cursor): Renamed from
11771 note_overwritten_text_cursor. Rewritten to take glyph widths
11772 into account, and to take X positions as parameters.
11773 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
11774 around call to x_draw_glyphs.
11775 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
11776 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
11777 color to use for image glyph reliefs.
11778 (x_draw_image_relief): Accept zero tool_bar_button_relief.
11779 (glyph_rect): Remove unused variable `area'.
60a653f1 11780
048addec
JD
11781 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
11782 some items.
11783 (x_set_internal_border_width): Set frame garbaged when window
11784 doesn't exist yet.
11785 (Fx_create_frame): Accept zero tool_bar_button_relief.
11786 (x_clear_image_1, four_corners_best, image_background)
11787 (image_background_transparent): New functions.
11788 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
11789 (gs_format): Add `:background' entry.
11790 (lookup_image): Set IMG's background color if specified.
11791 (pbm_load, xbm_load_image, png_load): Set IMG's background field
11792 when appropriate.
11793 (x_clear_image_1): Reset `background_valid' and
11794 `background_transparent_valid' fields.
11795 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
11796 calculating it here. Set IMG's background_transparent field.
11797 (enum xpm_keyword_index): Add XPM_BACKGROUND.
11798 (enum png_keyword_index): Add PNG_BACKGROUND.
11799 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
11800 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
11801 (enum gif_keyword_index): Add GIF_BACKGROUND.
11802 (enum gs_keyword_index): Add GS_BACKGROUND.
11803 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
11804 Pre-calculate image background color where necessary.
11805 (x_create_x_image_and_pixmap, xbm_load, gs_load):
11806 Use display info's n_cbits entry for screen depth.
11807 (Fx_show_tip): Remove unused variables `buffer', `top',
11808 `left', `max_width' and `max_height'.
60a653f1 11809
048addec 11810 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
60a653f1 11811
048addec 118122001-11-18 Gerd Moellmann <gerd@gnu.org>
60a653f1 11813
048addec 11814 * puresize.h (BASE_PURESIZE): Increase to 750000.
60a653f1 11815
048addec 118162001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11817
048addec 11818 * frame.c (Fframe_live_p): Doc fix.
60a653f1 11819
048addec 118202001-11-18 Richard M. Stallman <rms@gnu.org>
60a653f1 11821
048addec
JD
11822 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
11823 (message_dolog_marker3): New static variables hold three markers.
11824 (syms_of_xdisp): Initialize and staticpro them.
11825 (message_dolog): Use message_dolog_marker1..3 instead of
11826 allocating markers each time. Unchain them when done.
60a653f1 11827
048addec 118282001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 11829
048addec 11830 * doc.c (Fsnarf_documentation): Doc fix.
60a653f1 11831
048addec 118322001-11-17 Andreas Schwab <schwab@suse.de>
60a653f1 11833
048addec 11834 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
60a653f1 11835
048addec 118362001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 11837
048addec 11838 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
60a653f1 11839
048addec 118402001-11-17 Jason Rumney <jasonr@gnu.org>
60a653f1 11841
048addec 11842 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
60a653f1 11843
048addec 118442001-11-17 Gerd Moellmann <gerd@gnu.org>
60a653f1 11845
048addec
JD
11846 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
11847 with invalid position.
60a653f1 11848
048addec 118492001-11-16 Richard M. Stallman <rms@gnu.org>
60a653f1 11850
048addec 11851 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
60a653f1 11852
048addec
JD
11853 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
11854 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
11855 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
60a653f1 11856
048addec 11857 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
60a653f1 11858
048addec 118592001-11-16 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11860
048addec
JD
11861 * fileio.c (build_annotations): Split off the tail.
11862 (build_annotations_2): New fun. Extracted from build_annotations.
11863 (Fwrite_region): Split the call to build_annotations into two
11864 calls to build_annotations and build_annotations_2.
077907d4 11865
048addec 118662001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
1756e2fb 11867
048addec
JD
11868 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
11869 clear_waiting_for_input with argument.
1756e2fb 11870
048addec 11871 * xterm.h (x_update_cursor): Remove duplicated prototype.
06e8f738 11872
048addec 11873 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
06e8f738 11874
048addec 11875 * xterm.c (waiting_for_input): Remove unnecessary declaration.
fa336b91 11876
048addec 11877 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
fa336b91 11878
048addec 118792001-11-16 Stefan Monnier <monnier@cs.yale.edu>
fa336b91 11880
048addec
JD
11881 * fileio.c (choose_write_coding_system): New fun, extracted
11882 from Fwrite_region.
11883 (Fwrite_region): Use it.
fa336b91 11884
048addec
JD
11885 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
11886 (funcall_lambda, run_hook_with_args): Make static and add prototype.
11887 (ml_apply, find_handler_clause): Add prototype.
fa336b91 11888
048addec 118892001-11-16 Eli Zaretskii <eliz@gnu.org>
fa336b91 11890
048addec 11891 * config.in: Add #undef HAVE_COFF_H.
fa336b91 11892
048addec
JD
11893 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
11894 Required for ISC 4.1.
fa336b91 11895
048addec 118962001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
fa336b91 11897
048addec
JD
11898 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
11899 Andrew Wiseman <a.wiseman@btclick.com>.
fa336b91 11900
048addec 119012001-11-16 Kim F. Storm <storm@cua.dk>
fa336b91 11902
048addec
JD
11903 The following changes are made to clean up the various internal
11904 references to the fringes to actually use the term `fringe' for
11905 them. Previously, they were called `flags areas', `bitmap areas',
11906 `left/right side of windows', or implicitly as `flags' or
11907 `bitmaps':
fa336b91 11908
048addec
JD
11909 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
11910 Comments fixed. Use renamed symbols.
06e8f738 11911
048addec 11912 * dispnew.c: Comment fix. Use renamed symbols.
06e8f738 11913
048addec
JD
11914 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
11915 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
11916 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
9ce647f4 11917
048addec 11918 * msdos.c: Comment fix.
9ce647f4 11919
048addec 11920 * w32fns.c: Use renamed symbols.
9b784ab8 11921
048addec
JD
11922 * w32term.c: Comment fixes. Use renamed symbols.
11923 (fringe_bitmap_type): Renamed from bitmap_type.
11924 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
11925 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
11926 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
9f7e52b4 11927
048addec
JD
11928 * w32term.h: Comment fixes. Use renamed symbols.
11929 (fringes_extra): Renamed from flags_areas_extra.
11930 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
11931 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
11932 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
11933 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
11934 (FRAME_X_LEFT_FRINGE_WIDTH):
11935 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
11936 (FRAME_X_RIGHT_FRINGE_WIDTH):
11937 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
9f7e52b4 11938
048addec 11939 * widget.c: Use renamed symbols.
9f7e52b4 11940
048addec
JD
11941 * window.c: Comment fixes. Use renamed symbols.
11942 (coordinates-in-window-p): Doc fix.
fa336b91 11943
048addec 11944 * xdisp.c: Comment fixes. Use renamed symbols.
34e5d0af 11945
048addec 11946 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
9b784ab8 11947
048addec 11948 * xfns.c: Use renamed symbols.
89512fcd 11949
048addec
JD
11950 * xterm.c: Comment fixes. Use renamed symbols.
11951 (fringe_bitmap_type): Renamed from bitmap_type.
11952 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
11953 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
11954 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
89512fcd 11955
048addec
JD
11956 * xterm.h: Comment fixes. Use renamed symbols.
11957 (fringes_extra): Renamed from flags_areas_extra.
11958 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
11959 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
11960 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
11961 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
11962 (FRAME_X_LEFT_FRINGE_WIDTH):
11963 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
11964 (FRAME_X_RIGHT_FRINGE_WIDTH):
11965 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
11966
119672001-11-15 Jason Rumney <jasonr@gnu.org>
11968
11969 * w32menu.c (add-menu-item): Make help_echo and radio buttons
11970 work for most menu items. From David Ponce
11971 <david.ponce@wanadoo.fr>.
11972
119732001-11-15 Gerd Moellmann <gerd@gnu.org>
11974
11975 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
11976 Some x_set_* function expect to be called even if old and new
11977 value are equal.
11978
11979 * xdisp.c (build_desired_tool_bar_string): Accept zero
11980 tool_bar_button_relief.
11981
11982 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
11983
11984 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
11985
11986 * xterm.c (x_draw_bar_cursor): If the background color of the
11987 glyph under the cursor equals the frame's cursor color, use
11988 the glyph's foreground color for drawing the bar cursor.
11989
11990 * dispnew.c (direct_output_forward_char): Fix character/byte
11991 position comparison.
7d18891d 11992
048addec 119932001-11-15 Miles Bader <miles@gnu.org>
d2936d21 11994
048addec
JD
11995 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
11996 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
11997 Update arguments to find_field.
11998 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
11999 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
12000 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
12001 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
7d18891d 12002
048addec 120032001-11-14 Richard M. Stallman <rms@gnu.org>
7d18891d 12004
048addec 12005 * editfns.c (Fpropertize): Allow call with 1 arg.
7d18891d 12006
048addec
JD
12007 * dispextern.h (image_background, image_background_transparent):
12008 Conditionalize on HAVE_X_WINDOWS.
7d18891d 12009
048addec 120102001-11-13 Richard M. Stallman <rms@gnu.org>
7d18891d 12011
048addec 12012 * print.c (Fprin1_to_string): Doc fix.
7d18891d 12013
048addec 12014 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
7d18891d 12015
048addec 12016 * floatfns.c (Fceiling, Ffloor): Doc fixes.
7d18891d 12017
048addec 12018 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
7d18891d 12019
048addec 12020 * fileio.c (Ffile_accessible_directory_p): Doc fix.
7d18891d 12021
048addec 12022 * eval.c (syms_of_eval): Doc fix.
7d18891d 12023
048addec 12024 * coding.c (syms_of_coding): Doc fix.
7d18891d 12025
048addec 12026 * doc.c (Fsnarf_documentation): Doc fix.
7d18891d 12027
048addec 12028 * dispnew.c (syms_of_display): Doc fix.
9474c847 12029
048addec 12030 * category.c (Fget_unused_category): Doc fix.
9474c847 12031
048addec 12032 * buffer.c (syms_of_buffer): Doc fixes.
e3059a5d 12033
048addec 120342001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
e3059a5d 12035
048addec 12036 * print.c (prin1, print): Doc fix.
e3059a5d 12037
048addec 120382001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
b3700ae7 12039
048addec
JD
12040 * fontset.h: Remove declarations of variables
12041 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
b3700ae7 12042
048addec
JD
12043 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
12044 `Vclip_large_size_font'.
eae936e2 12045
048addec 120462001-11-13 Jason Rumney <jasonr@gnu.org>
4bb962be 12047
048addec 12048 * w32fns.c: Doc fix.
ddb67bdc 12049
048addec 120502001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3467c402 12051
048addec 12052 * xfaces.c (Fface_attributes_as_vector): Doc fix.
3467c402 12053
048addec 12054 * fns.c: Doc fix.
6e1b91d7 12055
048addec 12056 * emacs.c: Doc fix.
1c1d3d69 12057
048addec 12058 * coding.c: Doc fix.
1c1d3d69 12059
048addec
JD
12060 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
12061 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
12062 `new style' [w/`doc:' keyword].
b6f4c7ba 12063
048addec 120642001-11-12 Richard M. Stallman <rms@gnu.org>
b6f4c7ba 12065
048addec
JD
12066 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
12067 LeaveNotify events. Only FocusIn and FocusOut do that now.
12068 (x_display_and_set_cursor): Do display hollow cursors in active
12069 minibuffer windows when they are not selected.
b6f4c7ba 12070
048addec 120712001-11-12 Jason Rumney <jasonr@gnu.org>
a89f435d 12072
048addec
JD
12073 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
12074 * w32term.c: Change doc-string comments to `new style'.
12075 [w/`doc:' keyword]. Doc fixes.
a89f435d 12076
048addec
JD
12077 * w32fns.c: Don't define max.
12078 (Fx_open_connection): Only execute once.
a4cd0cd7 12079
048addec 120802001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
eafb659a 12081
048addec
JD
12082 * ccl.c: Change macros to use do-while block instead of if-else.
12083 Use braces to follow GNU Coding Standards.
eafb659a 12084
048addec 120852001-11-11 Richard M. Stallman <rms@gnu.org>
a4cd0cd7 12086
048addec 12087 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
a4cd0cd7 12088
048addec 12089 * lread.c (read_escape): Use end_of_file_error for reporting eof.
a4cd0cd7 12090
048addec
JD
12091 * insdel.c (replace_range): Use adjust_markers_for_replace
12092 instead of adjust_markers_for_delete and adjust_markers_for_insert.
a4cd0cd7 12093
048addec 12094 * intervals.h: Declare set_text_properties and set_text_properties_1.
a4cd0cd7 12095
048addec
JD
12096 * textprop.c (set_text_properties_1): New subroutine
12097 broken out of set_text_properties.
12098 (set_text_properties): Use set_text_properties_1.
91823618 12099
048addec
JD
12100 * intervals.c (graft_intervals_into_buffer):
12101 Use set_text_properties_1 to clear out properties.
91823618 12102
048addec
JD
12103 * search.c (Freplace_match): Use replace_range to insert
12104 and delete. Don't request property inheritance from
12105 surrounding text.
86928dfb 12106
048addec 121072001-11-10 Jason Rumney <jasonr@gnu.org>
86928dfb 12108
048addec
JD
12109 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
12110 vertical fonts. Allow them if face name is explicitly specified.
12111 Do not give up if we find a font that cannot be converted to an xlfd.
40ef1eda 12112
048addec 121132001-11-10 Gerd Moellmann <gerd@gnu.org>
ab8469eb 12114
048addec
JD
12115 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
12116 instead of malloc/free.
a78e0303 12117
048addec 121182001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
40ef1eda 12119
048addec
JD
12120 * xfaces.c (merge_face_vectors): Use braces to follow GNU
12121 Coding Standards.
12122 (Finternal_set_lisp_face_attribute): Likewise.
fabf4a91 12123
048addec 12124 * buffer.c (Fbury_buffer): Likewise.
0c99b139 12125
048addec 12126 * indent.c (current_column_1): Remove unused variable `prev_col'.
0c99b139 12127
048addec
JD
12128 * coding.c (encode_coding): Use precomputed value of `src'.
12129 (encode_coding): Remove unused variable `src_end'.
12130 (code_convert_region): Remove unused variables `count'.
830ddd77 12131
048addec 121322001-11-07 Jason Rumney <jasonr@gnu.org>
830ddd77 12133
048addec
JD
12134 * w32term.c (x_display_and_set_cursor): Do not move system caret
12135 if cursor_glyph is NULL.
55c6d645 12136
048addec 121372001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
55c6d645 12138
048addec 12139 * keymap.c (access_keymap): Fix compilation error.
5de38842 12140
048addec 121412001-11-07 Miles Bader <miles@gnu.org>
7a4564a4 12142
048addec 12143 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
5de38842 12144
048addec 121452001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4fa23df5 12146
048addec
JD
12147 * intervals.c (graft_intervals_into_buffer):
12148 Remove #ifdef'd-out code.
12149 (graft_intervals_into_buffer): Remove unused variable `middle'.
4fa23df5 12150
048addec
JD
12151 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
12152 code (eval-current-buffer).
12153 Change doc-string comments to `new style' [w/`doc:' keyword].
7a6a97d7 12154
048addec 121552001-11-06 Richard M. Stallman <rms@gnu.org>
c191d13c 12156
048addec 12157 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
7a6a97d7 12158
048addec 121592001-11-06 Stefan Monnier <monnier@cs.yale.edu>
44dc78e0 12160
048addec 12161 * lread.c (read1): Fix behavior with nested backquoting.
44dc78e0 12162
048addec
JD
12163 * keyboard.c (make_lispy_event): Check integerness and fix
12164 Lisp_Object/int mixup.
17893c65 12165
048addec 121662001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4d994a79 12167
048addec 12168 * fns.c (copy_hash_table): Remove unused variable `v'.
d5360cc7 12169
048addec
JD
12170 * fontset.c (fontset_font_pattern): Remove unused variable
12171 `family_registry'.
d5360cc7 12172
048addec 12173 * indent.c (current_column_1): Remove unused variable `prev_col'.
d5360cc7 12174
048addec 121752001-11-05 Richard M. Stallman <rms@gnu.org>
96238a5a 12176
048addec 12177 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
96238a5a 12178
048addec
JD
12179 * buffer.c (Fkill_buffer): Don't delete auto save file
12180 if buffer is modified.
d9d54213 12181
048addec 121822001-11-05 Andrew Innes <andrewi@gnu.org>
d9d54213 12183
048addec
JD
12184 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
12185 CHECK_NUMBER_CDR.
b116830b 12186
048addec 121872001-11-05 Richard M. Stallman <rms@gnu.org>
b116830b 12188
048addec 12189 * unexelf.c (unexec): Minor changes; clean up comments.
3297e2a1 12190
048addec 121912001-11-05 Sam Steingold <sds@gnu.org>
3297e2a1 12192
048addec 12193 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
6fb8339c 12194
048addec 121952001-11-05 Andreas Schwab <schwab@suse.de>
6fb8339c 12196
048addec 12197 * sound.c (sound_perror): Save errno from being clobbered.
7dd73b78 12198
048addec 121992001-11-05 Dale Hagglund <rdh@yottayotta.com>
7dd73b78 12200
048addec
JD
12201 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
12202 the program image directly.
982f6c7e 12203
048addec 122042001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d31053f9 12205
048addec 12206 * buffer.h (Fbuffer_local_value): Add prototype.
d31053f9 12207
048addec 122082001-11-04 Richard M. Stallman <rms@gnu.org>
d31053f9 12209
048addec
JD
12210 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
12211 and CHECK_BUFFER.
d31053f9 12212
048addec
JD
12213 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
12214 (record_char): Likewise.
d31053f9 12215
048addec
JD
12216 * keyboard.c (make_lispy_event): Don't insist a drag event must
12217 move to a different buffer position. Instead, check for moving at
12218 least double_click_fuzz.
982f6c7e 12219
048addec 12220 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
830047fd 12221
048addec 12222 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
b116830b 12223
048addec
JD
12224 * indent.c (current_column_1, Fmove_to_column): Separate the code
12225 for display-table glyphs from the code for buffer text, to fix
12226 bugs in the former.
830047fd 12227
048addec 122282001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
b116830b 12229
048addec
JD
12230 * buffer.c (Fbuffer_local_value): New function.
12231 (syms_of_buffer): Defsubr it.
2df5238c 12232
048addec
JD
12233 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
12234 value of `cursor-in-non-selected-windows'.
4e397688 12235
048addec
JD
12236 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
12237 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
12238 (syms_of_xdisp): Initialize it.
48b0f3ae 12239
048addec 122402001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2df5238c 12241
048addec 12242 * xfns.c (Fx_create_frame): Doc fix.
3ecaf7e5 12243
048addec
JD
12244 * coding.c: Change doc-string comments to `new style' [w/`doc:'
12245 keyword].
3ecaf7e5 12246
048addec
JD
12247 * eval.c (top_level_value, top_level_set): Remove commented and
12248 #ifdef'd-out code.
12249 (Fdefvar): Fix usage in doc-string.
3ecaf7e5 12250
048addec 122512001-11-03 Richard M. Stallman <rms@gnu.org>
3ecaf7e5 12252
048addec 12253 * xfns.c: Include unistd.h, if it exists.
8db2e33b 12254
048addec 12255 * editfns.c: Move the include of ctype.h after unistd.h.
8db2e33b 12256
048addec 12257 * gmalloc.c: Test BROKEN_PROTOTYPES.
aed29b97 12258
048addec 122592001-11-03 Ken Raeburn <raeburn@gnu.org>
aed29b97 12260
048addec
JD
12261 * lisp.h (CHECK_STRING_CAR): New macro.
12262 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
12263 treating XCAR and XCDR as lvalues.
12264 (openp): Use CHECK_STRING_CAR.
12265 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
aed29b97 12266
048addec 122672001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
6cb16f95 12268
048addec
JD
12269 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
12270 (SIGMASKTYPE): Define.
1b1acc13 12271
048addec 12272 * syssignal.h (sigunblock): Don't define if already defined.
020f9b38 12273
048addec 122742001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
020f9b38 12275
048addec
JD
12276 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
12277 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
12278 Fix typos in comments.
6cb16f95 12279
048addec
JD
12280 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
12281 and #ifdef'd-out code.
12282 Fix and reindent comments.
6cb16f95 12283
048addec 12284 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
6cb16f95 12285
048addec
JD
12286 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
12287 argument `i' in macros.
6cb16f95 12288
048addec
JD
12289 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
12290 `i' in macros.
7e9d3c2f 12291
048addec
JD
12292 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
12293 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
12294 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
12295 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
12296 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
12297 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
12298 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
12299 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
12300 in macros.
7e9d3c2f 12301
048addec
JD
12302 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
12303 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
12304 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
12305 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
12306 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
12307 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
12308 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
12309 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
12310 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
12311 (remove unused second argument).
7e9d3c2f 12312
048addec 123132001-11-02 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 12314
048addec
JD
12315 * syntax.c (describe_syntax): New wrapper.
12316 (Finternal_describe_syntax_value): Rename from describe_syntax.
12317 Don't insert space at front and \n at the end.
12318 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
e6bff182 12319
048addec
JD
12320 * regex.c (re_wctype): Try to fix some warnings.
12321 (regcomp, regexec): Don't forget the __restrict.
9ba48103 12322
048addec 123232001-11-02 Richard M. Stallman <rms@gnu.org>
9ba48103 12324
048addec 12325 * textprop.c (Fget_char_property): Doc fix.
9ba48103 12326
048addec 123272001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9ba48103 12328
048addec 12329 * process.c (Fstart_process): Add usage to doc-string.
c22e59e1 12330
048addec 12331 * data.c (Fsetq_default): Ditto.
c22e59e1 12332
048addec 12333 * callint.c (Finteractive): Ditto.
9271ed2c 12334
048addec 123352001-11-01 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 12336
048addec
JD
12337 * macros.c: Don't include keymap.h any more.
12338
123392001-11-01 Richard M. Stallman <rms@gnu.org>
12340
12341 * data.c (Fmake_local_variable): Doc fix.
12342
12343 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
12344 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
e6bff182 12345
048addec 12346 * keymap.c (Fdescribe_buffer_bindings): Print character property
9271ed2c
RS
12347 bindings along with or instead of the buffer local map.
12348 Make the overriding maps override what they should.
12349
f00691a3 123502001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8b8bd9c6
PJ
12351
12352 * window.c (grow_mini_window): Fix typo in comment.
12353
27188d11
GM
123542001-11-01 Gerd Moellmann <gerd@gnu.org>
12355
7b49b9d2
GM
12356 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
12357 (XTset_vertical_scroll_bar): Likewise.
12358
43f7c3ea
GM
12359 * xfns.c (x_build_heuristic_mask): Use four_corners_best
12360 instead of IMAGE_BACKGROUND.
c22e59e1 12361
b350c2e5
GM
12362 * xfns.c (four_corners_best): Reindent.
12363
c22e59e1 12364 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
27188d11
GM
12365 Handle :box so that it is possible to specify sexprs.
12366
bf00d461
EZ
123672001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
12368
12369 * s/hpux11.h: New file.
12370
f00691a3 123712001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e10df59 12372
2b209b97
PJ
12373 * emacs.c (USAGE1): Show command line option --no-window-system
12374 instead of --no-windows in usage.
12375 (standard_args): Rename --no-windows to --no-window-system.
12376 (bug_reporting_address): Follow Emacs coding conventions.
12377
9dbc9081
PJ
12378 * eval.c (Fcommandp): Doc fix.
12379 Change doc-string comments to `new style' [w/`doc:' keyword].
12380
4e10df59
PJ
12381 * frame.c (Fframe_live_p): Doc fix.
12382
12383 * buffer.c (selective-display-ellipses): Doc fix.
12384
dd387b25
GM
123852001-10-31 Gerd Moellmann <gerd@gnu.org>
12386
fe957e65
GM
12387 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
12388
dd387b25
GM
12389 * xfaces.c (realize_x_face): If C is not a single-byte character,
12390 set the face's colors_copied_bitwise_p instead of the defaulted_p
12391 members which have a different meaning.
12392 (free_face_colors): Do nothing for a face whose colors have been
12393 copied bitwise.
12394
c22e59e1 12395 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
dd387b25 12396
f00691a3 123972001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2e1280f8 12398
687784e8
PJ
12399 * marker.c, mocklisp.c: Change doc-string comments to `new style'
12400 [w/`doc:' keyword].
2e1280f8 12401
b9d9a9b9
GM
124022001-10-31 Gerd Moellmann <gerd@gnu.org>
12403
12404 * fns.c (require_unwind): Return Lisp_Object.
12405
f00691a3 124062001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
48400103 12407
fa1361cb
PJ
12408 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
12409 (last-input-char): Revert doc-string to be the same as the
12410 doc-string of `last-input-event'.
12411
6c465a15 12412 * xdisp.c: Fix typos in comments.
48400103 12413
eafa3196
GM
124142001-10-31 Gerd Moellmann <gerd@gnu.org>
12415
12416 * window.c (grow_mini_window): Handle case that the root
12417 window is already smaller than the nominal mininum height.
12418
747d3f2a
SM
124192001-10-30 Stefan Monnier <monnier@cs.yale.edu>
12420
bf9bb76f
SM
12421 * emacs.c (main): Don't call keys_of_macros any more.
12422
12423 * lisp.h (keys_of_macros): Remove.
12424
12425 * macros.c (keys_of_macros): Remove.
12426
747d3f2a
SM
12427 * xfaces.c (Fface_attribute_relative_p): Declare args.
12428
5e905a57
JR
124292001-10-30 Jason Rumney <jasonr@gnu.org>
12430
12431 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
12432 (enum_font_cb2): Ignore fonts with vertical orientation.
12433
3a426197
RS
124342001-10-30 Richard M. Stallman <rms@gnu.org>
12435
12436 * keyboard.c (Finput_pending_p): Doc fix.
12437
a742d646
GM
124382001-10-30 Gerd Moellmann <gerd@gnu.org>
12439
259cf6bc
GM
12440 * xterm.c (x_after_update_window_line): Don't run the code
12441 clearing in borders for rows whose visible height is 0.
12442
3f99f948
GM
12443 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
12444 resized_p flag is set. If not set, use the much less flickering
12445 method previously used.
12446
12447 * dispnew.c (change_frame_size_1): Set frame's resized_p.
12448
12449 * frame.h (struct frame) <resized_p>: New member.
12450
b4a3be43
GM
12451 * lread.c (to_multibyte): Ensure read_buffer is at least twice
12452 as large as the number of bytes to convert.
747d3f2a 12453
a742d646
GM
12454 * lread.c (to_multibyte): New function.
12455 (read1): Use it.
12456
cacbb9e9
EZ
124572001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
12458
12459 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
12460
99cb6b2f
GM
124612001-10-30 Gerd Moellmann <gerd@gnu.org>
12462
327f42ee 12463 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
747d3f2a
SM
12464 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
12465 if the row's fill_line_p is set and drawing the last glyph with
12466 DRAW_IMAGE_{RAISED,SUNKEN}.
327f42ee 12467
99cb6b2f
GM
12468 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
12469
8e8223e2
SM
124702001-10-29 Stefan Monnier <monnier@cs.yale.edu>
12471
12472 * xmenu.c: Include coding.h and charset.h.
12473 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
12474 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
12475 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
12476 Explicitly set wv->help. Use `TRUE' rather than `True'.
12477 (menu_help_callback): Use empty_string.
12478
12479 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
12480 (Fx_popup_dialog): Explicitly init f.
12481 (w32_menu_display_help): Use empty_string.
12482
4d083a8f
RS
124832001-10-29 Richard M. Stallman <rms@gnu.org>
12484
b2304472
RS
12485 * fns.c (Frequire): Detect recursive try to require the same
12486 feature 3 or more levels deep, and get error.
12487 (require_unwind): New subroutine.
12488 (require_nesting_list): New variable.
12489 (syms_of_fns): Init and staticpro it.
12490
4d083a8f
RS
12491 * print.c (print_object): Clarify indication of insertion type.
12492
2fe41216
EZ
124932001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
12494
90480000
EZ
12495 * coding.c (syms_of_coding): Document that locale-coding-system is
12496 used for decoding input on X.
12497
2fe41216
EZ
12498 * window.c (Fscroll_left, Fscroll_right): Doc fix.
12499
f00691a3 125002001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
74e79967
PJ
12501
12502 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
12503 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
12504
60ebcfe8
GM
125052001-10-29 Gerd Moellmann <gerd@gnu.org>
12506
9a7bdceb
GM
12507 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
12508 use NO_CURSOR if cursor_in_non_selected_windows is false.
12509
3f08fcd2
GM
12510 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
12511 the slant attribute if FRAME is t.
12512
0ccfdad2
GM
12513 * xfns.c (x_set_internal_border_width): Set frame garbaged
12514 when X window doesn't exist yet.
12515
ef253080
GM
12516 * xterm.c (x_after_update_window_line): Clear internal border
12517 in different circumstances.
b116830b 12518
60ebcfe8
GM
12519 * xterm.c (XTread_socket) <KeyPress>: Don't use
12520 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
12521 <handa@etl.go.jp>.
12522
73d25f9c
EZ
125232001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
12524
12525 * m/ibms390.h: New file. From Adam Thornton
12526 <athornton@sinenomine.net>.
12527
cac1daf0
GM
125282001-10-28 Gerd Moellmann <gerd@gnu.org>
12529
053b3256 12530 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
b116830b 12531
cac1daf0
GM
12532 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
12533 a loop counter.
12534
f00691a3 125352001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13b1a09c 12536
186486eb
PJ
12537 * emacs.c: Use argv[0] instead of emacs when -t was specified.
12538
4707d2d0
PJ
12539 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
12540 keyword].
12541 Fix typos in comments.
b116830b 12542
d883731c
PJ
12543 * emacs.c (bug_reporting_address): New function.
12544 Use it when displaying usage message.
12545
04012254
PJ
12546 * minibuf.c (read_minibuf): Remove unused external declaration of
12547 variable `Qread_only'.
12548
13b1a09c
PJ
12549 * keymap.c (access_keymap): Remove unused variable `charset'.
12550
5bbf4378
MB
125512001-10-28 Miles Bader <miles@gnu.org>
12552
12553 * xfaces.c (merge_face_heights): Handle TO being relative as well.
12554 Remove #ifdef'd-out code.
12555 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
12556 (syms_of_xfaces): Initialize them.
12557
1ce1e4ee
JR
125582001-10-27 Jason Rumney <jasonr@gnu.org>
12559
12560 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
12561 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
12562 position using the system caret.
12563
12564 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
12565 (w32_system_caret_height, w32_system_caret_x)
12566 (w32_system_caret_y): New variables for tracking system caret.
12567 (w32_initialize): Initialize them.
c2d53558 12568 (x_display_and_set_cursor): Make system caret follow the active cursor.
1ce1e4ee 12569
c2d53558
SM
12570 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
12571 New messages types.
1ce1e4ee
JR
12572
12573 * w32term.c (note_mouse_highlight): Clear old help_echo.
12574
f00691a3 125752001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e30ce42 12576
bb4600a4
PJ
12577 * xterm.c: Fix typo in a comment.
12578
7db35a48
PJ
12579 * emacs.c: Fix typos in comments.
12580 Remove unnecessary spaces.
12581 Change doc-string comments to `new style' [w/`doc:' keyword].
12582 (USAGE2): Fix typos in usage string.
12583
a7248e4f
PJ
12584 * xterm.c: Fix typo in a comment.
12585
4e30ce42
PJ
12586 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
12587 emacs.c.
12588
62725a92
GM
125892001-10-27 Gerd Moellmann <gerd@gnu.org>
12590
798dbe1f 12591 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
c2d53558 12592 instead of 1/2 line_height in the heuristic for skipping
798dbe1f
GM
12593 farther backward when target_y was not reached.
12594
62725a92
GM
12595 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
12596 Display errno only if non-zero.
12597 (sound_warning): New function.
12598 (vox_configure): Don't treat failing to set sample rate as error.
12599 (various places): Improve error messages.
12600
d4e34d24
EZ
126012001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
12602
944e6f60
EZ
12603 * fileio.c (Faccess_file): Run the argument filename through
12604 Fexpand_file_name, before using it.
12605
d4e34d24
EZ
12606 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
12607 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
12608
38d2af0c
GM
126092001-10-26 Gerd Moellmann <gerd@gnu.org>
12610
da80a8d5
GM
12611 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
12612
38d2af0c
GM
12613 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
12614 Fix clearing in the case of scroll bars on the right.
c2d53558 12615
45de4a6f 126162001-10-26 Juanma Barranquero <lektu@terra.es>
56f508dd
EZ
12617
12618 * w32gui.h (XImage): Add a dummy typedef.
12619
fbd5ceb2
GM
126202001-10-26 Gerd Moellmann <gerd@gnu.org>
12621
c2d53558 12622 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
fbd5ceb2 12623
b23236fb
EZ
126242001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
12625
12626 * frame.c (Fframe_parameter): Fix last change.
12627
5d991fc4
EZ
12628 * fileio.c: Revert last change (which removed old commented-out
12629 version of expand-file-name). Add a comment that explains why
12630 this old version should not be removed.
12631
879eadc3
GM
126322001-10-25 Gerd Moellmann <gerd@gnu.org>
12633
75700ff2
GM
12634 * frame.c (Fframe_parameter): Fix a bug whereby some
12635 ``artificial'' frame parameters, like `minibuffer' were not
12636 obtained by calling Fframe_parameters.
12637
dfe92a6a
GM
12638 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
12639 cursor differently.
12640
879eadc3
GM
12641 * xdisp.c (move_it_vertically_backward): Compute line height
12642 differently. Add heuristic to try to be more compatible to 20.x.
12643
e1010ebe
SM
126442001-10-25 Stefan Monnier <monnier@cs.yale.edu>
12645
d73a471b
SM
12646 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
12647
d6da5a06
GM
12648 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
12649 boolean.
e1010ebe 12650
f66bd220
MB
126512001-10-25 Miles Bader <miles@gnu.org>
12652
12653 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
12654 BG is a pointer to a structure, not a structure.
12655 (gif_format, png_format): Add missing commas.
12656
d436d538
RS
126572001-10-24 Richard M. Stallman <rms@gnu.org>
12658
12659 * xfaces.c (Fface_attributes_as_vector): New function.
c2d53558 12660 (syms_of_xfaces): Defsubr it.
d436d538 12661
f00691a3 126622001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
075c507b
PJ
12663
12664 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
12665 variable `area'.
12666
f00691a3 126672001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d492b584 12668
c2d53558 12669 * search.c (scan_newline): Remove unused variable `selective_display'.
d492b584 12670
e2a57b34
MB
126712001-10-25 Miles Bader <miles@gnu.org>
12672
12673 * dispextern.h (struct image): Add `background',
12674 `background_valid', and `background_transparent' fields.
12675 (image_background, image_background_transparent): New declarations.
12676 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
12677 * xfns.c (image_background, image_background_transparent)
12678 (four_corners_best): New functions.
c2d53558 12679 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
e2a57b34
MB
12680 (gs_format): Add `:background' entry.
12681 (lookup_image): Set IMG's background color if specified.
12682 (pbm_load, xbm_load_image, png_load): Set IMG's background field
12683 when appropriate.
12684 (x_clear_image_1): Reset `background_valid' and
12685 `background_transparent_valid' fields.
12686 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
12687 calculating it here. Set IMG's background_transparent field.
12688 (enum xpm_keyword_index): Add XPM_BACKGROUND.
12689 (enum png_keyword_index): Add PNG_BACKGROUND.
12690 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
12691 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
12692 (enum gif_keyword_index): Add GIF_BACKGROUND.
12693 (enum gs_keyword_index): Add GS_BACKGROUND.
c2d53558 12694 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
e2a57b34
MB
12695 Pre-calculate image background color where necessary.
12696 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
12697 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
12698 color to use for image glyph reliefs.
12699
b547b6e8
GM
127002001-10-24 Gerd Moellmann <gerd@gnu.org>
12701
d9e3b8c6
GM
12702 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
12703 in full-width rows.
c2d53558 12704
b547b6e8
GM
12705 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
12706 Fix clearing of area not covered by scroll bar.
12707
f00691a3 127082001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2beb36f9
PJ
12709
12710 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
12711 and `real_start'.
c2d53558 12712 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
2beb36f9
PJ
12713 (glyph_rect): Remove unused variable `area'.
12714
76cb5e06
GM
127152001-10-24 Gerd Moellmann <gerd@gnu.org>
12716
bdbdebff 12717 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
c2d53558
SM
12718
12719 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
12720 (row_containing_pos): Take additional argument DY.
12721 Treat rows ending in middle of char differently.
62e33982
GM
12722 (display_line): Handle tabs on window systems differently.
12723
12724 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
12725 with additional argument.
12726
12727 * dispextern.h (row_containing_pos): Adjust prototype.
12728
76cb5e06
GM
12729 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
12730 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
12731 (try_window_id, try_window_reusing_current_matrix)
12732 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
6c465a15 12733 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
76cb5e06 12734
f00691a3 127352001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
996fee11 12736
c9e60620
PJ
12737 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
12738 gnuemacs).
12739 (HAVE_BOXES): Fix typo in comment.
12740 (push_menu_pane): Fix typo in comment.
12741
3b552d56
PJ
12742 * xdisp.c: (display_prop_string_p): Remove unused local declaration
12743 of `Qwhen'.
12744 (single_display_prop_string_p): Remove unused local declarations
12745 of `Qwhen' and `Qmargin'.
12746 (string_buffer_position): Remove unused variable `around'.
12747 (store_frame_title): Remove unused variable `width'.
12748
15c565ac
PJ
12749 * window.c: Don't define max.
12750 (coordinates_in_window): Remove unused variable `uy'.
12751
a8818eb9
PJ
12752 * widget.c: Don't define max.
12753
996fee11
PJ
12754 * process.c: Don't define max.
12755 (create_process): Remove unused variable `buffer'.
12756
496e1a5b
GM
127572001-10-23 Gerd Moellmann <gerd@gnu.org>
12758
c2d53558 12759 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
496e1a5b 12760
5905ae8b
EZ
127612001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
12762
12763 * xfaces.c (Finternal_set_lisp_face_attribute)
12764 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
12765 frame is on a windowed display.
12766
24db49fb
GM
127672001-10-23 Gerd Moellmann <gerd@gnu.org>
12768
c2d53558
SM
12769 * dispnew.c (sync_window_with_frame_matrix_rows):
12770 Fix handling of windows which aren't full-width, fix handling
c51488cd
GM
12771 of marginal areas.
12772
c2d53558 12773 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
24db49fb 12774
f0487f05
EZ
127752001-10-23 Andreas Schwab <schwab@suse.de>
12776
12777 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
12778 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
12779
f0a48a01
GM
127802001-10-23 Gerd Moellmann <gerd@gnu.org>
12781
c2d53558 12782 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
f0a48a01
GM
12783 REAL_END. Notice if cursor gets overwritten.
12784 (notice_overwritten_cursor): Take X positions as parameters.
12785 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
12786 around call to x_draw_glyphs.
12787
f00691a3 127882001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
a50a10a0 12789
fc11dff0
PJ
12790 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
12791 instead of C) and usage.
a50a10a0 12792
fc11dff0
PJ
12793 * editfns.c (char-to-string): Fix argument names (use CHAR instead
12794 of C) and usage.
a50a10a0
PJ
12795
12796 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
12797 `left', `max_width' and `max_height'.
12798
8738febd
GM
127992001-10-23 Gerd Moellmann <gerd@gnu.org>
12800
12801 * xdisp.c (display_line): For a tab continued to the next line,
12802 set row's ends_in_middle_of_char_p.
12803
653c329b
GM
128042001-10-22 Gerd Moellmann <gerd@gnu.org>
12805
12806 * xdisp.c (display_line): Fix computation of continuation lines
12807 width for TABs.
12808
f00691a3 128092001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
f958c5ac 12810
7ba51063
PJ
12811 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
12812 `Qlaplace'.
12813
f958c5ac
PJ
12814 * fileio.c: Remove unused code.
12815
eb360291
MB
128162001-10-22 Miles Bader <miles@gnu.org>
12817
12818 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
12819 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
12820 Remove `DOC_STRINGS_IN_COMMENTS' cases.
12821
98515cf0
JR
128222001-10-21 Jason Rumney <jasonr@gnu.org>
12823
12824 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
12825
93026d88
EZ
128262001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
12827
12828 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
12829 (Finsert_string): Avoid the multi-line string literals warning.
12830
c9a95b79
MB
128312001-10-22 Miles Bader <miles@gnu.org>
12832
12833 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
12834 (Fdocumentation): Don't use it.
12835 (syms_of_doc): Don't initialize it.
12836
12837 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
12838 * print.c (Fwith_output_to_temp_buffer): Likewise.
12839 * window.c (Fsave_window_excursion): Likewise.
c2d53558 12840 * editfns.c (Fsave_excursion, Fsave_current_buffer)
c9a95b79 12841 (Fsave_restriction): Likewise.
c2d53558
SM
12842 * eval.c (Frun_hooks, Frun_hook_with_args)
12843 (Frun_hook_with_args_until_failure)
12844 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
12845 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
12846 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
c9a95b79
MB
12847 (Funwind_protect, Fcondition_case): Likewise.
12848 * coding.c (Ffind_operation_coding_system): Likewise.
12849 * keyboard.c (Ftrack_mouse): Likewise.
12850
a3b10252
MB
128512001-10-21 Miles Bader <miles@gnu.org>
12852
c2d53558 12853 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
a3b10252
MB
12854 (Fmake_hash_table): Add usage: string to doc string.
12855 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
c2d53558 12856 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
a3b10252
MB
12857 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
12858 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
12859 (Fml_prefix_argument_loop): Likewise.
12860
f00691a3 128612001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c6f73eec 12862
c2d53558 12863 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
888ebd13 12864
c6f73eec
PJ
12865 * sysdep.c (init_sys_modes): Change doc-string comments to `new
12866 style' [w/`doc:' keyword].
12867
12868 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
12869 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
12870 comments to `new style' [w/`doc:' keyword].
12871
3cf3436e
JR
128722001-10-21 Jason Rumney <jasonr@gnu.org>
12873
12874 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
12875
c169b8f1
JR
12876 * w32term.c (remember_mouse_glyph): New function.
12877 (w32_mouse_position): Use it.
12878 (note_mouse_movement): If the mouse moved off the glyph, remember
12879 its new position.
c2d53558 12880
4fdd691b
JR
12881 * w32term.h (struct w32_output): Correct spelling of x_compatible.
12882 (w32_display_info): Add mouse_face_overlay.
12883
c169b8f1
JR
12884 * w32term.c (notice_overwritten_cursor): Renamed from
12885 note_overwritten_text_cursor. Rewritten to take glyph widths into
12886 account.
12887 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
12888 (fast_find_string_pos): New function.
12889 (fast_find_position): Return the correct vpos. Add parameter
12890 STOP. In the final row, stop before glyphs having STOP as object.
12891 Don't consider glyphs that are not from a buffer.
12892 (fast_find_position) [0]: Add a presumably more correct version
12893 for after 21.1.
12894 (expose_window_tree, expose_frame): Don't compute intersections here.
12895 (expose_window): Do it here instead.
12896 (expose_window_tree, expose_window, expose_line): Return 1 when
12897 overwriting mouse-face.
12898 (expose_window): If W is the window currently being updated, mark
12899 the frame garbaged.
12900 (expose_frame): If mouse-face was overwritten, redo it.
12901 (x_use_underline_position_properties): New variable.
12902 (syms_of_xterm): DEFVAR_BOOL it.
12903 (x_draw_glyph_string): Add comment to use it in future.
12904 (x_draw_glyph_string): Restore clipping after drawing box.
12905 Fix a computation of the underline position.
12906 (w32_get_glyph_string_clip_rect): Minor cleanup.
12907 (x_fill_stretch_glyph_string): Remove an assertion.
12908 (x_produce_glyphs): Don't convert multibyte characters
12909 to unibyte characters in unibyte buffers.
12910 (cursor_in_mouse_face_p): New function.
12911 (x_draw_stretch_glyph_string): Use it to choose a different GC
12912 when drawing a cursor within highlighted text. Don't draw
12913 background again if it has already been drawn.
12914 (x_draw_glyph_string_box): Don't draw a full-width
12915 box just because the glyph row's full_width_p flag is set.
12916 (x_draw_glyphs): Fix computation of rightmost x for
12917 full-width rows.
12918 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
12919 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
12920 change bottom shadow accordingly. Some cleanup.
12921 (x_update_window_end): Handle overwritten mouse face
12922 also for tool bar windows.
12923 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
12924 DRAW is DRAW_IMAGE_RAISED.
12925 (clear_mouse_face): Return 1 if text with mouse face was
2c568af5
SM
12926 actually redrawn. Make the function static.
12927 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
c169b8f1
JR
12928 optimize away highlighting if we pass over that same overlay again.
12929 (note_mouse_highlight): Call mouse_face_overlay_overlaps
12930 to detect a case where we have to highlight a different region
12931 despite not having left the currently highlighted region.
12932 Set mouse_face_overlay in the x_display_info. Avoid changing the
12933 mouse pointer shape when show_mouse_face has already done it, or
12934 there is no need. Handle mouse-face and help-echo in strings.
12935 (glyph_rect): New function.
12936 (w32_mouse_position): Use it to raise the threshold for mouse
12937 movement event generation.
12938 (w32_initialize_display_info): Initialize the x_display_info's
12939 mouse_face_overlay.
12940 (w32_set_vertical_scroll_bar): Don't clear a zero height
12941 or width area.
12942 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
12943 a widget to zero height.
12944
3cf3436e 12945 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
4fdd691b 12946 Protect unibyte strings created by replacing their multibyte
3cf3436e
JR
12947 equivalents in menu_items.
12948 (w32_menu_show): Don't overwrite an item's name with its key
12949 description in case the description is a multibyte string.
12950 (single_submenu): Some cleanup.
12951
12952 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
12953 (postprocess_image): New function.
12954 (lookup_image): Call it for all image types except PostScript.
12955 (x_kill_gs_process): Call postprocess_image.
12956 (tiff_error_handler, tiff_warning_handler): New functions.
12957 (tiff_load): Install them as handlers.
12958 (x_kill_gs_process): Recognize if someone has cleared the image
12959 cache under us.
12960 (valid_image_p): Protect better against invalid image
12961 specifications. Previous code could signal an error.
12962 (Fx_hide_tip, Fshow_tip): Doc fix.
12963 (Fv_max_tooltip_size): New variable.
12964 (syns_of_xfns): DEFVAR_LISP it.
12965 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
12966 window buffer to *tip* right after creating the frame. Set frame's
12967 window_width. Use a maximum tooltip size specified by
12968 Vx_max_tooltip_size, if that has valid contents.
12969 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
12970 Make sure the tooltip is completely visible.
12971 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
12972 (Fx_create_frame): Adjust the frame's height for presence
12973 of the tool bar before calling x_figure_window_size.
12974 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
12975 when the window gets smaller.
12976 (x_set_foreground_color): Set frame's cursor_pixel.
12977 (x_set_foreground_color, x_set_background_color): Cleaned up.
12978 (x_set_font): Handle case of x_new_fontset returning the same name
12979 as before, although there was a change in fontsets.
12980
386ca361
MB
129812001-10-21 Miles Bader <miles@gnu.org>
12982
c2d53558 12983 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
386ca361
MB
12984 (Flogxor): Add usage: string to doc string.
12985 * charset.c (Fstring): Likewise.
12986 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
12987 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
12988
f00691a3 129892001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14ff1ee0 12990
03be2694
PJ
12991 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
12992
12993 * alloc.c: Reindent DEFUNs with doc: keywords.
12994
12995 * abbrev.c (Finsert_abbrev_table_description): Reindent.
12996
14ff1ee0
PJ
12997 * frame.c: Change doc-string comments to `new style' [w/`doc:'
12998 keyword].
12999
2f147815 13000See ChangeLog.9 for earlier changes.
6922b018
KH
13001
13002;; Local Variables:
49b3bd82 13003;; coding: iso-2022-7bit
6922b018 13004;; End:
2a34a036 13005
2f147815 13006 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
2a34a036
GM
13007 Copying and distribution of this file, with or without modification,
13008 are permitted provided the copyright notice and this notice are preserved.
ab5796a9
MB
13009
13010;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4