]> code.delx.au - gnu-emacs/blob - src/ChangeLog
Update my email address.
[gnu-emacs] / src / ChangeLog
1 2004-04-04 Eli Zaretskii <eliz@gnu.org>
2
3 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
4 from GCC.
5
6 2004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
7
8 * .gdbinit-union: Remove.
9
10 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
11 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
12 ($nonvalbits): Remove.
13 ($valmask): Set it by calling xreload to avoid redundancy.
14
15 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
16 (gdb_emacs_intbits): Remove.
17
18 2004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
19
20 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
21
22 2004-03-30 Kenichi Handa <handa@m17n.org>
23
24 * editfns.c (Fformat): Fix initialization of the array info.
25
26 2004-03-30 Kim F. Storm <storm@cua.dk>
27
28 * xterm.c (x_mouse_click_focus_ignore_position): New var.
29 (syms_of_xterm): DEFVAR_BOOL it.
30 (ignore_next_mouse_click_timeout): New var.
31 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
32 Use it to filter mouse clicks following focus event.
33
34 2004-03-29 David Ponce <david@dponce.com>
35
36 * callint.c (Fcall_interactively): Fix last change.
37
38 2004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
39
40 * eval.c (Fcommandp): Simplify.
41
42 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
43 Extend to handle all kinds of functions.
44
45 * lisp.h (Finteractive_form): Declare.
46
47 * callint.c (Fcall_interactively): Use it.
48
49 2004-03-26 Kim F. Storm <storm@cua.dk>
50
51 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
52 to catch errors in calc_pixel_width_or_height during redisplay.
53
54 2004-03-26 Masatake YAMATO <jet@gyve.org>
55
56 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
57
58 * lisp.h (fix_start_end_in_overlays): Likewise.
59
60 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
61
62 * editfns.c (Ftranspose_regions): Likewise.
63
64 2004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
65
66 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
67
68 2004-03-19 Richard M. Stallman <rms@gnu.org>
69
70 * s/sol2-6.h: Delete previous change.
71
72 2004-03-19 Kim F. Storm <storm@cua.dk>
73
74 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
75 to_charpos corresponds to newline in right fringe. Use local
76 BUFFER_POS_REACHED_P macro.
77
78 2004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
79
80 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
81 to compile on non-window system.
82
83 2004-03-19 Kim F. Storm <storm@cua.dk>
84
85 * dispextern.h (calc_pixel_width_or_height): Add prototype.
86
87 * image.c (Qcenter): Move to xdisp.c.
88
89 * xdisp.c (Qcenter): Declare here.
90 (syms_of_xdisp): Intern and staticpro it.
91 (handle_single_display_prop): Allow space display property on all
92 platforms.
93 (display_mode_line): Set mode_line_p before displaying line.
94 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
95 handling. Remove complex cases for fringes and scroll-bars.
96 Add left, right, and center alignment positions. Add text (area)
97 width/height. Return width or height for image specs.
98 (produce_stretch_glyph): Improve handling of :align-to. Is now
99 relative to left of text area by default, but other base offsets
100 can be specified -- also for text lines.
101
102 * term.c (produce_glyphs): Handle IT_STRETCH.
103 (produce_stretch_glyph): New function to handle space width and
104 align-to display properties on non-window systems.
105
106 2004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
107
108 * fileio.c (Fread_file_name): Set completion-ignore-case for
109 case-insensitive systems.
110
111 2004-03-14 Masatake YAMATO <jet@gyve.org>
112
113 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
114 when keymap and cursor are setup.
115
116 2004-03-14 Steven Tamm <steventamm@mac.com>
117
118 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
119
120 2004-03-14 Kim F. Storm <storm@cua.dk>
121
122 * dispextern.h (x_find_image_file): Add prototype.
123
124 * image.c (x_find_image_file): Make extern.
125
126 * xfns.c (x_find_image_file): Remove prototype.
127
128 2004-03-13 Eli Zaretskii <eliz@gnu.org>
129
130 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
131
132 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
133
134 2004-03-12 Richard M. Stallman <rms@gnu.org>
135
136 * fns.c (internal_equal): New arg PROPS controls comparing
137 text properties. All callers changed.
138 (Fequal_including_properties): New function.
139 (syms_of_fns): defsubr it.
140
141 2004-03-12 Kim F. Storm <storm@cua.dk>
142
143 Fix image support on MAC. From YAMAMOTO Mitsuharu.
144
145 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
146 (image_background, image_background_transparent): Fix prototypes.
147
148 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
149
150 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
151 (x_query_font, x_find_ccl_program, x_set_window_size)
152 (x_make_frame_visible, mac_initialize, XCreatePixmap)
153 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
154 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
155
156 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
157 (x_query_font, x_find_ccl_program, x_set_window_size)
158 (x_make_frame_visible, mac_initialize, XCreatePixmap)
159 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
160 (mac_draw_line_to_pixmap): Add prototypes.
161
162 2004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
163
164 * macterm.c (XTread_socket): Fix mouse click on tool bar.
165
166 2004-03-11 Kim F. Storm <storm@cua.dk>
167
168 * dispextern.h: Move image related prototypes from xfns.c section
169 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
170 HAVE_X_WINDOWS.
171
172 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
173 Move gtkutil.o to new GTK_OBJ list.
174 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
175 (GTK_OBJ) [USE_GTK]: New declaration.
176 (obj): Add $(GTK_OBJ) to list.
177
178 2004-03-11 Steven Tamm <steventamm@mac.com>
179
180 * image.c [MAC_OSX]: Include sys/stat.h
181
182 * macfns.c (syms_of_macfns): Remove definitions of things now
183 defined in image.c
184
185 2004-03-11 Kim F. Storm <storm@cua.dk>
186
187 The following changes consolidates the identical/similar image
188 support code previously found in xfns.c, w32fns.c, and macfns.c
189 into a new file image.c.
190
191 * makefile.w32-in (OBJ1): Add image.o.
192 ($(BLD)/image.$(O)): Add dependencies.
193
194 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
195 (image.o): Add dependencies.
196
197 * image.c: New file with consolidated image support code.
198 (COLOR_TABLE_SUPPORT): New define to control whether
199 color table support is available (X only).
200 (Bitmap_Record): Common name for x_bitmap_record,
201 w32_bitmap_record, and mac_bitmap_record.
202 (XImagePtr): Common name for pointer to XImage or equivalent.
203 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
204 to XImagePtr on X+MAC, and to HDC on W32.
205 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
206 (NO_PIXMAP): Common name for "None" or equivalent.
207 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
208 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
209 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
210 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
211 Define with suitable equivalents on W32 and MAC for code sharing.
212 (XDrawLine): Define on MAC for code sharing.
213 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
214 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
215 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
216 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
217 (x_reference_bitmap, x_create_bitmap_from_data)
218 (x_create_bitmap_from_file, x_destroy_bitmap)
219 (x_destroy_all_bitmaps, x_create_bitmap_mask)
220 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
221 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
222 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
223 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
224 (define_image_type, lookup_image_type, valid_image_p)
225 (image_error, enum image_value_type, struct image_keyword)
226 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
227 (make_image, free_image, prepare_image_for_display, image_ascent)
228 (four_corners_best, image_background, image_background_transparent)
229 (x_clear_image_1, x_clear_image, x_alloc_image_color)
230 (make_image_cache, free_image_cache, clear_image_cache)
231 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
232 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
233 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
234 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
235 (init_image_func_pointer, image_load_quartz2d)
236 (struct ct_color, init_color_table, free_color_table)
237 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
238 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
239 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
240 (x_disable_image, x_build_heuristic_mask)
241 (XBM support, XPM support, PBM support, PNG support, JPEG support)
242 (TIFF support, GIF support, Ghostscript support): Consolidate image
243 code from xfns.c, w32fns.c, and macfns.c.
244 (syms_of_image): Consolidate image related symbol setup here.
245 (init_image): Consolidate image related initializations here.
246
247 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
248 and init_image. Remove call to init_xfns.
249
250 * macterm.h (struct mac_bitmap_record): Add file member.
251 Not currently used, but simplifies code sharing.
252
253 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
254 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
255 (x_reference_bitmap, x_create_bitmap_from_data)
256 (x_create_bitmap_from_file, x_destroy_bitmap)
257 (x_destroy_all_bitmaps, x_create_bitmap_mask)
258 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
259 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
260 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
261 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
262 (define_image_type, lookup_image_type, valid_image_p)
263 (image_error, enum image_value_type, struct image_keyword)
264 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
265 (make_image, free_image, prepare_image_for_display, image_ascent)
266 (four_corners_best, image_background, image_background_transparent)
267 (x_clear_image_1, x_clear_image, x_alloc_image_color)
268 (make_image_cache, free_image_cache, clear_image_cache)
269 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
270 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
271 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
272 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
273 (init_image_func_pointer, image_load_quartz2d)
274 (struct ct_color, init_color_table, free_color_table)
275 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
276 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
277 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
278 (x_disable_image, x_build_heuristic_mask)
279 (XBM support, XPM support, PBM support, PNG support, JPEG support)
280 (TIFF support, GIF support, Ghostscript support): Merge with image
281 code from xfns.c and macfns.c into image.c.
282 (syms_of_xfns): Move image related symbols to image.c.
283 (init_external_image_libraries, init_xfns): Remove; initialization
284 moved to init_image in image.c.
285
286 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
287 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
288 (x_reference_bitmap, x_create_bitmap_from_data)
289 (x_create_bitmap_from_file, x_destroy_bitmap)
290 (x_destroy_all_bitmaps, x_create_bitmap_mask)
291 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
292 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
293 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
294 (define_image_type, lookup_image_type, valid_image_p)
295 (image_error, enum image_value_type, struct image_keyword)
296 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
297 (make_image, free_image, prepare_image_for_display, image_ascent)
298 (four_corners_best, image_background, image_background_transparent)
299 (x_clear_image_1, x_clear_image, x_alloc_image_color)
300 (make_image_cache, free_image_cache, clear_image_cache)
301 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
302 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
303 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
304 (struct ct_color, init_color_table, free_color_table)
305 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
306 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
307 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
308 (x_disable_image, x_build_heuristic_mask)
309 (XBM support, XPM support, PBM support, PNG support, JPEG support)
310 (TIFF support, GIF support, Ghostscript support): Merge with image
311 code from xfns.c and macfns.c into image.c.
312 (syms_of_xfns): Move image related symbols to image.c.
313 (init_external_image_libraries, init_xfns): Remove; initialization
314 moved to init_image in image.c.
315
316 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
317 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
318 (x_reference_bitmap, x_create_bitmap_from_data)
319 (x_create_bitmap_from_file, x_destroy_bitmap)
320 (x_destroy_all_bitmaps, x_create_bitmap_mask)
321 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
322 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
323 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
324 (define_image_type, lookup_image_type, valid_image_p)
325 (image_error, enum image_value_type, struct image_keyword)
326 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
327 (make_image, free_image, prepare_image_for_display, image_ascent)
328 (four_corners_best, image_background, image_background_transparent)
329 (x_clear_image_1, x_clear_image, x_alloc_image_color)
330 (make_image_cache, free_image_cache, clear_image_cache)
331 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
332 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
333 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
334 (struct ct_color, init_color_table, free_color_table)
335 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
336 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
337 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
338 (x_disable_image, x_build_heuristic_mask)
339 (XBM support, XPM support, PBM support, PNG support, JPEG support)
340 (TIFF support, GIF support, Ghostscript support): Merge with
341 w32fns.c and macfns.c image code into image.c.
342 (syms_of_xfns): Move image related symbols to image.c.
343 (init_xfns): Remove; initialization moved to init_image in image.c.
344
345 * lisp.h (syms_of_image, init_image): Add protoypes.
346 (init_xfns): Remove prototype.
347
348 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
349 (x_reference_bitmap, x_create_bitmap_from_data)
350 (x_create_bitmap_from_file, x_destroy_bitmap)
351 (x_create_bitmap_mask): Move prototypes from dispextern.h.
352 (gamma_correct) [MAC_OS]: Add prototype.
353
354 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
355 (x_reference_bitmap, x_create_bitmap_from_data)
356 (x_create_bitmap_from_file, x_destroy_bitmap)
357 (x_create_bitmap_mask): Move prototypes to dispextern.h.
358
359 2004-03-09 Kenichi Handa <handa@etlken2>
360
361 * coding.c (decode_coding_emacs_mule): Handle insufficent source
362 correctly.
363
364 2004-03-04 Richard M. Stallman <rms@gnu.org>
365
366 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
367
368 * window.c (Fdisplay_buffer): Doc fix.
369
370 * buffer.c (Fpop_to_buffer): Doc fix.
371
372 2004-03-03 Kim F. Storm <storm@cua.dk>
373
374 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
375
376 2004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
377
378 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
379
380 2004-03-02 Richard M. Stallman <rms@gnu.org>
381
382 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
383
384 2004-03-02 Kenichi Handa <handa@m17n.org>
385
386 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
387
388 2004-03-02 Kim F. Storm <storm@cua.dk>
389
390 * window.h (struct window): New member overlay_arrow_bitmap.
391
392 * window.c (make_window): Initialize overlay_arrow_bitmap.
393
394 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
395 implement and integrate multiple overlay arrows with redisplay.
396 (syms_of_xdisp): DEFVAR_LISP and initialize it.
397 (last_arrow_position, last_arrow_string): Replace by properties.
398 (Qlast_arrow_position, Qlast_arrow_string)
399 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
400 (syms_of_xdisp): Intern and staticpro them.
401 (overlay_arrow_string_or_property, update_overlay_arrows)
402 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
403 (overlay_arrow_at_row): New functions for multiple overlay arrows.
404 (redisplay_internal): Use them instead of directly accessing
405 Voverlay_arrow_position etc. for multiple overlay arrows.
406 (mark_window_display_accurate): Use update_overlay_arrows.
407 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
408 (try_window_id): Use overlay_arrows_changed_p.
409 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
410 (display_line): Use overlay_arrow_at_row to check multiple
411 overlay arrows, and get relevant overlay-arrow-string and
412 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
413 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
414 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
415
416 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
417 (update_window_fringes): Remove unused code.
418
419 2004-03-01 Jason Rumney <jasonr@gnu.org>
420
421 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
422
423 2004-03-01 Juanma Barranquero <lektu@terra.es>
424
425 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
426
427 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
428
429 2004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
430
431 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
432 how many colors can be displayed.
433
434 2004-03-01 Kenichi Handa <handa@m17n.org>
435
436 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
437 correctly.
438
439 2004-02-28 Kim F. Storm <storm@cua.dk>
440
441 * dispnew.c (update_window): Update header line also if there are
442 no other changes in window (move code after set_cursor label).
443
444 * lisp.h (mark_window_display_accurate): Remove prototype.
445
446 * window.c (window_loop, Fforce_window_update): Force mode line
447 updates by setting prevent_redisplay_optimizations_p and
448 update_mode_lines.
449
450 2004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
451
452 * xfns.c (x_window): Fix indentation.
453
454 * xterm.c (x_calc_absolute_position): Call x_real_positions
455 to get WM window sizes and use those to calculate position.
456 (x_set_offset): Remove code commented out.
457
458 2004-02-28 Miles Bader <miles@gnu.org>
459
460 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
461
462 2004-02-28 Kim F. Storm <storm@cua.dk>
463
464 * keyboard.c (kbd_buffer_store_event_hold): New function to store
465 an event into kbd fifo, but with special handling of quit event;
466 a quit event is saved for later, and further events are discarded
467 until the saved quit event has been processed.
468 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
469 (gen_help_event): Store help event in kbd fifo.
470 (NREAD_INPUT_EVENTS): Remove.
471 (read_avail_input): Adapt to new read_socket_hook interface.
472 Remove allocation and initialization of local input_event buffer,
473 as read_socket_hook stores events directly in fifo. Allocate and
474 initialize local hold_quit event to handle postponed quit event
475 (and store it if set by kbd_buffer_store_event_hold).
476
477 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
478 (gen_help_event): Fix prototype.
479
480 * macterm.c (XTread_socket): Remove bufp_r and
481 numcharsp args. Add hold_quit arg.
482 Rework to use just one, local, inev input_event. Store inev
483 directly in fifo using kbd_buffer_store_event_hold.
484
485 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
486 (read_input_waiting): Adapt to new read_socket_hook interface.
487 Remove allocation and initialization of local input_event buffer,
488 as read_socket_hook stores events directly in fifo. Allocate and
489 initialize local hold_quit event to handle postponed quit event
490 (and store it if set by kbd_buffer_store_event_hold).
491
492 * term.c (read_socket_hook): Fix arg list.
493
494 * termhooks.h (read_socket_hook): Fix prototype.
495
496 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
497 numcharsp args. Add hold_quit arg.
498 Rework to use just one, local, inev input_event. Store inev
499 directly in fifo using kbd_buffer_store_event_hold.
500
501 * w32inevt.h (w32_console_mouse_position): Fix prototype.
502
503 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
504 Add hold_quit arg. Rework to use just one, local, inev
505 input_event. Store inev directly in fifo using
506 kbd_buffer_store_event_hold. Update count in one place.
507 Postpone call to gen_help_event until inev is stored; use new
508 local do_help for this.
509 Remove local emacs_event in handing of ButtonPress event; just use
510 inev instead (so no reason to copy it later).
511
512 * xsmfns.c (x_session_check_input): Remove numchars arg.
513
514 * xterm.c (x_focus_changed, x_detect_focus_change):
515 Remove numchars arg. Always store event into bufp arg.
516 Return nothing. Callers changed accordingly.
517 (glyph_rect): Simplify.
518 (STORE_KEYSYM_FOR_DEBUG): New macro.
519 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
520 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
521 (current_hold_quit) [USE_GTK]: Add.
522 (event_handler_gdk): Adapt to new handle_one_xevent.
523 (handle_one_xevent): Remove bufp_r and numcharsp args.
524 Add hold_quit arg. Rework to use just one, local, inev
525 input_event. Store inev directly in fifo using
526 kbd_buffer_store_event_hold. Update count in one place.
527 Postpone call to gen_help_event until inev is stored; use new
528 local do_help for this.
529 Simplify handling of keysyms (consolidate common code). Fix bug
530 where count was updated with nchars instead of nbytes.
531 Remove local emacs_event in handing of ButtonPress event; just use
532 inev instead (so no reason to copy it later).
533 Remove `out' label. Rename label `ret' to `done'; add various
534 `goto done' to clarify code flow in deeply nested blocks.
535 (x_dispatch_event): Simplify as handle_one_xevent now calls
536 kbd_buffer_store_event itself.
537 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
538 arg. Call handle_one_xevent with new arglist. Store event from
539 x_session_check_input in fifo.
540 [USE_GTK]: Setup current_hold_quit.
541 Decrement handling_signal before unblocking input.
542 (x_initialize) [USE_GTK]: Initialize current_count.
543
544 * xterm.h (x_session_check_input): Fix prototype.
545
546 2004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
547
548 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
549
550 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
551 macgui.h).
552
553 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
554
555 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
556 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
557 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
558 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
559 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
560 (Bitmap): Remove typedef.
561 (Pixmap): Change int to GWorldPtr.
562
563 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
564
565 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
566 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
567 New #define to extract 16-bit depth color components from unsigned
568 long representation.
569 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
570 colors used for masks.
571 (struct mac_display_info): Add color_p. Remove n_cbits.
572
573 * macfns.c: Include sys/types.h and sys/stat.h.
574 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
575 Include QuickTime/QuickTime.h.
576 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
577 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
578 functions defined in macterm.c.
579 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
580 (ZPixmap): New #define for compatibility with xfns.c.
581 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
582 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
583 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
584 New functions.
585 (four_corners_best, x_create_x_image_and_pixmap)
586 (x_destroy_x_image, unwind_create_frame, x_disable_image)
587 (x_edge_detection, init_color_table, colors_in_color_table)
588 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
589 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
590 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
591 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
592 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
593 long mixup.
594 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
595 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
596 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
597 (x_set_cursor_type, Fxw_color_values, valid_image_p)
598 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
599 (x_alloc_image_color, clear_image_cache, lookup_image)
600 (x_find_image_file, xbm_read_bitmap_file_data)
601 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
602 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
603 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
604 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
605 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
606 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
607 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
608 #if 0.
609 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
610 #if 0. Free white_relief.gc and black_relief.gc.
611 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
612 New functions (from xfns.c).
613 (Fx_create_frame): Record unwind_create_frame.
614 (Fxw_display_color_p): Use dpyinfo->color_p.
615 (Fx_display_grayscale_p, Fx_display_planes): Don't use
616 dpyinfo->n_cbits.
617 (Fx_display_color_cells): Use dpyinfo->n_planes;
618 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
619 (Qheuristic, cross_disabled_images, emboss_matrix)
620 (laplace_matrix): New variables (from xfns.c).
621 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
622 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
623 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
624 (image_background_transparent): New function (from xfns.c).
625 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
626 (image_load_quicktime): Add declaration.
627 [MAC_OSX] (image_load_quartz2d): Likewise.
628 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
629 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
630 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
631 (xbm_load_image_from_file, x_laplace_read_row)
632 (x_laplace_write_row, pbm_read_file): Remove functions.
633 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
634 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
635 (colors_in_color_table): Sync with xfns.c (although not used).
636 (lookup_rgb_color): Don't lookup color table. Just do gamma
637 correction.
638 (COLOR_INTENSITY): New #define (from xfns.c).
639 (x_disable_image): New function (from xfns.c).
640 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
641 (x_build_heuristic_mask): Sync with xfns.c.
642 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
643 (HAVE_PBM): Remove #ifdef.
644 (pbm_load): Sync with xfns.c. Set img->width and img->height
645 before IMAGE_BACKGROUND.
646 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
647 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
648 Don't enclose with #if HAVE_PNG.
649 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
650 symbol _CGImageCreateWithPNGDataProvider is defined.
651 Otherwise use image_load_quicktime.
652 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
653 [HAVE_PNG] (png_load): Sync with xfns.c.
654 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
655 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
656 HAVE_JPEG.
657 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
658 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
659 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
660 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
661 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
662 (tiff_image_p, tiff_load): Don't enclose declarations with #if
663 HAVE_TIFF.
664 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
665 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
666 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
667 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
668 New functions (from xfns.c).
669 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
670 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
671 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
672 Don't enclose with #if HAVE_GIF.
673 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
674 animated gif. Otherwise use image_load_quicktime.
675 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
676 gif_DrawText to avoid conflict with QuickdrawText.h.
677 [HAVE_GIF] (gif_load): Sync with xfns.c.
678 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
679 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
680 Ghostscript is not supported yet).
681 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
682 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
683 cross_disabled_images (from xfns.c). Remove #if 0 for supported
684 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
685 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
686 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
687 HAVE_PNG. Call EnterMovies to support animated gifs.
688 Call init_image_func_pointer to bind a symbol
689 _CGImageCreateWithPNGDataProvider if it is defined.
690
691 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
692 (x_draw_bar_cursor): Sync declaration with xterm.c.
693 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
694 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
695 graphics).
696 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
697 (mac_draw_line_to_pixmap, XCreatePixmap)
698 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
699 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
700 New functions.
701 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
702 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
703 Cast bits to char *.
704 (reflect_byte): New function (from w32fns.c).
705 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
706 due to byte alignment.
707 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
708 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
709 (XSetForeground): Remove static (now used in macfns.c).
710 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
711 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
712 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
713 (x_draw_glyph_string_box, x_draw_image_foreground)
714 (x_draw_image_foreground_1, x_draw_image_glyph_string)
715 (x_draw_stretch_glyph_string, x_draw_glyph_string)
716 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
717 Sync with xterm.c.
718 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
719 than the xterm.c version when a strictly horizontal or vertical
720 line is drawn.
721 (XTset_terminal_window): Add static.
722 (x_make_frame_visible): Add UNBLOCK_INPUT.
723 (x_free_frame_resources): New funcion (from xterm.c).
724 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
725 occurs in tool bar area.
726 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
727 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
728 Initialize image cache.
729 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
730 Enclose unused functions with #if 0.
731 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
732 (decode_mac_font_name): New function to apply code conversions
733 from a mac font name to an XLFD font name according to its script code.
734 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
735 font name to a mac font name according to REGISTRY and ENCODING fields.
736 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
737 whose name starts with `.'.
738 (init_font_name_table): Use decode_mac_font_name. Add both
739 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
740 of a font is smJapanese.
741 (mac_do_list_fonts): New function to list fonts that match a given
742 pattern.
743 (x_list_fonts, XLoadQueryFont): Use it.
744 (XLoadQueryFont): Set rbearing field for each variable width
745 character to avoid needless redraw.
746 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
747
748 2004-02-26 Kim F. Storm <storm@cua.dk>
749
750 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
751 as read_socket_hook handler on X aborts if buffer is too small
752 and W32 handler doesn't always check buffer limit.
753
754 * xdisp.c (handle_single_display_prop): Handle left-fringe and
755 right-fringe similar to a display margin image. Specifically,
756 the characters having the fringe prop are no longer shown, and
757 we use IT_IMAGE/next_element_from_image with image_id = -1 to
758 do this. Set fringe bitmap face_id in it->face_id.
759 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
760 still realize it->face (i.e. the fringe bitmap face).
761
762 2004-02-25 Miles Bader <miles@gnu.org>
763
764 * xdisp.c (check_it): Check string/string_pos consistency.
765 (init_iterator): Initialize string-related fields properly.
766
767 2004-02-11 Miles Bader <miles@gnu.org>
768
769 * xdisp.c (produce_image_glyph): Force negative descents to zero.
770
771 2004-02-10 Miles Bader <miles@gnu.org>
772
773 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
774 BLOCK_INPUT can be nested, so it doesn't make much sense.
775
776 2004-02-24 Michael Mauger <mmaug@yahoo.com>
777
778 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
779 (xbm_read_bitmap_data): Use unsigned char for image data.
780
781 2004-02-23 Luc Teirlinck <teirllm@auburn.edu>
782
783 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
784
785 2004-02-22 Jason Rumney <jasonr@gnu.org>
786
787 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
788 correctly over other bitmaps.
789
790 2004-02-21 Eli Zaretskii <eliz@gnu.org>
791
792 * emacs.c (USAGE1): Split into two halves.
793 (USAGE2): Second half of the old USAGE1.
794 (USAGE3): Rename from USAGE2.
795 (USAGE4): Rename from USAGE3.
796
797 2004-02-21 Juri Linkov <juri@jurta.org>
798
799 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
800 Fix --multibyte. Move --help, --version to USAGE2. Add alias
801 --file. Fix -f, -l. Sort options. Untabify.
802 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
803
804 2004-02-19 Luc Teirlinck <teirllm@auburn.edu>
805
806 * category.c (Fdefine_category, Fcategory_docstring)
807 (Fget_unused_category, Fset_category_table)
808 (Fcategory_set_mnemonics): Doc fixes.
809
810 2004-02-20 Kim F. Storm <storm@cua.dk>
811
812 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
813 The following changes are relative to the 2004-01-21 revision.
814 (NREAD_INPUT_EVENTS): Define as max number of input events to read
815 in one call to read_socket_hook. Value is 8.
816 (read_avail_input): Separate and rework handling of read_socket_hook
817 and non-read_socket_hook cases. Use smaller input_event buffer
818 in read_socket_hook case, and repeat if full buffer is read.
819 Use new local variable 'discard' to skip input after C-g.
820 In non-read_socket_hook case, just use a single input_event, and
821 call kbd_buffer_store_event on the fly for each character.
822
823 2004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
824
825 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
826 Remove unused `gu' alternative.
827
828 2004-02-19 Andreas Schwab <schwab@suse.de>
829
830 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
831 warning.
832
833 2004-02-18 Kim F. Storm <storm@cua.dk>
834
835 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
836 Fix last change.
837
838 2004-02-17 Kim F. Storm <storm@cua.dk>
839
840 * xdisp.c (fast_find_position): Fix return value of new version;
841 it was inverted compared to the 21.1 version.
842 (get_window_cursor_type): Don't look at glyph if NULL.
843 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
844
845 * keyboard.c: Rework previous change; it didn't consider that the
846 buf array was allocated on the stack.
847 (prev_read): Remove variable.
848 (read_avail_input_buf): New static event buffer array.
849 (in_read_avail_input): New static variable to handle re-entrancy.
850 (read_avail_input): Change buf to pinter to read_avail_input_buf.
851 Use in_read_avail_input to handle re-entrance; when re-entered,
852 fully initialize and use tmp_buf array instead of read_avail_input_buf.
853 Do not initialize read_avail_input_buf in full here; instead assume it
854 is always cleared on entry. To ensure that, we clear (just) the
855 entries that were used before we return.
856 (init_keyboard): Initialize read_avail_input_buf here.
857
858 2004-02-16 Jesper Harder <harder@ifa.au.dk> (tiny change)
859
860 * cmds.c (Fend_of_line): Doc fix.
861
862 2004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
863
864 * keyboard.c (prev_read): New static variable.
865 (read_avail_input): Use it to zero out only those slots in buf[]
866 that were used last time we were called.
867
868 2004-02-16 Eli Zaretskii <eliz@gnu.org>
869
870 * Makefile.in (obj): Move fringe.o from here...
871 (XOBJ, MAC_OBJ): ...to here.
872
873 2004-02-16 Stephen Eglen <stephen@gnu.org>
874
875 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
876
877 2004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
878
879 * data.c (Fbyteorder):
880 * fringe.c (Fdefine_fringe_bitmap):
881 * xdisp.c (handle_single_display_prop):
882 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
883
884 2004-02-16 Jason Rumney <jasonr@gnu.org>
885
886 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
887
888 2004-02-15 Steven Tamm <steventamm@mac.com>
889
890 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
891 controlling emulation of a three button mouse with option and
892 command keys.
893 (Qreverse, mac_get_enumlated_btn): Handle the emulation
894 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
895
896 2004-02-15 Kim F. Storm <storm@cua.dk>
897
898 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
899
900 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
901 Perform byte-swapping.
902
903 2004-02-14 Kim F. Storm <storm@cua.dk>
904
905 * dispextern.h (struct draw_fringe_bitmap_params): Change member
906 bits from char to short to facilitate wider bitmaps.
907 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
908 member.
909
910 * fringe.c (struct fringe_bitmap): Change member bits from char to
911 short to facilitate 16 bits wide bitmaps. Modify all standard
912 bitmaps accordingly.
913 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
914 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
915 (draw_fringe_bitmap): Ditto.
916 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
917 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
918 handle up to 16 bits wide bitmaps.
919 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
920 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
921
922 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
923 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
924 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
925
926 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
927 so it is no longer necessary to expand them here.
928
929 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
930
931 2004-02-12 Kim F. Storm <storm@cua.dk>
932
933 * window.c (Fwindow_fringes): Doc fix.
934
935 2004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
936
937 * xselect.c (x_get_foreign_selection): Add new optional parameter
938 time_stamp.
939 (Fx_get_selection_internal): Ditto, pass time_stamp to
940 x_get_foreign_selection.
941
942 * data.c (Fbyteorder): New function.
943
944 2004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
945
946 * atimer.c: Move include stdio.h to same place as in other files.
947
948 * region-cache.c: Ditto.
949
950 * sysdep.c: Ditto.
951
952 * xfaces.c: Ditto.
953
954 2004-02-09 Sam Steingold <sds@gnu.org>
955
956 * w32term.c (w32_draw_fringe_bitmap): Fixed a typo in the last patch.
957
958 2004-02-09 Kim F. Storm <storm@cua.dk>
959
960 * fringe.c: New file. Move original fringe related declarations
961 and code from dispextern.h and xdisp.c here.
962 Rework code to support user defined fringe bitmaps, redefining
963 standard bitmaps, ability to overlay user defined bitmap with
964 overlay arrow bitmap, and add faces to bitmaps.
965 (Voverflow_newline_into_fringe): Declare here.
966 (enum fringe_bitmap_align): New enum.
967 (..._bits): All bitmaps are now defined without bitswapping; that
968 is now done in init_fringe_once (if necessary).
969 (standard_bitmaps): New array with specifications for the
970 standard fringe bitmaps.
971 (fringe_faces): New array.
972 (valid_fringe_bitmap_id_p): New function.
973 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
974 (draw_fringe_bitmap): New function which draws fringe bitmap,
975 possibly overlaying bitmap with cursor in right fringe or the
976 overlay arrow in the left fringe.
977 (update_window_fringes): Do not handle overlay arrow here.
978 Compare and copy fringe bitmap faces.
979 (init_fringe_bitmap): New function.
980 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
981 define and destroy user defined fringe bitmaps.
982 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
983 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
984 (syms_of_fringe): New function. Defsubr new DEFUNs.
985 DEFVAR_LISP Voverflow_newline_into_fringe.
986 (init_fringe_once, init_fringe): New functions.
987 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
988
989 * Makefile.in (obj): Add fringe.o.
990 (fringe.o): New dependencies.
991
992 * dispextern.h (FRINGE_ID_BITS): New definition for number of
993 bits allocated to hold a fringe number. Increase number of bits
994 from 4 to 8 to allow user defined fringe bitmaps.
995 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
996 left_user_fringe_face_id, right_user_fringe_bitmap,
997 right_user_fringe_face_id.
998 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
999 Move to new file fringe.c.
1000 (MAX_FRINGE_BITMAPS): Define here.
1001 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
1002 and overlay_p. Change member which to int.
1003 (struct redisplay_interface): New members define_fringe_bitmap
1004 and destroy_fringe_bitmap.
1005 (valid_fringe_bitmap_id_p): Add prototype.
1006 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
1007
1008 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
1009 arrows.
1010 (update_frame): Do flush_display if force_flush_display_p to
1011 ensure display (specifically fringes) are updated in a timely
1012 manner when resizing the frame by dragging the mouse.
1013 (update_window_line): Update row if overlay arrow changed.
1014 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
1015 or overlay arrow changed.
1016
1017 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
1018 syms_of_fringe, and init_fringe.
1019
1020 * frame.h (struct frame): New member force_flush_display_p.
1021
1022 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
1023 Add prototypes.
1024
1025 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
1026 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
1027 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
1028 Use cursor color for displaying cursor in fringe.
1029 (x_redisplay_interface): Add null handlers for
1030 define_fringe_bitmap and destroy_fringe_bitmap functions.
1031
1032 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
1033 xterm.c to handle overlayed fringe bitmaps and to use cursor color
1034 for displaying cursor in fringe.
1035 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
1036 specific functions to define and destroy fringe bitmaps in fringe_bmp.
1037 (w32_redisplay_interface): Add them to redisplay_interface.
1038 (w32_term_init): Call w32_init_fringe instead of explicitly
1039 defining fringe bitmaps in fringe_bmp array.
1040 (x_delete_display): Call w32_reset_fringes instead of explicitly
1041 destroying fringe bitmaps in fringe_bmp array.
1042
1043 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
1044 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
1045 (continued_bits, continuation_bits, ov_bits, first_line_bits)
1046 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
1047 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
1048 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
1049 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
1050 Move fringe handling vars and code to new file fringe.c.
1051 (handle_display_prop): Handle left-fringe and right-fringe
1052 display properties; store user fringe bitmaps in iterator.
1053 (move_it_in_display_line_to): Handle cursor in fringe at eob.
1054 (clear_garbaged_frames): Set force_flush_display_p if resized.
1055 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
1056 (display_line): Handle cursor in fringe at eob.
1057 (display_line): Set row user fringe bitmaps from iterator.
1058
1059 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
1060 Use cursor color for displaying cursor in fringe.
1061 (x_redisplay_interface): Add null handlers for
1062 define_fringe_bitmap and destroy_fringe_bitmap functions.
1063
1064 2004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1065
1066 * macfns.c (Fx_change_window_property): Make doc string and
1067 parameters same as for X version.
1068
1069 * w32fns.c (Fx_change_window_property): Ditto.
1070
1071 2004-02-07 Kim F. Storm <storm@cua.dk>
1072
1073 * xdisp.c (hscroll_window_tree): Position cursor near to right
1074 margin in hscrolled window when jumping to end of line (rather
1075 than centering cursor).
1076
1077 * process.c (wait_reading_process_input): Don't do adaptive read
1078 buffering if waiting for a specific process.
1079
1080 2004-02-05 Luc Teirlinck <teirllm@auburn.edu>
1081
1082 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
1083 (Fread_minibuffer, Feval_minibuffer)
1084 (Fread_string, Fread_no_blanks_input)
1085 (Fcompleting_read): Doc fixes.
1086 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
1087 completion-regexp-list. Define Qcase_fold_search and staticpro it.
1088 (read_minibuf): Fix initial comment.
1089 (Ftry_completion, Fall_completions, Ftest_completion): Bind
1090 case-fold-serach to the value of completion-ignore-case when
1091 checking completion-regexp-list.
1092 (Fdisplay_completion_list): Make it handle arguments that are
1093 symbols. Doc fix.
1094
1095 2004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1096
1097 * xterm.h: Add declaration of free_frame_menubar.
1098
1099 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
1100 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
1101 (Fx_change_window_property): Add declaration of parameters type and
1102 format. Remove unused variable cons.
1103
1104 * xselect.c: Include stdio,h.
1105
1106 2004-02-05 Kenichi Handa <handa@m17n.org>
1107
1108 * fns.c (Fset_char_table_range): Fix previous change.
1109
1110 * buffer.c (Fset_buffer_multibyte): Fix docstring.
1111
1112 2004-02-04 Luc Teirlinck <teirllm@auburn.edu>
1113
1114 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
1115
1116 2004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
1117
1118 * keymap.c (Vmouse_events): Rename from Vmenu_events.
1119 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
1120
1121 2004-02-04 Kenichi Handa <handa@m17n.org>
1122
1123 * fns.c (Fset_char_table_range): Handle charsets ascii,
1124 eight-bit-control, and eight-bit-graphic correctly.
1125
1126 2004-02-03 Jason Rumney <jasonr@gnu.org>
1127
1128 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
1129
1130 * w32fns.c (x_to_w32_font): Likewise.
1131
1132 2004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1133
1134 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
1135 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
1136
1137 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
1138 ClientMessages.
1139
1140 * xselect.c: Include termhooks.h and X11/Xproto.h
1141 (x_check_property_data, x_fill_property_data)
1142 (x_property_data_to_lisp, mouse_position_for_drop)
1143 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
1144 (Fx_send_client_event): Move here from xfns.c.
1145 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
1146
1147 * xfns.c (x-send-client-message): Move to xselect.c
1148 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
1149 OUTER_P.
1150 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
1151 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
1152 if vector_ret_p is true.
1153 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
1154
1155 2004-02-02 Eli Zaretskii <eliz@gnu.org>
1156
1157 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
1158 basename of FILE relative to it, not FILE itself.
1159
1160 2004-02-02 Kenichi Handa <handa@m17n.org>
1161
1162 * coding.c (coding_restore_composition): Check invalid
1163 composition data more rigidly.
1164
1165 2004-01-30 Luc Teirlinck <teirllm@auburn.edu>
1166
1167 * fileio.c (Fread_file_name_internal): Correctly handle the case
1168 where insert-default-directory is nil.
1169 (Fread_file_name): Always return an empty string if the user exits
1170 with an empty minibuffer. Adapt the docstring accordingly.
1171 (syms_of_fileio): Adapt the docstring of insert-default-directory
1172 to the change in Fread_file_name.
1173
1174 2004-01-29 Eli Zaretskii <eliz@gnu.org>
1175
1176 * alloca.c [!alloca]: Fix the prototype for xfree.
1177
1178 2004-01-29 Kenichi Handa <handa@m17n.org>
1179
1180 * fns.c (string_char_to_byte): Optimize for ASCII only string.
1181 (string_byte_to_char): Likewise.
1182
1183 2004-01-28 Peter Runestig <peter@runestig.com>
1184
1185 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
1186
1187 2004-01-27 Steven Tamm <steventamm@mac.com>
1188
1189 * unexmacosx.c (unexec_copy): Do not copy more than was
1190 requested to prevent overwriting during unexec.
1191
1192 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1193
1194 * process.c (sigchld_handler): Add comment about not calling malloc.
1195
1196 * process.h: Add extern to synch_process_termsig.
1197
1198 2004-01-27 Steven Tamm <steventamm@mac.com>
1199
1200 * macterm.c (make_mac_frame, make_mac_terminal_frame):
1201 Move setting of scroll bars from make_mac_frame to
1202 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
1203
1204 2004-01-26 Richard M. Stallman <rms@gnu.org>
1205
1206 * search.c (Freplace_match): Handle nonexistent
1207 back-references properly.
1208
1209 2004-01-03 Richard M. Stallman <rms@gnu.org>
1210
1211 * window.c (decode_any_window): New function.
1212 (Fwindow_height, Fwindow_width, Fwindow_edges)
1213 (Fwindow_pixel_edges, Fwindow_inside_edges)
1214 (Fwindow_inside_pixel_edges): Use decode_any_window.
1215
1216 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1217
1218 * process.h: synch_process_termsig new variable.
1219
1220 * callproc.c: Define synch_process_termsig.
1221 (Fcall_process): Initiate synch_process_termsig to zero and
1222 check if non-zero and get signal name after subprocess has ended.
1223
1224 * process.c (sigchld_handler): Set synch_process_termsig
1225 if terminated by a signal. synch_process_death setting removed.
1226
1227 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
1228
1229 2004-01-26 Andreas Schwab <schwab@suse.de>
1230
1231 * print.c (print_preprocess): Declare size as EMACS_INT to not
1232 lose bits.
1233 (print_object): Likewise.
1234 * alloc.c (Fpurecopy): Likewise.
1235
1236 2004-01-25 Luc Teirlinck <teirllm@auburn.edu>
1237
1238 * window.c (Fwindow_minibuffer_p): Doc fix.
1239
1240 2004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
1241
1242 * editfns.c (Fformat): Make both passes accept the same set of flags.
1243
1244 2004-01-23 Kenichi Handa <handa@m17n.org>
1245
1246 * fns.c (Fmd5): If OBJECT is a buffer different from the current
1247 one, set buffer to OBJECT temporarily.
1248
1249 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
1250
1251 * keyboard.c (kbd_buffer_gcpro): Remove.
1252 (kbd_buffer_store_event, clear_event, Fdiscard_input)
1253 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
1254 Don't initialize and/or maintain the variable any more. It was made
1255 redundant by my commit of 2003-06-15.
1256
1257 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
1258
1259 2004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1260
1261 * lisp.h: Add undef DECL_ALIGN.
1262
1263 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
1264
1265 * process.c (wait_reading_process_input) [SYNC_INPUT]:
1266 Check interrupt_input_pending explicitly.
1267
1268 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
1269
1270 * keyboard.c (handle_async_input): New fun,
1271 extracted from input_available_signal.
1272 (input_available_signal, reinvoke_input_signal): Use it.
1273
1274 2004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
1275
1276 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
1277
1278 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
1279 manipulation macros for when tags are in the lower bits.
1280 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
1281 (DECL_ALIGN): New macro.
1282 (DEFUN): Use it.
1283
1284 * lisp.h [ENABLE_CHECKING]: Don't force union type.
1285
1286 * s/darwin.h (__attribute__): Remove outdated workaround.
1287
1288 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
1289
1290 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
1291 Don't check range of malloc address.
1292 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
1293
1294 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
1295
1296 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
1297
1298 2004-01-19 Kenichi Handa <handa@m17n.org>
1299
1300 * fontset.c (fontset_font_pattern): Fix previous change.
1301
1302 2004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
1303
1304 * xdisp.c (Voverflow_newline_into_fringe)
1305 (move_it_in_display_line_to, redisplay_internal)
1306 (update_window_fringes, redisplay_window, display_line, window):
1307 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
1308 that it compiles without a window-system.
1309 * dispnew.c (direct_output_for_insert, update_window): Likewise.
1310
1311 2004-01-16 Kim F. Storm <storm@cua.dk>
1312
1313 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
1314
1315 * buffer.c (init_buffer_once): Set buffer_defaults and
1316 buffer_local_flags for indicate_buffer_boundaries.
1317 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
1318 default- variable for it.
1319
1320 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
1321 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
1322 New members exact_window_width_line_p and cursor_in_fringe_p for
1323 overflowing newlines into right fringe.
1324 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
1325 and indicate_bottom_line_p for buffer boundaries and scrolling.
1326 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
1327 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
1328 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
1329 and HOLLOW_SQUARE_BITMAP.
1330 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
1331 Add prototypes.
1332
1333 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
1334 instead of related indicator fields.
1335 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
1336 (direct_output_for_insert): Handle exact width lines like
1337 contined lines. Call update_window_fringes.
1338 (update_window): Call update_window_fringes.
1339 (scrolling_window): Don't skip desired rows with changed bitmaps.
1340 Check if fringe bitmaps changes when assigning scrolled rows.
1341
1342 * xdisp.c (Voverflow_newline_into_fringe): New variable.
1343 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
1344 (move_it_in_display_line_to): Overflow newline into fringe for
1345 rows that are exactly as wide as the window.
1346 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
1347 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
1348 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
1349 (fringe_bitmaps): Add new bitmaps.
1350 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
1351 Select proper bitmap for cursor in fringe when appropriate.
1352 Handle alignment of bitmap to top or bottom of row.
1353 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
1354 done by update_window_fringes.
1355 (update_window_fringes, draw_window_fringes): New functions.
1356 (redisplay_internal): Call update_window_fringes in case only
1357 cursor row is updated.
1358 (redisplay_window): Call update_window_fringes.
1359 Explicitly call draw_window_fringes if redisplay was done using
1360 the current matrix or the overlay arrow is in the window.
1361 (try_window_reusing_current_matrix): Mark scrolled rows for
1362 fringe update (to update buffer-boundaries / scrolling icons).
1363 (find_last_unchanged_at_beg_row): Handle exact width lines line
1364 continued lines.
1365 (display_line): Overflow newline into fringe for rows that are
1366 exactly as wide as the window. Don't append space for newline
1367 in this case.
1368 (notice_overwritten_cursor): Explicitly clear cursor bitmap
1369 in fringe as if it had been overwritten.
1370 (erase_phys_cursor): Erase cursor bitmap in fringe.
1371 (syms_of_xdisp): Mark show-trailing-whitespace and
1372 void-text-area-pointer as user options.
1373 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
1374
1375 * xterm.c (x_update_window_end): Call draw_window_fringes.
1376 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
1377 in row instead of actually drawing fringe bitmaps.
1378 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
1379 (x_draw_window_cursor): Draw cursor in fringe.
1380
1381 * w32term.c (x_update_window_end): Call draw_window_fringes.
1382 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
1383 in row instead of actually drawing fringe bitmaps.
1384 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
1385 (w32_draw_window_cursor): Draw cursor in fringe.
1386
1387 * macterm.c (x_update_window_end): Call draw_window_fringes.
1388 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
1389 in row instead of actually drawing fringe bitmaps.
1390 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
1391 (mac_draw_window_cursor): Draw cursor in fringe.
1392
1393 2004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1394
1395 * xterm.c (handle_one_xevent): Don't handle characters that are part
1396 of an old style (XLookupString) compose sequence.
1397
1398 2004-01-15 Kenichi Handa <handa@m17n.org>
1399
1400 * search.c (Freplace_match): Use make_multibyte_string or
1401 make_unibyte_string according to the buffer multibyteness.
1402
1403 2004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
1404
1405 * alloc.c (struct interval_block, struct string_block)
1406 (struct symbol_block, struct marker_block, live_string_p)
1407 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
1408 Better preserve alignment for objects in blocks.
1409 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
1410
1411 * lread.c (defvar_per_buffer): Remove dead declaration.
1412
1413 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
1414 space size.
1415
1416 2004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1417
1418 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
1419 if a key press should pop down. Only pop down if a key is pressed
1420 outside the menu/dialog.
1421 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
1422 popup_get_selection.
1423 (create_and_show_dialog): Pass 1 for down_on_keypress to
1424 popup_get_selection.
1425
1426 2004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1427
1428 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
1429 BLOCK/UNBLOCK_INPUT.
1430
1431 2004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1432
1433 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
1434 specified.
1435
1436 2004-01-08 Kenichi Handa <handa@m17n.org>
1437
1438 * editfns.c (Fformat): Fix '&' to '&&'.
1439
1440 2004-01-08 Andreas Schwab <schwab@suse.de>
1441
1442 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
1443 size if PSEUDOVECTOR_FLAG is set.
1444
1445 2004-01-07 Kenichi Handa <handa@m17n.org>
1446
1447 * charset.c (Fdeclare_equiv_charset): Fix docstring.
1448
1449 * fontset.c (fontset_ref_via_base): Fix previous change.
1450
1451 2004-01-07 Kim F. Storm <storm@cua.dk>
1452
1453 * process.c (read_process_output): Only activate adaptive
1454 buffering if we read less than 256 bytes at a time.
1455
1456 2004-01-06 Kim F. Storm <storm@cua.dk>
1457
1458 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
1459 object and image object. Return glyph width and height.
1460 (mode_line_string, marginal_area_string): Ditto.
1461
1462 * dispextern.h (buffer_posn_from_coords, mode_line_string)
1463 (marginal_area_string): Fix prototypes.
1464
1465 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
1466 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
1467 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
1468
1469 * keyboard.c (make_lispy_position): Use modified mode_line_string,
1470 buffer_posn_from_coords, and marginal_area_string functions to
1471 include both string object and image object in the lispy position.
1472 Also add actual glyph width and height to position.
1473 (read_key_sequence): Use real buffer position from mouse
1474 event to find keymap property even when click is in marginal area.
1475
1476 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
1477 mode_line_string and marginal_area_string functions to handle
1478 both string object and image object properties.
1479
1480 2004-01-06 Andreas Schwab <schwab@suse.de>
1481
1482 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
1483 character.
1484
1485 2004-01-02 Andreas Schwab <schwab@suse.de>
1486
1487 * macterm.c (emacs_options, x_initialized, same_x_server):
1488 Remove unused (and duplicated) definitions.
1489
1490 2004-01-02 Kim F. Storm <storm@cua.dk>
1491
1492 * process.h (struct Lisp_Process): New members for adaptive read
1493 buffering: adaptive_read_buffering, read_output_delay, and
1494 read_output_skip.
1495
1496 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
1497 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
1498 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
1499 (process_output_delay_count, process_output_skip): New vars.
1500 (Vprocess_adaptive_read_buffering): New variable.
1501 (make_process): Initialize adaptive read buffering members.
1502 (Fstart_process): Set adaptive_read_buffering member.
1503 (deactivate_process): Cleanup adaptive read buffering.
1504 (wait_reading_process_input): Temporarily omit delayed
1505 subprocesses from the set of file descriptors to read from;
1506 adjust the select timeout if we skipped any subprocesses.
1507 (read_process_output): Increase adaptive read buffering delay if
1508 we read less than a full buffer; reduce delay when we read a
1509 full buffer.
1510 (send_process): Simplify using local Lisp_Process var.
1511 Reset adaptive read buffering delay after write.
1512 (init_process): Initialize process_output_delay_count and
1513 process_output_skip.
1514 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
1515
1516 2004-01-01 Jason Rumney <jasonr@gnu.org>
1517
1518 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
1519
1520 2003-12-30 Luc Teirlinck <teirllm@auburn.edu>
1521
1522 * print.c (Ferror_message_string): Add hyperlink in the docstring
1523 to the definition of `signal' in the Elisp manual.
1524 * eval.c (Fsignal): Ditto.
1525
1526 2003-12-29 James Clark <jjc@jclark.com> (tiny change)
1527
1528 * fns.c (internal_equal): Return t for two NaN arguments.
1529
1530 2003-12-29 Richard M. Stallman <rms@gnu.org>
1531
1532 * data.c (store_symval_forwarding): Handle setting
1533 default-fill-column, etc., by changing the value in
1534 buffers that use the default.
1535
1536 * minibuf.c (Fset_minibuffer_window): Doc fix.
1537
1538 * fileio.c (choose_write_coding_system): Ignore auto_saving
1539 if using the visited file for auto saves.
1540 (Fwrite_region): Don't update SAVE_MODIFF
1541 if auto-saving in visited file.
1542
1543 2003-12-29 Kenichi Handa <handa@m17n.org>
1544
1545 * dispextern.h (face_font_available_p): Extern it.
1546
1547 * fontset.c (Voverriding_fontspec_alist): New variable.
1548 (lookup_overriding_fontspec): New function.
1549 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
1550 (fontset_font_pattern): Likewise.
1551 (regulalize_fontname): New function.
1552 (Fset_fontset_font): Call regulalize_fontname.
1553 (Fset_overriding_fontspec_internal): New function.
1554 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
1555 Defsubr Sset_overriding_fontspec_internal.
1556
1557 * xfaces.c (face_font_available_p): New function.
1558
1559 2003-12-28 Richard M. Stallman <rms@gnu.org>
1560
1561 * buffer.c (Fother_buffer): Don't crash if BUF is nil
1562 or if its name is nil.
1563
1564 * buffer.c (Fkill_buffer): Don't delete auto-save file
1565 if it's the same as the visited file.
1566
1567 2003-12-28 Luc Teirlinck <teirllm@auburn.edu>
1568
1569 * coding.c (Fcheck_coding_system): Doc fix.
1570
1571 2003-12-28 Kim F. Storm <storm@cua.dk>
1572
1573 * Makefile.in (eval.o): Depend on dispextern.h.
1574
1575 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
1576 image glyph using image's ascent.
1577 (mode_line_string): Return image glyph as object clicked on.
1578 Adjust y0 for image glyph using image's ascent.
1579
1580 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
1581 (struct glyph): New members, ascent and descent. Used to save
1582 this glyph's ascent and descent, instead of having.
1583 (struct glyph): Declare member face_id using FACE_ID_BITS.
1584 (find_hot_spot): Add prototype.
1585
1586 * keyboard.c (Qimage): Remove extern (now in lisp.h).
1587 (QCmap): Declare extern.
1588 (make_lispy_position): When position is inside image hot-spot,
1589 use hot-spot element's id as posn element.
1590
1591 * lisp.h (IMAGEP): New macro to test for image object type.
1592 (Qimage): Declare extern.
1593
1594 * macfns.c (Qimage): Remove extern (now in lisp.h).
1595 (valid_image_p, parse_image_spec): Use IMAGEP macro.
1596
1597 * macterm.c (Qface, Qmouse_face): Remove unused externs.
1598
1599 * w32fns.c (Qimage): Remove extern (now in lisp.h).
1600 (valid_image_p, parse_image_spec): Use IMAGEP macro.
1601
1602 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
1603
1604 * w32term.c (Qface, Qmouse_face): Remove unused externs.
1605
1606 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
1607 pointer types.
1608 (Qrelative_width, Qalign_to): Remove unused variables.
1609 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
1610 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
1611 image maps.
1612 (x_y_to_hpos_vpos): Return glyph relative coordinates through
1613 new dx and dy args.
1614 Remove buffer_only_p arg (always 0). Simplify code accordingly.
1615 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
1616 than row's ascent and height, to get sensible height on tall rows.
1617 (build_desired_tool_bar_string): Remove Qimage extern.
1618 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
1619 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
1620 image glyph is alone on the last line.
1621 (append_glyph, append_composite_glyph, produce_image_glyph)
1622 (append_stretch_glyph): Set glyph's ascent and descent.
1623 (on_hot_spot_p): New function to check if position is inside an
1624 rectangular, circular, or polygon-shaped image hot-spot,
1625 (find_hot_spot): New function to search for image hot-spot.
1626 (Flookup_image_map): New defun to search for image hot-spot.
1627 (define_frame_cursor1): New aux function to determine frame pointer.
1628 (note_mode_line_or_margin_highlight, note_mouse_highlight):
1629 Handle `pointer' text property and :pointer image property to
1630 control frame pointer shape. Detect image hot-spots for pointer
1631 and help_echo properties. Use define_frame_cursor1.
1632 (note_mouse_highlight): Use Vvoid_text_area_pointer.
1633 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
1634 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
1635
1636 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
1637
1638 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
1639 (Qimage): Remove extern (now in lisp.h).
1640 (valid_image_p, parse_image_spec): Use IMAGEP macro.
1641
1642 * xmenu.c (show_help_event): Remove unused code.
1643
1644 * xterm.c (Qface, Qmouse_face): Remove unused externs.
1645 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
1646 row's ascent and descent, to get a sensible height on tall rows.
1647
1648 2003-12-25 Luc Teirlinck <teirllm@auburn.edu>
1649
1650 * minibuf.c (Fcompleting_read): Undo previous change.
1651
1652 2003-12-25 Lars Hansen <larsh@math.ku.dk>
1653
1654 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
1655 Arguments GCPRO'ed in call to file name handler.
1656
1657 2003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
1658
1659 * termcap.c (tgetst1): Scan for "%pN"; if all
1660 N are continuous in [1,9], remove all "%pN".
1661
1662 2003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1663
1664 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
1665
1666 * xfaces.c (lface_fully_specified_p): Take into account that
1667 MAC OS always have unspecified stipple.
1668
1669 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
1670
1671 * tparam.c (tparam1): Add handling for `%pN', which
1672 means use param N for the next substitution.
1673
1674 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
1675
1676 * xfaces.c (Fcolor_gray_p): Fix omission bug:
1677 In case `frame' is nil, consult the selected frame.
1678 (Fcolor_supported_p): Likewise.
1679
1680 2003-12-23 Luc Teirlinck <teirllm@auburn.edu>
1681
1682 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
1683 Doc fixes.
1684
1685 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
1686 and an integer. Adapt the introductory comment accordingly.
1687 (Fread_from_minibuffer): Delete code moved into read_minibuf.
1688 Doc fix.
1689 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
1690 read_minibuf.
1691 (Fcompleting_read): Delete code moved into read_minibuf.
1692 (Ftest_completion): Make it handle obarrays and hash tables correctly.
1693
1694 2003-12-03 Kenichi Handa <handa@m17n.org>
1695
1696 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
1697 encoding sequence.
1698
1699 2003-12-01 Kenichi Handa <handa@m17n.org>
1700
1701 * composite.c (syms_of_composite): Don't make the compostion hash
1702 table week.
1703
1704 2003-11-30 Luc Teirlinck <teirllm@auburn.edu>
1705
1706 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
1707 * textprop.c (Fget_char_property_and_overlay): New function.
1708 (syms_of_textprop): Defsubr it.
1709
1710 2003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1711
1712 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
1713 to compile on terminal configuration.
1714
1715 * fileio.c (Fread_file_name): Check use_file_dialog also before
1716 calling Fx_file_dialog.
1717
1718 * fns.c: use_file_dialog: New variable.
1719 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
1720
1721 2003-11-29 Kim F. Storm <storm@cua.dk>
1722
1723 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
1724 (syms_of_msdos): Don't intern and staticpro them.
1725
1726 2003-11-27 Kim F. Storm <storm@cua.dk>
1727
1728 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
1729 coordinates relative to glyph at posn. If glyph is an image,
1730 return that as object at posn. Callers changed.
1731 (mode_line_string, marginal_area_string): Calculate and return
1732 pixel coordinates relative to glyph. Callers changed.
1733
1734 * dispextern.h (buffer_posn_from_coords, mode_line_string)
1735 (marginal_area_string): Fix prototypes.
1736 (window_box_left_offset, window_box_right_offset): Add prototypes.
1737
1738 * frame.h (get_specified_cursor_type, get_window_cursor_type):
1739 Remove prototypes.
1740
1741 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
1742
1743 * keyboard.c (make_lispy_position): Add x and y coordinates
1744 relative to the current glyph as 7th element of position.
1745 If glyph is an image, return it in the object element.
1746 (read_key_sequence): Skip checks for keymap property in cases
1747 where POSN_STRING is not a string (e.g. an image).
1748
1749 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
1750 (Vshow_text_cursor_in_void): New variable.
1751 (glyph_to_pixel_coords): Don't use negative hpos.
1752 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
1753 (append_stretch_glyph): Change ascent arg to be actual value
1754 in pixels rather than ratio to height. Callers changed.
1755 (calc_pixel_width_or_height): New aux function, implementing
1756 pixel based artihmetic for glyph widths and heights.
1757 (produce_stretch_glyph): Use calc_pixel_width_or_height for
1758 :width, :height, :align-to, and :ascent, thus allowing these to
1759 be specified in pixels as well as multiples of characters.
1760 Don't produce stretch glyphs with zero width or height.
1761 (get_specified_cursor_type): Declare static.
1762 (get_window_cursor_type): Declare static. Add glyph arg to be
1763 able to know when cursor is on an image; always substitute
1764 hollow-box cursor for filled-box cursor on images, to avoid
1765 negative images and flicker when blinking the cursor.
1766 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
1767 (note_mode_line_or_margin_highlight): Use non-text cursor rather
1768 than vertical scroll-bar cursor in display margins.
1769 (note_mouse_highlight): Use non-text cursor rather than text
1770 cursor in fringes and over images in the text area.
1771 Use non-text cursor when mouse pointer is outside editable text,
1772 i.e. in the void after end-of-line or end-of-buffer; this was
1773 already done for W32, but is now standard for all systems --
1774 user can toggle show-text-cursor-in-void to get old behaviour.
1775 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
1776 Vdisplay_pixels_per_inch.
1777
1778 2003-11-25 Andreas Schwab <schwab@suse.de>
1779
1780 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
1781 EMACS_INT to not lose bits.
1782 (Ffillarray): Don't set bits beyond the size of a bool vector.
1783
1784 2003-11-25 Kim F. Storm <storm@cua.dk>
1785
1786 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
1787 define this defun on systems that cannot use stderr as lvalue.
1788
1789 2003-11-24 Gerd Moellmann <gerd@gnu.org>
1790
1791 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
1792 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
1793 ld's default is incompatible with unexec.
1794
1795 2003-11-23 Kim F. Storm <storm@cua.dk>
1796
1797 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
1798 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
1799 (Fforce_window_update): New defun.
1800 (syms_of_window): Defsubr it.
1801 (Fset_window_margins, Fset_window_fringes): Doc fix.
1802
1803 * print.c (Fredirect_debugging_output): New defun.
1804 (syms_of_print): Defsubr it.
1805
1806 2003-11-22 Luc Teirlinck <teirllm@auburn.edu>
1807
1808 * fns.c (Fset_char_table_parent): Doc fix.
1809
1810 2003-11-22 Kim F. Storm <storm@cua.dk>
1811
1812 * dispnew.c (buffer_posn_from_coords): Return actual row/column
1813 for glyph clicked on, rather than (unused) pixel positions.
1814 (mode_line_string, marginal_area_string): Change X and Y args to
1815 pointers for returning actual row/column for glyph clicked on.
1816 Simplify and optimize loops.
1817
1818 * dispextern.h (mode_line_string, marginal_area_string):
1819 Update prototypes.
1820
1821 * keyboard.c (make_lispy_position): New function for generating
1822 mouse click positions from frame and pixel coordinates.
1823 Enhanced to return buffer position and actual row/column for
1824 events outside the text area using updated mode_line_string and
1825 marginal_area_string functions.
1826 Return left-fringe and right-fringe clicks as such, rather than
1827 clicks in text area.
1828 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
1829 pixel_to_glyph_coords, as we never use the results.
1830 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
1831 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
1832 Eliminate unused code in WHEEL_EVENT handling.
1833 (make_lispy_movement): Use make_lispy_position.
1834
1835 * window.c (coordinates_in_window): Remove redundant tests.
1836 Fix returned X pixel value for left-margin.
1837
1838 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
1839 mode_line_string and marginal_area_string parameters.
1840
1841 2003-11-22 Lars Hansen <larsh@math.ku.dk>
1842
1843 * w32.c (struct the_group, getgrgid): Add.
1844 * mac.c (struct my_group, getgrgid): Add.
1845
1846 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
1847
1848 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
1849
1850 2003-11-21 Lars Hansen <larsh@math.ku.dk>
1851
1852 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
1853 include in call to file name handler. Optionally translate numeric
1854 UID and GID to strings. Update docstring.
1855 (directory_files_internal): Add parameter ID-FORMAT.
1856 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
1857 include in call to file name handler and call to
1858 directory_files_internal. Update Docstring.
1859 (Fdirectory_files): Add dummy parameter in call to
1860 directory_files_internal.
1861 * lisp.h (Qinteger): Add.
1862 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
1863 (Ffile_attributes): Add parameter.
1864 * data.c (Qinteger): Export.
1865
1866 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
1867
1868 * fns.c (Freverse, Fnreverse): Doc fixes.
1869
1870 2003-11-19 Kim F. Storm <storm@cua.dk>
1871
1872 * xdisp.c (init_iterator): Initialize it->start to position
1873 before reseating (in case start position is invisible).
1874 (init_to_row_start): Set it->start to row-start.
1875 (redisplay_window): Accept optional_new_start if start position
1876 is invisible (in which case IT_CHARPOS overshoots PT).
1877 (display_line): Setup row->start from it->start (rather than
1878 it->current which is wrong if first char on line is invisible).
1879 When done, reseat it->start to it->current (= start of next row).
1880 (expose_area): Fix exposure of text area when first char (e.g. TAB)
1881 is only partially visible.
1882
1883 * dispextern.h (struct it): New member start.
1884
1885 2003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
1886
1887 * alloc.c (make_float, Fcons): Clear the markbit at init time.
1888 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
1889 of block_index outside of the macro call.
1890 (Fgarbage_collect): Remove null code.
1891
1892 * m/amdx86-64.h: Don't redefine XPNTR.
1893
1894 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
1895 of VALMASK.
1896
1897 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
1898 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
1899 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
1900
1901 * lisp.h (VALMASK): Only define for non-union type.
1902 (MARKBIT): Remove.
1903 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
1904 (XTYPE): Define unconditionally.
1905 (XSETTYPE): Remove one more remnant.
1906 (EQ): Define differently for the union and non-union cases.
1907 (INTMASK): New bit mask.
1908 (struct Lisp_Marker): Move down to prepare for upcoming patch.
1909 (GC_EQ): Delegate to EQ.
1910
1911 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
1912
1913 2003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1914
1915 * xterm.c (x_window_to_scroll_bar): Move check of display to
1916 where window_id is compared.
1917
1918 2003-11-17 Kim F. Storm <storm@cua.dk>
1919
1920 * dispextern.h (struct it): New member first_vpos.
1921
1922 * xdisp.c (start_display): Set it->first_vpos.
1923 (try_window_id): Use first_vpos to start display in first _text_
1924 line if no reusable lines at start of window with header line.
1925
1926 2003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1927
1928 * w32fns.c (XPutPixel):
1929 * w32bdf.c (w32_init_bdf_font):
1930 * sunfns.c (sel_read):
1931 * process.c (Fmake_network_process):
1932 * frame.c (store_frame_param):
1933 * fontset.c (Fset_fontset_font):
1934 * emacs.c (shut_down_emacs):
1935 * ccl.c (ccl_driver): Remove period at end of error message.
1936
1937 * config.in: Regenerate.
1938
1939 * xfns.c (x_window_to_frame, x_any_window_to_frame)
1940 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
1941 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
1942 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
1943 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
1944
1945 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
1946
1947 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
1948 (XTmouse_position, handle_one_xevent): Pass Display* to
1949 x_window_to_scroll_bar.
1950 (x_window_to_scroll_bar): Take a Display* argument.
1951 Check that display for frame is equal to Display* argument.
1952 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
1953 x_display_info_for_display instead. Use Display in xev instead
1954 of GDK_DISPLAY.
1955 (x_dispatch_event): Call x_display_info_for_display.
1956 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
1957 (x_connection_closed): Call xg_display_close for GTK.
1958 (x_term_init): Call xg_display_open for additional displays.
1959 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
1960 for GTK.
1961
1962 * xmenu.c (single_menu_item, mouse_position_for_popup)
1963 (x_activate_menubar): Formatting adjustments.
1964
1965 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
1966 adjustments.
1967
1968 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
1969 (xg_display_close, xg_create_default_cursor)
1970 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
1971 handling.
1972 (xg_left_ptr_cursor): Remove.
1973 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
1974 cursor here.
1975 (xg_win_to_widget): Take Display* argument, call
1976 gdk_xid_table_lookup_for_display.
1977 (xg_create_frame_widgets, xg_get_file_name, create_menus)
1978 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
1979 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
1980 in FRAME_X_DISPLAY_INFO.
1981 (xg_get_scroll_id_for_window): Take Display* argument.
1982 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
1983 (xg_initialize): Remove xg_left_ptr_cursor.
1984
1985 * gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
1986 Display* argument also. Declare xg_display_open,
1987 xg_display_close, xg_create_default_cursor.
1988
1989 2003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1990
1991 * xterm.c (x_detect_focus_change): Do not change focus frame for
1992 Enter/LeaveNotify if the current focus frame has explicit focus.
1993
1994 2003-11-14 Kim F. Storm <storm@cua.dk>
1995
1996 * dispnew.c (update_text_area): Fix redisplay error when hscroll
1997 is active and first glyph is only partially visible.
1998
1999 2003-11-13 Kenichi Handa <handa@m17n.org>
2000
2001 * xdisp.c (select_frame_for_redisplay): New function.
2002 (redisplay_internal): Record also selected_frame for
2003 unwind_redisplay. Call select_frame_for_redisplay before
2004 redrawing each frame.
2005 (unwind_redisplay): Argument changed to a cons.
2006
2007 2003-11-12 Luc Teirlinck <teirllm@auburn.edu>
2008
2009 * fns.c (Fstring_to_multibyte): Doc fix.
2010
2011 2003-11-11 Kenichi Handa <handa@m17n.org>
2012
2013 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
2014
2015 2003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2016
2017 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
2018 program specified positions.
2019
2020 2003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2021
2022 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
2023
2024 2003-11-08 Kenichi Handa <handa@m17n.org>
2025
2026 * Makefile.in (lisp): Add kannada.el.
2027 (shortlisp): Likewise.
2028
2029 2003-11-07 Kenichi Handa <handa@m17n.org>
2030
2031 * coding.c (coding_allocate_composition_data):
2032 Reset coding->composing to COMPOSITION_NO.
2033 (coding_restore_composition): Detect invalid composition data.
2034 Give Fstring and Fvector a Lispy integer, not C int.
2035
2036 2003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
2037
2038 * floatfns.c (Flogb): Don't use VALMASK.
2039
2040 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
2041 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
2042
2043 * lisp.h (XINT): Move the cast to clarify what is going on.
2044 (GCTYPEMASK, XSETTYPE): Remove.
2045 (XGCTYPE): Make it an alias of XTYPE.
2046
2047 2003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2048
2049 * xterm.c (x_term_init): Fix formatting.
2050
2051 2003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2052
2053 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
2054 and xg_did_tearoff.
2055
2056 * gtkutil.c: Remove variable xg_did_tearoff.
2057 (xg_have_tear_offs): New function.
2058 (tearoff_remove): Just decrease xg_detached_menus.
2059 (tearoff_activate): Increase xg_detached_menus and call
2060 tearoff_remove when tearoff is removed.
2061 (xg_keep_popup): Remove function.
2062 (create_menus): Give add_tearoff_p as argument to recursive
2063 call to create_menus.
2064 (xg_create_widget): Use variables instead of multiple
2065 strcmp. Tell create_menus to create tear off only for
2066 menu bar menus.
2067 (xg_update_menubar): Change title for a detached menu also.
2068 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
2069 of deep_p.
2070 (xg_initialize): Initialize xg_detached_menus, remove
2071 initialization of xg_did_tearoff.
2072
2073 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
2074 xg_have_tear_offs returns non-zero.
2075 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
2076 call to xg_keep_popup.
2077
2078 2003-11-01 Andrew Choi <akochoi@shaw.ca>
2079
2080 * macterm.c (XTread_socket): Handle menubar selection and grow
2081 window only for mouseDown events.
2082
2083 2003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2084
2085 * xterm.c (x_term_init): For GTK part, increase x_initialized
2086 to check for more than one display. Use error instead of return 0.
2087
2088 2003-10-31 Andrew Choi <akochoi@shaw.ca>
2089
2090 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
2091 (copy_dysymtab): Call it.
2092
2093 2003-10-31 Luc Teirlinck <teirllm@auburn.edu>
2094
2095 * eval.c (Fdefvaralias): Doc fix.
2096
2097 2003-10-26 Luc Teirlinck <teirllm@auburn.edu>
2098
2099 * data.c (Fsetplist): Doc fix.
2100
2101 2003-10-14 Lute Kamstra <lute@gnu.org>
2102
2103 * window.c (Fset_window_fringes): Clarify docstring.
2104
2105 2003-10-14 Kim F. Storm <storm@cua.dk>
2106
2107 * window.c (Fset_window_margins): Simplify arg checking.
2108
2109 2003-10-13 Richard M. Stallman <rms@gnu.org>
2110
2111 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
2112 (print_partial_compiled_pattern): Replace assert with a printout.
2113 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
2114
2115 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
2116
2117 * window.c (Fset_window_margins): Allow only integers as args.
2118 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
2119 Doc fixes.
2120
2121 2003-10-13 Lute Kamstra <lute@gnu.org>
2122
2123 * window.c (Fset_window_fringes): Elaborate docstring.
2124
2125 2003-10-12 Andrew Choi <akochoi@shaw.ca>
2126
2127 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
2128
2129 * s/darwin.h (GC_MARK_STACK): Define.
2130
2131 2003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2132
2133 * window.c (shrink_windows): New function.
2134 (size_window): Call shrink_windows to calculate window sizes when
2135 shrinking frame with more than one window.
2136
2137 2003-10-12 Kim F. Storm <storm@cua.dk>
2138
2139 * xdisp.c (compute_fringe_widths): Doc fix.
2140
2141 2003-10-08 Kenichi Handa <handa@m17n.org>
2142
2143 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
2144
2145 2003-10-07 Kenichi Handa <handa@m17n.org>
2146
2147 * coding.c (Qcoding_system_define_form): New variable.
2148 (syms_of_coding): Intern and staticpro it.
2149 (Fcheck_coding_system): Try to autoload the definition of
2150 CODING-SYSTEM.
2151
2152 2003-10-05 Luc Teirlinck <teirllm@auburn.edu>
2153
2154 * fns.c (Frequire): Doc fix.
2155
2156 2003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2157
2158 * xfns.c (Fx_send_client_event): New function as a base for
2159 manipulating extended window manager hints.
2160 (Fx_send_client_event): Remove unused variable s.
2161
2162 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
2163 that function is removed.
2164
2165 * xterm.c (x_set_offset): Use move_offset_left/top instead of
2166 x/y_pixels_outer_diff.
2167 (x_check_expected_move): Calculate move_offset_left/top.
2168
2169 * xterm.h (struct x_output): New members: move_offset_top/left.
2170
2171 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
2172 call x_set_offset directly.
2173
2174 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
2175
2176 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
2177
2178 * xterm.c (x_delete_display): Free font names and font_encoder
2179 in dpyinfo->font_table.
2180
2181 * xfns.c (Fx_close_connection): Only call XFreeFont here.
2182 Move xfree of font names to x_delete_display.
2183
2184 * xterm.h (struct x_display_info): New member, wm_type.
2185 (struct x_output): New members, expected_top/left and
2186 check_expected_move.
2187
2188 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
2189 is received.
2190 (handle_one_xevent): Rename x_check_expected_move from
2191 x_check_fullscreen_move.
2192 (x_set_offset): Only add WM decoration sizes to modified_top/left
2193 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
2194 (x_check_expected_move): Rename from x_check_fullscreen_move.
2195 Removed fullscreen specific code. Use check_expected_move,
2196 expected_left/top instead. Also, set wm_type.
2197 (x_term_init): Initialize wm_type to unknown.
2198
2199 * frame.c (x_fullscreen_move): Remove addition of WM decoration
2200 sizes to move_x/y.
2201
2202 2003-10-03 Kenichi Handa <handa@m17n.org>
2203
2204 * macterm.c (x_load_font): Clear all members of FONTP before start
2205 filling them.
2206
2207 2003-10-02 Kenichi Handa <handa@m17n.org>
2208
2209 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
2210 before calling find_ccl_program_func. Call find_ccl_program_func
2211 only when fontp->font_encoder is not NULL.
2212
2213 * xterm.c (x_load_font): Clear all members of FONTP before start
2214 filling them.
2215
2216 2003-10-03 John Paul Wallington <jpw@gnu.org>
2217
2218 * keymap.c (map_keymap): Don't abort when binding is a vector.
2219
2220 2003-10-02 Jason Rumney <jasonr@gnu.org>
2221
2222 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
2223 Sync dependencies with Makefile.in.
2224 (alloca.o): Remove.
2225
2226 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
2227 filling them.
2228
2229 * w32bdf.c (w32_load_bdf_font): Likewise.
2230
2231 2003-09-30 Richard M. Stallman <rms@gnu.org>
2232
2233 * term.c (set_tty_color_mode): Calculate current_mode_spec
2234 regardless of value of VAL.
2235
2236 * intervals.c (graft_intervals_into_buffer):
2237 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
2238 Handle over_used when splitting UNDER.
2239
2240 2003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2241
2242 * regex.c (regex_compile): Free the stack when returning from function.
2243
2244 2003-09-28 Kenichi Handa <handa@m17n.org>
2245
2246 * fontset.c (Finternal_char_font): Change return value to
2247 cons (FONT-NAME . GLYPH-CODE).
2248
2249 2003-09-28 Eli Zaretskii <eliz@gnu.org>
2250
2251 * term.c (tty_setup_colors): Treat any negative argument as -1.
2252
2253 2003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
2254
2255 * process.c (send_process): Delete unused temp_buf.
2256
2257 2003-09-26 Dave Love <fx@gnu.org>
2258
2259 * xterm.c (x_bitmap_mask): Declare.
2260
2261 2003-09-25 Dave Love <fx@gnu.org>
2262
2263 * Makefile.in (fns.o): Depend on md5.h.
2264
2265 2003-09-25 Kim F. Storm <storm@cua.dk>
2266
2267 * window.c (set_window_buffer): Fix redisplay problems when
2268 switching between buffers with different display margin widths.
2269
2270 2003-09-23 Kim F. Storm <storm@cua.dk>
2271
2272 * process.c (set_socket_option): Fix :bindtodevice option.
2273 (Fset_network_process_option): Update process contact list when
2274 setting option succeeds.
2275 (Fmake_network_process): Doc fix.
2276
2277 2003-09-23 Dave Love <fx@gnu.org>
2278
2279 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
2280
2281 2003-09-22 Eli Zaretskii <eliz@gnu.org>
2282
2283 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
2284 color mode is an integer number (it could be -1).
2285
2286 2003-09-22 Richard M. Stallman <rms@gnu.org>
2287
2288 * intervals.c (graft_intervals_into_buffer): Correct the main loop
2289 in the case where OVER is longer than UNDER.
2290
2291 2003-09-22 Masatake YAMATO <jet@gyve.org>
2292
2293 * window.c (Fset_window_scroll_bars): Validate the value of
2294 `vertical_type'.
2295
2296 2003-09-21 Kim F. Storm <storm@cua.dk>
2297
2298 * frame.c (Vdefault_frame_scroll_bars): New variable.
2299 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
2300 (syms_of_frame): DEFVAR_LISP it, and initialize according to
2301 window-system default scroll bar position.
2302
2303 * window.c (Fwindow_scroll_bars): Doc fix.
2304
2305 2003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2306
2307 * xterm.c (x_set_offset): Take window manager decorations into account.
2308
2309 2003-09-19 Richard M. Stallman <rms@gnu.org>
2310
2311 * atimer.h: Don't include lisp.h.
2312 (P_): Define it here (as well as elsewhere).
2313
2314 * print.c (Fprin1_to_string): Move the PRINTPREPARE
2315 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
2316
2317 * data.c (Fvariable_binding_locus): New function.
2318 (syms_of_data): defsubr it.
2319 (Flocal_variable_p): Delete duplicate call to indirect_variable.
2320
2321 2003-09-18 Dave Love <fx@gnu.org>
2322
2323 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
2324
2325 * process.c (Fnetwork_interface_info): Fix type error.
2326 (Fnetwork_interface_list): Doc fix.
2327 (read_process_output, read_process_output): Delete unused var.
2328
2329 2003-09-17 Kim F. Storm <storm@cua.dk>
2330
2331 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
2332 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
2333 (Fnetwork_interface_info): Check that ifreq struct has required
2334 fields before accessing them; this requires that those fields are
2335 defined as macros, which may be too restrictive on some platforms,
2336 but it is better than failing on other platforms.
2337 (syms_of_process): Only defsubr above fns when included.
2338
2339 2003-09-17 Dave Love <fx@gnu.org>
2340
2341 * unexalpha.c: Don't include varargs.h.
2342
2343 2003-09-17 Kim F. Storm <storm@cua.dk>
2344
2345 * process.c (Fset_process_sentinel): Add sentinel to childp plist
2346 for network process.
2347 (socket_options): Add `:' prefix to option names. Add optbit field.
2348 (set_socket_option): Remove no_error arg and special handling of s < 0.
2349 Return 1<<optbit for known option, 0 for unknown.
2350 Do not interpret 0 as false for boolean option (only nil).
2351 Pass failed option and value to report_file_error.
2352 (Fset_network_process_options): Replace by Fset_network_process_option.
2353 (Fset_network_process_option): New function to set just one option.
2354 (Fmake_network_process): Allow :coding arg to be a cons.
2355 Allow :server arg to be an integer specifying backlog size.
2356 Remove :options arg, and allow options to be specified directly
2357 as :KEY, VALUE pairs. Parse these options before binding socket.
2358 As before, :reuseaddr t is default for a server process, but this
2359 can now be disabled by specifying :reuseaddr nil.
2360 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
2361 (init_process): Availability of network options is now checked with
2362 simpler syntax (featurep 'make-network-process :OPTION); use loop to
2363 setup features.
2364 (syms_of_process): Fix defsubr's for the replaced functions.
2365
2366 2003-09-16 Dave Love <fx@gnu.org>
2367
2368 * Makefile.in: Depend on coding.h.
2369
2370 2003-09-14 Kim F. Storm <storm@cua.dk>
2371
2372 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
2373 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
2374 (syms_of_process): Defsubr them.
2375
2376 * config.in: Regenerate.
2377
2378 2003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
2379
2380 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
2381 * m/news-r6.h (XUNMARK): Remove.
2382 * m/mips.h (XUNMARK): Remove.
2383 * m/mips-siemens.h (XUNMARK): Remove.
2384 * m/iris4d.h (XUNMARK): Remove.
2385 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
2386
2387 2003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
2388
2389 * lisp.h (VALBITS): Don't remove 1 for the markbit.
2390 (union Lisp_Object): Use unsigned int for types. Remove markbit.
2391 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
2392 (XTYPE): Use unsigned right-shift.
2393 (XMARKBIT, XMARK, XUNMARK): Remove.
2394
2395 * alloc.c (init_intervals, init_symbol, init_marker):
2396 Don't preallocate anything.
2397 (Fgarbage_collect, mark_object): Ignore the markbit.
2398
2399 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
2400
2401 2003-09-08 Lute Kamstra <lute@gnu.org>
2402
2403 * xdisp.c (pint2hrstr): New function.
2404 (decode_mode_spec): Add `%i' and `%I' specs.
2405 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
2406 for `mode-line-format'.
2407
2408 2003-09-07 Andreas Schwab <schwab@suse.de>
2409
2410 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
2411 avoid warning.
2412
2413 2003-09-07 Eli Zaretskii <eliz@gnu.org>
2414
2415 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
2416
2417 2003-09-03 Kim F. Storm <storm@cua.dk>
2418
2419 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
2420 change (superseded by 2002-08-30 change); the default blink-off
2421 cursor is now again "no cursor".
2422
2423 2003-09-01 Jason Rumney <jasonr@gnu.org>
2424
2425 * makefile.w32-in (alloca.o): Remove.
2426 (coding.o): Depend on intervals.h
2427 (emacs.o, bytecode.o): Depend on window.h
2428
2429 2003-09-01 Dave Love <fx@gnu.org>
2430
2431 * Makefile.in (alloca.o): Remove commands.
2432 (coding.o): Depend on intervals.h composite.h window.h.
2433 (emacs.o): Depend on window.h keyboard.h keymap.h.
2434 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
2435 (bytecode.o): Depend on window.h.
2436
2437 2003-08-31 Jason Rumney <jasonr@gnu.org>
2438
2439 * w32term.c (w32_per_char_metric): Allow cached metrics to be
2440 returned even when font_type is unknown.
2441
2442 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
2443
2444 2003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2445
2446 * xterm.c (x_term_init): Initialize new fields in x_display_info.
2447
2448 * xterm.h (struct x_display_info): Add red/green/blue_bits and
2449 *_offset.
2450
2451 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
2452 calculate pixel value.
2453
2454 2003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
2455
2456 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
2457 Don't tell redisplay display is accurate when it's actually been
2458 paused for pending input.
2459
2460 2003-08-29 Richard M. Stallman <rms@gnu.org>
2461
2462 * dispnew.c (adjust_glyph_matrix): Call window_box
2463 whenever W is nonzero.
2464
2465 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
2466 (Fkill_local_variable, Fmake_variable_frame_local)
2467 (Flocal_variable_p, Flocal_variable_if_set_p):
2468 Use indirect_variable to trace thru variable aliases.
2469
2470 * config.in: Updated.
2471
2472 * callint.c (Fcall_interactively): Save and restore
2473 Vthis_command, Vthis_original_command, real_this_command,
2474 and current_kboard->Vlast_command.
2475
2476 * abbrev.c (Fexpand_abbrev): Insert before deleting.
2477
2478 2003-08-29 Gerd Moellmann <gerd@gnu.org>
2479
2480 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
2481
2482 2003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
2483
2484 * coding.c (decode_coding_iso2022): Initialize local variable c2.
2485 (decode_coding_sjis_big5): Likewise.
2486
2487 2003-08-27 Jason Rumney <jasonr@gnu.org>
2488
2489 * w32.c (sys_pipe): Protect against file descriptor overflow.
2490
2491 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
2492
2493 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
2494
2495 2003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
2496
2497 * xfns.c (Vgtk_version_string): New variable.
2498 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
2499
2500 2003-08-24 Eli Zaretskii <eliz@gnu.org>
2501
2502 * term.c (term_init): Remove `const' from buffer_size's declaration.
2503
2504 * Makefile.in (msdos.o): Depend on intervals.h.
2505
2506 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
2507
2508 2003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2509
2510 * xterm.h (struct x_display_info): New fields: client_leader_window
2511 and Xatom_wm_client_leader.
2512
2513 * xterm.c (x_initialize): Move call to x_session_initialize to ...
2514 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
2515
2516 * xsmfns.c (create_client_leader_window): New function.
2517 (x_session_initialize): Call create_client_leader_window, take
2518 dpyinfo as argument.
2519
2520 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
2521
2522 * Makefile.in (xsmfns.o): Add more depenedencies.
2523
2524 2003-08-21 Dave Love <fx@gnu.org>
2525
2526 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
2527
2528 2003-08-21 Kenichi Handa <handa@m17n.org>
2529
2530 * term.c (term_init): Fix previous change; don't rely on the
2531 length of `buffer' if TERMINFO is defined.
2532
2533 2003-08-20 Dave Love <fx@gnu.org>
2534
2535 * atimer.h: Include lisp.h.
2536
2537 * lisp.h (EMACS_LISP_H): New.
2538 (popup_activated_flag): Don't declare.
2539
2540 * alloca.c: Some merging with gnulib. Change logic and doc
2541 concerning (x)malloc/(x)free -- no longer Emacs-specific.
2542 [DO_BLOCK_INPUT]: Don't include lisp.h.
2543 (xmalloc, xfree): Declare.
2544 (malloc): Don't declare.
2545
2546 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
2547 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
2548 atimer.h, blockinput.h.
2549
2550 * alloc.c (lisp_align_malloc): Change type of `aligned'.
2551
2552 * alloca.s: Removed.
2553
2554 2003-08-19 Gerd Moellmann <gerd@gnu.org>
2555
2556 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
2557 use -lncurses.
2558
2559 * term.c (term_init): Use a buffer of size 4096 for tgetent since
2560 FreeBSD returns something longer than 2044. Abort if the end of
2561 the buffer is overwritten.
2562
2563 2003-08-19 Miles Bader <miles@gnu.org>
2564
2565 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
2566
2567 2003-08-19 Gerd Moellmann <gerd@gnu.org>
2568
2569 * alloc.c (lisp_align_malloc): Check for memory full when
2570 allocating ablocks, which also avoids freeing a pointer into an
2571 ablocks structure.
2572
2573 * puresize.h (BASE_PURESIZE): Increase to 1100000.
2574
2575 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
2576
2577 2003-08-16 Richard M. Stallman <rms@gnu.org>
2578
2579 * editfns.c (Fencode_time): Doc fix.
2580
2581 2003-08-16 David Ponce <david@dponce.com>
2582
2583 * fileio.c (Fwrite_region): Fix conditional expression to issue
2584 the right message.
2585
2586 2003-08-16 Juri Linkov <juri@jurta.org> (tiny change)
2587
2588 * syntax.c (Fforward_word): Argument changed to optional.
2589 Set default value to 1.
2590
2591 2003-08-15 Kenichi Handa <handa@m17n.org>
2592
2593 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
2594 what autoscaled.
2595 (best_matching_font): Once we find a better scalable font, set
2596 non_scalable_has_exact_height_p to 1.
2597 (try_font_list): Call try_alternative_families to try any family
2598 with the given registry.
2599
2600 2003-08-09 Andreas Schwab <schwab@suse.de>
2601
2602 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
2603
2604 * print.c (print_string): Fix printing of multibyte string with
2605 nontrivial printcharfun.
2606
2607 2003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2608
2609 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
2610
2611 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
2612
2613 2003-07-31 Kenichi Handa <handa@m17n.org>
2614
2615 * process.c (read_process_output): Return the actually read bytes
2616 instead of the result of decoding.
2617
2618 2003-07-31 Kenichi Handa <handa@m17n.org>
2619
2620 * xterm.h (struct x_bitmap_record): New member have_mask.
2621
2622 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
2623 to 0.
2624 (x_create_bitmap_from_file): Likewise.
2625 (x_destroy_bitmap): Check have_mask member before freeing a mask.
2626 (x_destroy_all_bitmaps): Likewise.
2627 (x_create_bitmap_mask): Set have_mask member to 1.
2628
2629 2003-07-30 Richard M. Stallman <rms@gnu.org>
2630
2631 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
2632
2633 2003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2634
2635 * gtkutil.c (xg_mark_data): Update calls to mark_object.
2636
2637 2003-07-29 Richard M. Stallman <rms@gnu.org>
2638
2639 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
2640 Conditionalize XIM code on HAVE_XIM.
2641
2642 * fns.c (Fclear_string): New function.
2643 (syms_of_fns): defsubr it.
2644
2645 2003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
2646
2647 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
2648
2649 2003-07-22 Stefan Monnier <monnier@cs.yale.edu>
2650
2651 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
2652
2653 * buffer.c (delete_all_overlays): New function.
2654 * buffer.h (delete_all_overlays): Declare.
2655 * coding.c (run_pre_post_conversion_on_str):
2656 * print.c (temp_output_buffer_setup):
2657 * fileio.c (Finsert_file_contents):
2658 * minibuf.c (get_minibuffer): Use it.
2659
2660 2003-07-22 Andrew Choi <akochoi@shaw.ca>
2661
2662 * unexmacosx.c (unexec_regions_sort_compare):
2663 (unexec_regions_merge): New functions. Sort and merge unexec
2664 regions before dumping them.
2665
2666 2003-07-22 Dave Love <fx@gnu.org>
2667
2668 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
2669
2670 2003-07-21 Stefan Monnier <monnier@cs.yale.edu>
2671
2672 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
2673 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
2674 MARKBIT as the gcmarkbit for strings.
2675
2676 2003-07-21 Richard M. Stallman <rms@gnu.org>
2677
2678 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
2679
2680 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
2681 (syms_of_fns): Corresponding change.
2682
2683 * alloc.c (syms_of_alloc): Doc fixes.
2684
2685 2003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
2686
2687 * s/netbsd.h: Use -Wl syntax.
2688
2689 2003-07-17 Richard M. Stallman <rms@gnu.org>
2690
2691 * xterm.c (xim_initialize): Redo 6/24 change.
2692
2693 2003-07-15 Stefan Monnier <monnier@cs.yale.edu>
2694
2695 * buffer.c (copy_overlays): Use EMACS_INT for positions.
2696 (Fswitch_to_buffer): Don't signal an error when switching to the same
2697 buffer in a dedicated window.
2698
2699 * alloc.c: Use bitmaps for cons, as was done for floats.
2700 (init_float, init_cons): Let the normal code allocate the first block.
2701 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
2702 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
2703 New macros.
2704 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
2705 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
2706 (live_cons_p): Check the pointer is not past the `conses' array.
2707 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
2708 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
2709 (survives_gc_p): Use CONS_MARKED_P and simplify.
2710 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
2711
2712 2003-07-13 Paul Eggert <eggert@twinsun.com>
2713
2714 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
2715 puts it into BSS instead, at least on Solaris 8 and 9.
2716 This is a valid optimization, and it may occur on other platforms,
2717 so Emacs should not assume that initializing a static variable to
2718 zero puts it into data.
2719 * alloc.c (pure, staticvec):
2720 Initialize these arrays to nonzero, so that they're not
2721 put into BSS by that optimization.
2722
2723 2003-07-13 Stefan Monnier <monnier@cs.yale.edu>
2724
2725 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
2726 (lisp_align_malloc): Use posix_memalign is available.
2727 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
2728 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
2729 for consistency. Update users.
2730
2731 2003-07-13 Richard M. Stallman <rms@gnu.org>
2732
2733 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
2734
2735 2003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
2736
2737 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
2738 and use the Gtk+ function gtk_window_icon_from_file if available.
2739
2740 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
2741 handle mask of bitmaps.
2742 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
2743 mask property.
2744 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
2745
2746 * xterm.h (xg_set_icon): New function.
2747
2748 2003-07-12 Paul Eggert <eggert@twinsun.com>
2749
2750 * unexelf.c (unexec): Consider a section to precede the .bss
2751 section if its addresses overlap that of .bss.
2752
2753 2003-07-12 Richard M. Stallman <rms@gnu.org>
2754
2755 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
2756
2757 * config.in (HAVE_CRTIN): Add #undef.
2758 (INLINE): Really inline only if OPTIMIZE is defined.
2759
2760 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
2761 END_FILES_1.
2762 (START_FILES_1, END_FILES_1): New macros (conditional).
2763 (LD_SWITCH_SYSTEM_TEMACS): Define.
2764
2765 * s/openbsd.h: Don't include bsd4-3.h.
2766 (TERMINFO): Define.
2767 (LIBS_TERMCAP): Define.
2768 (LD_SWITCH_SYSTEM): Define (two definitions).
2769
2770 * xfns.c: Include libpng/png.h instead of png.h.
2771
2772 2003-07-11 Andreas Schwab <schwab@suse.de>
2773
2774 * buffer.c (modify_overlay): Update prototype.
2775 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
2776 Likewise.
2777
2778 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
2779
2780 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
2781 (struct interval): Move to intervals.h.
2782 (struct Lisp_Marker): Use EMACS_INT for position info.
2783 (forward_point): Remove prototype of defunct function.
2784 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
2785 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
2786 (syms_of_textprop, set_text_properties): Remove prototypes that are
2787 already in intervals.h.
2788
2789 * intervals.h (struct interval): Move from lisp.h.
2790 Use EMACS_INT for position and size info.
2791
2792 * coding.c: Include intervals.h for Fset_text_properties.
2793
2794 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
2795 position and length information.
2796
2797 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
2798
2799 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
2800 position and length information.
2801
2802 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
2803
2804 Change overlays_after and overlays_before so the overlays themselves
2805 are linked into lists, rather than using cons cells. After all each
2806 Lisp_Misc already occupies 5 words, so we can add a `next' field to
2807 Lisp_Overlay for free and save up one cons cell per overlay (not
2808 to mention one indirection when traversing the list of overlay).
2809
2810 * lisp.h (struct Lisp_Overlay): New field `next'.
2811
2812 * buffer.h (struct buffer): Change overlays_before and overlays_after
2813 from Lisp lists of overlays to pointers to overlays.
2814
2815 * buffer.c (overlay_strings, recenter_overlay_lists):
2816 Fix typo in eassert in last commit.
2817 (unchain_overlay): New function.
2818 (add_overlay_mod_hooklist): Use AREF.
2819 (copy_overlays, reset_buffer, overlays_at, overlays_in)
2820 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
2821 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
2822 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
2823 (report_overlay_modification, evaporate_overlays, init_buffer_once):
2824 Adjust to new type of overlays_(before|after).
2825
2826 * alloc.c (mark_object): Mark the new `next' field of overlays.
2827 (mark_buffer): Manually mark the overlays_(after|before) fields.
2828
2829 * coding.c (run_pre_post_conversion_on_str):
2830 * editfns.c (overlays_around):
2831 * xdisp.c (load_overlay_strings):
2832 * fileio.c (Finsert_file_contents):
2833 * indent.c (current_column):
2834 * insdel.c (signal_before_change, signal_after_change):
2835 * intervals.c (set_point_both):
2836 * print.c (temp_output_buffer_setup): Use new type for
2837 overlays_(before|after).
2838
2839 2003-07-08 Stefan Monnier <monnier@cs.yale.edu>
2840
2841 * buffer.c (report_overlay_modification): Don't run hooks while
2842 traversing the list of overlays.
2843
2844 * buffer.h (struct buffer): Use an int for overlay_center.
2845 (overlays_at, evaporate_overlays, recenter_overlay_lists)
2846 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
2847
2848 * buffer.c (reset_buffer, recenter_overlay_lists)
2849 (adjust_overlays_for_insert, adjust_overlays_for_delete)
2850 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
2851 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
2852 (overlays_at, evaporate_overlays, recenter_overlay_lists)
2853 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
2854
2855 * xdisp.c (fast_find_position): Remove unused var.
2856
2857 * cmds.c (Qexpand_abbrev): New sym.
2858 (syms_of_cmds): Initialize it.
2859 (internal_self_insert): Use it to call expand-abbrev.
2860
2861 2003-07-09 Kim F. Storm <storm@cua.dk>
2862
2863 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if emacs
2864 was configured with --without-xim.
2865 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
2866
2867 2003-07-07 Richard M. Stallman <rms@gnu.org>
2868
2869 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
2870
2871 * alloc.c (Fgarbage_collect): Doc fix.
2872
2873 2003-07-07 Nozomu Ando <nand@mac.com> (tiny change)
2874
2875 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
2876
2877 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
2878
2879 * minibuf.c (read_minibuf): UNGCPRO before returning.
2880 (Ftry_completion, Fall_completions): Doc fix.
2881
2882 * alloc.c (live_float_p): Check that p is not past the `floats' array,
2883 now that `floats' is not the last element of the struct any more.
2884
2885 2003-07-06 Jason Rumney <jasonr@gnu.org>
2886
2887 * w32term.h (ClipboardSequence_Proc): New type.
2888
2889 * w32fns.c (clipboard_sequence_fn): New variable.
2890 (globals_of_w32fns): Initialize it.
2891
2892 * w32select.c (last_clipboard_sequence_number): New variable.
2893 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
2894 number if possible.
2895
2896 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
2897
2898 * m/amdx86-64.h (MARKBIT):
2899 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
2900 MARKBIT and ARRAY_MARK_FLAG any more.
2901
2902 * m/hp800.h (XSETMARKBIT):
2903 * m/sr2k.h (XSETMARKBIT):
2904 * lisp.h (XSETMARKBIT): Remove unused macro.
2905
2906 * lisp.h (mark_object): Change prototype.
2907
2908 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
2909 (last_marked): Change accordingly.
2910 (mark_interval, mark_maybe_object, mark_maybe_pointer)
2911 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
2912 (mark_buffer): Update calls to mark_object.
2913
2914 * bytecode.c (mark_byte_stack):
2915 * fns.c (sweep_weak_table):
2916 * keyboard.c (mark_kboards): Update calls to mark_object.
2917
2918 2003-07-06 Jason Rumney <jasonr@gnu.org>
2919
2920 * alloc.c (struct ablock): Only include padding when there is some.
2921
2922 2003-07-04 Stefan Monnier <monnier@cs.yale.edu>
2923
2924 * alloc.c (ALIGN): Add casts to simplify usage.
2925 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
2926 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
2927 (struct ablock, struct ablocks): New types.
2928 (free_ablock): New global var.
2929 (lisp_align_malloc, lisp_align_free): New functions.
2930 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
2931 (struct float_block): Reorder and add gcmarkbits.
2932 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
2933 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
2934 (init_float, make_float): Use lisp_align_malloc.
2935 (free_float, live_float_p): Don't use `type' any more.
2936 (make_float): Use FLOAT_UNMARK to access to mark bit.
2937 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
2938 Use FLOAT_MARKED_P to access the mark bit.
2939 (pure_alloc): Simplify use of ALIGN.
2940 (mark_object): Use FLOAT_MARK to access the mark bit.
2941 (gc_sweep): Use new macros to access the float's mark bit.
2942 (init_alloc_once): Init free_ablock.
2943
2944 * lisp.h (struct Lisp_Float): Remove unused field `type'.
2945
2946 2003-06-27 Stefan Monnier <monnier@cs.yale.edu>
2947
2948 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
2949 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
2950 (allocate_buffer): Move.
2951 (string_bytes): Don't mask markbit of `size_byte'.
2952 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
2953 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
2954 Use the `size' field of buffers (rather than the `name' field) for
2955 the mark bit, as is done for all other vectorlike objects.
2956 Use the new macros to access the mark bit of vectorlike objects.
2957
2958 2003-06-26 Richard M. Stallman <rms@gnu.org>
2959
2960 * puresize.h (BASE_PURESIZE): Increment base size.
2961
2962 * xdisp.c (fast_find_position): Enable Gerd's new definition.
2963
2964 * xterm.c (xim_initialize): Undo previous change.
2965
2966 2003-06-26 Stefan Monnier <monnier@cs.yale.edu>
2967
2968 * alloc.c (survives_gc_p): Simplify.
2969
2970 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
2971
2972 * window.c (Fset_window_dedicated_p): Simplify.
2973 (display_buffer_1): Don't raise the win from which minibuf was entered.
2974 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
2975 (Fminibuffer_selected_window): Simplify.
2976
2977 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
2978
2979 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
2980 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
2981
2982 * insdel.c (check_markers, adjust_markers_for_delete)
2983 (adjust_markers_for_insert, adjust_markers_for_replace)
2984 (prepare_to_modify_buffer, RESTORE_VALUE):
2985 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
2986 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
2987 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
2988 * alloc.c (Fmake_marker, free_marker, gc_sweep):
2989 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
2990 * editfns.c (save_excursion_restore, transpose_markers):
2991 * window.c (delete_window):
2992 * xdisp.c (message_dolog): Update for new types.
2993
2994 2003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2995
2996 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
2997 (realize_default_face): Use default_face_done_p for the force_p
2998 argument to set_lface_from_font_name. Set default_face_done_p to one.
2999
3000 * frame.c (make_frame): Initialize default_face_done_p.
3001
3002 * frame.h (struct frame): Add default_face_done_p.
3003
3004 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
3005 will be defined.
3006
3007 2003-06-25 Stefan Monnier <monnier@cs.yale.edu>
3008
3009 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
3010 Initialize the new field `gcmarkbit'.
3011 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
3012 (mark_interval_tree): Don't mark the tree separately from the nodes.
3013 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
3014 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
3015 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
3016
3017 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
3018 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
3019 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
3020 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
3021 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
3022
3023 2003-06-24 Dave Love <fx@gnu.org>
3024
3025 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
3026
3027 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
3028 from gnulib.
3029
3030 2003-06-21 Richard M. Stallman <rms@gnu.org>
3031
3032 * fileio.c (Fwrite_region): Alternate messages
3033 for append and partial write.
3034
3035 * keyboard.c (read_key_sequence): When converting upcase fn key to
3036 downcase, update fkey and keytran so `backspace' gets translated.
3037
3038 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
3039
3040 * process.c (wait_reading_process_input): Don't signal SIGIO
3041 in batch mode.
3042
3043 2003-06-17 Kenichi Handa <handa@m17n.org>
3044
3045 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
3046 composite.h.
3047
3048 * xselect.c: Don't include charset.h, coding.h, composite.h.
3049 (Qforeign_selection): New variable.
3050 (syms_of_xselect): Intern and static it.
3051 (selection_data_to_lisp_data): Return a unibyte string made from
3052 data with `foreign-selection' text property.
3053
3054 2003-06-15 Stefan Monnier <monnier@cs.yale.edu>
3055
3056 * termhooks.h (EVENT_INIT): New macro.
3057
3058 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
3059
3060 * alloc.c (mark_kboards): Move to keyboard.c.
3061
3062 * keyboard.c (record_asynch_buffer_change, read_avail_input):
3063 * xterm.c (x_dispatch_event):
3064 * xmenu.c (find_and_call_menu_selection):
3065 * xdisp.c (handle_tool_bar_click):
3066 * w32menu.c (menubar_selection_callback):
3067 * sysdep.c (kbd_input_ast, read_input_waiting):
3068 * msdos.c (dos_rawgetc):
3069 * macterm.c (mac_check_for_quit_char):
3070 * macmenu.c (menubar_selection_callback):
3071 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
3072 data to kbd_buffer_store_event.
3073
3074 2003-06-15 Kim F. Storm <storm@cua.dk>
3075
3076 * xdisp.c (x_fix_overlapping_area): Always use area relative X
3077 to fix redisplay problem with tall characters (such as \e,AC\e(B).
3078
3079 2003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
3080
3081 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
3082
3083 2003-06-12 Kenichi Handa <handa@m17n.org>
3084
3085 * fileio.c (Fwrite_region): Save and restore restriction.
3086
3087 2003-06-12 Dave Love <fx@gnu.org>
3088
3089 * alloca.c (alloca): Declare arg as size_t.
3090
3091 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
3092 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
3093
3094 2003-06-11 Dave Love <fx@gnu.org>
3095
3096 * search.c (shrink_regexp_cache): Use xrealloc.
3097 (syms_of_search): Use xmalloc.
3098
3099 2003-06-10 Kim F. Storm <storm@cua.dk>
3100
3101 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
3102 Adjust phys_cursor.x to be relative to window box, rather than
3103 text area before checking -- to ensure cursor is redrawn when
3104 exposing window.
3105 Note: This also fixes a similar (older) bug if display margins
3106 are present.
3107
3108 2003-06-06 Kenichi Handa <handa@m17n.org>
3109
3110 * coding.c (encoding_buffer_size): If coding->type is
3111 coding_type_ccl, double magnification on CRLF encoding.
3112
3113 2003-06-06 Jason Rumney <jasonr@gnu.org>
3114
3115 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
3116 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
3117
3118 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
3119 Mac too.
3120
3121 2003-06-05 Dave Love <fx@gnu.org>
3122
3123 * strftime.c: Merge changes from gnulib.
3124
3125 * mktime.c (__mktime_internal): Merge changes from gnulib
3126 involving year 69 and dst2.
3127
3128 Changes to merge with gnulib version and be consistent with the
3129 autoconf test:
3130
3131 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
3132 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
3133 [HAVE_LOCALE_H]: Include locale.h.
3134 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
3135
3136 2003-06-05 Kim F. Storm <storm@cua.dk>
3137
3138 * window.c (coordinates_in_window): Convert X and Y to window
3139 relative coordinates inside mode-line and header-line parts.
3140 Convert X and Y to margin area relative coordinates inside left
3141 and right display margin parts.
3142
3143 2003-06-05 Jason Rumney <jasonr@gnu.org>
3144
3145 * w32fns.c (add_system_logical_colors_to_map): New function.
3146 (Fx_open_connection): Use it.
3147
3148 2003-06-04 Stefan Monnier <monnier@cs.yale.edu>
3149
3150 * process.c (allocate_pty): Revert part of the previous patch.
3151 (Faccept_process_output): Simplify.
3152
3153 2003-06-04 Jason Rumney <jasonr@gnu.org>
3154
3155 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
3156
3157 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
3158 (lispy_mouse_wheel_names): Remove.
3159 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
3160 Always define drag_and_drop_syms.
3161
3162 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
3163 WHEEL_EVENT events.
3164
3165 2003-06-03 Stefan Monnier <monnier@cs.yale.edu>
3166
3167 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
3168
3169 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
3170
3171 2003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3172
3173 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
3174 menu item label.
3175
3176 2003-06-03 Richard M. Stallman <rms@gnu.org>
3177
3178 * window.c (Fwindow_edges): Doc fix.
3179 (Fwindow_pixel_edges, Fwindow_inside_edges)
3180 (Fwindow_inside_pixel_edges): New functions.
3181 (syms_of_window): defsubr them.
3182
3183 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
3184 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
3185
3186 2003-06-02 Stefan Monnier <monnier@cs.yale.edu>
3187
3188 * dispnew.c (Fsit_for): Don't lie about the number of args.
3189
3190 2003-06-02 Dave Love <fx@gnu.org>
3191
3192 * callproc.c: Use HAVE_FCNTL_H, not USG5.
3193 (syms_of_callproc) <process-environment>: Doc fix.
3194
3195 * doc.c: Use HAVE_FCNTL_H, not USG5.
3196
3197 * xfaces.c (font_rescale_ratio): Fix for K&R.
3198
3199 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
3200
3201 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
3202
3203 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
3204
3205 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
3206 (xg_create_frame_widgets): Use ENCODE_UTF_8.
3207
3208 * xterm.c (Qutf_8): Move to coding.c
3209
3210 * xmenu.c (ENCODE_MENU_STRING): New.
3211 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
3212 Use it.
3213
3214 * coding.h (ENCODE_UTF_8): New.
3215 (Qutf_8): Declare.
3216
3217 * coding.c (Qutf_8): New.
3218 (syms_of_coding): Intern it.
3219
3220 * fns.c: Doc fixes.
3221
3222 2003-06-02 Kenichi Handa <handa@m17n.org>
3223
3224 * buffer.c (Fset_buffer_multibyte): Fix previous change.
3225
3226 2003-06-01 Stefan Monnier <monnier@cs.yale.edu>
3227
3228 * lread.c (openp): Make sure STR is a string.
3229
3230 2003-06-01 David Ponce <david@dponce.com>
3231
3232 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
3233 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
3234
3235 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
3236 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
3237 (discard_mouse_events): Discard WHEEL_EVENT events too.
3238 (lispy_wheel_names, wheel_syms): New.
3239 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
3240 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
3241 defined.
3242 (make_lispy_event): Add WHEEL_EVENT handler.
3243
3244 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
3245 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
3246 WHEEL_EVENT events.
3247
3248 2003-05-31 John Paul Wallington <jpw@gnu.org>
3249
3250 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
3251 timer are in lisp/emacs-lisp.
3252
3253 2003-05-31 Kenichi Handa <handa@m17n.org>
3254
3255 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
3256 region when a buffer is changed to unibyte.
3257
3258 * charset.h (VALID_LEADING_CODE_P): New macro.
3259 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
3260
3261 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
3262 is nonzero, accept multibyte form of eight-bit-control chars.
3263 (decode_composition_emacs_mule): Likewise.
3264 (decode_coding_emacs_mule): Likewise.
3265 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
3266 multibyte form of eight-bit-control chars.
3267
3268 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
3269 (Finsert_file_contents): If coding-system-for-read is bound to
3270 Qauto_save_coding, use the coding system emacs-mule with special
3271 setting for recovering a file.
3272 (choose_write_coding_system): On auto saving, use the coding
3273 system emacs-mule with special setting for auto saving.
3274 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
3275
3276 2003-05-30 Kenichi Handa <handa@m17n.org>
3277
3278 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
3279 properly before calling ccl_driver.
3280
3281 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
3282
3283 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
3284 nonzero.
3285 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
3286 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
3287
3288 2003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
3289
3290 * xfaces.c (realize_default_face): Do not abort if lface is
3291 non-existent - reverts change from 2003-05-19.
3292
3293 2003-05-29 Kenichi Handa <handa@m17n.org>
3294
3295 * coding.c (decode_coding_iso2022): Pay attention to the byte
3296 sequence of CTEXT extended segment, and retain those bytes as is.
3297
3298 2003-05-28 Kenichi Handa <handa@m17n.org>
3299
3300 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
3301 of CODING_REPLACEMENT_CHARACTER.
3302 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
3303 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
3304 check this flag on encoding.
3305 (encode_coding_sjis_big5): Check
3306 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
3307 (Fset_terminal_coding_system_internal): Set
3308 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
3309 instead of setting CODING_FLAG_ISO_SAFE flag in
3310 terminal_coding.flags.
3311
3312 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
3313 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
3314 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
3315
3316 2003-05-28 Richard M. Stallman <rms@gnu.org>
3317
3318 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
3319
3320 * eval.c (unbind_to): Move init of this_binding to separate statement.
3321
3322 2003-05-28 Kim F. Storm <storm@cua.dk>
3323
3324 * xdisp.c (expose_window): Fix error in calculation of
3325 window relative coordinates of area to redisplay.
3326
3327 2003-05-27 Jason Rumney <jasonr@gnu.org>
3328
3329 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
3330
3331 2003-05-27 David Ponce <david@dponce.com>
3332
3333 Handle W32 mouse wheel events as mouse click events, like in X.
3334
3335 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
3336 MOUSE_WHEEL_EVENT anymore.
3337
3338 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
3339 Scrolling down/up the mouse wheel is respectively mapped to mouse
3340 button 4 and 5.
3341 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
3342 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
3343 WM_MOUSEWHEEL events.
3344
3345 2003-05-27 Andreas Schwab <schwab@suse.de>
3346
3347 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
3348
3349 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
3350 partially visible line.
3351
3352 * alloc.c (Fgarbage_collect): Fix last change.
3353
3354 2003-05-26 John Paul Wallington <jpw@gnu.org>
3355
3356 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
3357
3358 2003-05-25 Stefan Monnier <monnier@cs.yale.edu>
3359
3360 * window.c (Fset_window_buffer): Add type of `keep_margins'.
3361 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
3362
3363 * window.h (window_box_text_cols): Declare.
3364
3365 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
3366 (x_draw_vertical_border): Remove unused var `f'.
3367
3368 * xfaces.c (build_scalable_font_name): Remove `unused var
3369 pixel_size' warning.
3370
3371 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
3372
3373 * unexelf.c (unexec): Remove `unused var n' warning.
3374
3375 * strftime.c (my_strftime_localtime_r): Remove `defined but
3376 unused' warning.
3377
3378 * process.c (allocate_pty): Remove `unused var stb' and
3379 `cp might be used uninitialized' warnings.
3380
3381 * dispnew.c (mode_line_string): Remove unused var `f'.
3382
3383 * coding.c (find_safe_codings): Remove unused var `i'.
3384
3385 * bytecode.c (Fbyte_code): Remove `unused val' warning.
3386
3387 * buffer.c (Fkill_buffer): Remove unused var `list'.
3388
3389 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
3390
3391 2003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3392
3393 * frame.c (make_frame): Condition want_fullscreen with
3394 HAVE_WINDOW_SYSTEM.
3395
3396 2003-05-25 Juanma Barranquero <lektu@terra.es>
3397
3398 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
3399 (Fwindow_scroll_bars): Fix typo in docstring.
3400
3401 2003-05-24 Kim F. Storm <storm@cua.dk>
3402
3403 The following changes serve several purposes:
3404
3405 1) Swap the position of fringes and display margins in windows, i.e.
3406 the fringes are now displayed between the margins and the text area
3407 (by default).
3408
3409 2) Allow fringe and scroll bar parameters to be set per-buffer and
3410 per-window (like display margins). Such settings are now stored
3411 in window configurations, preserved when frames are resized, and
3412 copied when windows are split vertically or horizontally.
3413 Several bugs related to display margins have been fixed.
3414
3415 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
3416
3417 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
3418 rather than FRAME_WIDTH (FRAME_FONT (f)).
3419
3420 5) Introduce a consistent naming of variables, members and macros
3421 depending on whether their value is measured in pixels or in
3422 canonical columns/lines. Pixel dimensions are named *_width and
3423 *_height, while canonical columns/lines are named *_cols and
3424 *_lines. Pixel positions are named *_x and *_y, while column/line
3425 positions are named *_col and *_line.
3426
3427 6) Consolidate more of the X, W32, and MAC gui code by moving
3428 common data into struct frame, and generalize it for the non-gui
3429 case by using suitable defaults.
3430
3431 7) Cleanup and consolidate the macros controlling frame and window
3432 layout into frame.h and window.h, and generalize the use of the
3433 various window_box_* functions (enhanced to handle the new fringe
3434 position and the per-window fringe and scroll bar settings).
3435
3436 * frame.h (struct frame): Rename members height to text_lines,
3437 width to text_cols, window_height to total_lines, window_width to
3438 total_cols, new_height to new_text_lines, new_width to
3439 new_text_cols. All uses changed.
3440 (struct frame): New members which consolidate common members of
3441 x_output, w32_output, and mac_output structures: left_pos,
3442 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
3443 win_gravity, size_hint_flags, border_width, internal_border_width,
3444 line_height, fringe_cols, left_fringe_width, right_fringe_width,
3445 want_fullscreen. All uses changed.
3446 (struct frame): New member column_width contaning the canonical
3447 column width, analogue to line_height. All uses changed.
3448 (struct frame): Rename members scroll_bar_pixel_width to
3449 config_scroll_bar_width, and scroll_bar_cols to
3450 config_scroll_bar_cols. All uses changed.
3451 (struct frame): New member scroll_bar_actual_width which
3452 consolidates and renames the vertical_scroll_bar_extra member of
3453 x_output, w32_output, and mac_output structures. All uses changed.
3454 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
3455 from x/w32/macterm.h files. All uses changed. Also change code
3456 which referred to f->output_data...->pixel_height.
3457 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
3458 from x/w32/macterm.h files. All uses changed. Also change code
3459 which referred to f->output_data...->pixel_width.
3460 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
3461 Also change code which referred to f->height.
3462 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
3463 Also change code which referred to f->width.
3464 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
3465 to update new_text_lines and new_text_cols members directly.
3466 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
3467 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
3468 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
3469 FRAME_SCROLL_BAR_COLS. All uses changed.
3470 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
3471 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
3472 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
3473 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
3474 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
3475 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
3476 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
3477 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
3478 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
3479 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
3480 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
3481 return line_height member (it now has proper value also for
3482 non-window frames).
3483 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
3484 return new column_width member (rather than the default font width).
3485 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
3486 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
3487 from x/w32/macterm.h files. Unconditionally return corresponding
3488 member of frame structure (they now have proper values also for
3489 non-window frames).
3490 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
3491 Calculate return value from left and right widths.
3492 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
3493 internal_border_width member (has proper value for non-window frame).
3494 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
3495 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
3496 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
3497 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
3498 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
3499 consolidated from xterm.h, macterm.h, and w32term.h.
3500 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
3501 consolidated from xterm.h, macterm.h, and w32term.h.
3502 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
3503 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
3504 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
3505 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
3506 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
3507 consolidated from x/mac/w32term.h.
3508 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
3509 consolidated from x/mac/w32term.h.
3510 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
3511 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
3512 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
3513 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
3514
3515 * window.h (struct window): Rename members left to left_col,
3516 top to top_line, height to total_lines, width to total_cols,
3517 left_margin_width to left_margin_cols, right_margin_width to
3518 right_margin_cols, orig_height to orig_total_lines, orig_top to
3519 orig_top_line. All uses changed.
3520 (struct window): New members left_fringe_width, right_fringe_width,
3521 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
3522 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
3523 New macros primarily used to simplify other macros.
3524 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
3525 referred to XINT (w->width).
3526 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
3527 referred to XINT (w->height).
3528 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
3529 referred to XINT (w->width) * canon_x_unit.
3530 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
3531 referred to XINT (w->height) * canon_y_unit.
3532 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
3533 referred to XINT (w->left).
3534 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
3535 all uses and code that referred to XINT (w->left) + XINT (w->width).
3536 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
3537 referred to XINT (w->top).
3538 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
3539 referred to XINT (w->top) + XINT (w->height).
3540 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
3541 referred to XINT (w->left) * canon_x_unit.
3542 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
3543 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
3544 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
3545 referred to XINT (w->top) * canon_y_unit.
3546 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
3547 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
3548 (WINDOW_LEFTMOST_P): New macro.
3549 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
3550 All uses changed.
3551 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
3552 All uses changed.
3553 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
3554 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
3555 Do not exclude left fringe width.
3556 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
3557 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
3558 Do not exclude fringe widths.
3559 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
3560 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
3561 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
3562 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
3563 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
3564 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
3565 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
3566 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
3567 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
3568 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
3569 New macros. Change code which referenced corresponding
3570 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
3571 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
3572 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
3573 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
3574 allow per-window scroll-bar settings.
3575 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
3576 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
3577 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
3578 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
3579 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
3580 FRAME_SCROLL_BAR_WIDTH.
3581 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
3582 (WINDOW_SCROLL_BAR_AREA_X): New macros.
3583 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
3584 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
3585 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
3586 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
3587 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
3588 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
3589 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
3590 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
3591 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
3592 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
3593 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
3594 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
3595 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
3596 (window_from_coordinates): Update prototype.
3597 (Fset_window_buffer): Update EXFUN.
3598 (set_window_buffer): Update prototype.
3599
3600 * dispextern.h (struct glyph_matrix): Rename members window_left_x
3601 to window_left_col, window_top_y to window_top_line. All uses
3602 changed.
3603 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
3604 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
3605 internal_border_width is now set to 0 for non-window frames.
3606 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
3607 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
3608 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
3609 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
3610 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
3611 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
3612 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
3613 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
3614 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
3615 Move to window.h and renamed [see window.h changes].
3616 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
3617 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
3618 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
3619 Use WINDOW_TOTAL_LINES.
3620 (frame_update_line_height): Remove prototype.
3621
3622 * buffer.h (struct buffer): Rename members measured in columns:
3623 left_margin_width to left_margin_cols, right_margin_width to
3624 right_margin_cols. All uses changed.
3625 New members left_fringe_width, right_fringe_width,
3626 fringes_outside_margins for per-buffer fringe settings.
3627 New members scroll_bar_width and vertical_scroll_bar_type for
3628 per-buffer scroll bar settings.
3629
3630 * buffer.c (init_buffer_once): Set buffer_defaults and
3631 buffer_local_flags for new buffer-local variables
3632 left_fringe_width, right_fringe_width, fringes_outside_margins,
3633 scroll_bar_width, and vertical_scroll_bar_type.
3634 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
3635 default-* variables for them.
3636
3637 * dispnew.c: Make (many) trivial substitutions for renamed and
3638 new macros in dispextern.h, frame.h and window.h.
3639 (mode_line_string): No need to adjust width for mode lines, as it
3640 is already adjusted by the caller.
3641 (marginal_area_string): Handle fringes inside/outside margins.
3642
3643 * frame.c: Make (many) trivial substitutions for renamed and
3644 new macros in dispextern.h, frame.h and window.h.
3645 (make_frame): Initialize left_fringe_width, right_fringe_width,
3646 fringe_cols, scroll_bar_actual_width, border_width,
3647 internal_border_width, column_width, line_height, x_pixels_diff,
3648 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
3649 members with values suitable for a non-window frames.
3650
3651 * gtkutil.c: Make (many) trivial substitutions for renamed and
3652 new macros in dispextern.h, frame.h and window.h.
3653
3654 * indent.c: Make (few) trivial substitutions for renamed and
3655 new macros in dispextern.h, frame.h and window.h.
3656
3657 * keyboard.c: Make (many) trivial substitutions for renamed and
3658 new macros in dispextern.h, frame.h and window.h.
3659 (make_lispy_event): Use window positions returned from
3660 window_from_coordinates when constructing the lisp event for
3661 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
3662 (incorrect) values locally.
3663 (make_lispy_movement): Use window positions returned from
3664 window_from_coordinates when constructing the lisp event, rather
3665 than calculating (incorrect) values locally.
3666
3667 * scroll.c: Make (some) trivial substitutions for renamed and
3668 new macros in dispextern.h, frame.h and window.h.
3669
3670 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
3671 scroll-bars.
3672
3673 * sysdep.c: Make (few) trivial substitutions for renamed and
3674 new macros in dispextern.h, frame.h and window.h.
3675
3676 * term.c: Make (some) trivial substitutions for renamed and
3677 new macros in dispextern.h, frame.h and window.h.
3678
3679 * widget.c: Make (few) trivial substitutions for renamed and
3680 new macros in dispextern.h, frame.h and window.h.
3681
3682 * window.c: Make (many) trivial substitutions for renamed and
3683 new macros in dispextern.h, frame.h and window.h.
3684 (make_window): Initialize new members
3685 left_margin_cols, right_margin_cols, left_fringe_width,
3686 right_fringe_width, fringes_outside_margins, scroll_bar_width,
3687 and vertical_scroll_bar_type.
3688 (coordinates_in_window): Adapted to new fringe/margin positions
3689 and per-window fringes and scroll-bars.
3690 Fix bug related to incorrectly adjusting coordinates by
3691 frame's internal_border_width (the effect normally negible since
3692 the internal_border_width is typically 0 or 1 pixel, but very
3693 noticeable for an internal_border_width of e.g. 25 pixels).
3694 Upon successful return (other than ON_NOTHING), the coordinates
3695 are now always properly converted to window relative for the
3696 given display element.
3697 (window_from_coordinates): Add new parameters wx and wy to
3698 return the window relative x and y position in the returned
3699 window and part. A null arg means, don't return the position.
3700 All callers changed.
3701 (adjust_window_margins): New function which may reduce the width
3702 of the display margins if a window's text area is too small after
3703 resizing or splitting windows.
3704 (size_window): Fix bug that did not account for display margin
3705 widths when checking the minimum width of a window; use
3706 adjust_window_margins.
3707 (set_window_buffer): Call Fset_window_fringes and
3708 Fset_window_scroll_bars to setup per-window elements.
3709 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
3710 existing display margin, fringe widths, and scroll bar settings
3711 (e.g. after splitting a window or resizing the frame).
3712 All callers changed.
3713 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
3714 (Fsplit_window): Duplicate original window's display margin,
3715 fringe, and scroll-bar settings; then call Fset_window_buffer with
3716 KEEP_MARGINS non-nil. This fixes a bug which caused a split
3717 window to only preserve the display margins in one of the windows.
3718 When splitting horizontally, call adjust_window_margins on both
3719 windows to ensure that the text area of the new windows is non too
3720 narrow. This fixes a bug which could cause emacs to trap if the
3721 width of the split window was less than the width of the display
3722 margins.
3723 (window_box_text_cols): Renamed from window_internal_width.
3724 All uses changed. Adapt to per-window fringes and scroll bars.
3725 Fix bug that caused vertical separator to be subtracted also on
3726 window frames. Fix another bug that did not reduce the returned
3727 value by the columns used for display margins.
3728 (window_scroll_line_based): Fix bug related to scrolling too much
3729 when display margins are present (implicitly fixed by the fix to
3730 window_box_text_cols).
3731 (scroll_left, scroll_right): Fix bug related to scrolling too far
3732 by default when display margins are present (implicitly fixed by
3733 the fix to window_box_text_cols).
3734 (struct saved_window): Rename members left to left_col, top to
3735 top_line, width to total_cols, height to total_lines, orig_top to
3736 orig_top_line, orig_height to orig_total_lines. All uses changed.
3737 New members left_margin_cols, right_margin_cols,
3738 left_fringe_width, right_fringe_width, fringes_outside_margins,
3739 scroll_bar_width, and vertical_scroll_bar_type for saving
3740 per-window display elements.
3741 (Fset_window_configuration): Restore display margins, fringes,
3742 and scroll bar settings. This fixes a bug which caused display
3743 margins to be discarded when saving and restoring a window
3744 configuration.
3745 (save_window_save): Save display margins, fringes, and scroll bar
3746 settings. This fixes a bug which caused display margins to be
3747 discarded when saving and restoring a window configuration.
3748 (Fset_window_margins): Do nothing if display margins are not
3749 really changed. Otherwise, call adjust_window_margins to ensure
3750 the text area doesn't get too narrow. This fixes a bug which
3751 could cause emacs to trap if setting display margins wider than
3752 the width of the window.
3753 (Fset_window_fringes): New defun to allow user to specifically set
3754 this window's fringe widths and position vs. display margins.
3755 (Fwindow_fringes): New defun to return window's actual fringe
3756 settings.
3757 (Fset_window_scroll_bars): New defun to allow user to specifically
3758 set this window's scroll bar width and position.
3759 (Fwindow_scroll_bars): New defun to return window's actual scroll
3760 bar settings.
3761 (compare_window_configurations): Also compare display margins,
3762 fringes, and scroll bar settings.
3763 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
3764
3765 * xdisp.c: Make (many) trivial substitutions for renamed and
3766 new macros in dispextern.h, frame.h and window.h.
3767 (window_box_width): Adapt to per-window fringes and scroll bars,
3768 and new fringe vs. display margin position. Note that returned
3769 value is no longer guaranteed to be a whole multiple of the frame
3770 column width, since per-window fringes may now be any width.
3771 (window_box_left_offset): New function like window_box_left, but
3772 value is relative to left border of window (rather than frame).
3773 (window_box_right_offset): New function like window_box_right,
3774 but value is relative to left border of window.
3775 (window_box_left): Adapt to per-window fringes and scroll bars,
3776 and new fringe vs. display margin position. Simplify by using
3777 WINDOW_LEFT_EDGE_X and window_box_left_offset.
3778 (window_box): Allow null args for unnecessary return values;
3779 change/simplify relevant callers.
3780 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
3781 and new fringe vs. display margin position.
3782 Use window_box_left_offset and window_box_right_offset
3783 (get_glyph_string_clip_rect): Adapt to per-window fringes and
3784 scroll bars, and new fringe vs. display margin position.
3785 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
3786 (draw_fringe_bitmap): Rework to handle per-window fringes and new
3787 fringe vs. display margin position.
3788 (hscroll_window_tree): Use window_box_width instead of window_box.
3789 (redisplay_window): Adapt to per-window scroll bars.
3790 (draw_glyphs): Rework to handle per-window fringes and scroll
3791 bars, and new fringe vs. display margin position.
3792 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
3793 (x_clear_end_of_line): Adapt to per-window fringes and scroll
3794 bars, and new fringe vs. display margin position. Fix bug which
3795 increased total width of full_width rows by width of scroll bars
3796 although window's total width already includes that.
3797 (x_fix_overlapping_area): Simplify using window_box_left_offset.
3798 (expose_area): Simplify using window_box_left_offset.
3799 (x_draw_vertical_border): Handle per-window scroll bar settings,
3800 mixing windows with left, right and no scroll bars.
3801
3802 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
3803 where it's used in x_list_fonts (for clarity).
3804 (frame_update_line_height): Remove unused function; functionality
3805 is now done directly when setting the default font in x_set_font.
3806
3807 * xfns.c: Make (many) trivial substitutions for renamed and
3808 new macros in dispextern.h, frame.h and window.h.
3809
3810 * xmenu.c: Make (some) trivial substitutions for renamed and
3811 new macros in dispextern.h, frame.h and window.h.
3812
3813 * xterm.h (struct x_output): Move members left_pos, top_pos,
3814 border_width, pixel_height, pixel_width, line_height,
3815 internal_border_width, vertical_scroll_bar_extra,
3816 left_fringe_width, right_fringe_width, fringe_cols,
3817 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
3818 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
3819 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
3820 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
3821 (PIXEL_WIDTH, PIXEL_HEIGHT)
3822 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
3823 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
3824 frame.h and renamed [see frame.h changes].
3825 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
3826 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
3827 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
3828 and renamed [see frame.h changes].
3829
3830 * xterm.c: Make (several) trivial substitutions for renamed and
3831 new macros in dispextern.h, frame.h and window.h.
3832 (x_draw_glyph_string_box): Adapt to per-window fringes and
3833 scroll-bars.
3834 (scroll_run): Adapt to new fringe position.
3835 (glyph_rect): Use window coordinates returned from
3836 window_from_coordinates rather than frame_to_window_pixel_xy.
3837 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
3838 scroll-bars.
3839 (handle_one_xevent): Simplify a USE_GTK conditional.
3840 (x_clip_to_row): Remove superfluous whole_line_p arg and code
3841 (fringes are now inside margins, i.e. always in the clipping area).
3842 All callers changed.
3843 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
3844 directly, then call compute_fringe_widths. Don't call
3845 frame_update_line_height.
3846
3847 * w32term.h (struct w32_output): Move members left_pos, top_pos,
3848 border_width, pixel_height, pixel_width, line_height,
3849 internal_border_width, vertical_scroll_bar_extra,
3850 left_fringe_width, right_fringe_width, fringe_cols,
3851 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
3852 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
3853 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
3854 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
3855 (PIXEL_WIDTH, PIXEL_HEIGHT)
3856 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
3857 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
3858 frame.h and renamed [see frame.h changes].
3859 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
3860 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
3861 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
3862 and renamed [see frame.h changes].
3863
3864 * w32term.c: Make (several) trivial substitutions for renamed and
3865 new macros in dispextern.h, frame.h and window.h.
3866 (x_draw_glyph_string_box): Adapt to per-window fringes and
3867 scroll-bars.
3868 (glyph_rect): Use window coordinates returned from
3869 window_from_coordinates rather than frame_to_window_pixel_xy.
3870 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
3871 scroll-bars.
3872 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
3873 (fringes are now inside margins, i.e. always in the clipping area).
3874 All callers changed.
3875 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
3876 directly, then call compute_fringe_widths. Don't call
3877 frame_update_line_height.
3878
3879 * w32console.c: Make (few) trivial substitutions for renamed and
3880 new macros in dispextern.h, frame.h and window.h.
3881
3882 * w32fns.c: Make (many) trivial substitutions for renamed and
3883 new macros in dispextern.h, frame.h and window.h.
3884
3885 * w32menu.c: Make (few) trivial substitutions for renamed and
3886 new macros in dispextern.h, frame.h and window.h.
3887
3888 * macterm.h (struct mac_output): Move members left_pos, top_pos,
3889 border_width, pixel_height, pixel_width, line_height,
3890 internal_border_width, vertical_scroll_bar_extra,
3891 left_fringe_width, right_fringe_width, fringe_cols,
3892 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
3893 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
3894 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
3895 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
3896 (PIXEL_WIDTH, PIXEL_HEIGHT)
3897 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
3898 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
3899 frame.h and renamed [see frame.h changes].
3900 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
3901 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
3902 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
3903 and renamed [see frame.h changes].
3904
3905 * macterm.c: Make (several) trivial substitutions for renamed and
3906 new macros in dispextern.h, frame.h and window.h.
3907 (x_draw_glyph_string_box): Adapt to per-window fringes and
3908 scroll-bars.
3909 (glyph_rect): Use window coordinates returned from
3910 window_from_coordinates rather than frame_to_window_pixel_xy.
3911 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
3912 scroll-bars.
3913 (x_clip_to_row): Remove superfluous whole_line_p arg and code
3914 (fringes are now inside margins, i.e. always in the clipping area).
3915 All callers changed.
3916 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
3917 directly, then call compute_fringe_widths. Don't call
3918 frame_update_line_height.
3919
3920 * macfns.c: Make (several) trivial substitutions for renamed and
3921 new macros in dispextern.h, frame.h and window.h.
3922 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
3923
3924 * macmenu.c: Make (few) trivial substitutions for renamed and
3925 new macros in dispextern.h, frame.h and window.h.
3926
3927 * msdos.h (struct x_output): Remove members left_pos, top_pos,
3928 and line_height, and use corresponding new members in struct
3929 frame. All uses changed.
3930 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
3931 superseeded by corresponding macros in frame.h.
3932
3933 * msdos.c: Make (several) trivial substitutions for renamed and
3934 new macros in dispextern.h, frame.h and window.h.
3935 (IT_note_mouse_highlight): Use updated window coordinates returned
3936 by window_from_coordinates, rather than adjusting them locally.
3937 (internal_terminal_init): No need to initialize line_height here;
3938 it now defaults to 1.
3939
3940 2003-05-24 Stefan Monnier <monnier@cs.yale.edu>
3941
3942 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
3943 dropping `down' events.
3944
3945 2003-05-24 Andreas Schwab <schwab@suse.de>
3946
3947 * coding.c (find_safe_codings): Fix last change.
3948
3949 2003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
3950
3951 * xfns.c (x_window): Fix typo from 2003-05-21 change.
3952
3953 2003-05-23 Stefan Monnier <monnier@cs.yale.edu>
3954
3955 * xdisp.c (display_mode_element): Increase max depth.
3956 Simplify the error handling code. Use a different error string
3957 for the case where we hit the depth limit.
3958
3959 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
3960
3961 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
3962
3963 2003-05-21 Stefan Monnier <monnier@cs.yale.edu>
3964
3965 * intervals.c (get_local_map): Don't get char-property of previous
3966 point any more: get_pos_property already does it and better.
3967
3968 2003-05-21 Dave Love <fx@gnu.org>
3969
3970 [Merged from unicode branch.]
3971
3972 * xfns.c (x_window, x_window): Use use_xim.
3973
3974 * xterm.c (use_xim): Initialize.
3975 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
3976 (x_term_init): Maybe set use_xim.
3977
3978 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
3979
3980 2003-05-21 Jason Rumney <jasonr@gnu.org>
3981
3982 * unexw32.c (_start): Remove _fmode initialization.
3983
3984 * emacs.c (main) [WINDOWSNT]: Move it here.
3985
3986 2003-05-20 Dave Love <fx@gnu.org>
3987
3988 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
3989
3990 2003-05-19 Richard M. Stallman <rms@gnu.org>
3991
3992 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
3993 as value for QCfont attribute.
3994 (realize_default_face): lface should already exist; crash if not.
3995 Specify 0 for FORCE_P when calling set_lface_from_font_name.
3996
3997 * frame.c (Fignore_event): Doc fix.
3998
3999 2003-05-19 Kenichi Handa <handa@m17n.org>
4000
4001 * coding.c (decode_coding_string): Handle post-read-conversion
4002 even if the coding doesn't require decoding.
4003
4004 2003-05-18 Richard M. Stallman <rms@gnu.org>
4005
4006 * callproc.c (Fcall_process_region): Doc fix.
4007
4008 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
4009
4010 * lread.c (Fload): Print a message if package is obsolete.
4011
4012 * window.c (Fselect_window): Add optional `norecord' arg.
4013 (select_window_1): Fold into Fselect_window.
4014 (select_window_norecord): New function.
4015 (temp_output_buffer_show): Use it. Preserve current buffer.
4016
4017 * window.h (Fselect_window): Update declaration.
4018
4019 * window.c (delete_window, Fother_window, Fset_window_configuration):
4020 * minibuf.c (read_minibuf):
4021 * macterm.c (x_new_focus_frame):
4022 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
4023 * callint.c (Fcall_interactively):
4024 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
4025
4026 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
4027
4028 2003-05-17 David Kastrup <dak@gnu.org>
4029
4030 * process.c (read_process_output): Back out change from 2003-03-09.
4031
4032 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
4033
4034 * editfns.c (get_pos_property): Don't assume that `object' = nil.
4035
4036 * textprop.c (text_property_stickiness): New arg `buffer'.
4037
4038 * intervals.h (text_property_stickiness): New arg `buffer'.
4039 (get_pos_property): Declare.
4040
4041 * intervals.c (get_local_map): Use get_pos_property, to obey
4042 stickiness and empty overlays.
4043 (create_root_interval, graft_intervals_into_buffer): Use BEG.
4044 (merge_properties, intervals_equal, merge_properties_sticky):
4045 Use XCAR, XCDR.
4046 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
4047
4048 2003-05-17 Richard M. Stallman <rms@gnu.org>
4049
4050 * minibuf.c (read_minibuf): If buffer is empty, record the default
4051 in the history.
4052 (Fminibuffer_complete_word): When deleting the overlap, take account
4053 of its real position.
4054
4055 * fns.c (map_char_table): Fix previous change.
4056
4057 * syntax.c (find_defun_start):
4058 When open_paren_in_column_0_is_defun_start,
4059 return beginning of buffer.
4060
4061 * lisp.h (map_char_table): Declare added arg.
4062
4063 * fns.c (map_char_table): New arg TABLE gets the master table.
4064 All calls changed.
4065 Process default and inheritance, resorting to Faref if necessary.
4066
4067 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
4068 (Faccessible_keymaps): Pass new arg to map_char_table.
4069
4070 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
4071
4072 * casetab.c (set_case_table): Pass new arg to map_char_table.
4073
4074 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
4075
4076 * lisp.h (specbinding_func): New typedef.
4077 (struct specbinding): Use specbinding_func, to put the `volatile'
4078 in the right place.
4079
4080 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
4081 to avoid GCC warning.
4082
4083 2003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org> (tiny change)
4084
4085 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
4086
4087 2003-05-15 Stefan Monnier <monnier@cs.yale.edu>
4088
4089 * keyboard.c (apply_modifiers): Don't fill the other cache.
4090
4091 2003-05-14 Stefan Monnier <monnier@cs.yale.edu>
4092
4093 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
4094
4095 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
4096 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
4097 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
4098 (Fset_window_configuration, Fcurrent_window_configuration)
4099 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
4100 (Fpos_visible_in_window_p, mark_window_cursors_off)
4101 (window_internal_height, window_internal_width, Frecenter)
4102 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
4103 (replace_buffer_in_all_windows, init_window_once, init_window)
4104 (syms_of_window, keys_of_window): Move from lisp.h.
4105 * lisp.h: Move window.c declarations to window.h.
4106
4107 * bytecode.c: Include window.h.
4108 * emacs.c: Include window.h.
4109
4110 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
4111 (keyremap): Add `parent' field.
4112 (keyremap_step): Use it. Remove `parent' argument.
4113 (read_key_sequence): Setup and use the new `parent' field.
4114
4115 2003-05-11 Stefan Monnier <monnier@cs.yale.edu>
4116
4117 * keyboard.c (adjust_point_for_property): Ensure termination.
4118
4119 2003-05-10 Stefan Monnier <monnier@cs.yale.edu>
4120
4121 * keyboard.c (follow_key): Remove dead variable `did_meta'.
4122 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
4123 duplicated handling of function-key-map and key-translation-map
4124 in read_key_sequence.
4125 (read_key_sequence): Use them.
4126
4127 * keyboard.c (adjust_point_for_property): Try harder to move point
4128 to the non-sticky end of an invisible property.
4129
4130 * xdisp.c (single_display_prop_intangible_p): Make `space' display
4131 property intangible as well.
4132
4133 2003-05-10 Andreas Schwab <schwab@suse.de>
4134
4135 * xmenu.c (single_menu_item): Change last parameter to void* to
4136 avoid warning.
4137
4138 2003-05-09 Richard M. Stallman <rms@gnu.org>
4139
4140 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
4141 Bind Qinhibit_modification_hooks to t so there will be no GC.
4142 Rename local `tem' to `save_deactivate_mark'.
4143
4144 * eval.c (specpdl_ptr): Declare volatile.
4145 (unbind_to): Copy the whole binding and decrement specpdl_ptr
4146 before doing the work of unbinding it.
4147
4148 * lisp.h (struct specbinding): Declare elements volatile.
4149 (specpdl_ptr): Declare volatile.
4150
4151 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
4152
4153 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
4154 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
4155
4156 2003-05-08 Dave Love <fx@gnu.org>
4157
4158 * coding.c (Vlast_coding_system_used): Doc fix.
4159
4160 2003-05-07 Jason Rumney <jasonr@gnu.org>
4161
4162 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
4163 when system does not support them.
4164
4165 2003-05-05 Stefan Monnier <monnier@cs.yale.edu>
4166
4167 * fileio.c (Qwrite_region_annotate_functions): New var.
4168 (build_annotations): Use it to process the global part of the hook.
4169 (syms_of_fileio): Init and staticpro it.
4170
4171 * keyboard.c (safe_run_hooks_error): Display a message instead of
4172 silently ignoring the error.
4173
4174 2003-05-03 Stefan Monnier <monnier@cs.yale.edu>
4175
4176 * keyboard.c (input_available_signal): Mark static.
4177 (menu_bar_items): Use map_keymap.
4178 (menu_bar_one_keymap): Remove.
4179 (menu_bar_item): Adjust arglist (for use in map_keymap).
4180 Properly hide a second binding when not both are keymaps.
4181
4182 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
4183 (single_keymap_panes): Use it and map_keymap.
4184 (single_menu_item): Use skp as well.
4185
4186 * keymap.h (map_keymap_function_t): New type.
4187 (map_keymap): Declare.
4188
4189 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
4190 (map_keymap_call, Fmap_keymap): New functions.
4191 (syms_of_keymap): Defsubr map-keymap.
4192
4193 2003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4194
4195 * gtkutil.c (create_dialog, make_widget_for_menu_item)
4196 (make_menu_item, create_menus, xg_update_menu_item): Don't call
4197 ..._with_mnemonic functions for menu items.
4198
4199 2003-05-01 Kenichi Handa <handa@m17n.org>
4200
4201 * coding.c (coding_system_accept_latin_extra_p): Delete this
4202 function.
4203 (find_safe_codings): Pay attention to
4204 the property tranlsation-table-for-encode of each codings.
4205 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
4206
4207 2003-05-01 Stefan Monnier <monnier@cs.yale.edu>
4208
4209 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
4210
4211 2003-04-30 Stefan Monnier <monnier@cs.yale.edu>
4212
4213 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
4214
4215 * lisp.h (CHECK): Wrap args in parenthesis.
4216 (specbind): Fix doc: symbol = Qnil is not supported any more.
4217
4218 * bytecode.c (Fbyte_code) <unwind-protect>:
4219 Use Fprogn rather than 0 and Qnil.
4220
4221 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
4222 `double', and `triple' modifiers as well.
4223
4224 2003-04-30 Richard M. Stallman <rms@gnu.org>
4225
4226 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
4227
4228 * alloc.c (abort_on_gc): New variable.
4229 (Fgarbage_collect): Abort if abort_on_gc is set.
4230
4231 * lisp.h (abort_on_gc): Add decl.
4232
4233 * eval.c (Fsignal): Clear abort_on_gc.
4234
4235 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
4236 Reinit FORMAT_START and END before second scan.
4237
4238 * xdisp.c (move_it_vertically_backward): Do the final big else
4239 even if nlines is 0.
4240
4241 * xdisp.c (redisplay_internal): Finish the per-frame loop
4242 even if redisplay is suspended by input.
4243
4244 2003-04-24 Andrew Choi <akochoi@shaw.ca>
4245
4246 * macterm.c (x_list_fonts): Return all fonts that match if
4247 maxnames = -1.
4248
4249 2003-04-25 Kenichi Handa <handa@m17n.org>
4250
4251 * syntax.c (skip_chars): Fix previous change.
4252
4253 2003-04-24 Kenichi Handa <handa@m17n.org>
4254
4255 * syntax.c (skip_chars): Make the code faster by using the common
4256 technique of *p, *stop, and *endp.
4257
4258 2003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4259
4260 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
4261 tool_bar_items so GTK tool bar expose callback does not access items
4262 being updated.
4263
4264 2003-04-19 Stefan Monnier <monnier@cs.yale.edu>
4265
4266 * eval.c (Fapply): Undo last change and add a comment about why.
4267
4268 2003-04-18 Miles Bader <miles@gnu.org>
4269
4270 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
4271 pickier PARSE_MULTIBYTE_SEQ.
4272
4273 2003-04-17 Stefan Monnier <monnier@cs.yale.edu>
4274
4275 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
4276 Use XCDR, XCAR, CONSP.
4277 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
4278 (Fapply): Remove unnecessary GCPRO.
4279
4280 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
4281
4282 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
4283
4284 * buffer.h: Don't hardcode BEG==1.
4285
4286 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
4287
4288 2003-04-16 Richard M. Stallman <rms@gnu.org>
4289
4290 * xdisp.c (try_window, try_window_reusing_current_matrix):
4291 When at end of window, set window_end_pos to Z-ZV.
4292
4293 * buffer.c (Foverlay_recenter): Doc fix.
4294
4295 2003-04-14 Stefan Monnier <monnier@cs.yale.edu>
4296
4297 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
4298
4299 2003-04-14 Andrew Choi <akochoi@shaw.ca>
4300
4301 * macterm.c (mac_check_for_quit_char): Don't check more often than
4302 once a second.
4303
4304 2003-04-11 Stefan Monnier <monnier@cs.yale.edu>
4305
4306 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
4307 specially, so that they can't hide an implicit switch-frame event.
4308 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
4309 (head_table): Use switch-frame as event_kind for select-window.
4310 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
4311
4312 * editfns.c (Fformat): Lisp_Object/int mixup.
4313 (format2): Remove unused var numargs.
4314
4315 2003-04-11 Kenichi Handa <handa@m17n.org>
4316
4317 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
4318 (Qafter_insert_file_set_coding): New variable.
4319 (syms_of_fileio): Initialize and staticpro it. Delete declaration
4320 for after-insert-file-adjust-coding-function.
4321 (Finsert_file_contents): Call Qafter_insert_file_set_coding
4322 instead of Vafter_insert_file_adjust_coding_function.
4323
4324 2003-04-11 Kenichi Handa <handa@m17n.org>
4325
4326 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
4327
4328 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
4329 string. Callers changed.
4330
4331 2003-04-10 Kenichi Handa <handa@m17n.org>
4332
4333 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
4334 (syms_of_fileio): Declare it as a lisp variable.
4335 (Finsert_file_contents):
4336 Call Vafter_insert_file_adjust_coding_function before calling
4337 decode-format.
4338
4339 2003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4340
4341 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
4342 get GtkAdjustment as widget now is a GtkRange.
4343
4344 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
4345 GtkRange to avoid memory leak.
4346
4347 2003-04-09 Kenichi Handa <handa@m17n.org>
4348
4349 * xfaces.c (Vface_font_rescale_alist): New variable.
4350 (struct font_name): New member rescale_ratio.
4351 (font_rescale_ratio): New function.
4352 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
4353 (better_font_p): On comparing point sized, pay attention to
4354 recale_ratio member of fonts.
4355 (build_scalable_font_name): Reflect font->rescale_ratio in the
4356 font name.
4357 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
4358
4359 * lread.c (read1): Before calling index, check if the 2nd
4360 arguemnt is in ASCII range.
4361
4362 2003-04-08 Richard M. Stallman <rms@gnu.org>
4363
4364 * fileio.c (Ffile_symlink_p): Doc fix.
4365
4366 * editfns.c (Fformat): Translate positions of text properties
4367 in the format string to apply them to the result.
4368
4369 * fileio.c (Finsert_file_contents): Doc fix.
4370 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
4371
4372 2003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
4373
4374 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
4375
4376 2003-04-08 Steven Tamm <steventamm@mac.com>
4377
4378 * mac.c (init_mac_osx_environment): Switch libexec and bin so
4379 that self-contained application finds libexec files.
4380
4381 2003-04-08 Kenichi Handa <handa@m17n.org>
4382
4383 * coding.c (code_convert_region_unwind):
4384 Set Vlast_coding_system_used to the argument.
4385 (code_convert_region): If post-read-conversion function changed
4386 the value of last-coding-sytem, keep the new value in
4387 coding->symbol so that it won't be overridden.
4388 (run_pre_post_conversion_on_str): Likewise.
4389 (coding_system_accept_latin_extra_p): New function.
4390 (find_safe_codings): Pay attention to characters registered in
4391 latin-extra-code-table.
4392
4393 2003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
4394
4395 * Makefile.in (md5.o): Add missing dependency info.
4396
4397 2003-04-06 Richard M. Stallman <rms@gnu.org>
4398
4399 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
4400
4401 * marker.c (verify_bytepos): New function.
4402
4403 * intervals.c (set_intervals_multibyte_1): When becoming
4404 multibyte, adjust right and left child sizes to a whole set of
4405 characters. If an interval gets zero total-length, delete it.
4406 If an interval consists of just its children, delete one of them.
4407
4408 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
4409 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
4410
4411 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
4412 All calls deleted.
4413 (lisp_malloc): Do the work here directly.
4414
4415 2003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
4416
4417 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
4418 char tables.
4419
4420 2003-04-04 Kenichi Handa <handa@m17n.org>
4421
4422 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
4423 destructively change "%S" to "%s".
4424
4425 2003-04-03 Miles Bader <miles@gnu.org>
4426
4427 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
4428 always set.
4429
4430 2003-04-01 Dave Love <fx@gnu.org>
4431
4432 * xfns.c (xpm_lookup_color): Grok "opaque".
4433
4434 2003-03-31 Andrew Choi <akochoi@shaw.ca>
4435
4436 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
4437 parent window ID.
4438
4439 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
4440
4441 * macterm.h (struct mac_output): Define x_pixels_diff and
4442 y_pixels_diff.
4443
4444 2003-03-31 Juanma Barranquero <lektu@terra.es>
4445
4446 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
4447 blockinput.h and files included from it.
4448
4449 2003-03-31 Kim F. Storm <storm@cua.dk>
4450
4451 The following changes consolidates the common code related to
4452 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
4453 files into frame.c.
4454
4455 * frame.c: Include blockinput.h.
4456 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
4457 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
4458 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
4459 related vars here.
4460 (struct frame_parm_table, frame_parms): New table for describing
4461 frame parameters and their associated Q-variable.
4462 The order of the parameters corresponds to the sequence of the
4463 frame_parm_handlers table in redisplay_interface.
4464 (x_fullscreen_move, x_set_frame_parameters)
4465 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
4466 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
4467 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
4468 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
4469 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
4470 Generic functions for processing of frame parameters.
4471 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
4472 (display_x_get_resource, x_get_resource_string): Functions for
4473 generic access to X resources.
4474 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
4475 (x_default_parameter, Fx_parse_geometry): Functions for generic
4476 access to frame parameters.
4477 (x_figure_window_size): Generic calculation of frame size.
4478 Fixed to add space needed for tool bar. Also setup size_hint_flags.
4479 (syms_of_frame): Intern and staticpro frame parameter variables.
4480 Defvar_lisp Vx_resource_class and Vx_resource_name here.
4481 Defsubr Sx_get_resource and Sx_parse_geometry.
4482
4483 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
4484 parameter related vars defined in frame.c.
4485 (EMACS_CLASS): Define here.
4486 (enum FULLSCREEN_*): Define here.
4487 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
4488 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
4489 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
4490 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
4491 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
4492 (x_set_visibility, x_set_autoraise, x_set_autolower)
4493 (x_set_unsplittable, x_set_vertical_scroll_bars)
4494 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
4495 (x_figure_window_size): Add prototypes.
4496
4497 * dispextern.h (frame_parm_handler): New typedef.
4498 (struct redisplay_interface): New member frame_parm_handlers.
4499 (enum resource_types): Move declaration here.
4500 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
4501 (x_default_parameter): Add prototypes.
4502
4503 * window.c: Remove extern decl for frame parameter vars.
4504 (change_window_heights): New generic function;
4505 replaces x_change_window_heights. All users changed.
4506
4507 * window.h (change_window_heights): Add prototype.
4508
4509 * xfaces.c: Remove extern decl for frame parameter vars.
4510
4511 * xterm.h (EMACS_CLASS): Remove. Use generic define.
4512 (struct w32_display_info): Fix type of xrdb member.
4513 (enum FULLSCREEN_*): Remove.
4514 Remove prototypes for generic functions (in frame.h).
4515
4516 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
4517 parameters now defined in frame.h and frame.c.
4518 (Vx_resource_name): Remove. Use generic var.
4519 (enum x_frame_parms): Remove (bogus, unused enum).
4520 (check_x_display_info): Make non-static (for frame.c).
4521 (struct x_frame_parm_table, x_frame_parms): Remove.
4522 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
4523 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
4524 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
4525 (x_change_window_heights, x_set_autoraise, x_set_autolower)
4526 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
4527 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
4528 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
4529 Remove. Use generic functions instead.
4530 (enum resource_types): Remove.
4531 (x_set_scroll_bar_default_width): New global function (for frame.c).
4532 (Fx_create_frame): Depend on x_figure_window_size to add space for
4533 toolbar and setup size_hint_flags.
4534 (x_frame_parm_handlers): New table for redisplay_interface.
4535 (syms_of_xfns): Don't intern/staticpro removed vars.
4536
4537 * xterm.c: Remove unnecessary extern declarations.
4538 (x_fullscreen_adjust): Remove. Use generic instead.
4539 (x_redisplay_interface): Add x_frame_parm_handlers member.
4540
4541 * w32gui.h (XrmDatabase): New (dummy) typedef.
4542
4543 * w32term.h (EMACS_CLASS): Remove. Use generic define.
4544 (struct w32_display_info): Fix type of xrdb member.
4545 (enum FULLSCREEN_*): Remove.
4546 (x_fullscreen_adjust): Remove prototype.
4547
4548 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
4549 parameters now defined in frame.h and frame.c.
4550 (Vx_resource_name): Remove. Use generic var.
4551 (enum x_frame_parms): Remove (bogus, unused enum).
4552 (check_x_display_info): Make non-static (for frame.c).
4553 (struct x_frame_parm_table, x_frame_parms): Remove.
4554 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
4555 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
4556 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
4557 (x_change_window_heights, x_set_autoraise, x_set_autolower)
4558 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
4559 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
4560 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
4561 Remove. Use generic functions instead.
4562 (enum resource_types): Remove.
4563 (x_set_scroll_bar_default_width): New global function (for frame.c).
4564 (Fx_create_frame): Depend on x_figure_window_size to add space for
4565 toolbar and setup size_hint_flags.
4566 (w32_frame_parm_handlers): New table for redisplay_interface.
4567 (syms_of_w32fns): Don't intern/staticpro removed vars.
4568
4569 * w32term.c: Remove unnecessary extern declarations.
4570 (x_fullscreen_adjust): Remove. Use generic instead.
4571 (x_redisplay_interface): Add w32_frame_parm_handlers member.
4572
4573 * w32reg.c (x_get_string_resource): Use XrmDatabase.
4574
4575 * macgui.h (XrmDatabase): New (dummy) typedef.
4576
4577 * macterm.h (EMACS_CLASS): Remove.
4578 (struct mac_display_info): Add xrdb member.
4579 (struct mac_output): Add want_fullscreen member.
4580
4581 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
4582 parameters now defined in frame.h and frame.c.
4583 (Vx_resource_name): Remove. Use generic var.
4584 (check_x_display_info): Make non-static (for frame.c).
4585 (struct x_frame_parm_table, x_frame_parms): Remove.
4586 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
4587 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
4588 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
4589 (x_change_window_heights, x_set_autoraise, x_set_autolower)
4590 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
4591 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
4592 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
4593 Remove. Use generic functions instead.
4594 (enum resource_types): Remove.
4595 (x_set_scroll_bar_default_width): New global function (for frame.c).
4596 (mac_frame_parm_handlers): New table for redisplay_interface.
4597 (syms_of_macfns): Don't intern/staticpro removed vars.
4598
4599 * macterm.c: Remove unnecessary extern declarations.
4600 (x_redisplay_interface): Add mac_frame_parm_handlers member.
4601
4602 * Makefile.in (frame.o): Add dependency on blockinput.h and files
4603 included from it (atimer.h and systime.h).
4604
4605 2003-03-30 Andreas Schwab <schwab@suse.de>
4606
4607 * xdisp.c (x_insert_glyphs): Fix swapped width and height
4608 parameters for shift_glyphs_for_insert.
4609
4610 * macterm.c (x_redisplay_interface): Add missing entry for
4611 draw_vertical_window_border.
4612
4613 2003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
4614
4615 * fileio.c (Fexpand_file_name): In the no-handler case, after
4616 expanding, look again for a handler and invoke it. This is needed
4617 for filenames like "/foo/../user@host:/bar/../baz" -- the first
4618 expansion produces "/user@host:/bar/../baz" which needs to be
4619 expanded again for the finame result "/user@host:/baz".
4620
4621 2003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4622
4623 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
4624 of area to be redrawn for better performance.
4625
4626 2003-03-28 Stefan Monnier <monnier@cs.yale.edu>
4627
4628 * xterm.c (take_vertical_position_into_account): Remove.
4629 (xt_action_hook): Call set_vertical_scroll_bar if needed.
4630 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
4631 (xm_scroll_callback, x_create_toolkit_scroll_bar)
4632 (x_set_toolkit_scroll_bar_thumb): Simplify.
4633 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
4634 (XTread_socket): Remove unused var.
4635 (x_make_frame_invisible): Replace goto with else.
4636
4637 * xdisp.c (set_vertical_scroll_bar): New fun.
4638 (redisplay_window): Use it.
4639
4640 2003-03-26 Richard M. Stallman <rms@gnu.org>
4641
4642 * xdisp.c (update_tool_bar): Recompute tool bar if
4643 update_mode_lines is set. Set w->update_mode_line
4644 only if the tool bar contents actually change.
4645 (update_menu_bar): Undo previous change.
4646
4647 2003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4648
4649 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
4650 (xg_frame_set_char_size): Calculate scroll bar width before frame
4651 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
4652 (xg_separator_p): Check for all documented separator types.
4653 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
4654 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
4655
4656 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
4657 so tool bar gets updated.
4658
4659 2003-03-26 Stefan Monnier <monnier@cs.yale.edu>
4660
4661 * data.c (store_symval_forwarding): Re-instate part of the code
4662 that was deleted with too much enthusiasm.
4663
4664 2003-03-25 Stefan Monnier <monnier@cs.yale.edu>
4665
4666 * data.c (store_symval_forwarding): Delete special read-only
4667 hack for type == -1, since we now use ->constant instead.
4668 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
4669
4670 * buffer.c (overlays_in): Declare static.
4671 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
4672 `constant' field rather than the variable's `type' field.
4673
4674 2003-03-24 Andrew Choi <akochoi@shaw.ca>
4675
4676 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
4677
4678 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
4679
4680 * fns.c [MAC_OSX]: Do not redefine vector.
4681
4682 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
4683
4684 * macgui.h: Remove definition of No_Cursor.
4685
4686 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
4687
4688 * xdisp.c: Define No_Cursor.
4689 (x_write_glyphs, notice_overwritten_cursor)
4690 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
4691 (note_mouse_highlight): Remove Mac-specific code.
4692 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
4693
4694 2003-03-24 John Paul Wallington <jpw@gnu.org>
4695
4696 * xdisp.c (redisplay_window): If mini window's buffer is not
4697 empty, then redisplay it like other windows.
4698
4699 2003-03-23 Kim F. Storm <storm@cua.dk>
4700
4701 * w32term.c (w32_draw_window_cursor): Fix last change.
4702
4703 2003-03-23 Kenichi Handa <handa@m17n.org>
4704
4705 * alloc.c (make_string_from_bytes, make_specified_string):
4706 Add `const' for the arg CONTENTS.
4707
4708 * lisp.h (make_string_from_bytes, make_specified_string):
4709 Prototypes adjusted.
4710
4711 2003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4712
4713 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
4714
4715 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
4716 (XG_SB_RANGE): New define.
4717
4718 * gtkutil.c (xg_fixed_handle_expose): New function.
4719 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
4720 expose events.
4721 (xg_update_scrollbar_pos): Take two more arguments, left and width
4722 of scroll bar including borders.
4723 Clear left and right part outside scroll bar separately as some
4724 themes have bars that are not an even number of pixels.
4725 Don't set reallocate_redraws, don't call
4726 gdk_window_process_all_updates.
4727 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
4728 so no need to change it. Calculate size and value with XG_SB_RANGE.
4729
4730 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
4731 Pass left and width of scroll bar including borders to
4732 xg_update_scrollbar_pos.
4733
4734 2003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
4735
4736 * Makefile.in: Make sure space precedes end-of-line backslashes.
4737
4738 2003-03-22 Kim F. Storm <storm@cua.dk>
4739
4740 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
4741 Add generic versions here. Remove system specific versions
4742 defined elsewhere.
4743
4744 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
4745 Add prototypes.
4746
4747 * xterm.h (STORE_NATIVE_RECT): New macro.
4748
4749 2003-03-21 Kim F. Storm <storm@cua.dk>
4750
4751 * xdisp.c (get_glyph_string_clip_rect):
4752 Use FRAME_INTERNAL_BORDER_WIDTH.
4753
4754 * dispextern.h (struct redisplay_interface): Add active_p
4755 argument to draw_window_cursor member. All uses changed.
4756
4757 2003-03-21 Kim F. Storm <storm@cua.dk>
4758
4759 The following changes consolidate code related to writing and
4760 inserting glyphs, exposing frame, the tool bar, the mouse face,
4761 the output cursor, and help echo from xterm.c, w32term.c and
4762 macterm.c into xdisp.c. It also generalizes the use of the
4763 window_part enum instead of using numeric values throughout.
4764
4765 * xdisp.c: Consolidate gui-independent code here.
4766 Include keymap.h.
4767 (Qhelp_echo): Import.
4768 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
4769 (help_echo_string, help_echo_window, help_echo_object)
4770 (previous_help_echo_string, help_echo_pos): Declare here.
4771 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
4772 (estimate_mode_line_height): Define here. Handle windowing
4773 systems directly (without using estimate_mode_line_height_hook).
4774 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
4775 (update_window_cursor, update_cursor_in_window_tree)
4776 (fast_find_position, fast_find_string_pos)
4777 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
4778 (expose_area, expose_line, expose_overlaps, expose_window)
4779 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
4780 declared static as they are only used locally in xdisp.c.
4781 (draw_glyphs): Rename from x_draw_glyphs and make static.
4782 (tool_bar_item_info, notice_overwritten_cursor): Make static.
4783 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
4784 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
4785 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
4786 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
4787 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
4788 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
4789 (note_mouse_highlight, x_clear_window_mouse_face)
4790 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
4791 (x_intersect_rectangles): New generic functions for use by xdisp.c
4792 and GUI front-ends.
4793 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
4794 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
4795
4796 * dispextern.h (Display_Info): Generic typedef for *_display_info.
4797 (NativeRectangle): Generic typedef for rectangle type.
4798 (enum window_part): Move here from window.c.
4799 (struct redisplay_interface): New members flush_display_optional,
4800 define_frame_cursor, clear_frame_area, draw_window_cursor,
4801 draw_vertical_window_border, shift_glyphs_for_insert.
4802 Rename member clear_mouse_face to clear_window_mouse_face.
4803 (estimate_mode_line_height_hook): Remove hook.
4804 (auto_raise_tool_bar_buttons_p): Don't declare extern.
4805 (tool_bar_item_info): Remove prototype.
4806 (help_echo_string, help_echo_window, help_echo_object)
4807 (previous_help_echo_string, help_echo_pos)
4808 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
4809 (x_stretch_cursor_p, output_cursor): Declare extern.
4810 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
4811 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
4812 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
4813 (display_and_set_cursor, set_output_cursor, x_cursor_to)
4814 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
4815 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
4816 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
4817 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
4818 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
4819 Add prototypes.
4820 (mode_line_string, marginal_area_string): Fix prototypes.
4821
4822 * window.c (enum window_part): Move to dispextern.h.
4823 (coordinates_in_window): Use enum window_part member names
4824 instead of numbers to describe return value.
4825 (struct check_window_data): Change part member to window_part.
4826 (check_window_containing): Return window_part unaltered.
4827 (window_from_coordinates): Change part arg from int to enum
4828 window_part. Allow part arg to be null. All users changed.
4829
4830 * window.h (window_from_coordinates): Fix prototype.
4831
4832 * term.c (estimate_mode_line_height): Move to xdisp.c.
4833
4834 * keyboard.c (make_lispy_event): Use enum window_part.
4835
4836 * dispnew.c (mode_line_string, marginal_area_string): Use enum
4837 window_part instead of int in arg list. Users changed.
4838
4839 * xterm.h (No_Cursor): Declare as None for X.
4840 (struct mac_output): Replace member cross_cursor by hand_cursor.
4841
4842 * xterm.c: Remove consolidated defines and code.
4843 (BETWEEN): Remove unused macro.
4844 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
4845 (x_define_frame_cursor, x_clear_frame_area)
4846 (x_draw_window_cursor): New X-specific functions for RIF.
4847 (x_redisplay_interface): Add new members.
4848
4849 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
4850
4851 * w32term.h (struct w32_output): Remove cross_cursor member.
4852
4853 * w32term.c: Remove consolidated defines and code.
4854 (BETWEEN): Remove unused macro.
4855 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
4856 (w32_define_frame_cursor, w32_clear_frame_area)
4857 (w32_draw_window_cursor): New W32-specific functions for RIF.
4858 (w32_redisplay_interface): Add new members.
4859
4860 * w32gui.h (No_Cursor): Define as 0 for W32.
4861 (XRectangle): Add X compatible rectangle type.
4862 (NativeRectangle): Declare as RECT for W32.
4863 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
4864
4865 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
4866
4867 * w32console.c: Remove consolidated defines and code.
4868
4869 * msdos.h (Display_Info): Add generic typedef.
4870
4871 * msdos.c: Remove consolidated defines and code.
4872 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
4873
4874 * macterm.h (struct mac_output): Replace member cross_cursor by
4875 hand_cursor.
4876 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
4877
4878 * macterm.c: Remove consolidated defines and code.
4879 (BETWEEN): Remove unused macro.
4880 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
4881 (mac_define_frame_cursor, mac_clear_frame_area)
4882 (mac_draw_window_cursor): New Mac-specific functions for RIF.
4883 (x_redisplay_interface): Add new members.
4884
4885 * macgui.h (No_Cursor): Define as 0 for Mac.
4886 (XRectangle): Add X compatible rectangle type.
4887 (NativeRectangle): Declare as Rect for Mac.
4888 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
4889
4890 * macfns.c (x_set_mouse_color): Setup hand_cursor.
4891 (x_set_cursor_color): Use x_display_and_set_cursor.
4892
4893 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
4894 included from it. Add dependency on keymap.h.
4895
4896 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
4897
4898 2003-03-21 Kenichi Handa <handa@m17n.org>
4899
4900 * fileio.c (Fexpand_file_name): Fix previous change.
4901
4902 2003-03-19 Kenichi Handa <handa@m17n.org>
4903
4904 * fileio.c (Ffile_name_directory): Reconstruct file name by
4905 make_specified_string.
4906 (Ffile_name_nondirectory, Ffile_name_as_directory)
4907 (Fdirectory_file_name, Fexpand_file_name)
4908 (Fsubstitute_in_file_name): Likewise.
4909 (Fread_file_name): Compare decoded homedir with DIR and
4910 DEFAULT_FILENAME.
4911
4912 * alloc.c (make_specified_string): If NCHARS is negative, count
4913 the number of characters.
4914
4915 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4916
4917 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
4918 all widgets.
4919
4920 * gtkutil.h: Removed xg_ignore_next_thumb.
4921
4922 2003-03-18 Kenichi Handa <handa@m17n.org>
4923
4924 * coding.c (Vchar_coding_system_table): Remove this variable.
4925 (Vcoding_system_safe_chars): New variable.
4926 (intersection): Remove this function.
4927 (find_safe_codings): Don't use Vchar_coding_system_table, but try
4928 all codings in SAFE_CODINGS.
4929 (Ffind_coding_systems_region_internal): Adjust for the change of
4930 find_safe_codings. Get generic coding systems from
4931 Vcoding_system_safe_chars.
4932 (Fdefine_coding_system_internal): New function.
4933 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
4934 Initialize and staticpro Vcoding_system_safe_chars.
4935
4936 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4937
4938 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
4939 equal old values before updating.
4940
4941 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
4942
4943 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
4944
4945 2003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4946
4947 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
4948 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
4949 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
4950 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
4951 (xg_create_scroll_bar): Pass bar to button event callback.
4952 (xg_find_top_left_in_fixed): New function.
4953 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
4954 whole scroll bar area. Get old position with
4955 xg_find_top_left_in_fixed, calculate and only clear needed areas.
4956 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
4957 dragging is in progress. Calculate whole as for Motif.
4958 Remove code that saved last values. Call gtk_range functions to
4959 set scroll bar sizes.
4960
4961 * gtkutil.h: Removed xg_ignore_next_thumb.
4962
4963 2003-03-17 Juanma Barranquero <lektu@terra.es>
4964
4965 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
4966 and files included from it.
4967
4968 2003-03-18 Stefan Monnier <monnier@cs.yale.edu>
4969
4970 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
4971 multiple occurrences of the same keymap under different prefixes.
4972 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
4973
4974 2003-03-16 Jason Rumney <jasonr@gnu.org>
4975
4976 * w32gui.h: Use HDC for Display.
4977
4978 * w32term.c (w32_encode_char): Prevent double-byte chars from
4979 crashing Emacs.
4980
4981 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
4982 as binary.
4983
4984 2003-03-16 Juanma Barranquero <lektu@terra.es>
4985
4986 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
4987
4988 2003-03-16 Kim F. Storm <storm@cua.dk>
4989
4990 The following changes consolidate some of the gui-independent
4991 parts of the processing and drawing of "glyph strings" from
4992 xterm.c, w32term.c, and macterm.c into xdisp.c.
4993
4994 * dispextern.h (struct glyph): Reduce face_id member from 22 to
4995 21 bits (this reduces number of faces from 4M to 2M).
4996 Replace W32 specific w32_font_type member (2 bits) by generic
4997 font_type member (3 bits) for portability.
4998 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
4999 (enum draw_glyphs_face): Define here.
5000 (struct glyph_string): Define here. Merge W32 and X versions.
5001 (struct redisplay_interface): New members per_char_metric,
5002 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
5003 (VCENTER_BASELINE_OFFSET): Define here.
5004 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
5005 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
5006
5007 * xdisp.c: Consolidate gui-independent "glyph string" code here.
5008 (dump_glyph_string): Moved here.
5009 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
5010 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
5011 (fill_composite_glyph_string, fill_glyph_string)
5012 (fill_image_glyph_string, fill_stretch_glyph_string)
5013 (left_overwritten, left_overwriting, right_overwritten)
5014 (right_overwriting, get_char_face_and_encoding)
5015 (set_glyph_string_background_width, compute_overhangs_and_x)
5016 (append_glyph, append_composite_glyph, produce_image_glyph)
5017 (take_vertical_position_into_account, append_stretch_glyph)
5018 (produce_stretch_glyph): New generic functions (based on X version).
5019 Call platform specific functions through rif.
5020 (INIT_GLYPH_STRING): New macro, hides W32 details.
5021 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
5022 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
5023 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
5024 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
5025 (notice_overwritten_cursor):
5026 Generic functions exported to platform modules. Users changed.
5027
5028 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
5029 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
5030 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
5031 New macros for consolidated code.
5032
5033 * xterm.c: Remove consolidated defines and code.
5034 (x_per_char_metric, x_encode_char)
5035 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
5036 (x_redisplay_interface): Add new members.
5037
5038 * w32gui.h (Display): Add dummy typedef for consolidation.
5039 (XChar2b): Define alias for wchar_t for consolidation.
5040 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
5041
5042 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
5043 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
5044 New macros for consolidation.
5045
5046 * w32term.c: Remove consolidated defines and code.
5047 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
5048 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
5049 (w32_per_char_metric): Change font_type arg to int for RIF.
5050 (w32_encode_char): Return int according to RIF requirements.
5051 (w32_compute_glyph_string_overhangs): Adapt to RIF.
5052 (w32_get_glyph_overhangs): New function for RIF. Uses generic
5053 x_get_glyph_overhangs.
5054 (w32_redisplay_interface): Add new members.
5055
5056 * macgui.h (XChar2b): Move typedef here for consolidation.
5057 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
5058
5059 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
5060 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
5061 consolidation.
5062
5063 * macterm.c: Remove consolidated defines and code.
5064 (mac_per_char_metric): New function for RIF.
5065 (mac_encode_char): Adapt to new RIF requirements.
5066 (mac_compute_glyph_string_overhangs): Adapt for RIF.
5067 (x_redisplay_interface): Add new members.
5068
5069 2003-03-15 Stefan Monnier <monnier@cs.yale.edu>
5070
5071 * keymap.c (Vmenu_events): New var.
5072 (syms_of_keymap): Initialize it.
5073 (where_is_internal): Check more carefully what is a menu event.
5074
5075 2003-03-14 Richard M. Stallman <rms@gnu.org>
5076
5077 * lread.c (read1): After #!, exit loop on eof.
5078
5079 2003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5080
5081 * gtkutil.h: Add declaration for xg_frame_cleared.
5082
5083 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
5084
5085 * gtkutil.c (struct xg_last_sb_pos): New structure.
5086 (handle_fixed_child): New function.
5087 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
5088 and force a redraw on them.
5089 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
5090 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
5091 so we can avoid unneeded redraws.
5092 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
5093 and force a redraw on the scroll bar.
5094 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
5095 if xg_last_sb_pos shows the positions are up to date.
5096 (xg_frame_cleared): New function.
5097
5098 2003-03-13 Kenichi Handa <handa@m17n.org>
5099
5100 * coding.c (Fdetect_coding_region): Fix docstring.
5101 (Fdetect_coding_string): Fix docstring.
5102
5103 2003-03-13 Andreas Schwab <schwab@suse.de>
5104
5105 * gtkutil.c: Add prototype for create_menus.
5106
5107 * data.c (long_to_cons): Fix type of top.
5108
5109 * xselect.c (selection_data_to_lisp_data): Use int instead of
5110 long for an integer of size 4.
5111
5112 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
5113 (xg_tool_bar_help_callback): Likewise.
5114
5115 2003-03-12 Andreas Schwab <schwab@suse.de>
5116
5117 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
5118
5119 2003-03-12 Kim F. Storm <storm@cua.dk>
5120
5121 The following changes consolidate the fringe handling from
5122 xterm.c, w32term.c, and macterm.c into xdisp.c.
5123
5124 * xdisp.c: Consolidate fringe handling code here.
5125 (left_bits, right_bits, continued_bits, continuation_bits)
5126 (ov_bits, zv_bits): Define fringe bitmaps.
5127 (fringe_bitmaps): New array holding fringe bitmaps.
5128 (draw_fringe_bitmap): Draw a specific bitmap; call display
5129 specific drawing routine via rif->draw_fringe_bitmap.
5130 (draw_row_fringe_bitmaps): Generic replacement for
5131 x_draw_row_fringe_bitmaps; all callers changed.
5132 (compute_fringe_widths): Generic replacement for
5133 x_compute_fringe_widths; all callers changed.
5134
5135 * dispextern.h (enum fringe_bitmap_type): Define here.
5136 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
5137 (fringe_bitmaps): Declare extern.
5138 (struct redisplay_interface): New member draw_fringe_bitmap.
5139 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
5140
5141 * xterm.c: Remove generic fringe code.
5142 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
5143 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
5144
5145 * w32term.c: Remove generic fringe code.
5146 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
5147 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
5148
5149 * macterm.c: Remove generic fringe code.
5150 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
5151 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
5152
5153 2003-03-11 Stefan Monnier <monnier@cs.yale.edu>
5154
5155 * print.c (Fprin1_to_string): Return unibyte string if possible.
5156
5157 2003-03-09 David Kastrup <dak@gnu.org>
5158
5159 * process.c (read_process_output): We have allocated enough space
5160 for readmax and carryover, so actually use the alloted space.
5161
5162 2003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5163
5164 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
5165 toolkit scrollbar click.
5166
5167 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
5168 for USE_GTK.
5169 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
5170 also.
5171 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
5172 scrollbar and control is pressed, call x_scroll_bar_handle_click.
5173
5174 * gtkutil.h: Declare xg_get_scroll_id_for_window.
5175
5176 * gtkutil.c (xg_get_scroll_id_for_window): New function.
5177 (xg_tool_bar_item_expose_callback): New function.
5178 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
5179 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
5180 on the tool bar widget.
5181 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
5182 to expose on the tool bar item widgets.
5183
5184 2003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5185
5186 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
5187 struct image* when deciding to update (struct image* may have been
5188 deleted from the image cache).
5189
5190 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
5191 the event isn't for a frame (i.e. for dialogs).
5192
5193 2003-03-07 Kenichi Handa <handa@m17n.org>
5194
5195 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
5196 composition components reaches the limit, terminate composing.
5197 (COMPOSITION_OK): New macro.
5198 (detect_coding_iso2022): Use it if an escape sequence for
5199 composition is found.
5200 (coding_restore_composition): Adjust the number of composition
5201 components if it is not sane.
5202
5203 2003-03-06 Juanma Barranquero <lektu@terra.es>
5204
5205 * w32term.h (struct w32_display_info): Add xrdb member to support
5206 passing resources via -xrm on Windows.
5207
5208 * w32term.c (w32_make_rdb): New function.
5209 (w32_term_init): Use it to initialize xrdb member of w32_display_info
5210 struct. Delete leftover code.
5211
5212 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
5213 for resources passed on the command line.
5214
5215 * w32reg.c (w32_get_rdb_resource): New function.
5216 (x_get_string_resource): Use it, so resources passed with -xrm
5217 supercede the ones in the registry.
5218
5219 2003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5220
5221 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
5222 instead of x_top_window_to_frame.
5223
5224 2003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5225
5226 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
5227 when restarting Emacs.
5228
5229 2003-03-03 Richard M. Stallman <rms@gnu.org>
5230
5231 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
5232 to run kill-buffer-query-functions.
5233 (Qkill_buffer_query_functions): New var.
5234 (syms_of_buffer): Init and staticpro it.
5235
5236 2003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5237
5238 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
5239
5240 2003-02-25 Kim F. Storm <storm@cua.dk>
5241
5242 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
5243 If centering point failed to make whole line visible and vscroll
5244 is non-zero, disable vscroll and try centering point again.
5245
5246 * lread.c (read1): Accept `single space' syntax like (? x).
5247
5248 2003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5249
5250 * keyboard.c (cancel_hourglass_unwind): Surround with
5251 #ifdef HAVE_X_WINDOWS
5252
5253 2003-02-25 Kenichi Handa <handa@m17n.org>
5254
5255 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
5256 process only when "subprocesses" is defined.
5257
5258 2003-02-24 Stefan Monnier <monnier@cs.yale.edu>
5259
5260 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
5261
5262 2003-02-24 Juanma Barranquero <lektu@terra.es>
5263
5264 * callint.c (fix_command): Declare as static void and move before
5265 Fcall_interactively.
5266
5267 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
5268 (syms_of_xdisp): Don't initialize Qwhen.
5269
5270 2003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5271
5272 * keyboard.c (cancel_hourglass_unwind): New function.
5273 (command_loop_1): Cancel hourglass with unwind-protect.
5274
5275 2003-02-23 Richard M. Stallman <rms@gnu.org>
5276
5277 * callint.c (fix_command): New subroutine, from Fcall_interactively.
5278 Detect (when ... (region-beginning)) etc.
5279 (Fcall_interactively): Call fix_command.
5280 (Qif, Qwhen): New variables.
5281 (syms_of_callint): Init and staticpro them.
5282
5283 * regex.c (print_partial_compiled_pattern): Output to stderr.
5284
5285 2003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
5286
5287 * dired.c (directory_files_internal): Don't expand directory.
5288 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
5289 instead. From Lars Hansen <larsh@math.ku.dk>.
5290
5291 2003-02-22 Stefan Monnier <monnier@cs.yale.edu>
5292
5293 * fns.c (string_to_multibyte): Remove unused var i.
5294 (Flanginfo): Fix int/Lisp_Object mixup.
5295 (void_call2): New fun.
5296 (Fmap_char_table): Use it in place of call2.
5297
5298 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
5299
5300 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
5301
5302 * keymap.c (copy_keymap_1): Make it static.
5303
5304 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
5305
5306 2003-02-22 David Ponce <david@dponce.com>
5307
5308 * lread.c (Fload): Don't check STRING_MULTIBYTE.
5309
5310 2003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5311
5312 * process.h: Removed subtty field from struct Lisp_Process.
5313
5314 * process.c (create_process): Remove setting of subtty.
5315 (emacs_get_tty_pgrp): New function.
5316 (Fprocess_running_child_p, process_send_signal):
5317 Call emacs_get_tty_pgrp instead of ioctl.
5318 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
5319
5320 2003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
5321
5322 * keymap.c (Fdefine_key): Doc fix.
5323
5324 2003-02-21 Juanma Barranquero <lektu@terra.es>
5325
5326 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
5327
5328 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
5329 POLLING_PROBLEM_IN_SELECT.
5330
5331 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
5332 Delete #undef of POLLING_PROBLEM_IN_SELECT.
5333
5334 * s/hpux10-20.h: New file.
5335
5336 * process.c (wait_reading_process_input):
5337 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
5338
5339 2003-02-20 Kenichi Handa <handa@m17n.org>
5340
5341 * fontset.c (check_fontset_name): If NAME is nil, return the
5342 default fontset.
5343 (override_font_info): New function.
5344 (Fset_fontset_font): Document that NAME nil means the default fontset.
5345 (Ffontset_info): If FONTSET is not the default fontset, merge
5346 FONTSET onto the copy of the default fontset, and work on that
5347 copy. Document that NAME nil means the default fontset.
5348 (Ffontset_font): Document that NAME nil means the default fontset.
5349
5350 * process.c (setup_process_coding_systems): If the process's
5351 in/out descriptor is -1, do nothing.
5352
5353 2003-02-19 Andreas Schwab <schwab@suse.de>
5354
5355 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
5356 Add prototypes.
5357
5358 2003-02-19 Kenichi Handa <handa@m17n.org>
5359
5360 * xfaces.c (try_alternative_families): Try all scalable fonts if
5361 Vscalable_fonts_allowed is not Qt.
5362
5363 2003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5364
5365 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
5366
5367 2003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5368
5369 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
5370 names.
5371
5372 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
5373 (sorted_font_list): Move allocation of struct font_name to
5374 x_face_list_fonts.
5375 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
5376 (Fx_list_fonts): Set maxnames to -1 to get all font names.
5377
5378 2003-02-18 Kim F. Storm <storm@cua.dk>
5379
5380 * lread.c (read1): Fix last change.
5381 "`" is not always special. Allow "?" after a character constant.
5382
5383 2003-02-18 Andrew Choi <akochoi@shaw.ca>
5384
5385 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
5386
5387 2003-02-18 Andreas Schwab <schwab@suse.de>
5388
5389 * window.c (window_scroll_pixel_based): Move outside a
5390 multi-glyph character before setting new window start.
5391
5392 * xdisp.c (in_display_vector_p): New function.
5393 * dispextern.h (in_display_vector_p): Declare.
5394
5395 2003-02-18 Kim F. Storm <storm@cua.dk>
5396
5397 * lread.c (read1): Fix and relax read syntax.
5398 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
5399 Only recognize "," after dotted-pair dot if inside backquote.
5400 Never include "`" or "," (inside backquote) in a symbol.
5401 Allow dotted-pair dot after a character constant.
5402 Allow "`" and "," (inside backquote) after a character constant.
5403
5404 2003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5405
5406 * gtkutil.c (xg_tool_bar_expose_callback): New function.
5407 (xg_create_tool_bar): Force style of tool bar to be horizontal with
5408 icons. Set name of tool bar to emacs-toolbar.
5409 (update_frame_tool_bar): Connect expose event to
5410 xg_tool_bar_expose_callback.
5411
5412 2003-02-17 Richard M. Stallman <rms@gnu.org>
5413
5414 * keyboard.c (this_command_key_count_reset): New variable.
5415 Initiatize to 0 where this_command_key_count is set.
5416 (read_char): Save and restore this_command_key_count_reset
5417 around input method code.
5418 (read_char): If this_command_key_count_reset, echo reread commands.
5419 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
5420
5421 2003-02-17 Kenichi Handa <handa@m17n.org>
5422
5423 * fns.c (string_to_multibyte): Always return a multibyte string.
5424
5425 2003-02-16 Jason Rumney <jasonr@gnu.org>
5426
5427 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
5428 Negative max_fonts parameter means list all.
5429
5430 2003-02-14 Dave Love <fx@gnu.org>
5431
5432 * fns.c (Flanginfo): Doc fix.
5433
5434 2003-02-13 Kim F. Storm <storm@cua.dk>
5435
5436 * lread.c (read_escape): Interpret \s as a SPACE character, except
5437 for \s-X in a character constant which still is the super modifier.
5438 (read1): Signal an `invalid read syntax' error if a character
5439 constant is immediately followed by a digit or symbol character.
5440
5441 * search.c (Fmatch_data): Doc fix. Explicitly state that
5442 match-data is undefined if last search failed.
5443
5444 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
5445 All uses changed.
5446
5447 2003-02-12 Juanma Barranquero <lektu@terra.es>
5448
5449 * eval.c (Fdefmacro): Fix typo.
5450
5451 2003-02-12 Kim F. Storm <storm@cua.dk>
5452
5453 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
5454 macro is a string, convert meta modifiers in string when copying
5455 the string into a vector.
5456
5457 2003-02-11 Kim F. Storm <storm@cua.dk>
5458
5459 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
5460
5461 2003-02-11 Kenichi Handa <handa@m17n.org>
5462
5463 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
5464
5465 2003-02-10 Kim F. Storm <storm@cua.dk>
5466
5467 * process.c: Doc fixes.
5468 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
5469
5470 2003-02-10 Kenichi Handa <handa@m17n.org>
5471
5472 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
5473
5474 * process.c (QCfilter_multibyte): New variable.
5475 (setup_process_coding_systems): New function.
5476 (Fset_process_buffer, Fset_process_filter):
5477 Call setup_process_coding_systems.
5478 (Fstart_process): Initialize the member `filter_multibyte' of
5479 struct Lisp_Process.
5480 (create_process): Call setup_process_coding_systems.
5481 (Fmake_network_process): New keyward `:filter-multibyte'.
5482 Initialize the member `filter_multibyte' of struct Lisp_Process.
5483 Call setup_process_coding_systems.
5484 (server_accept_connection): Call setup_process_coding_systems.
5485 (read_process_output): If the process has a filter, decide the
5486 multibyteness of a string to given to the filter by
5487 `filter_multibyte' member of the process. If the process doesn't
5488 have a filter and the result of conversion is unibyte, use
5489 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
5490 multibyte form.
5491 (Fset_process_coding_system): Call setup_process_coding_systems.
5492 (Fset_process_filter_multibyte): New function.
5493 (Fprocess_filter_multibyte_p): New function.
5494 (syms_of_process): Intern and staticpro QCfilter_multibyte.
5495 Defsubr Sset_process_filter_multibyte and
5496 Sprocess_filter_multibyte_p.
5497
5498 * process.h (struct Lisp_Process): New member filter_multibyte.
5499
5500 * lisp.h (setup_process_coding_systems): Add prototype.
5501
5502 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
5503 process, update coding systems for the process.
5504
5505 2003-02-09 Kenichi Handa <handa@m17n.org>
5506
5507 * fns.c (string_to_multibyte): New function.
5508 (Fstring_to_multibyte): New function.
5509 (syms_of_fns): Defsubr it.
5510
5511 2003-02-08 Andreas Schwab <schwab@suse.de>
5512
5513 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
5514 instead of the substitution.
5515
5516 2003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5517
5518 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
5519
5520 * xmenu.c (menu_position_func): Adjust menu popup position so that
5521 the menu is fully visible.
5522
5523 2003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5524
5525 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
5526 (x_make_frame_invisible, x_wm_set_icon_position):
5527 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
5528
5529 * xfns.c (x_set_name, x_set_title): Ditto.
5530
5531 2003-02-04 Richard M. Stallman <rms@gnu.org>
5532
5533 * keyboard.c (echo_now): Update before_command_echo_length.
5534 (Freset_this_command_lengths): Reset this_command_key_count etc.
5535 immediately rather than arranging to do it later.
5536 (before_command_key_count_1, before_command_echo_length_1)
5537 (before_command_restore_flag): Vars deleted.
5538 (add_command_key): Don't handle before_command_restore_flag.
5539 (read_char, record_menu_key): Don't update before_command_key_count or
5540 before_command_echo_length.
5541 (read_char): Don't handle before_command_restore_flag.
5542
5543 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
5544 in direct-output clauses if it wouldn't be called in the ordinary case.
5545
5546 2003-02-04 Kim F. Storm <storm@cua.dk>
5547
5548 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
5549
5550 2003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5551
5552 * gtkutil.c (remove_from_container): Copying list is not needed.
5553 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
5554 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
5555 on list returned from gtk_container_get_children to avoid memory leak.
5556
5557 2003-02-01 Jason Rumney <jasonr@gnu.org>
5558
5559 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
5560 local malloc.
5561 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
5562 definitions in xpm.h.
5563 (init_xpm_functions): New function.
5564 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
5565 (init_external_image_libraries): Try to load libXpm.dll.
5566
5567 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
5568 timestamp.
5569
5570 2003-01-31 Dave Love <fx@gnu.org>
5571
5572 * syntax.c (Fskip_chars_forward)
5573 (open-paren-in-column-0-is-defun-start): Doc fix.
5574
5575 2003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
5576
5577 * fileio.c: Support // at start of name for Cygwin (just added proper
5578 preprocessor tests).
5579
5580 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
5581
5582 * Makefile.in: Use @EXEEXT@ for Cygwin.
5583
5584 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
5585
5586 * s/cygwin.h: Added for Cygwin port.
5587
5588 2003-01-31 Juanma Barranquero <lektu@terra.es>
5589
5590 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
5591 when including gif_lib.h.
5592 (init_gif_functions, init_tiff_functions): New functions.
5593 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
5594 Windows. Disable color table lookups. Call library functions
5595 through pointers determined at runtime.
5596 (init_external_image_libraries): Try to load libungif.dll and
5597 libtiff.dll.
5598
5599 2003-01-31 Kenichi Handa <handa@m17n.org>
5600
5601 * xdisp.c (SKIP_GLYPHS): New macro.
5602 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
5603
5604 2003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5605
5606 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
5607
5608 2003-01-30 Dave Love <fx@gnu.org>
5609
5610 * alloc.c (Vgc_elapsed, gcs_done): New variables.
5611 (Fgarbage_collect): Use them.
5612 (init_alloc, syms_of_alloc): Set them up.
5613
5614 2003-01-30 Juanma Barranquero <lektu@terra.es>
5615
5616 * w32fns.c (init_external_image_libraries): Add missing operator.
5617
5618 2003-01-29 Jason Rumney <jasonr@gnu.org>
5619
5620 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
5621 an alternative name for jpeg.dll.
5622
5623 2003-01-29 Kenichi Handa <handa@m17n.org>
5624
5625 * xdisp.c (set_cursor_from_row): Pay attention to string display
5626 properties.
5627
5628 2003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
5629
5630 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
5631 <escape>.
5632 (keycode_to_xkeysym_table): Reformat and add more comments.
5633 (XTread_socket): Drop special case for backspace.
5634
5635 2003-01-28 Andrew Choi <akochoi@shaw.ca>
5636
5637 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
5638 values in old-style RGB specs.
5639
5640 2003-01-27 Juanma Barranquero <lektu@terra.es>
5641
5642 * w32fns.c (init_external_image_libraries): Try alternate names for the
5643 jpeg dll.
5644
5645 2003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5646
5647 * gtkutil.c (create_dialog, xg_separator_p)
5648 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
5649 before calling strcmp or strlen.
5650
5651 2003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5652
5653 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
5654 and handle image load failure.
5655
5656 2003-01-26 Jason Rumney <jasonr@gnu.org>
5657
5658 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
5659 New functions.
5660 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
5661 Disable color table lookups. Call jpeg library functions
5662 through pointers determined at runtime.
5663 (init_external_image_libraries): Try to load jpeg.dll.
5664
5665 2003-01-25 Richard M. Stallman <rms@gnu.org>
5666
5667 * lisp.h: Declare format2 instead of format1.
5668
5669 * fileio.c (barf_or_query_if_file_exists):
5670 Call format2 instead of format1.
5671
5672 * editfns.c (format2): New function, replaces format1
5673 but takes exactly two Lisp Objects as format args.
5674
5675 * buffer.c (Fkill_buffer): Call format2 instead of format1.
5676
5677 2003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5678
5679 * xterm.h: Change to return value of x_dispatch_event to int.
5680
5681 * xterm.c (x_filter_event): New function.
5682 (event_handler_gdk, XTread_socket): Call x_filter_event.
5683 (x_dispatch_event): Change to return value of finish.
5684 (event_handler_gdk): Use return value from x_dispatch_event.
5685
5686 * xfns.c (x_window): Call create_frame_xic for GTK version to
5687 initialize input methods.
5688
5689 * gtkutil.h: Add (void) prototypes.
5690
5691 * gtkutil.c (create_menus): Remove code that puts the help menu to
5692 the right.
5693
5694 2003-01-25 Jason Rumney <jasonr@gnu.org>
5695
5696 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
5697 [HAVE_PNG]: Sync with xfns.c version.
5698 (png_load): Adjust colors for Windows. Use Windows
5699 bitmaps. Disable color table lookups.
5700 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
5701 (init_png_functions): New function.
5702 (png_read_from_memory, png_load): Call png library functions
5703 through pointers determined at runtime.
5704 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
5705 (init_external_image_libraries): New function.
5706 (init_xfns): Call it.
5707
5708 2003-01-24 Andreas Schwab <schwab@suse.de>
5709
5710 * minibuf.c (Fminibuffer_message): Verify type of parameter.
5711
5712 2003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5713
5714 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
5715 of static initializer.
5716
5717 2003-01-24 Dave Love <fx@gnu.org>
5718
5719 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
5720 architectures.
5721
5722 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
5723 Use __alignof__.
5724
5725 2003-01-24 Kenichi Handa <handa@m17n.org>
5726
5727 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
5728 It it is nonzero, don't pretend that an invisible area doesn't exist.
5729 (command_loop_1): Call adjust_point_for_property with proper
5730 second arg.
5731
5732 2003-01-22 Jason Rumney <jasonr@gnu.org>
5733
5734 Sync changes with xterm.c and xfns.c.
5735
5736 * w32term.c (x_draw_glyph_string_foreground)
5737 (x_draw_composite_glyph_string_foreground): Implement overstriking.
5738
5739 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
5740 phys_cursor's hpos is overwritten. This is still not completely
5741 correct, as it doesn't really make sense to use hpos at all to
5742 get the cursor glyph (as that is relative to the width of the
5743 characters on the line, which may have changed during the update).
5744
5745 * w32term.c (notice_overwritten_cursor): Handle the special case
5746 of the cursor being in the first blank non-text line at the
5747 end of a window.
5748
5749 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
5750 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
5751 Compute from the x position returned by x_draw_glyphs.
5752
5753 (x_display_and_set_cursor): Don't set phys_cursor_width here,
5754 except for NO_CURSOR and system caret, to make phys_cursor_width
5755 contain what its name suggests.
5756 (notice_overwritten_cursor): Consider the cursor image erased if
5757 the output area intersects the cursor image in y-direction.
5758
5759 * w32term.c (note_mode_line_or_margin_highlight): Rename from
5760 note_mode_line_highlight and extend.
5761
5762 * w32term.c (last_window): New variable.
5763 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
5764 (note_mouse_movement): Remove reimplemented code in #if 0.
5765
5766 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
5767 not update_mode_lines, and always set it to 1.
5768
5769 2003-01-21 Jason Rumney <jasonr@gnu.org>
5770
5771 * w32fns.c (IDC_HAND): Define it if system headers don't.
5772
5773 2003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
5774
5775 * w32term.h (struct w32_output): New member hand_cursor.
5776 (WM_EMACS_SETCURSOR): New message definition.
5777
5778 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
5779 function w32_define_cursor.
5780 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
5781 position, change member name output_data.x to output_data.w32 and
5782 add function w32_define_cursor.
5783 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
5784 and change member name output_data.x to output_data.w32.
5785 (w32_initialize_display_info):
5786 Setup dpyinfo->vertical_scroll_bar_cursor.
5787
5788 * w32fns.c (Vx_hand_shape): New variable.
5789 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
5790 WM_EMACS_SETCURSOR.
5791 (x-create-frame): Setup Cursor types.
5792
5793 2003-01-21 David Ponce <david@dponce.com>
5794
5795 * w32term.c (w32_encode_char): For DIM=1 charset, set
5796 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
5797 x_encode_char change by Kenichi Handa <handa@m17n.org> on
5798 2002-09-30.)
5799 (w32_draw_relief_rect): Declare all args.
5800 (w32_define_cursor): New.
5801
5802 * w32fns.c (w32_load_cursor): New function.
5803 (w32_init_class): Use it.
5804 (x_put_x_image): Declare all args.
5805
5806 2003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
5807
5808 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
5809
5810 2003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5811
5812 * gtkutil.c: Must include stdio.h before termhooks.h
5813
5814 2003-01-21 Dave Love <fx@gnu.org>
5815
5816 * alloc.c (Fgc_status): Print zombie list.
5817 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
5818 Fix assignment of zombies.
5819 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
5820 Don't take car of non-cons.
5821
5822 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
5823
5824 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
5825
5826 2003-01-20 David Ponce <david@dponce.com>
5827
5828 * w32menu.c (digest_single_submenu): Declare all args.
5829
5830 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
5831 changes in xmenu.c:
5832
5833 (parse_single_submenu): Use individual keymap's prompt
5834 string as pane name, if there is one.
5835 (set_frame_menubar): Save menu_items_n_panes from each call to
5836 parse_single_submenu and use it when calling digest_single_submenu.
5837
5838 2003-01-20 Steven Tamm <steventamm@mac.com>
5839
5840 * macterm.c (XTread_socket): Checks for valid, visible window
5841 before sending a scroll-wheel event.
5842
5843 2003-01-20 Richard M. Stallman <rms@gnu.org>
5844
5845 * xdisp.c (redisplay_window): If mini window's buffer is not
5846 a minibuffer, then redisplay it like other windows.
5847
5848 2003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5849
5850 * gtkutil.c (xg_create_frame_widgets): Check if there is an
5851 external tool bar before setting tool bar height.
5852
5853 2003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5854
5855 * xterm.c (handle_one_xevent): Surround popup_activated
5856 with #ifdef:s for non-toolkit version.
5857
5858 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
5859 (gtkutil.o): New file.
5860 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
5861 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
5862
5863 * gtkutil.c: New file for GTK version.
5864
5865 * gtkutil.h: New file for GTK version.
5866
5867 * xterm.h: Add xt_or_gtk_widget.
5868 Include gtk files for USE_GTK.
5869 (struct x_output): Add toolbar_height.
5870 (struct x_output): Add GTK widgets and Gdk size_hints.
5871 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
5872 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
5873 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
5874
5875 * xterm.c: Include gtkutil.h for USE_GTK.
5876 Declare extern void free_frame_menubar for USE_GTK.
5877 (note_mouse_highlight): Check popup_activated for USE_GTK.
5878 (xt_action_hook): Don't compile if USE_GTK.
5879 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
5880 (xg_scroll_callback): New function.
5881 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
5882 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
5883 for USE_GTK.
5884 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
5885 xg_show_scroll_bar for USE_GTK.
5886 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
5887 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
5888 (event_handler_gdk): New function for USE_GTK.
5889 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
5890 (handle_one_xevent): Make sure widget is mapped before
5891 calling x_real_positions for USE_GTK.
5892 (XTread_socket): Add GTK event loop for USE_GTK.
5893 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
5894 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
5895 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
5896 (x_iconify_frame): Add code for USE_GTK.
5897 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
5898 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
5899 is in gtkutil.c.
5900 (x_term_init): Add initialization for GTK.
5901 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
5902
5903 * xmenu.c: Include gtkutil.h for USE_GTK.
5904 (Fx_popup_menu): Use current position if x and y is NIL.
5905 (single_menu_item, single_menu_item, Fx_popup_dialog):
5906 Check for USE_GTK.
5907 (popup_widget_loop): New function for USE_GTK.
5908 (x_activate_menubar): Add code for USE_GTK.
5909 (popup_activate_callback, popup_deactivate_callback)
5910 (menu_highlight_callback, menubar_selection_callback):
5911 Add USE_GTK versions.
5912 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
5913 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
5914 (free_frame_menubar): Only compile if not USE_GTK. GTK version
5915 is in gtkutil.c.
5916 (popup_selection_callback): New version for USE_GTK.
5917 (create_and_show_popup_menu): New fuction, one USE_GTK version and
5918 one USE_X_TOOLKIT version.
5919 (xmenu_show): Call create_and_show_popup_menu.
5920 (dialog_selection_callback): New version for USE_GTK.
5921 (create_and_show_dialog): New fuction, one USE_GTK version and
5922 one USE_X_TOOLKIT version.
5923 (xdialog_show): Call create_and_show_dialog.
5924
5925 * xfns.c: Include gtkutil for USE_GTK.
5926 (x_window_to_frame, x_any_window_to_frame)
5927 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
5928 (x_top_window_to_frame): Add code for USE_GTK.
5929 (x_set_background_color): Call xg_set_background_color for GTK.
5930 (x_set_menu_bar_lines): Check for USE_GTK.
5931 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
5932 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
5933 (x_window): Call xg_create_frame_widgets for USE_GTK.
5934 (Fx_create_frame): Check for USE_GTK
5935 (Fx_file_dialog): New implementation for USE_GTK.
5936
5937 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
5938 (update_menu_bar): Add check for USE_GTK.
5939 (update_tool_bar): Add check for USE_GTK and external tool bar.
5940 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
5941 (redisplay_internal): Add check for USE_GTK and popup_activated.
5942 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
5943 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
5944 (display_menu_bar): Add check for USE_GTK
5945
5946 * lisp.h: Declare Vx_resource_name extern.
5947
5948 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
5949 for USE_GTK.
5950 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
5951
5952 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
5953 (FRAME_EXTERNAL_TOOL_BAR): New macro.
5954 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
5955
5956 * fileio.c (Fread_file_name): Add check for USE_GTK.
5957
5958 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
5959 Add check for USE_GTK.
5960
5961 * config.in: Added HAVE_GTK
5962
5963 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
5964
5965 2003-01-18 Stefan Monnier <monnier@cs.yale.edu>
5966
5967 * charset.h (Funibyte_char_to_multibyte): Export.
5968
5969 2003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5970
5971 * xmenu.c (mouse_position_for_popup): New function.
5972 (Fx_popup_menu): Call mouse_position_for_popup for X and
5973 mouse_position_hook for others.
5974
5975 2003-01-17 Kim F. Storm <storm@cua.dk>
5976
5977 * editfns.c (Finsert): Mention `string-make-multibyte' and
5978 `string-as-multibyte' in doc string.
5979
5980 2003-01-17 Kenichi Handa <handa@m17n.org>
5981
5982 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
5983
5984 * editfns.c (Fformat): Convert an unibyte char argument that is
5985 formatted by "%c" to multibyte if the total result must be a
5986 multibyte string.
5987
5988 2003-01-16 Kim F. Storm <storm@cua.dk>
5989
5990 * process.c (set-process-filter): Document unibyte/multibyte-ness
5991 of string argument.
5992
5993 2003-01-16 Kenichi Handa <handa@m17n.org>
5994
5995 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
5996
5997 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
5998 (re_search_2): Likewise.
5999
6000 2003-01-15 Kenichi Handa <handa@m17n.org>
6001
6002 * xdisp.c (message_dolog): Fix bug of the case that *Message*
6003 buffer is unibyte.
6004
6005 2003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
6006
6007 * fns.c (Fsubstring): Clarify doc string.
6008
6009 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
6010 (Fprevious_char_property_change)
6011 (Fnext_single_char_property_change)
6012 (Fprevious_single_char_property_change, Fnext_property_change)
6013 (Fnext_single_property_change, Fprevious_property_change)
6014 (Fprevious_single_property_change, Fadd_text_properties)
6015 (Fput_text_property, Fset_text_properties)
6016 (Fremove_text_properties, Fremove_list_of_text_properties)
6017 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
6018
6019 2003-01-14 Kim F. Storm <storm@cua.dk>
6020
6021 * process.h (struct Lisp_Process): New member plist replaces old
6022 member private_vars. All uses changed.
6023
6024 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
6025 (QCplist): Rename from QCvars. Change all uses.
6026 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
6027 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
6028 (syms_of_process): Intern, staticpro, defsubr these.
6029 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
6030
6031 2003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
6032
6033 * m/delta.h: Remove (obsolete).
6034
6035 2003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
6036
6037 * fileio.c (Fdelete_directory, Fdelete_file): Document the
6038 behaviour in front of symlinks.
6039 (Fdelete_file): Raise an error on directories.
6040
6041 2003-01-13 Dave Love <fx@gnu.org>
6042
6043 * fns.c (Freverse): Use QUIT.
6044
6045 2003-01-13 Richard M. Stallman <rms@gnu.org>
6046
6047 * minibuf.c (minibuffer_completion_contents):
6048 Error if point is inside prompt.
6049
6050 * keyboard.c (command_loop_1): Don't redisplay directly
6051 if there's a post-command-hook.
6052
6053 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
6054 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
6055
6056 2003-01-12 Kim F. Storm <storm@cua.dk>
6057
6058 * process.h (struct Lisp_Process): New member private_vars.
6059
6060 * process.c (QCvars): New variable.
6061 (syms_of_process): Intern and staticpro it.
6062 (Fset_process_contact): Removed function.
6063 (Fprocess_variable, Fset_process_variable): New functions.
6064 (syms_of_process): Defsubr them.
6065 (Fstart_process): Initialize private_vars plist to nil.
6066 (Fmake_network_process): New arg :vars to setup the private
6067 variables for new network process.
6068 (server_accept_connection): Copy server's private variables to
6069 client process.
6070
6071 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
6072 crashes). Code rewritten and simplified. Now directly aligns the
6073 pointer and recalculates pure_bytes_used, rather than aligning the
6074 size and adjusting the pointer.
6075
6076 2003-01-11 Kim F. Storm <storm@cua.dk>
6077
6078 * process.c (Fset_process_contact): New function.
6079 (syms_of_process): defsubr it.
6080 (make-network-process): Update doc.
6081
6082 2003-01-10 Andreas Schwab <schwab@suse.de>
6083
6084 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
6085 Reported by Berthold Gunreben <b.gunreben@web.de>.
6086
6087 2003-01-10 Dave Love <fx@gnu.org>
6088
6089 * composite.c (syms_of_composite): Make composition_hash_table weak.
6090
6091 2003-01-09 Kim F. Storm <storm@cua.dk>
6092
6093 * process.c (Fmake_network_process): Convert new port number
6094 to host byte order for `:service t' case. From Mario Lang.
6095
6096 2003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6097
6098 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
6099 instead of XtAppProcessEvent.
6100
6101 * xterm.c (handle_one_xevent): New function.
6102 (x_dispatch_event): New function.
6103 (XTread_socket): Call handle_one_xevent.
6104
6105 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
6106
6107 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
6108 call XQueryPointer to get coordinates.
6109 (popup_get_selection): Do not set popup_activated_flag to zero,
6110 let popup_deactivate_callback do that. Needed for Motif.
6111 Call x_dispatch_event instead of XtDispatchEvent.
6112 (xmenu_show): Calculate root coordinate from frame top/left position.
6113
6114 2003-01-08 Kim F. Storm <storm@cua.dk>
6115
6116 * process.c (server_accept_connection): Fix recording of new
6117 connection's local address in :local property of contact info.
6118 (Fmake_network_process): Record local network address for new
6119 client processes in :local property of contact info.
6120 (format-network-address): Add arg OMIT-PORT. Change callers.
6121
6122 2003-01-07 Dave Love <fx@gnu.org>
6123
6124 * Makefile.in (fns.o): Depend on coding.h.
6125
6126 2003-01-07 Markus Rost <rost@math.ohio-state.edu>
6127
6128 * minibuf.c (Fread_variable): Doc fix.
6129
6130 * eval.c (Fuser_variable_p): Doc change. For custom variables,
6131 use the same test as for custom-variable-p.
6132
6133 2003-01-05 Richard M. Stallman <rms@gnu.org>
6134
6135 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
6136 Count LAST_LINE_MISFIT in scroll margin for end of window.
6137 Move label too_near_end before setting SCROLL_MARGIN_POS.
6138 Set LAST_LINE_MISFIT before jumping there.
6139
6140 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
6141 scroll_conservatively case. If scrolling that much doesn't change
6142 STARTP, move it down one line.
6143
6144 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
6145 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
6146
6147 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
6148 selected frame.
6149
6150 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
6151 (syms_of_keymap): staticpro them.
6152 (Fapropos_internal): Initialize them and clear them out.
6153 Don't GCPRO them.
6154
6155 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
6156 Doc fixes.
6157
6158 * lisp.h: New misc type Lisp_Save_Value.
6159 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
6160 (XSAVE_VALUE): New macro.
6161 (struct Lisp_Save_Value): New data type.
6162 (union Lisp_Misc): Add u_save_value alternative.
6163 (make_save_value): Declared.
6164
6165 * alloc.c (make_save_value): New function.
6166
6167 * xterm.c (x_catch_errors): Save dpy using make_save_value.
6168 (x_catch_errors_unwind): Call XSync.
6169
6170 2003-01-01 Richard M. Stallman <rms@gnu.org>
6171
6172 * window.c (window_scroll_pixel_based): Partially undo last change.
6173
6174 * keyboard.c (command_loop_1): Call adjust_point_for_property
6175 in direct action cases for Qforward_char and Qbackward_char.
6176 Set already_adjusted so it won't be done twice.
6177
6178 2002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
6179
6180 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
6181 type definition of size_t.
6182
6183 2003-01-02 Steven Tamm <steventamm@mac.com>
6184
6185 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
6186 distinguish Carbon GUI builds from X11 builds on darwin.
6187
6188 2002-12-30 Steven Tamm <steventamm@mac.com>
6189
6190 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
6191 to default to t.
6192
6193 2002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
6194
6195 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
6196
6197 2002-12-28 Steven Tamm <steventamm@mac.com>
6198
6199 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
6200 allow building in a different directory than source. Uses some
6201 GNU Make extensions, but there is no other make on Mac OS X.
6202
6203 2002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
6204
6205 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
6206 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
6207 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
6208 (Fstring_to_number): Mention the returned value in the doc strings.
6209
6210 2002-12-23 Richard M. Stallman <rms@gnu.org>
6211
6212 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
6213 <scroll-down-aggressively>: Doc fix.
6214
6215 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
6216 string as pane name, if there is one.
6217 (set_frame_menubar): Save menu_items_n_panes from each call to
6218 parse_single_submenu and use it when calling digest_single_submenu.
6219
6220 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
6221 Don't try to make last line fully visible if it is past end of window.
6222
6223 2002-12-22 Steven Tamm <steventamm@mac.com>
6224
6225 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
6226 (mac_menu_show): Add support for hierarchical popup menus.
6227 (add_menu_item): Remove indentation support.
6228 (fill_submenu, fill_menu): Create hierarchical menus
6229 instead of using indentation.
6230
6231 2002-12-22 Richard M. Stallman <rms@gnu.org>
6232
6233 * xdisp.c (try_cursor_movement): Don't call try_window here.
6234 (redisplay_window): Never redisplay minibuffer when inactive.
6235
6236 * window.c (select_window_1): Undo 9/21 change.
6237
6238 2002-12-22 Steven Tamm <steventamm@mac.com>
6239
6240 * macterm.c (XTread_socket): Call KeyTranslate for control and
6241 meta to deal correctly shifted non-alpha characters, like C-S-5
6242 being treated like C-%. Does not look for shift key to deal
6243 with masking off control-key with mac-reverse-ctrl-meta.
6244
6245 2002-12-21 Richard M. Stallman <rms@gnu.org>
6246
6247 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
6248 If it is non-nil, run timers. Use an unwind-protect to requeue
6249 the events that were read ahead.
6250 (popup_get_selection_unwind): New subroutine.
6251 (popup_get_selection_queue): File-scope variable now holds that queue.
6252 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
6253 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
6254 Use an unwind-protect to pop down the dialog box.
6255 (xdialog_show_unwind): New subroutine implements that.
6256
6257 * xdisp.c (row_containing_pos): Change exit test using last_y.
6258 (try_window_id): Abort if row_containing_pos returns null.
6259
6260 * lread.c (load_error_handler): New function.
6261 (Fload): Handle errors in Fsubstitute_in_file_name.
6262 Don't expect Fsignal to return.
6263
6264 * eval.c: Errors and throws work right with interrupt blocking.
6265 (struct catchtag): New elt interrupt_input_blocked.
6266 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
6267 (internal_catch, Fcondition_case, internal_condition_case)
6268 (internal_condition_case_1, internal_condition_case_2): Save it.
6269 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
6270
6271 * editfns.c (Fformat): Add parens.
6272
6273 * dired.c (file_name_completion): Fix that change.
6274 Delete special quit-handling code; just use QUIT.
6275
6276 2002-12-21 Tak Ota <Takaaki.Ota@am.sony.com> (tiny change)
6277
6278 * dired.c (file_name_completion): Close directory on error
6279 just as in directory_files_internal.
6280
6281 2002-12-19 David Kastrup <David.Kastrup@t-online.de>
6282
6283 * window.c (Fset_window_configuration): Set old_point to correct
6284 value when new_current_buffer == current_buffer.
6285
6286 2002-12-17 Ben Key <bkey1@tampabay.rr.com>
6287
6288 Revisited my earlier fix for the following entry in etc/PROBLEMS:
6289 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
6290 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
6291
6292 These changes were in part based upon suggestions made by Peter
6293 'Luna' Runestig [peter@runestig.com].
6294
6295 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
6296 g_b_init_get_token_information, g_b_init_lookup_account_sid,
6297 g_b_init_get_sid_identifier_authority ): Add several static
6298 global variables.
6299
6300 * w32.c (globals_of_w32): New function. Used to initialize those
6301 global variables that must always be initialized on startup even
6302 when the global variable initialized is non zero. Its primary
6303 purpose at this time is to set the global variables
6304 g_b_init_is_windows_9x, g_b_init_open_process_token,
6305 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
6306 g_b_init_get_sid_identifier_authority to 0 on startup.
6307 Called from main.
6308
6309 * w32.c (is_windows_9x): Perform initialization only if
6310 g_b_init_is_windows_9x is equal to 0. On initialization set
6311 g_b_init_is_windows_9x equal to 1.
6312
6313 * w32.c (open_process_token): Perform initialization only if
6314 g_b_init_open_process_token is equal to 0. On initialization set
6315 g_b_init_open_process_token equal to 1.
6316
6317 * w32.c (get_token_information): Perform initialization only if
6318 g_b_init_get_token_information is equal to 0. On initialization
6319 set g_b_init_get_token_information equal to 1.
6320
6321 * w32.c (lookup_account_sid): Perform initialization only if
6322 g_b_init_lookup_account_sid is equal to 0. On initialization
6323 set g_b_init_lookup_account_sid equal to 1.
6324
6325 * w32.c (get_sid_identifier_authority): Perform initialization
6326 only if g_b_init_get_sid_identifier_authority is equal to 0.
6327 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
6328
6329 * w32fns.c (globals_of_w32fns): New function. Used to initialize
6330 those global variables that must always be initialized on startup
6331 even when the global variable initialized is non zero.
6332 Its primary purpose at this time is to initialize the global variable
6333 track_mouse_event_fn.
6334
6335 * w32fns.c (w32_wnd_proc): Remove initialization of
6336 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
6337
6338 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
6339
6340 * w32menu.c (globals_of_w32menu): New function. Used to
6341 initialize those global variables that must always be initialized
6342 on startup even when the global variable initialized is non zero.
6343 Its primary purpose at this time is to initialize the global
6344 variables get_menu_item_info and set_menu_item_info.
6345
6346 * w32menu.c (initialize_frame_menubar): Remove initialization of
6347 get_menu_item_info and set_menu_item_info.
6348
6349 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
6350
6351 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
6352 Declare them.
6353
6354 * emacs.c (main): Call globals_of_w32 prior to calling
6355 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
6356 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
6357 is defined.
6358
6359 * w32term.c (x_update_window_begin): Fix Windows API error
6360 detected by BoundsChecker. Test to determine if
6361 w32_system_caret_hwnd is NULL prior to attempting to use
6362 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
6363
6364 * w32term.c (x_update_window_end): Fix Windows API error
6365 detected by BoundsChecker. Test to determine if
6366 w32_system_caret_hwnd is NULL prior to attempting to use
6367 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
6368
6369 2002-12-17 Kenichi Handa <handa@m17n.org>
6370
6371 * coding.c (coding_system_require_warning): New variable.
6372 (syms_of_coding): DEFVAR it.
6373
6374 * coding.h (coding_system_require_warning): Extern it.
6375
6376 * fileio.c (choose_write_coding_system): Even if
6377 Vcoding_system_for_write is non-nil, if
6378 coding_system_require_warning is nonzero, call
6379 Vselect_safe_coding_system_function.
6380
6381 2002-12-17 Markus Rost <rost@math.ohio-state.edu>
6382
6383 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
6384 (lisp): Add font-core.
6385
6386 2002-12-13 Stefan Monnier <monnier@cs.yale.edu>
6387
6388 * textprop.c (text_read_only): New arg `propval'.
6389 (get_char_property_and_overlay): Remove unused var `next_overlay'.
6390 (verify_interval_modification): Use text_read_only's new arg.
6391
6392 2002-12-13 Kenichi Handa <handa@m17n.org>
6393
6394 * coding.c (Funencodable_char_position): Set pend correctly.
6395
6396 2002-12-12 Jason Rumney <jasonr@gnu.org>
6397
6398 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
6399 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
6400 Be more careful about when help_events are generated.
6401
6402 2002-12-12 Steven Tamm <steventamm@mac.com>
6403
6404 * macterm.c (mac_check_for_quit_char): Correctly set the
6405 modifiers of the event to 0.
6406 * mac.c (sys_select): Duplicate rfds before calling select to
6407 ensure that rfds survive the while loop.
6408
6409 2002-12-11 Kim F. Storm <storm@cua.dk>
6410
6411 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
6412 row_containing_pos returned NULL.
6413
6414 2002-12-10 Steven Tamm <steventamm@mac.com>
6415
6416 * mac.c (sys_read): Fix sys_read to not call select if IO is
6417 non-blocking.
6418 (sys_select): Fix sys_select to not use a timeout larger than
6419 the one given.
6420
6421 2002-12-10 Juanma Barranquero <lektu@terra.es>
6422
6423 * editfns.c (Fformat): Use alloca, not _alloca.
6424
6425 2002-12-09 Richard M. Stallman <rms@gnu.org>
6426
6427 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
6428 as the last thing.
6429
6430 2002-12-09 Dave Love <fx@gnu.org>
6431
6432 * s/sol2-8.h: Removed. (Not necessary.)
6433
6434 2002-12-09 Matthew Swift <swift@alum.mit.edu>
6435
6436 * editfns.c (Fformat): Handle precision in string conversion
6437 specifiers like libc functions do (ie, print at most that many
6438 characters).
6439
6440 2002-12-08 Richard M. Stallman <rms@gnu.org>
6441
6442 * xdisp.c (row_containing_pos): Check more carefully
6443 whether charpos is really in the row before returning it.
6444
6445 2002-12-07 Steven Tamm <steventamm@mac.com>
6446
6447 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
6448
6449 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
6450 each stack frame. This may change as it could be time consuming.
6451
6452 * macterm.c (mac_check_for_quit_char, quit_char_comp)
6453 (init_quit_char_handler, mac_determine_quit_char_modifiers)
6454 (mac_initialize): Add code to check for pressing of quit_char
6455 in the OS event queue.
6456
6457 * mac.c (sys_select): Call mac_check_for_quit_char every second
6458 while blocking on select.
6459
6460 * mac.c (sys_read): Use sys_select to test for input first
6461 before calling read, to allow C-g to break.
6462
6463 2002-12-07 Richard M. Stallman <rms@gnu.org>
6464
6465 * minibuf.c (Fcompleting_read): Doc fix.
6466
6467 * lread.c (syms_of_lread) <load-history>: Doc fix.
6468
6469 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
6470
6471 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
6472 autoload.
6473
6474 * data.c (Fdefalias): Record in load-history redefining an autoload.
6475
6476 * alloca.c: Undo ifdef change accidentally made on 12-04.
6477
6478 2002-12-06 Francesco Potorti` <pot@gnu.org>
6479
6480 * xfns.c (png_load): Avoid double gamma correction for PNG images.
6481
6482 2002-12-04 Richard M. Stallman <rms@gnu.org>
6483
6484 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
6485
6486 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
6487
6488 * alloca.c: Don't use #error.
6489
6490 2002-12-03 Dave Love <fx@gnu.org>
6491
6492 * buffer.c (Qucs_set_table_for_input): New.
6493 (Fget_buffer_create): Use it.
6494 (Qset_buffer_major_mode_hook): Deleted.
6495 (Fset_buffer_major_mode): Revert previous change.
6496 (init_buffer_once): Intern ucs-set-table-for-input.
6497 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
6498 Add &Qucs_set_table_for_input.
6499
6500 2002-12-03 Andreas Schwab <schwab@suse.de>
6501
6502 * callint.c (Fcall_interactively): Use next_event only if less
6503 than key_count.
6504
6505 2002-12-02 Andrew Choi <akochoi@shaw.ca>
6506
6507 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
6508 names to 255 characters.
6509
6510 * macterm.c (XTread_socket): If all frames have been collapsed,
6511 expand the first one before handling drag-and-drop events.
6512
6513 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
6514 which is detected by autoconf.
6515
6516 2002-12-01 Steven Tamm <steventamm@mac.com>
6517
6518 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
6519 offset in two hints table to allow prebinding to be redone and
6520 allow the executable to be stripped.
6521
6522 2002-11-29 Dave Love <fx@gnu.org>
6523
6524 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
6525 already provided.
6526
6527 2002-11-29 Richard M. Stallman <rms@gnu.org>
6528
6529 * xdisp.c (start_display): Check more intelligently for
6530 whether the line is continued.
6531 (move_it_vertically_backward): Clear it->continuation_lines_width.
6532
6533 2002-11-28 Dave Love <fx@gnu.org>
6534
6535 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
6536 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
6537
6538 2002-11-27 Steven Tamm <steventamm@mac.com>
6539
6540 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
6541 more descriptive error output from lread.c:Fload upon most require
6542 cycles during boostrapping.
6543
6544 2002-11-27 Jason Rumney <jasonr@gnu.org>
6545
6546 * fileio.c (Finsert_file_contents): Give a more appropriate error
6547 for files bigger than 2Gb when off_t is 32 bit.
6548
6549 * dired.c (Ffile_attributes): Don't return negative file sizes for
6550 files bigger than 2Gb when off_t is 32 bit.
6551
6552 2002-11-27 Dave Love <fx@gnu.org>
6553
6554 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6555
6556 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
6557 Test GETPGRP_VOID instead.
6558 [BSD_TERMIOS]: Remove definitions (never used).
6559
6560 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
6561 Don't define.
6562 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6563
6564 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
6565
6566 2002-11-25 Jason Rumney <jasonr@gnu.org>
6567
6568 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
6569 supported.
6570
6571 2002-11-25 Dave Love <fx@gnu.org>
6572
6573 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
6574
6575 * Makefile.in (TEMACS_LDFLAGS): Update last change.
6576
6577 2002-11-25 Andreas Schwab <schwab@suse.de>
6578
6579 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
6580
6581 2002-11-24 Steven Tamm <steventamm@mac.com>
6582
6583 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
6584 determine the size of pointers alloced in unexed space instead
6585 of using possibly invalid emacs_zone pointers. This fixes the
6586 binary incompatibility problems caused by updates to libSystem.B.
6587
6588 2002-11-24 Richard M. Stallman <rms@gnu.org>
6589
6590 * search.c (Fstring_match): Doc fix.
6591
6592 * callint.c (Fcall_interactively): If a command fails because
6593 `*' detects a read-only buffer, but RECORD_FLAG is set,
6594 record it anyway if the args don't actually do tty input.
6595
6596 2002-11-22 Dave Love <fx@gnu.org>
6597
6598 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
6599
6600 * keyboard.c (interrupt_signal): Provide forward declaration.
6601 (kbd_buffer_store_event): Don't declare interrupt_signal.
6602
6603 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
6604
6605 2002-11-21 Richard M. Stallman <rms@gnu.org>
6606
6607 * eval.c (interactive_p): Skip any number of bytecode
6608 and special form frames, in any order.
6609
6610 2002-11-20 Jason Rumney <jasonr@gnu.org>
6611
6612 * w32fns.c (convert_mono_to_color_image): New function.
6613 (xbm_load, xbm_load_image): Use it when foreground or background
6614 is explicitly set.
6615
6616 2002-11-19 Dave Love <fx@gnu.org>
6617
6618 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
6619
6620 2002-11-18 Jason Rumney <jasonr@gnu.org>
6621
6622 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
6623 (XPutPixel): Swap blue and red.
6624 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
6625 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
6626 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
6627 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
6628
6629 2002-11-18 Dave Love <fx@gnu.org>
6630
6631 * m/orion105.h (HAVE_ALLOCA): Don't define.
6632
6633 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
6634
6635 * m/intel386.h: Don't include alloca.h or define alloca.
6636
6637 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
6638 malloc, realloc, calloc.
6639
6640 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
6641 (bcmp): Don't define.
6642
6643 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
6644
6645 * m/amdahl.h: Don't define LIB_STANDARD.
6646
6647 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
6648
6649 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
6650
6651 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
6652 Don't include alloca.h.
6653
6654 * s/aix3-2.h (HAVE_FSYNC): Don't define.
6655
6656 * regex.c (_GNU_SOURCE): Don't define.
6657
6658 * process.c (_GNU_SOURCE): Don't define.
6659
6660 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
6661
6662 2002-11-18 Markus Rost <rost@math.ohio-state.edu>
6663
6664 * s/sol2-8.h: Include sol2-6.h.
6665
6666 2002-11-18 Miles Bader <miles@gnu.org>
6667
6668 * dispextern.h (struct face): Add `overstrike' field.
6669 * xterm.c (x_draw_glyph_string_foreground)
6670 (x_draw_composite_glyph_string_foreground): Implement overstriking.
6671 * xfaces.c (load_face_font): Set `face->overstrike' based on
6672 result from choose_face_font.
6673 (best_matching_font, choose_face_font): Add `needs_overstrike'
6674 argument, and use it to return whether overstriking is desirable
6675 for this face/font combo.
6676 (set_font_frame_param: Pass new argument to choose_face_font.
6677
6678 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
6679
6680 This change is my fix for the following entry in etc/PROBLEMS:
6681 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
6682 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
6683
6684 * w32.c: Added wrapper functions around the win32 API functions
6685 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
6686 GetSidIdentifierAuthority. These wrapper functions serve two
6687 purposes:
6688 1. They ensure that the wrapped function can never be called
6689 when Emacs is running on an operating system on which they are
6690 not supported (Microsoft Windows 95 / 98 / ME).
6691 2. They call the wrapped functions via function pointers rather
6692 than calling them directly. This avoids taking advantage of the
6693 undocumented fact that although these functions are not supported
6694 in the 9x branch of Microsoft Windows, the functions do exist in
6695 the version of advapi32.dll that is found in the 9x branch of
6696 Microsoft Windows.
6697
6698 * w32.c (init_user_info): Replace the calls to the win32 API
6699 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
6700 and GetSidIdentifierAuthority with calls to the newly added
6701 wrapper functions.
6702
6703 * w32.h: Added extern declarations for the following functions:
6704 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
6705 syms_of_w32menu, and void syms_of_fontset.
6706
6707 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
6708 function pointer track_mouse_event_fn in the handler for the
6709 WM_SETFOCUS message.
6710
6711 * w32menu.c (initialize_frame_menubar): Add code to
6712 reinitialize the function pointers set_menu_item_info and
6713 get_menu_item_info.
6714
6715 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
6716
6717 * sound.c: Added a partial implementation of play-sound-internal
6718 for Microsoft Windows. Added various #ifdef / #else / #endif
6719 code blocks to separate the code that will compile under
6720 Microsoft Windows from the code that is specific to Gnu/Linux.
6721 Moved several blocks of code around to make this separation of code
6722 into Windows compatible and Gnu/Linux compatible code blocks easier.
6723
6724 * makefile.w32-in: Include sound.c and link with WinMM.lib.
6725
6726 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
6727 added support for play-sound-internal under Windows would be
6728 included in the build of Emacs.
6729
6730 2002-11-16 Jason Rumney <jasonr@gnu.org>
6731
6732 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
6733
6734 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
6735
6736 2002-11-15 Stefan Monnier <monnier@cs.yale.edu>
6737
6738 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
6739 (adjust_point_for_property): Move out of display and invisible even if
6740 we were already inside before (in case a property was added while
6741 we weren't looking). Be more careful when handling invisible props.
6742 Skip invisible text as if it really wasn't there at all.
6743
6744 2002-11-15 Jason Rumney <jasonr@gnu.org>
6745
6746 * w32term.c (x_draw_image_foreground)
6747 (w32_draw_image_foreground_1): Use standard copy and invert
6748 operations to draw images.
6749
6750 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
6751 depth of 1.
6752 (xbm_read_bitmap_data): Invert bits as xbm is read in.
6753 (XPutPixel): Don't invert bits here.
6754
6755 2002-11-15 Jason Rumney <jasonr@gnu.org>
6756
6757 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
6758 (w32_draw_image_foreground_1): Handle image masks.
6759 (x_draw_image_glyph_string): Don't BitBlt transparently.
6760
6761 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
6762 (x_from_xcolors): Adjust RGB values for W32.
6763 (image_background, image_background_transparent)
6764 (postprocess_image, x_to_xcolors, x_disable_image)
6765 (x_build_heuristic_mask): Adapt for W32 and enable.
6766 (x_create_x_image_and_pixmap): Mark images with palettes as such.
6767 (xbm_load): Remove unused variable.
6768
6769 2002-11-14 Richard M. Stallman <rms@gnu.org>
6770
6771 * buffer.c (syms_of_buffer): Doc fix.
6772
6773 2002-11-14 Dave Love <fx@gnu.org>
6774
6775 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
6776
6777 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
6778 * xmenu.c (unuse_menu_items, digest_single_submenu):
6779 * xfns.c (x_put_x_image):
6780 * xdisp.c (message2_nolog, set_message):
6781 * undo.c (record_point):
6782 * terminfo.c (tparam):
6783 * syntax.c (scan_sexps_forward):
6784 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
6785 * composite.c (update_compositions):
6786 * cm.c (calccost, cmgoto):
6787 * charset.c (c_string_width): Declare all args (per C99).
6788
6789 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
6790
6791 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
6792 Don't declare.
6793
6794 * emacs.c (main) [!VMS]: Avoid third arg.
6795
6796 * fns.c (Fcopy_sequence): Doc fix.
6797 (Fmap_char_table): Cast `call2'.
6798
6799 2002-11-14 Francesco Potorti` <pot@gnu.org>
6800
6801 * s/sol2-8.h: New file.
6802
6803 2002-11-14 Kim F. Storm <storm@cua.dk>
6804
6805 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
6806 dependency on `risky-local-variable' and the :propertize form.
6807
6808 2002-11-12 Stefan Monnier <monnier@cs.yale.edu>
6809
6810 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
6811
6812 * syntax.c (scan_sexps_forward): Undo last patch.
6813 Use a more obvious fix: check eob before updating the syntax table.
6814
6815 2002-11-09 Stefan Monnier <monnier@cs.yale.edu>
6816
6817 * syntax.c (scan_sexps_forward): Update syntax table before reading
6818 a char rather than after so we don't update the table past eob.
6819
6820 2002-11-09 Dave Love <fx@gnu.org>
6821
6822 * buffer.c (Fset_buffer_major_mode): Fix last change.
6823
6824 * regex.c (regexec): Fix pmatch declaration.
6825
6826 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
6827
6828 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
6829 to self-inserting characters.
6830 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
6831
6832 * coding.c (Vtranslation_table_for_input): New.
6833 (syms_of_coding): DEFVAR it.
6834
6835 2002-11-08 Juanma Barranquero <lektu@terra.es>
6836
6837 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
6838 window.
6839
6840 2002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6841
6842 * process.c (Fformat_network_address): Remove unused locals p,
6843 cp, and i.
6844
6845 2002-11-06 Dave Love <fx@gnu.org>
6846
6847 * buffer.c (Qset_buffer_major_mode_hook): New.
6848 (Fset_buffer_major_mode): Use it.
6849
6850 2002-11-06 Richard M. Stallman <rms@gnu.org>
6851
6852 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
6853 and stop_polling.
6854
6855 * process.c (wait_reading_process_input):
6856 Test POLLING_PROBLEM_IN_SELECT, not hpux.
6857 Avoid initialization for auto Lisp_Object var.
6858
6859 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
6860
6861 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
6862
6863 2002-11-05 Richard M. Stallman <rms@gnu.org>
6864
6865 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
6866
6867 * callint.c (Fcall_interactively): New local filter_specs.
6868 (Fcall_interactively): Check for progn as well as let.
6869 Add a gcpro.
6870 (Qprogn): New variable.
6871 (syms_of_callint): Staticpro and init Qprogn.
6872
6873 2002-11-04 John Paul Wallington <jpw@shootybangbang.com>
6874
6875 * lread.c (Feval_buffer): Doc fix.
6876
6877 2002-11-04 Dave Love <fx@gnu.org>
6878
6879 * keyboard.c (read_char): Always translate iff
6880 Vkeyboard_translate_table is a char table and c is valid.
6881
6882 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
6883 and fix C types.
6884
6885 2002-11-03 Stefan Monnier <monnier@cs.yale.edu>
6886
6887 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
6888
6889 * editfns.c (get_pos_property): Don't hardcode Qfield.
6890
6891 * keyboard.c (adjust_point_for_property): Handle `display' prop on
6892 overlays. Also handle `invisible' prop.
6893
6894 2002-11-02 Stefan Monnier <monnier@cs.yale.edu>
6895
6896 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
6897 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
6898
6899 2002-11-01 Andreas Schwab <schwab@suse.de>
6900
6901 * editfns.c (Fmessage): Revert last change to properly handle %%.
6902
6903 2002-11-01 Stefan Monnier <monnier@cs.yale.edu>
6904
6905 * xmenu.c (unuse_menu_items): New fun.
6906 (menu_items_inuse): New var.
6907 (syms_of_xmenu): Initialize it.
6908 (init_menu_items): Use it to detect re-entrance.
6909 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
6910 (Fx_popup_menu): Remove spurious XSETFRAME.
6911
6912 * editfns.c (find_field): Make an exception for nil fields.
6913
6914 2002-11-01 Dave Love <fx@gnu.org>
6915
6916 * m/gec63.h: Deleted.
6917
6918 2002-10-31 Dave Love <fx@gnu.org>
6919
6920 * xterm.c (XTread_socket): Fix last change.
6921 (xaw_scroll_callback): Cast call_data to long to avoid warning.
6922
6923 2002-10-31 Stefan Monnier <monnier@cs.yale.edu>
6924
6925 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
6926
6927 2002-10-30 Stefan Monnier <monnier@cs.yale.edu>
6928
6929 * editfns.c (overlays_around, get_pos_property): New funs.
6930 (find_field): Use them.
6931 Also be careful not to modify POS before its last use.
6932 (Fmessage): Don't Fformat if there's nothing to format.
6933
6934 2002-10-30 Dave Love <fx@gnu.org>
6935
6936 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
6937 [HAVE_PTY_H]; Include pty.h.
6938
6939 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
6940
6941 * xterm.c (Qeql): Declare.
6942 (Vx_keysym_table): New.
6943 (syms_of_xterm): Initialize it.
6944 (XTread_socket): Use it. Deal with ASCII keysyms.
6945 (XSetIMValues) [HAVE_X11R6]: Prototype.
6946
6947 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
6948 (lispy_kana_keys): Comment out.
6949 (make_lispy_event) [XK_kana_A]: Comment out.
6950 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
6951 Fix sprintf call.
6952
6953 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
6954 regexp.h change).
6955 (TERMINFO, LIBS_TERMCAP): Define.
6956
6957 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
6958 (bcmp): Define conditional on HAVE_BCMP.
6959 (NO_SIOCTL_H): Don't define.
6960 (TIOCSIGSEND): Don't make conditional on IRIX6.
6961
6962 * s/sol2-5.h: Don't include strings.h.
6963 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
6964
6965 * s/irix6-0.h (IRIX6): Don't define.
6966 (bcopy, bcmp, bzero): Don't undef.
6967
6968 * s/irix6-5.h: Don't include strings.h.
6969 (IRIX6): Don't define.
6970 (bcopy, bcmp, bzero): Don't undef.
6971
6972 * syntax.c (Fforward_comment): Doc fix.
6973
6974 2002-10-29 Kim F. Storm <storm@cua.dk>
6975
6976 * process.c (Fsignal_process): Allow PROCESS to be specified by
6977 name in addition to pid (as integer or string).
6978
6979 2002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
6980
6981 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
6982 environments.
6983
6984 2002-10-27 Kim F. Storm <storm@cua.dk>
6985
6986 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
6987
6988 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
6989
6990 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
6991
6992 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
6993
6994 2002-10-26 Richard M. Stallman <rms@gnu.org>
6995
6996 * editfns.c (Fformat): Detect invalid format letters for floats.
6997
6998 2002-10-25 Kenichi Handa <handa@m17n.org>
6999
7000 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
7001 (x_set_title): Likewise.
7002
7003 2002-10-25 Juanma Barranquero <lektu@terra.es>
7004
7005 * macgui.h:
7006 * w32gui.h: Remove definition of XColor.
7007
7008 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
7009
7010 2002-10-24 Kim F. Storm <storm@cua.dk>
7011
7012 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
7013 Callers changed (supply dummy arg).
7014
7015 * lisp.h (get_window_cursor_type): Update prototype.
7016
7017 * w32term.c (x_display_and_set_cursor): Get active_cursor from
7018 get_window_cursor_type to track system caret.
7019
7020 2002-10-24 Kim F. Storm <storm@cua.dk>
7021
7022 * process.c (Fformat_network_address): New function.
7023 (syms_of_process): Defsubr it.
7024 (list_processes_1): Use it to format :local/:remote address if
7025 service/host is not set; before emacs would crash in that case.
7026 (Fmake_network_process): Don't use Ffind_operation_coding_system
7027 to setup coding system if host or service is not set.
7028
7029 2002-10-23 Juanma Barranquero <lektu@terra.es>
7030
7031 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
7032
7033 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
7034 COLORREF.
7035
7036 * macgui.h:
7037 * w32gui.h: Add definition of XColor.
7038
7039 * macfns.c:
7040 * w32fns.c:
7041 * xfaces.c: Remove definition of XColor.
7042
7043 2002-10-22 Stefan Monnier <monnier@cs.yale.edu>
7044
7045 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
7046
7047 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
7048 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
7049 window if it is dedicated.
7050 (Fshrink_window): Add preserve_before as was done for enlarge_window.
7051 (Vspecial_display_function): Update docstring.
7052
7053 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
7054 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
7055 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
7056
7057 2002-10-21 Stefan Monnier <monnier@cs.yale.edu>
7058
7059 * casefiddle.c (casify_region): Don't treat a prefix char as part
7060 of a word when at the beginning.
7061
7062 2002-10-17 Juanma Barranquero <lektu@terra.es>
7063
7064 * lread.c (syms_of_lread): Fix typos.
7065
7066 2002-10-17 Dave Love <fx@gnu.org>
7067
7068 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
7069
7070 2002-10-16 Richard M. Stallman <rms@gnu.org>
7071
7072 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
7073
7074 2002-10-14 Juanma Barranquero <lektu@terra.es>
7075
7076 * w16select.c (syms_of_win16select): Fix docstring for
7077 `selection-coding-system'.
7078
7079 * w32select.c (syms_of_w32select): Likewise.
7080
7081 2002-10-14 Stefan Monnier <monnier@cs.yale.edu>
7082
7083 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
7084 a backslash-quoted char.
7085 (scan_lists, scan_sexps_forward): Pacify the compiler.
7086
7087 2002-10-13 Richard M. Stallman <rms@gnu.org>
7088
7089 * window.c (window_scroll): Set immediate_quit.
7090
7091 * print.c (print): When backquote form is the car of a list,
7092 output in old style. Use old_backquote_output to output all
7093 comma forms inside it in old style too.
7094
7095 * buffer.h (struct buffer): Move `undo_list' down below `name'.
7096
7097 2002-10-11 Markus Rost <rost@math.ohio-state.edu>
7098
7099 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
7100 batch mode).
7101
7102 * lread.c (Fload): Doc fix (load-suffixes).
7103
7104 2002-10-10 Steven Tamm <steventamm@mac.com>
7105
7106 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
7107 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
7108 Also switch the default to Qnil from Qt.
7109
7110 2002-10-08 Kenichi Handa <handa@m17n.org>
7111
7112 * coding.c (code_convert_region): When we need more GAP for
7113 conversion, pay attention to the case that coding->produced is not
7114 greater than coding->consumed.
7115
7116 2002-10-07 Richard M. Stallman <rms@gnu.org>
7117
7118 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
7119
7120 2002-10-06 Andrew Choi <akochoi@shaw.ca>
7121
7122 * macmenu.c (mac_menu_show): Add j to count menu items; match
7123 menu_item_selection to it to find selected item.
7124
7125 2002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7126
7127 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
7128 cases. The correct fix is to pass ReparentNotify to Xt.
7129 The shell widget interprets ConfigureNotify differently depending
7130 on if it has been reparented or not.
7131
7132 2002-10-05 Markus Rost <rost@math.ohio-state.edu>
7133
7134 * editfns.c (Fformat_time_string): Doc fix.
7135
7136 2002-10-05 John Paul Wallington <jpw@shootybangbang.com>
7137
7138 * fns.c (Flength): Doc fix.
7139
7140 2002-10-04 Stefan Monnier <monnier@cs.yale.edu>
7141
7142 * keyboard.c (keyremap): New struct.
7143 (read_key_sequence): Use it: globally replace keytran_foo with
7144 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
7145 keytran_next and fkey_next to just `next'.
7146
7147 2002-10-04 Steven Tamm <steventamm@mac.com>
7148
7149 * macterm.c (keycode_to_xkeysym_table): Change return to be
7150 treated like an X keysym.
7151
7152 2002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7153
7154 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
7155 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
7156 This is to also handle x/y changes that occur because of a resize.
7157
7158 2002-10-02 John Paul Wallington <jpw@shootybangbang.com>
7159
7160 * frame.c (Vdelete_frame_functions): New variable.
7161 (syms_of_frame): Initialize and defvar it.
7162 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
7163 it when frame's `tooltip' parameter is non-nil.
7164
7165 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
7166
7167 * w32fns.c (x_create_tip_frame): Likewise.
7168
7169 * macfns.c (x_create_tip_frame): Likewise.
7170
7171 2002-09-30 Kenichi Handa <handa@m17n.org>
7172
7173 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
7174 -1 before calling ccl_driver.
7175
7176 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
7177 Only when it is non-nil, handle composition sequence.
7178 (setup_coding_system) <0>: Don't force composition handling.
7179
7180 * Makefile.in (lisp, shortlisp): Add utf-16.elc
7181
7182 2002-09-29 Richard M. Stallman <rms@gnu.org>
7183
7184 * search.c (Freplace_match): Adjust match data for the substitution
7185 just made in the buffer.
7186
7187 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
7188 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
7189
7190 2002-09-27 Richard M. Stallman <rms@gnu.org>
7191
7192 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
7193 (read_char): Use them. Do all exits thru the end of the function.
7194
7195 2002-09-27 Kenichi Handa <handa@etl.go.jp>
7196
7197 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
7198 is nil.
7199
7200 2002-09-26 Richard M. Stallman <rms@gnu.org>
7201
7202 * regex.h (__restrict_arr): Don't define if already defined.
7203
7204 * coding.c (run_pre_post_conversion_on_str):
7205 Save and restore Vdeactivate_mark.
7206
7207 2002-09-26 John Paul Wallington <jpw@shootybangbang.com>
7208
7209 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
7210
7211 2002-09-26 Kenichi Handa <handa@etl.go.jp>
7212
7213 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
7214 nonzero, try face's family at first. Otherwise try FAMILY at first.
7215 (choose_face_font): If C is a single byte char or latin-1, call
7216 try_font_list with PREFER_FACE_FAMILY 1.
7217
7218 2002-09-21 Richard M. Stallman <rms@gnu.org>
7219
7220 * window.c (select_window_1): Don't select frame.
7221 Set frame's selected window only when frame itself is selected.
7222 (Fselect_window): Doc fix.
7223
7224 2002-09-18 Kim F. Storm <storm@cua.dk>
7225
7226 * process.c (make-network-process): Doc fix (there is no
7227 network-server-log-function hook).
7228
7229 2002-09-18 Richard M. Stallman <rms@gnu.org>
7230
7231 * print.c (print): Clear out the unused parts of Vprint_number_table.
7232 (syms_of_print): Doc fix for `print-number-table'.
7233
7234 * unexelf.c (unexec): Undo previous change.
7235
7236 2002-09-17 Andreas Schwab <schwab@suse.de>
7237
7238 * m/alpha.h [LINUX]: Don't define DATA_START.
7239
7240 2002-09-16 Dave Love <fx@gnu.org>
7241
7242 * unexelf.c (unexec): Deal with .got, reinstating change from
7243 25-08-1999.
7244
7245 2002-09-13 Richard M. Stallman <rms@gnu.org>
7246
7247 * s/sol2-6.h (UNEXEC): Comment out definition.
7248
7249 * unexsol.c (unexec): Don't downcase first letter of error msg.
7250
7251 * xfaces.c (Fcolor_supported_p): Just one arg is required.
7252
7253 2002-09-12 Markus Rost <rost@math.ohio-state.edu>
7254
7255 * unexsol.c: Include buffer.h, charset.h, coding.h.
7256
7257 2002-09-11 Richard M. Stallman <rms@gnu.org>
7258
7259 * unexsol.c: Don't use report_file_error; do it by hand
7260 using dlerror.
7261
7262 * process.c (wait_reading_process_input, both versions):
7263 Before calling turn_on_atimers, call stop_polling.
7264
7265 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
7266
7267 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
7268 we go to too_near_end, call clear_glyph_matrix.
7269 (redisplay_window): After make_cursor_line_fully_visible,
7270 call clear_glyph_matrix and bypass `goto done'.
7271
7272 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
7273 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
7274
7275 2002-09-10 Richard M. Stallman <rms@gnu.org>
7276
7277 * fileio.c (Fdo_auto_save): Catch error making directory.
7278 Only call push_message if we need to.
7279 At the same time, make an unwind-protect to pop it.
7280 Rename local message_p to old_message_p.
7281 (do_auto_save_make_dir, do_auto_save_eh): New functions.
7282 (do_auto_save_unwind): Don't call pop_message.
7283
7284 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
7285
7286 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
7287
7288 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
7289
7290 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
7291
7292 2002-09-10 Stefan Monnier <monnier@cs.yale.edu>
7293
7294 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
7295 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
7296 (re_match_2_internal): Be more careful with infinite loops.
7297
7298 2002-09-10 Kim F. Storm <storm@cua.dk>
7299
7300 * macros.c (end_kbd_macro): New function.
7301 (Fend_kbd_macro): Use it.
7302
7303 * macros.h (end_kbd_macro): Declare extern.
7304
7305 * keyboard.c (Fdiscard_input): If defining keyboard macro,
7306 end and save it instead of discarding it.
7307
7308 2002-09-09 Markus Rost <rost@math.ohio-state.edu>
7309
7310 * s/sol2-6.h: Fix typo. Add comment.
7311
7312 2002-09-09 Richard M. Stallman <rms@gnu.org>
7313
7314 * regex.c (regnum_t): Use signed int, not unsigned int.
7315
7316 * s/sol2-6.h: New file.
7317
7318 * s/sol2-5.h (UNEXEC): Definition deleted.
7319
7320 2002-09-08 Kim F. Storm <storm@cua.dk>
7321
7322 * macros.c (executing_macro_index): Change type to EMACS_INT.
7323 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
7324
7325 * macros.h (executing_macro_index): Change type to EMACS_INT.
7326
7327 2002-09-06 Richard M. Stallman <rms@gnu.org>
7328
7329 * casetab.c (set_case_table): Make canon table point to eqv table.
7330
7331 2002-09-06 Juanma Barranquero <lektu@terra.es>
7332
7333 * coding.c (syms_of_coding): Fix spacing.
7334
7335 * composite.c (Fcompose_region_internal)
7336 (Fcompose_string_internal): Likewise.
7337
7338 * data.c (Flsh): Likewise.
7339
7340 * fontset.c (Fset_fontset_font): Likewise.
7341
7342 * macfns.c (Fx_server_max_request_size): Likewise.
7343
7344 * w16select.c (syms_of_win16select): Likewise.
7345
7346 * w32select.c (syms_of_w32select): Likewise.
7347
7348 * xselect.c (syms_of_xselect): Likewise.
7349
7350 2002-09-05 Richard M. Stallman <rms@gnu.org>
7351
7352 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
7353 call EXTEND_RANGE_TABLE and return a proper value.
7354 (set_image_of_range): Don't call set_image_of_range_1
7355 if no TRANSLATE or if range includes all of Latin-1.
7356 Only call it for the Latin-1 part of the range.
7357 For other cases, make two separate ranges,
7358 one for the original specified characters and one for
7359 their case-conversions.
7360
7361 2002-09-04 Richard M. Stallman <rms@gnu.org>
7362
7363 * s/sol2-5.h (UNEXEC): Use unexsol.o.
7364
7365 * window.c (displayed_window_lines): Correct for one-off bug
7366 in HEIGHT on non-window displays.
7367
7368 * regex.c (set_image_of_range_1): New function.
7369 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
7370 Return a value to indicate running out of memory.
7371 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
7372 (extend_range_table_work_area): New subroutine.
7373 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
7374 Different calling conventions, and used from set_image_of_range{,_1}.
7375 (IMMEDIATE_QUIT_CHECK): Definitions moved.
7376
7377 2002-09-04 Juanma Barranquero <lektu@terra.es>
7378
7379 * makefile.w32-in: All dependencies updated.
7380
7381 2002-09-01 Richard M. Stallman <rms@gnu.org>
7382
7383 * unexsol.c: New file.
7384
7385 * xfns.c (Qbox): Declare external, don't define.
7386
7387 * xdisp.c (redisplay_window) <force-start case>:
7388 If point is on semi-visible last line, reposition
7389 it at previous line.
7390
7391 * alloc.c (display_malloc_warning): Use display-warning.
7392 (malloc_warning_1): Function deleted.
7393
7394 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
7395
7396 * lread.c (read1): Handle #! by skipping the line.
7397
7398 2002-08-31 Richard M. Stallman <rms@gnu.org>
7399
7400 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
7401 Don't include LDFLAGS.
7402 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
7403
7404 2002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
7405
7406 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
7407 member of x_display_info unless we compile for some window system.
7408
7409 2002-08-31 Kim F. Storm <storm@cua.dk>
7410
7411 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
7412 (get_window_cursor_type): Don't use them.
7413 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
7414
7415 2002-08-30 Kenichi Handa <handa@etl.go.jp>
7416
7417 * xdisp.c (get_next_display_element): Fix previous change.
7418
7419 2002-08-30 Andrew Choi <akochoi@shaw.ca>
7420
7421 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
7422 (expose_window): Use it to fix the display of overlapping
7423 rows (merge code from xterm.c).
7424
7425 * macfns.c (Qbox): Add extern declaration.
7426
7427 2002-08-30 Juanma Barranquero <lektu@terra.es>
7428
7429 * w32fns.c (Qbox): Make extern.
7430 (syms_of_w32fns): Remove initialization of Qbox.
7431
7432 2002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
7433
7434 * xfns.c (Fx_open_connection): Fix error message.
7435
7436 2002-08-30 Kim F. Storm <storm@cua.dk>
7437
7438 The following changes consolidates the handling of the cursor
7439 type in xdisp.c, moving duplicate code and functionality from
7440 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
7441
7442 * frame.h (enum text_cursor_kinds): Consolidated here.
7443 Added DEFAULT_CURSOR value.
7444 (struct frame) <desired_cursor, cursor_width>
7445 <blink_off_cursor, blink_off_cursor_width>: New fields.
7446 Consolidated from output_x, output_w32 and output_mac structs.
7447 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
7448 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
7449
7450 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
7451 Variables consolidated here.
7452 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
7453 (Vcursor_in_non_selected_windows): Renamed from
7454 cursor_in_non_selected_windows and changed to Lisp_Object.
7455 (syms_of_xdisp): Define and staticpro new and moved variables.
7456 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
7457 consolidated here. Recognize Qhollow setting.
7458 (set_frame_cursor_types): New function to set frame cursor types
7459 based on the frame parameters.
7460 (get_window_cursor_type): New function to calculate new cursor
7461 type and width for the specified window. Based on duplicated
7462 code consolidated here.
7463 Enhancements: cursor-in-non-selected-windows may be a cursor type,
7464 check buffer-local alternate-cursor-type and blink-cursor-alist
7465 before using built-in blink off methods.
7466
7467 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
7468
7469 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
7470 (get_specified_cursor_type, get_window_cursor_type)
7471 (set_frame_cursor_types): Added prototypes.
7472
7473 * macfns.c (x_specified_cursor_type): Removed.
7474 (x_set_cursor_type): Use set_frame_cursor_types.
7475 (Qbar, Qbox): Removed.
7476 (syms_of_macfns): Don't intern or staticpro them.
7477
7478 * macterm.c (x_specified_cursor_type): Remove prototype.
7479 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
7480 (x_display_and_set_cursor): Use get_window_cursor_type.
7481 Remove unused local variables cursor_non_selected, active_cursor.
7482 Redraw cursor if hbar cursor width changes.
7483 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
7484
7485 * macterm.h (enum text_cursor_kinds): Removed.
7486 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
7487 <blink_off_cursor, blink_off_cursor_width>: Members removed.
7488 (FRAME_DESIRED_CURSOR): Macro removed.
7489
7490 * w32fns.c (Vblink_cursor_alist): Removed.
7491 (Qbar, Qhbar, Qbox, Qhollow): Removed.
7492 (syms_of_w32fns): Don't intern, staticpro, or define them.
7493 (x_specified_cursor_type): Removed.
7494 (x_set_cursor_type): Use set_frame_cursor_types.
7495
7496 * w32term.c (x_specified_cursor_type): Remove prototype.
7497 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
7498 (x_display_and_set_cursor): Use get_window_cursor_type.
7499 Remove unused local variables cursor_off_state.
7500 Redraw cursor if hbar cursor width changes.
7501 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
7502
7503 * w32term.h (enum text_cursor_kinds): Removed.
7504 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
7505 <blink_off_cursor, blink_off_cursor_width>: Members removed.
7506 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
7507 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
7508 (struct w32_display_info) <x_highlight_frame>: Renamed member from
7509 w32_highlight_frame.
7510
7511 * xfns.c (Vblink_cursor_alist): Removed.
7512 (Qbar, Qhbar, Qbox, Qhollow): Removed.
7513 (syms_of_xfns): Don't intern, staticpro, or define them.
7514 (x_specified_cursor_type): Removed.
7515 (x_set_cursor_type): Use set_frame_cursor_types.
7516
7517 * xterm.c (x_specified_cursor_type): Remove prototype.
7518 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
7519 (x_display_and_set_cursor): Use get_window_cursor_type.
7520 Remove unused local variables cursor_off_state.
7521 Redraw cursor if hbar cursor width changes.
7522
7523 * xterm.h (enum text_cursor_kinds): Removed.
7524 (struct output_x) <current_cursor, desired_cursor, cursor_width>
7525 <blink_off_cursor, blink_off_cursor_width>: Members removed.
7526 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
7527 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
7528 (x_specified_cursor_type): Remove prototype.
7529
7530 2002-08-28 Richard M. Stallman <rms@gnu.org>
7531
7532 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
7533 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
7534 (Vblink_cursor_alist): New variable.
7535 (syms_of_w32fns): Initialize and defvar it.
7536 (x_specified_cursor_type): Recognize Qbox for filled box.
7537 Exceptions are hollow boxes.
7538 (Qbox, Qhollow): New variables.
7539 (syms_of_w32fns): Initialize and staticpro them.
7540
7541 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
7542 New macros.
7543 (struct w32_output): New fields blink_off_cursor,
7544 blink_off_cursor_width.
7545 (FRAME_CURSOR_WIDTH): New macro.
7546
7547 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
7548 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
7549
7550 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
7551 for bar cursor.
7552
7553 * w32term.c (expose_overlaps): New function.
7554 (expose_window): Use it to fix the display of overlapping rows.
7555
7556 2002-08-28 Simon Josefsson <jas@extundo.com>
7557
7558 * xfns.c (Fx_open_connection): Improve help when X connection
7559 fails, xhost is insecure and xauth is better.
7560
7561 2002-08-28 Juanma Barranquero <lektu@terra.es>
7562
7563 * makefile.w32-in: Add missing dependencies on w32term.h and
7564 composite.h.
7565
7566 * emacs.c (USAGE1): Add missing newline.
7567
7568 2002-08-27 Andrew Choi <akochoi@shaw.ca>
7569
7570 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
7571
7572 2002-08-27 Richard M. Stallman <rms@gnu.org>
7573
7574 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
7575 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
7576 (Vblink_cursor_alist): New variable.
7577 (syms_of_xfns): Initialize and defvar it.
7578 (x_specified_cursor_type): Recognize Qbox for filled box.
7579 Exceptions are hollow boxes.
7580 (Qbox, Qhollow): New variables.
7581 (syms_of_xfns): Initialize and staticpro them.
7582
7583 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
7584 New macros.
7585 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
7586
7587 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
7588 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
7589
7590 * emacs.c (main): Handle --script.
7591 (USAGE1): Mention --script.
7592 (standard_args): Define sort order for --script.
7593
7594 2002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
7595
7596 * xdisp.c (redisplay_updating_p): Variable removed.
7597 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
7598 New variables.
7599 (init_iterator): Don't free realized faces if
7600 inhibit_free_realized_faces is set.
7601 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
7602 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
7603 initialize Qinhibit_free_realized_faces.
7604
7605 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
7606 when iterator is adding glyphs to a glyph matrix.
7607
7608 2002-08-27 Kenichi Handa <handa@etl.go.jp>
7609
7610 * xdisp.c (get_next_display_element): In unibyte case, don't use
7611 octal form for such eight-bit characters that can be converted to
7612 multibyte char.
7613
7614 2002-08-26 Kim F. Storm <storm@cua.dk>
7615
7616 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize foreground
7617 and background colors. From Joe Buehler (tiny change).
7618
7619 2002-08-26 Miles Bader <miles@gnu.org>
7620
7621 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
7622
7623 2002-08-25 Andrew Choi <akochoi@shaw.ca>
7624
7625 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
7626 defined instead of MAC_OSX.
7627
7628 * s/darwin.h (select): Define select to sys_select only if
7629 HAVE_CARBON is defined.
7630 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
7631 (DONT_REOPEN_PTY): #def it.
7632
7633 * macterm.c (XTread_socket): Remove code to call
7634 SendEventToEventTarget for keys with command modifiers when
7635 mac_command_key_is_meta is nil.
7636
7637 2002-08-24 Andreas Schwab <schwab@suse.de>
7638
7639 * eval.c (Fdefvar): Fix last change.
7640
7641 2002-08-23 Richard M. Stallman <rms@gnu.org>
7642
7643 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
7644 Record variables in load history as (defvar . VAR).
7645 (Fdefvar): Don't record in load history if no initial value.
7646 (Qdefvar): New variable.
7647 (syms_of_eval): Init and staticpro it.
7648
7649 * lread.c (syms_of_lread): Doc fix.
7650 (build_load_history): Use Fmember to see if a definition
7651 is already in the Vload_history element.
7652
7653 * process.c (Fstart_process): Remove /: from program name.
7654
7655 * emacs.c (decode_env_path): Don't add /: if file name handler
7656 has a `safe-magic' property.
7657
7658 * callproc.c (Fcall_process): Remove /: from program name.
7659
7660 2002-08-23 Stefan Monnier <monnier@cs.yale.edu>
7661
7662 * regex.c (PATFETCH): Remove the translating fetch.
7663 (PATFETCH_RAW): Rename to PATFETCH.
7664 (set_image_of_range): New fun.
7665 (SET_RANGE_TABLE_WORK_AREA): Use it.
7666 (regex_compile): Don't translate the pattern chars so eagerly.
7667 Only do it when inserting an `exactn' bytecode or when handling
7668 a char-range.
7669 (mutually_exclusive_p): Avoid empty statement.
7670
7671 2002-08-22 Kim F. Storm <storm@cua.dk>
7672
7673 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
7674 end up on a partially visible line; this reverts a specific part
7675 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
7676 display error which has been reported several times now.
7677 However it introduces the problem that changes was supposed to fix.
7678 See my comments in the source if you want to debug this further.
7679
7680 2002-08-20 Kenichi Handa <handa@etl.go.jp>
7681
7682 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
7683
7684 2002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
7685
7686 * msdos.c (croak): Add `void' to definition.
7687
7688 * sysdep.c [MSDOS] (request_sigio, unrequest_sigio):
7689 Don't define them, they are defined in msdos.c.
7690
7691 * mem-limits.h [MSDOS]: Declare etext.
7692
7693 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
7694 `const' since CORRECT_DIR_SEPS modifies its target.
7695
7696 2002-08-19 Kim F. Storm <storm@cua.dk>
7697
7698 * keyboard.c (Fclear_this_command_keys): Added optional arg
7699 KEEP-RECORD to avoid clearing lossage when we just want to clear
7700 the current key sequence (kmacro needs this).
7701
7702 2002-08-19 Kenichi Handa <handa@localhost>
7703
7704 * composite.c (run_composition_function): Call FUNC if it is fboundp.
7705
7706 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
7707 cons, return Qnil.
7708
7709 2002-08-17 Richard M. Stallman <rms@gnu.org>
7710
7711 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
7712
7713 * sysdep.c [!VMS]: Include sys/files.h.
7714
7715 * editfns.c (save_restriction_restore): Defend from unchained marker.
7716
7717 * buffer.c (overlays_at): Handle extending vec uniformly.
7718 (overlays_in): Handle extending vec from length 0 as in overlays_at.
7719
7720 2002-08-15 Andrew Choi <akochoi@shaw.ca>
7721
7722 * mac.c (init_mac_osx_environment): New function.
7723
7724 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
7725
7726 2002-08-14 Kim F. Storm <storm@cua.dk>
7727
7728 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
7729 executing macro before appending to it (when used from Lisp).
7730 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
7731 which is called prior to each iteration of macro (for kmacro.el).
7732 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
7733
7734 * lisp.h (Fexecute_kbd_macro): Update prototype.
7735
7736 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
7737
7738 2002-08-14 Kenichi Handa <handa@etl.go.jp>
7739
7740 * xselect.c (QUTF8_STRING): New variable.
7741 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
7742 (x_atom_to_symbol): Likewise.
7743 (x_get_local_selection): New argument local_request. If it is
7744 nonzero, call handler_fn with the second arg nil.
7745 (x_handle_selection_request): Call x_get_local_selection with
7746 local_request 0.
7747 (lisp_data_to_selection_data): Don't encode the string here.
7748 (Fx_get_selection_internal): Call x_get_local_selection with
7749 local_request 1.
7750 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
7751
7752 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
7753
7754 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
7755
7756 2002-08-13 Richard M. Stallman <rms@gnu.org>
7757
7758 * minibuf.c (Fminibufferp): New function.
7759 (syms_of_minibuf): Defsubr it.
7760 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
7761
7762 2002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
7763
7764 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
7765
7766 2002-08-12 Richard M. Stallman <rms@gnu.org>
7767
7768 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
7769 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
7770 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
7771 already.
7772
7773 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
7774
7775 2002-08-11 Andrew Choi <akochoi@shaw.ca>
7776
7777 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
7778 (Vmac_pass_command_to_system): New variable.
7779 (Vmac_pass_control_to_system): New variable.
7780 (do_mouse_moved): Check wp with is_emacs_window.
7781 (XTread_socket): Check window_ptr with is_emacs_window.
7782 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
7783 events back to Mac Toolbox for processing, depending on values of
7784 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
7785 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
7786 Vmac_pass_control_to_system.
7787
7788 2002-08-10 Kenichi Handa <handa@etl.go.jp>
7789
7790 * coding.c (unencodable_char_position): New function.
7791 (Funencodable_char_position): New function.
7792 (syms_of_coding): Defsubr Funencodable_char_position.
7793
7794 2002-08-10 Andrew Choi <akochoi@shaw.ca>
7795
7796 * mac.c (sys_select) [MAC_OSX]: New function.
7797
7798 * macterm.c (MakeMeTheFrontProcess): New function.
7799 (mac_initialize): Call MakeMeTheFrontProcess.
7800
7801 * s/darwin.h: Define select to sys_select.
7802
7803 2002-08-09 Richard M. Stallman <rms@gnu.org>
7804
7805 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
7806
7807 2002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
7808
7809 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
7810 end of the buffer.
7811
7812 2002-08-08 Ken Raeburn <raeburn@mit.edu>
7813
7814 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
7815
7816 * puresize.h (BASE_PURESIZE): Increase to 910000.
7817
7818 2002-08-08 Kenichi Handa <handa@etl.go.jp>
7819
7820 * coding.c (Ffind_operation_coding_system): For write-region, if
7821 VISIT is a filename, make it the target.
7822
7823 2002-08-07 Richard M. Stallman <rms@gnu.org>
7824
7825 * alloc.c (mark_object): Detect long lists for debugging.
7826 (mark_object_loop_halt): New variable.
7827
7828 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
7829
7830 * data.c (Fmake_variable_frame_local): Doc fix.
7831
7832 2002-08-01 David Ponce <david@dponce.com>
7833
7834 * w32menu.c (local_heap, local_alloc, local_free): New macros.
7835 (malloc_widget_value, free_widget_value)
7836 (w32_free_submenu_strings): Use them.
7837
7838 (push_submenu_start, push_submenu_end, push_left_right_boundary)
7839 (push_menu_pane, push_menu_item, single_keymap_panes)
7840 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
7841 (single_submenu, set_frame_menubar)
7842 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
7843
7844 (Fx_popup_menu): Don't show pop up menu until preceding one is
7845 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
7846
7847 * w32menu.c: Changes adapted from xmenu.c
7848 (set_frame_menubar): First parse all submenus,
7849 then make widget_value trees from them.
7850 Don't allocate any widget_value objects
7851 until we are done with the parsing.
7852 (parse_single_submenu): New function.
7853 (digest_single_submenu): New function.
7854 (single_submenu): Function deleted, replaced by those two.
7855
7856 2002-08-04 Andrew Choi <akochoi@shaw.ca>
7857
7858 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
7859 returns a valid window pointer before proceeding for keyDown and
7860 autoKey events.
7861
7862 2002-08-03 Andrew Choi <akochoi@shaw.ca>
7863
7864 * macterm.c (USE_CARBON_EVENTS): New macro.
7865 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
7866 (x_iconify_frame): Call CollapseWindow.
7867 (Vmac_reverse_ctrl_meta): New variable.
7868 (Vmac_wheel_button_is_mouse_2): New variable.
7869 (init_mac_drag_n_drop): New function.
7870 (mac_do_receive_drag): New function.
7871 (mac_handle_service_event): New function.
7872 (init_service_handler): New function.
7873 (mac_to_emacs_modifiers): New function.
7874 (mac_event_to_emacs_modifiers): New function.
7875 (mac_get_mouse_btn): New function.
7876 (mac_convert_event_ref): New function.
7877 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
7878 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
7879 mac_get_mouse_btn.
7880 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
7881
7882 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
7883 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
7884 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
7885 TOOL_BAR_EVENT for MAC_OS as well.
7886 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
7887 as for WINDOWS_NT.
7888 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
7889
7890 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
7891
7892 2002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
7893
7894 * xdisp.c (forward_to_next_line_start): Fix a condition that
7895 lead to a newline being skipped.
7896
7897 2002-08-02 Andrew Choi <akochoi@shaw.ca>
7898
7899 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
7900
7901 2002-08-01 Richard M. Stallman <rms@gnu.org>
7902
7903 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
7904
7905 2002-07-31 Andrew Choi <akochoi@shaw.ca>
7906
7907 * macfns.c: #undef init_process before #define-ing it.
7908
7909 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
7910 HAVE_CARBON is defined.
7911
7912 2002-07-31 Richard M. Stallman <rms@gnu.org>
7913
7914 * xmenu.c (set_frame_menubar): First parse all submenus,
7915 then make widget_value trees from them.
7916 Don't allocate any widget_value objects
7917 until we are done with the parsing.
7918 (parse_single_submenu): New function.
7919 (digest_single_submenu): New function.
7920 (single_submenu): Function deleted, replaced by those two.
7921
7922 2002-07-30 Juanma Barranquero <lektu@terra.es>
7923
7924 * w32proc.c (syms_of_ntproc): Fix docstring of
7925 `w32-get-true-file-attributes'.
7926
7927 2002-07-28 Richard M. Stallman <rms@gnu.org>
7928
7929 * s/hpux8.h (HPUX8): Define this before including hpux.h.
7930 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
7931
7932 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
7933
7934 * keyboard.c (make_lispy_event):
7935 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
7936 Explicitly clear up_modifier in event->modifiers.
7937
7938 2002-07-27 Richard M. Stallman <rms@gnu.org>
7939
7940 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
7941
7942 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
7943 for bar cursor.
7944
7945 2002-07-26 Kenichi Handa <handa@etl.go.jp>
7946
7947 * coding.c (detect_coding_iso2022): While checking a byte sequence
7948 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
7949 it in the normal loop.
7950
7951 2002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
7952
7953 * xterm.c (expose_overlaps): New function.
7954 (expose_window): Use it to fix the display of overlapping rows.
7955
7956 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
7957
7958 2002-07-23 Ken Raeburn <raeburn@gnu.org>
7959
7960 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
7961 since it only depends on XUINT.
7962
7963 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
7964 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
7965 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
7966 Macros deleted.
7967
7968 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
7969 its value over other approaches.
7970 * sysdep.c (start_of_data): Don't define the function if a macro
7971 form has been defined.
7972
7973 2002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
7974
7975 * xdisp.c (redisplay_updating_p): New variable.
7976 (init_iterator): Don't free realized faces when
7977 redisplay_updating_p is set.
7978 (redisplay_internal): Set redisplay_updating_p while updating
7979 the display.
7980
7981 2002-07-23 Richard M. Stallman <rms@gnu.org>
7982
7983 * editfns.c (Fmessage): Treat "" like nil.
7984
7985 2002-07-23 Kenichi Handa <handa@etl.go.jp>
7986
7987 * xdisp.c (face_before_or_after_it_pos):
7988 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
7989
7990 2002-07-22 Juanma Barranquero <lektu@terra.es>
7991
7992 * callproc.c (init_callproc) [DOS_NT]:
7993 Initialize Vshared_game_score_directory to nil.
7994 (syms_of_callproc) [DOS_NT]: Likewise.
7995
7996 2002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
7997
7998 * xdisp.c (display_line): Replace an abort with xassert.
7999
8000 2002-07-21 Richard M. Stallman <rms@gnu.org>
8001
8002 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
8003 and END_UNCHANGED when setting buffer_unchanged_p.
8004 Use current_matrix_up_to_date_p to decide whether to use
8005 try_cursor_movement.
8006
8007 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
8008
8009 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
8010
8011 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
8012 Set to nil if dir does not exist.
8013 (syms_of_callproc): Init unconditionally and simply.
8014
8015 * buffer.c (Fbuffer_list): Doc fix.
8016
8017 2002-07-21 Ken Raeburn <raeburn@gnu.org>
8018
8019 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
8020
8021 * buffer.c (mmap_realloc): When shrinking, make sure number of
8022 pages to unmap is rounded towards zero.
8023
8024 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
8025 (XSETINT): Deleted.
8026
8027 * m/att3b.h (XINT): Don't define.
8028 (VALBITS, VALMASK, XTYPE): Deleted.
8029 (DATA_SEG_BITS): Define.
8030 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
8031 ARRAY_MARK_FLAG): Deleted.
8032 (DATA_SEG_BITS): Define.
8033 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
8034 (DATA_SEG_BITS): Define.
8035
8036 2002-07-20 Richard M. Stallman <rms@gnu.org>
8037
8038 * print.c (print_error_message): New args CONTEXT and CALLER.
8039 Calls changed.
8040
8041 * lisp.h (print_error_message): Declare new args.
8042
8043 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
8044 and CONTEXT to print_error_message, don't print them here.
8045 For a Quit, don't use Vsignaling_function.
8046 Call message_log_maybe_newline.
8047
8048 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
8049
8050 2002-07-20 Kim F. Storm <storm@cua.dk>
8051
8052 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
8053
8054 2002-07-19 Ken Raeburn <raeburn@gnu.org>
8055
8056 * bytecode.c (struct byte_stack): Pointers into byte string now
8057 point to const.
8058 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
8059 const.
8060 * charset.h (BCOPY_SHORT): Source pointer now points to const.
8061 * coding.c (encode_eol, detect_coding, detect_eol):
8062 (decode_coding, encode_coding, detect_coding_system):
8063 Source strings now treated as const.
8064 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
8065 modify Lisp string contents.
8066 * coding.h (decode_coding, encode_coding, detect_coding,
8067 detect_eol): Declarations updated.
8068 * composite.c (compose_chars_in_text): Treat Lisp string contents
8069 as const.
8070 * dispnew.c (safe_bcopy): Source pointer now points to const.
8071 * lisp.h (STRING_COPYIN): New macro.
8072 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
8073 (internal_with_output_to_temp_buffer): Declarations updated.
8074 * print.c (temp_output_buffer_setup):
8075 (internal_with_output_to_temp_buffer): Buffer name argument is now
8076 pointer to const.
8077 * sound.c (struct sound_device): Function pointer field "write"
8078 buffer argument now points to const.
8079 (vox_write): Buffer argument points to const.
8080 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
8081 contents as const.
8082 * sysdep.c (emacs_write): Buffer pointer now const.
8083 * term.c (encode_terminal_code): Buffer pointer now const.
8084 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
8085 (x_face_list_fonts, x_update_menu_appearance):
8086 (hash_string_case_insensitive): Treat Lisp string contents as const.
8087
8088 2002-07-19 Juanma Barranquero <lektu@terra.es>
8089
8090 * fileio.c (Ffile_name_as_directory): Fix argument name in docstring.
8091 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
8092
8093 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
8094
8095 * fileio.c (syms_of_fileio): Likewise.
8096
8097 2002-07-18 Richard M. Stallman <rms@gnu.org>
8098
8099 * data.c (Fdefalias): Doc fix.
8100
8101 2002-07-17 Dave Love <fx@gnu.org>
8102
8103 * intervals.h (text_property_stickiness): Use P_.
8104
8105 * ccl.c: Remove `emacs' conditionals.
8106 (ccl_backtrace_table): Fix size spec.
8107 (ccl_driver): Fix type errors.
8108
8109 2002-07-16 Ken Raeburn <raeburn@gnu.org>
8110
8111 * alloc.c (xstrdup, make_string, make_unibyte_string)
8112 (make_multibyte_string, build_string): String pointer args now
8113 point to const.
8114 * charset.c (find_charset_in_text, c_string_width):
8115 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
8116 * fileio.c (report_file_error):
8117 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
8118 (count_combining_before, count_combining_after, insert_1_both):
8119 (insert, insert_and_inherit, insert_string):
8120 (insert_before_markers, insert_before_markers_and_inherit):
8121 * lread.c (intern, oblookup, hash_string):
8122 * minibuf.c (temp_echo_area_glyphs):
8123 * search.c (fast_c_string_match_ignore_case):
8124 * sysdep.c (emacs_open, set_file_times):
8125 * xfaces.c (xstricmp):
8126 * xdisp.c (store_frame_title, string_char_and_length):
8127 (message_dolog, message2, message2_nolog, set_message): Likewise.
8128 (set_message_1): Cast message string argument to const pointer.
8129 * editfns.c (general_insert_function): Insertion function now
8130 takes pointer to const for input data.
8131 * charset.h (find_charset_in_text, c_string_width):
8132 (parse_str_as_multibyte): Declarations updated.
8133 * dispextern.h (xstricmp): Declaration updated.
8134 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
8135 (count_size_as_multibyte, count_combining_before):
8136 (count_combining_after, insert_1, insert_1_both, message_dolog):
8137 (insert, insert_and_inherit, insert_before_markers)
8138 (insert_before_markers_and_inherit, set_message, message2):
8139 (message2_dolog, build_string, make_string, make_unibyte_string):
8140 (make_multibyte_string, intern, oblookup, report_file_error):
8141 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
8142 (emacs_open, xstrdup): Declarations updated.
8143 * systime.h (set_file_times): Declaration updated.
8144
8145 * charset.c (find_charset_in_text, lisp_string_width): Use const
8146 for pointer to lisp string data.
8147 * charset.h (FETCH_STRING_CHAR_ADVANCE):
8148 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
8149 * coding.c (Ffind_coding_systems_region_interval):
8150 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
8151 (Fmake_directory_internal, Fdelete_directory):
8152 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
8153 * fontset.c (font_family_registry, fs_query_fontset):
8154 (list_fontsets):
8155 * frame.c (Fframe_parameter):
8156 * keyboard.c (cmd_error_internal):
8157 * keymap.c (Fdescribe_buffer_bindings):
8158 * lread.c (complete_filename_p, openp):
8159 * minibuf.c (Fminibuffer_complete_word):
8160 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
8161 (face_before_or_after_it_pos, next_element_from_string):
8162 (get_overlay_arrow_glyph_row, display_mode_element):
8163 (decode_mode_spec_coding):
8164 * xterm.c (same_x_server): Likewise.
8165
8166 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
8167 settings of non-existent fields.
8168
8169 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
8170 copy a lisp value.
8171
8172 * lread.c (Fintern_soft): Use string macros instead of
8173 Lisp_String fields.
8174 * keyboard.c (echo_char, parse_modifiers_uncached):
8175 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
8176 * textprop.c (validate_interval_range, interval_of): Likewise.
8177
8178 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
8179
8180 * charset.h (FETCH_STRING_CHAR_ADVANCE)
8181 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
8182 XSTRING()->size_byte.
8183
8184 * lisp.h (SDATA, SREF): Produce rvalue.
8185 (SSET): New macro.
8186 * alloc.c (make_event_array): Use SSET for storing into a string.
8187 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
8188 a string.
8189 * casefiddle.c (casify_object): Use SSET.
8190 * charset.h (FETCH_STRING_CHAR_ADVANCE)
8191 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
8192 address of string contents.
8193 * data.c (Faref): Use SDATA.
8194 (Faset): Use SDATA, SSET.
8195 * dired.c (directory_files_internal): Use SSET.
8196 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
8197 (Fread_file_name): Use SREF, SSET.
8198 * fns.c (concat): Use SSET.
8199 (concat, Fdelete): Use SDATA.
8200 * insdel.c (insert_from_string_1): Use SDATA.
8201 * keyboard.c (Fevent_convert_list): Use SREF.
8202 * lread.c (Fload): Use SDATA, SSET.
8203 * macfns.c (validate_x_resource_name): Use SSET.
8204 * process.c (status_message): Use SSET.
8205 * search.c (wordify): Use SDATA.
8206 (Freplace_match): Use SREF.
8207 * w32fns.c (validate_x_resource_name): Use SSET.
8208 * xfns.c (validate_x_resource_name): Use SSET.
8209 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
8210
8211 2002-07-16 Richard M. Stallman <rms@gnu.org>
8212
8213 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
8214
8215 * xdisp.c (reconsider_clip_changes):
8216 Don't test prevent_redisplay_optimizations_p.
8217 (redisplay_internal): Test prevent_redisplay_optimizations_p
8218 along with clip_changed in some cases.
8219 (try_window_id): Likewise.
8220 (redisplay_window): New local var buffer_unchanged_p.
8221
8222 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
8223
8224 * process.c (create_process): Test USG_SUBTTY_WORKS.
8225 (process_send_signal): Clean up handling of GID.
8226 Detect errors in ioctls meant to set GID.
8227
8228 * window.c (temp_output_buffer_show):
8229 Don't set prevent_redisplay_optimizations_p.
8230
8231 2002-07-15 Juanma Barranquero <lektu@terra.es>
8232
8233 * eval.c (Fdefvaralias): Add docstring argument.
8234
8235 2002-07-15 Ken Raeburn <raeburn@gnu.org>
8236
8237 * lisp.h (STRING_INTERVALS): Produce rvalue.
8238 (STRING_SET_INTERVALS): New macro.
8239 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
8240 * fns.c (Fstring_as_multibyte): Likewise.
8241 * intervals.c (balance_possible_root_interval, delete_interval)
8242 (create_root_interval, copy_intervals_to_string): Likewise.
8243 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
8244 instead of 0.
8245
8246 2002-07-14 Ken Raeburn <raeburn@gnu.org>
8247
8248 * lisp.h (STRING_SET_CHARS): New macro.
8249 (SCHARS, SBYTES): Produce rvalues.
8250 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
8251 * fns.c (concat): Likewise.
8252 * lread.c (read_vector): Likewise.
8253
8254 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
8255 (STRING_SET_UNIBYTE): New macro.
8256 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
8257 length of -1) changed to use STRING_SET_UNIBYTE.
8258 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
8259 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
8260 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
8261 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
8262 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
8263 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
8264 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
8265 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
8266 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
8267 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
8268 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
8269 STRING_BYTES or indirection changed to SCHARS, SBYTES,
8270 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
8271 unchanged for now.
8272
8273 2002-07-13 Kim F. Storm <storm@cua.dk>
8274
8275 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
8276
8277 2002-07-12 Richard M. Stallman <rms@gnu.org>
8278
8279 * fileio.c (Fwrite_region): Doc fix.
8280
8281 * print.c (print_error_message): Don't handle Vsignaling_function here.
8282
8283 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
8284 (command_loop_1): Avoid certain actions after memory-full error.
8285
8286 * eval.c (Fsignal): Don't call cancel_hourglass.
8287 For a memory-full error, don't call Vsignal_hook_function
8288 and don't set Vsignaling_function.
8289
8290 * process.c (process_send_signal): Add abort call.
8291
8292 2002-07-11 Markus Rost <rost@math.ohio-state.edu>
8293
8294 * keymap.c (Fkey_binding): Fix typo.
8295
8296 2002-07-11 Richard M. Stallman <rms@gnu.org>
8297
8298 * alloc.c (Vmemory_full): New variable.
8299 (Vmemory_signal_data): Renamed from memory_signal_data.
8300 Uses changed.
8301 (syms_of_alloc): Defvar them.
8302 (memory_full, buffer_memory_full): Set Vmemory_full.
8303
8304 * lisp.h (Vmemory_full): Add declaration.
8305 (current_column, indented_beyond_p): Change declaration.
8306
8307 * indent.c (last_known_column): Declare as double, not float.
8308 (current_column, current_column_1, string_display_width)
8309 (position_indentation): Return `double'.
8310 (indented_beyond_p): Arg `column' is `double'. Callers changed.
8311
8312 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
8313 (back_to_previous_visible_line_start)
8314 (reseat_at_next_visible_line_start, next_element_from_buffer):
8315 Use `double', not `float', when calling indented_beyond_p.
8316
8317 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
8318
8319 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
8320
8321 2002-07-11 Juanma Barranquero <lektu@terra.es>
8322
8323 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
8324 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
8325 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
8326 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
8327 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
8328 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
8329
8330 2002-07-10 Juanma Barranquero <lektu@terra.es>
8331
8332 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE. All callers
8333 changed.
8334
8335 2002-07-09 Stefan Monnier <monnier@cs.yale.edu>
8336
8337 * data.c (Fdefalias): Add an optional `docstring' argument.
8338 (set_internal, Fsetq_default): Use XCAR/XCDR.
8339
8340 * composite.c (HASH_VALUE, HASH_KEY):
8341 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
8342
8343 2002-07-09 Kenichi Handa <handa@etl.go.jp>
8344
8345 * callproc.c (Fcall_process): Fix previous change.
8346
8347 2002-07-07 Stefan Monnier <monnier@cs.yale.edu>
8348
8349 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
8350 Add support for hash-tables.
8351 (Ftry_completion): Return t even if the string appears multiple times.
8352
8353 * fns.c (Fnconc): Use XCDR.
8354 (Fprovide): Use CONSP and XCDR.
8355 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
8356 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
8357 (Fmake_hash_table): Accept `:size nil'.
8358 (Fmakehash): Delete: moved to subr.el.
8359 (syms_of_fns): Don't defsubr makehash.
8360
8361 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
8362 (HASH_TABLE_SIZE): Move from fns.c.
8363
8364 2002-07-07 Richard M. Stallman <rms@gnu.org>
8365
8366 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
8367 Instead just return 0 when there is something to be done.
8368 (try_scrolling): If make_cursor_line_fully_visible returns 0,
8369 retry scrolling as if cursor were off the bottom.
8370 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
8371 return CURSOR_MOVEMENT_MUST_SCROLL.
8372 (redisplay_window): If make_cursor_line_fully_visible returns 0,
8373 go to try_to_scroll.
8374
8375 * buffer.c (Fbuffer_local_value): Store current value into its binding
8376 so we get the up-to-date value for the binding that is loaded.
8377
8378 * eval.c (Fdefmacro): Doc fix.
8379
8380 2002-07-05 Dave Love <fx@gnu.org>
8381
8382 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
8383 correctly.
8384
8385 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
8386 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
8387 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
8388 CCL_LookupCharConstTbl.
8389 (syms_of_ccl): Defvar translation-hash-table-vector.
8390
8391 2002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8392
8393 * xdisp.c: Remove unused variable `face'.
8394
8395 2002-07-04 Juanma Barranquero <lektu@terra.es>
8396
8397 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
8398 obsolescence information.
8399
8400 2002-07-03 Andrew Choi <akochoi@shaw.ca>
8401
8402 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
8403 pattern. Search cache first.
8404 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
8405 for Japanese font.
8406 (XLoadQueryFont): Use it.
8407
8408 2002-07-02 Richard M. Stallman <rms@gnu.org>
8409
8410 * keymap.c (Fdefine_key): Doc fix.
8411
8412 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
8413
8414 2002-07-02 Juanma Barranquero <lektu@terra.es>
8415
8416 * keymap.c (syms_of_keymap): Fix typo.
8417
8418 2002-07-01 Andrew Choi <akochoi@shaw.ca>
8419
8420 * s/darwin.h: Define POSIX_SIGNALS.
8421
8422 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
8423 and FSRefMakePath to convert FSSpec returned with Apple Event to
8424 Posix pathname.
8425 (mac_initialize) [TARGET_API_MAC_CARBON]:
8426 Call init_required_apple_events and disable the `Quit' menu item
8427 provided automatically by the Carbon Toolbox.
8428
8429 2002-07-01 Dave Love <fx@gnu.org>
8430
8431 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
8432 for K&R.
8433
8434 * xterm.c: Fix prototype for K&R.
8435
8436 * term.c (costs_set): Declare static, non-initialized for pcc.
8437
8438 2002-07-01 Richard M. Stallman <rms@gnu.org>
8439
8440 * keyboard.c (timer_last_idleness_start_time): New variable.
8441 (timer_start_idle): Set that.
8442 (read_key_sequence): Use that to reset timer_idleness_start_time
8443 to previous value.
8444
8445 * window.c (Frecenter): With arg, set optional_new_start.
8446
8447 * xdisp.c (redisplay_internal): Make optional_new_start really work.
8448
8449 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
8450 buffer for completion.
8451
8452 2002-06-29 Ken Raeburn <raeburn@gnu.org>
8453
8454 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
8455
8456 2002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8457
8458 * keyboard.c (readable_filtered_events): New function that filters
8459 FOCUS_IN_EVENT depending on parameter.
8460 (readable_events): Calls readable_filtered_events, not filtering
8461 FOCUS_IN_EVENT.
8462 (get_filtered_input_pending): New function, filtering parameter passed
8463 to readable_filtered_events.
8464 (get_input_pending): Calls get_filtered_input_pending, not filtering
8465 FOCUS_IN_EVENT.
8466 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
8467 FOCUS_IN_EVENT.
8468
8469 * xterm.h (struct x_output): Add focus_state.
8470
8471 * xterm.c (x_focus_changed): New function.
8472 (x_detect_focus_change): New function.
8473 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
8474 EnterNotify and LeaveNotify to track X focus changes.
8475
8476 2002-06-28 Andreas Schwab <schwab@suse.de>
8477
8478 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
8479
8480 2002-06-27 Kim F. Storm <storm@cua.dk>
8481
8482 * xdisp.c: (mode_line_string_list, mode_line_string_face)
8483 (mode_line_string_face_prop): New variables.
8484 (store_mode_line_string): New function.
8485 (display_mode_element): Use store_mode_line_string to
8486 add mode-line string elements to mode_line_string_list
8487 when mode_line_string_list is non-nil.
8488 (Fformat_mode_line): Now returns propertized string by
8489 default. New arg NO-PROPS to ignore properties.
8490 (decode_mode_spec): Only add two dashes for %- in propertized
8491 mode-line string.
8492 (syms_of_xdisp): Init and staticpro mode_line_string_list.
8493
8494 2002-06-27 Stefan Monnier <monnier@cs.yale.edu>
8495
8496 * minibuf.c (minibuffer_completion_contents): Add return type.
8497
8498 2002-06-27 Juanma Barranquero <lektu@terra.es>
8499
8500 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
8501
8502 2002-06-26 Juanma Barranquero <lektu@terra.es>
8503
8504 * fileio.c (read_file_name_cleanup): Add missing return.
8505
8506 2002-06-26 Richard M. Stallman <rms@gnu.org>
8507
8508 * window.c (Frecenter): Don't set force_start flag.
8509
8510 * minibuf.c (do_completion, Fminibuffer_complete_word)
8511 (Fminibuffer_completion_help): Complete just the text before point.
8512 (minibuffer_completion_contents): New function.
8513
8514 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
8515
8516 * frame.c (frames_bury_buffer): Function deleted.
8517
8518 2002-06-25 Miles Bader <miles@gnu.org>
8519
8520 * callint.c (Fcall_interactively): When checking to see if doprnt hit
8521 the end of callint_message, allow for a terminating '\0'.
8522
8523 2002-06-24 Juanma Barranquero <lektu@terra.es>
8524
8525 * w32select.c: Include composite.h
8526
8527 * w16select.c: Likewise.
8528
8529 2002-06-24 Kenichi Handa <handa@etl.go.jp>
8530
8531 * callproc.c (Fcall_process): If code detection is necessary,
8532 call detect_coding directly here.
8533
8534 * coding.c (detect_eol): Preserve coding->cmp_data.
8535
8536 * w16select.c (Fw16_get_clipboard_data):
8537 * w32fns.c (w32_to_x_font):
8538 * w32select.c (Fw32_get_clipboard_data):
8539 * xselect.c (selection_data_to_lisp_data):
8540 * xterm.c (XTread_socket): Disable composition handling.
8541
8542 2002-06-24 Stefan Monnier <monnier@cs.yale.edu>
8543
8544 * print.c (temp_output_buffer_setup): Kill all local variables.
8545
8546 2002-06-22 Stefan Monnier <monnier@cs.yale.edu>
8547
8548 * lread.c (Fread): Remove redundant and imprecise declaration.
8549
8550 * xfns.c (check_x_display_info): Use check_x_frame.
8551
8552 * .gdbinit (xprintsym): Use the new `xname' field.
8553 (xsymbol): Use it.
8554
8555 2002-06-22 Jason Rumney <jasonr@gnu.org>
8556
8557 * w32fns.c (file_dialog_callback): New function.
8558 (Fx_file_dialog): Allow selecting directories as well as files.
8559
8560 2002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8561
8562 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
8563 OpenBSD. Add support for mipseb-*-netbsd* machines.
8564
8565 2002-06-17 Andrew Choi <akochoi@shaw.ca>
8566
8567 * macterm.c (mac_scroll_area): Set foreground and backcolor to
8568 black and white before scrolling. Restore frame background and
8569 foreground color after scrolling.
8570 (do_window_update): Call XClearWindow before calling expose_frame.
8571 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
8572 FRAME_FOREGROUND_PIXEL of frame.
8573
8574 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
8575 test Mac command key as <ALT> key.
8576
8577 2002-06-17 Stefan Monnier <monnier@cs.yale.edu>
8578
8579 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
8580
8581 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
8582 Lookup keys in function-key-map immediately so that key-translation-map
8583 can be applied earlier.
8584 Remove function_key_possible and key_translation_possible, replaced
8585 by checking `keytran_start < t'.
8586
8587 * .gdbinit (xsymbol): Use the new `xname' field.
8588
8589 2002-06-17 Andrew Choi <akochoi@shaw.ca>
8590
8591 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
8592 test Mac command key as <ALT> key.
8593
8594 * mac.c (do_applescript): Call initialize_applescript if necessary
8595 when first called. Dispose of result_desc only when there is no error.
8596 (Fdo_applescript): Use %d format specifier instead of %ld.
8597
8598 2002-06-16 Andrew Choi <akochoi@shaw.ca>
8599
8600 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
8601 of FrontWindow for cases keyDown and autoKey.
8602
8603 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
8604 Vdefault_fontset to Monaco with mac-roman coding.
8605
8606 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
8607 init_process before and after inclusion of Carbon/Carbon.h, resp.
8608
8609 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
8610 cursor_gc.
8611 (add_font_name_table_entry): New function.
8612 (init_font_name_table): Use add_font_name_table_entry; add italic,
8613 bold, and bold-italic entries for truetype fonts.
8614
8615 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
8616 for Mac too.
8617 (try_font_list) [MAC_OS]: If no font matches given registry, try
8618 fonts with any registry matching face_family.
8619 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
8620
8621 * s/darwin.h: If autoconf detects the Ncurses library, define
8622 LIBS_TERMCAP to -lncurses to use it.
8623
8624 2002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
8625
8626 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
8627
8628 2002-06-15 Richard M. Stallman <rms@gnu.org>
8629
8630 * window.c (Fset_window_configuration): Explicitly preserve
8631 the point value that new_current_buffer had at the start.
8632
8633 2002-06-14 Juanma Barranquero <lektu@terra.es>
8634
8635 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
8636 Fix typos.
8637
8638 2002-06-14 Kim F. Storm <storm@cua.dk>
8639
8640 * insdel.c (insert_1_both, insert_from_string_1)
8641 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
8642 insert happened in the end_unchanged region. Otherwise, the
8643 redisplay may be confused and duplicate the last line in the
8644 buffer [seen after save-buffer when require-final-newline==t].
8645
8646 2002-06-13 Jason Rumney <jasonr@gnu.org>
8647
8648 * w32.c (init_environment): Remove EMACSLOCKDIR.
8649 (stat): Swap _S_IFDIR and _S_IFREG.
8650
8651 2002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8652
8653 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
8654 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
8655 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
8656 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
8657 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
8658 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
8659 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
8660 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
8661 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
8662 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
8663 SELECTION_REQUEST_EVENT, selection_clear_event to
8664 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
8665 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
8666 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
8667 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
8668 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
8669 no_event to NO_EVENT.
8670
8671 2002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8672
8673 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
8674
8675 2002-06-12 Stefan Monnier <monnier@cs.yale.edu>
8676
8677 * intervals.c (textget): Don't forget to `return'.
8678 (lookup_char_property): Use XCAR/XCDR.
8679
8680 2002-06-12 Juanma Barranquero <lektu@terra.es>
8681
8682 * xdisp.c (Fformat_mode_line): Fix typo.
8683
8684 2002-06-12 Kim F. Storm <storm@cua.dk>
8685
8686 * xdisp.c (Fformat_mode_line): New function.
8687 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
8688 (store_frame_title_char, store_frame_title): Use unconditionally.
8689 (init_xdisp): Defsubr Fformat_mode_line.
8690 Initialize frame_title_buf etc. unconditionally.
8691
8692 2002-06-11 Stefan Monnier <monnier@cs.yale.edu>
8693
8694 * keyboard.c (read_key_sequence):
8695 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
8696 things through those maps after downcasing events.
8697 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
8698 applies after function-key-map.
8699 Make sure that keytran can be done in the middle in the sequence.
8700 Be careful not to throw away events past the one we downcase.
8701
8702 * lread.c (read_integer): Remove unused var `tem'.
8703 (read1): Fix int/Lisp_Object mixup.
8704
8705 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
8706
8707 2002-06-11 Richard M. Stallman <rms@gnu.org>
8708
8709 * keyboard.c (readable_events): Ignore any number of
8710 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
8711
8712 2002-06-09 Miles Bader <miles@gnu.org>
8713
8714 * xfaces.c (Ftty_supports_face_attributes_p): New function.
8715 (parse_rgb_list, tty_lookup_color): New functions.
8716 (tty_defined_color): Use `tty_lookup_color' to do all the work.
8717 (color_distance, Fcolor_distance): New functions.
8718 (TTY_SAME_COLOR_THRESHOLD): New macro.
8719 (Qtty_color_standard_values): New variable.
8720 (syms_of_xfaces): Initialize new vars & functions.
8721
8722 2002-06-08 Colin Walters <walters@verbum.org>
8723
8724 * textprop.c (Vchar_property_alias_alist): New variable.
8725 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
8726
8727 * intervals.c (lookup_char_property): New function for looking up
8728 overlay and text properties, created from textget.
8729 (textget): Use it.
8730
8731 * intervals.h (lookup_char_property): Declare.
8732 (Vchar_property_alias_alist): Declare.
8733
8734 * buffer.c (Foverlay_get): Use lookup_char_property.
8735
8736 2002-06-07 Sam Steingold <sds@gnu.org>
8737
8738 * xselect.c (lisp_data_to_selection_data): Fix last change:
8739 *data_ret is not a Lisp string, while unibyte_string is.
8740
8741 2002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
8742
8743 * xselect.c (lisp_data_to_selection_data): Fix last change:
8744 set size_ret.
8745
8746 2002-06-07 Andreas Schwab <schwab@suse.de>
8747
8748 * m/amdx86-64.h: New file.
8749
8750 2002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
8751
8752 * fns.c (Fstring_make_unibyte): Doc fix.
8753
8754 * xselect.c (lisp_data_to_selection_data): If the requested type
8755 is STRING, call string_make_unibyte to encode the selected text
8756 as a string.
8757
8758 * window.c (Fset_window_hscroll): Doc fix.
8759
8760 2002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8761
8762 * fileio.c (choose_write_coding_system):
8763 Call select-safe-coding-system properly.
8764
8765 2002-06-03 Richard M. Stallman <rms@gnu.org>
8766
8767 * xdisp.c (message_with_string): Error if STRING is not a string.
8768
8769 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
8770
8771 * fileio.c (choose_write_coding_system): Pass FILE arg to
8772 Vselect_safe_coding_system_function.
8773
8774 2002-06-03 Ken Raeburn <raeburn@gnu.org>
8775
8776 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
8777
8778 2002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
8779
8780 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
8781 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
8782 * keymap.c (describe_command): Likewise.
8783 * minibuf.c (read_minibuf): Likewise.
8784
8785 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
8786 Cast `current_column' return value to int.
8787 (back_to_previous_visible_line_start)
8788 (reseat_at_next_visible_line_start, next_element_from_buffer):
8789 Cast `indented_beyond_p' 3rd arg to float.
8790
8791 * indent.c (last_known_column): Now a float.
8792 (current_column_1, position_indentation, current_column)
8793 (string_display_width): Return float.
8794 (Fcurrent_column): Cast `current_column' return value to int.
8795 (Fcurrent_indentation): Cast `position_indentation' retval to int.
8796 (indented_beyond_p): Third arg now a float.
8797 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
8798
8799 * lisp.h (current_column): Now returns float.
8800 (indented_beyond_p): 3rd arg now a float.
8801
8802 2002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
8803
8804 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
8805 is Qcompound_text_with_extensions.
8806
8807 * xselect.c (lisp_data_to_selection_data): Always set selection
8808 type as string if x_encode_text returns streingp non-NULL.
8809
8810 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
8811
8812 2002-05-30 Richard M. Stallman <rms@gnu.org>
8813
8814 * window.c (Fset_window_configuration): Correct the handling
8815 of point in current buffer, to work with multiple windows.
8816
8817 2002-05-29 Colin Walters <walters@verbum.org>
8818
8819 * lread.c (Fread_from_string): Don't depend on order of evaluation
8820 for C function parameters.
8821
8822 2002-05-28 Richard M. Stallman <rms@gnu.org>
8823
8824 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
8825 way for blinked-off state and for a nonselected window.
8826
8827 * window.c (window_scroll_pixel_based): Don't call Fbolp;
8828 instead, see if the new start pos is at beginning of line.
8829
8830 * fileio.c (Fwrite_region): If START is a string, don't
8831 make any annotations.
8832
8833 * eval.c (syms_of_eval): Doc fix.
8834
8835 2002-05-28 Colin Walters <walters@debian.org>
8836
8837 * emacs.c (USAGE1): Add --no-splash.
8838 (standard_args): Ditto.
8839
8840 2002-05-28 Colin Walters <walters@gnu.org>
8841
8842 * lread.c (readchar_count): New variable.
8843 (readchar): Increment it.
8844 (unreadchar): Decrement it.
8845 (read_multibyte): Decrement it.
8846 (Vread_with_symbol_positions): New variable.
8847 (Vread_symbol_positions_list): New variable.
8848 (read_internal_start): New function, created from Fread and
8849 Fread_from_string. Handle Vread_symbol_positions_list and
8850 Vread_with_symbol_positions.
8851 (readevalloop, Fread, Fread_from_string): Use it.
8852 (read1): Use readchar_count to add symbol positions to
8853 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
8854 (syms_of_lread): DEFVAR_LISP and initialize them.
8855
8856 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
8857 (substitute_object_recurse, substitute_object_in_subtree)
8858 (substitute_in_interval): Prototype.
8859 (read_multibyte): Return c if it's less than zero.
8860
8861 2002-05-28 Kim F. Storm <storm@cua.dk>
8862
8863 * fileio.c (Fread_file_name_internal): Added brute-force
8864 speed up for using predicate file-directory-p.
8865
8866 2002-05-28 Kim F. Storm <storm@cua.dk>
8867
8868 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
8869 New variables.
8870 (syms_of_fileio): DEFVAR_LISP them.
8871 (read_file_name_cleanup): New unwind function.
8872 (Fread_file_name_internal): Only return completions satifying
8873 Vread_file_name_predicate. Temporarily unwind protect and rebind
8874 default-directory while checking completions against the predicate.
8875 (Fread_file_name): Added PREDICATE argument. Specbind it to
8876 Vread_file_name_predicate during completion.
8877 Call Vread_file_name_function to read the file name if non-nil.
8878
8879 * lisp.h (Fread_file_name): Now has 6 args.
8880
8881 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
8882 predicate for Fread_file_name when reading directory name.
8883 Supply Qnil for predicate in other calls to Fread_file_name.
8884
8885 2002-05-26 Miles Bader <miles@gnu.org>
8886
8887 * term.c (tty_capable_p): New function.
8888 * dispextern.h (tty_capable_p): New function declaration.
8889 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
8890 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
8891
8892 2002-05-23 Stefan Monnier <monnier@cs.yale.edu>
8893
8894 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
8895 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
8896 (Vwrite_region_annotate_functions): Docstring fix.
8897
8898 2002-05-23 Kim F. Storm <storm@cua.dk>
8899
8900 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
8901 phys_cursor's hpos is overwritten. This is still not completely
8902 correct, as it doesn't really make sense to use hpos at all to
8903 get the cursor glyph (as that is relative to the width of the
8904 characters on the line, which may have changed during the update).
8905
8906 2002-05-22 Jason Rumney <jasonr@gnu.org>
8907
8908 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
8909 Lisp_Object.
8910 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
8911 Use modified enumfont_t struct.
8912
8913 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
8914
8915 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
8916 Handle the `hbar' cursor type.
8917 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
8918
8919 * w32fns.c (Qhbar): New variable.
8920 (x_specified_cursor_type): Use it.
8921
8922 2002-05-21 Ken Raeburn <raeburn@gnu.org>
8923
8924 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
8925 now, when the address is needed.
8926
8927 2002-05-21 Colin Walters <walters@gnu.org>
8928
8929 * Makefile.in (shortlisp): Add font-core.el.
8930
8931 2002-05-20 Richard M. Stallman <rms@gnu.org>
8932
8933 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
8934
8935 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
8936 equivalent key bindings here.
8937
8938 2002-05-20 Ken Raeburn <raeburn@gnu.org>
8939
8940 Change symbol structure to contain a lisp object for the symbol
8941 name:
8942 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
8943 object field named "xname".
8944 (SYMBOL_NAME): New macro.
8945 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
8946 name field.
8947 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
8948 (mark_object, gc_sweep): Use symbol xname field and XSTRING
8949 instead of name field.
8950 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
8951 SYMBOL_NAME instead of XSYMBOL and name field.
8952 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
8953 instead of XSYMBOL and name field.
8954 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
8955 and SYMBOL_NAME instead of XSYMBOL and name field.
8956 * coding.c (Fread_coding_system, code_convert_region1)
8957 (code_convert_string1, code_convert_string_norecord)
8958 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
8959 XSYMBOL and name field.
8960 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
8961 (Fmake_variable_buffer_local, Fmake_local_variable)
8962 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
8963 of XSYMBOL and name field.
8964 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
8965 XSYMBOL and name field.
8966 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
8967 instead of XSYMBOL and name field.
8968 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
8969 XSYMBOL and name field.
8970 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
8971 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
8972 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
8973 instead of XSYMBOL and name field.
8974 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
8975 (parse_modifiers, apply_modifiers, Fevent_convert_list)
8976 (parse_solitary_modifier, Fexecute_extended_command):
8977 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
8978 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
8979 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
8980 of XSYMBOL and name field.
8981 (describe_command, describe_translation): Use SYMBOL_NAME and
8982 assignment instead of XSYMBOL and name field and XSETSTRING.
8983 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
8984 instead of XSYMBOL and name field.
8985 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
8986 name field and XSETSTRING.
8987 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
8988 of XSYMBOL and name field.
8989 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
8990 assignment instead of XSYMBOL and name field and XSETSTRING.
8991 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
8992 XSTRING instead of XSYMBOL and name field.
8993 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
8994 and XSTRING instead of XSYMBOL and name field.
8995 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
8996 and XSTRING instead of XSYMBOL and name field.
8997 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
8998 XSTRING instead of XSYMBOL and name field.
8999 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
9000 of XSYMBOL and name field.
9001 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
9002 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
9003
9004 2002-05-19 Ken Raeburn <raeburn@gnu.org>
9005
9006 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
9007 and XCDR real rvalues in most configurations.
9008
9009 * buffer.c (fix_overlays_in_range, fix_overlays_before):
9010 Don't take the address of the cdr part of a cons cell; instead, track
9011 the parent cell and call XSETCDR, or set the variable for the head
9012 of the list if we haven't started down the list yet.
9013
9014 2002-05-19 Richard M. Stallman <rms@gnu.org>
9015
9016 * doc.c (reread_doc_file): Don't ask for confirmation.
9017
9018 2002-05-18 Jason Rumney <jasonr@gnu.org>
9019
9020 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
9021 (xbm_load_image): Use it.
9022 (xbm_load): Ditto.
9023 (xbm_read_bitmap_data): Reverted to xfns.c version.
9024 From David Ponce <david@dponce.com>.
9025
9026 2002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
9027
9028 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
9029 2.02 and later.
9030
9031 2002-05-16 Juanma Barranquero <lektu@terra.es>
9032
9033 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
9034
9035 2002-05-15 Stefan Monnier <monnier@cs.yale.edu>
9036
9037 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
9038 meaningful test.
9039 (read_char_minibuf_menu_prompt): Fix typo.
9040
9041 2002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
9042
9043 * eval.c (Fcommandp): Doc fix.
9044
9045 2002-05-13 Stefan Monnier <monnier@cs.yale.edu>
9046
9047 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
9048 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
9049 (Fset_keymap_parent): Gcpro a bit more.
9050 (access_keymap): Gcpro around meta_map call and around the main loop.
9051 (get_keyelt): Gcpro when following indirect references.
9052 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
9053 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
9054 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
9055 Remove useless ad-hoc remap code.
9056
9057 2002-05-13 Richard M. Stallman <rms@gnu.org>
9058
9059 * search.c (search_buffer): Give up boyer moore search if inverse
9060 translation change charset_base.
9061
9062 2002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
9063
9064 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
9065 characters is carried over from the previous block of text, adjust
9066 coding->produced to account for the extra character.
9067
9068 2002-05-11 Andreas Schwab <schwab@suse.de>
9069
9070 * coding.c (intersection): Keep the elements of the returned list
9071 in the same order as in the first list.
9072
9073 2002-05-11 Kim F. Storm <storm@cua.dk>
9074
9075 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
9076 only update cmm_size if realloc actually succeeds.
9077 Testing with initial size of 2 elements revealed that using
9078 realloc on GNU/Linux would cause a random trap in xmalloc
9079 later on, so I rewrote the code to use malloc/bcopy/free instead
9080 of realloc.
9081
9082 2002-05-10 Jason Rumney <jasonr@gnu.org>
9083
9084 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
9085
9086 2002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
9087
9088 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
9089 parens, to ensure correct evaluation order.
9090
9091 2002-05-10 Kim F. Storm <storm@cua.dk>
9092
9093 * keymap.c (Vemulation_mode_map_alists): New variable.
9094 (syms_of_keymap): DEFVAR_LISP it.
9095 (current_minor_maps): Process keymap alists in that list before
9096 minor-mode-overriding-map-alist and minor-mode-map-alist.
9097
9098 2002-05-09 Richard M. Stallman <rms@gnu.org>
9099
9100 * search.c (Freplace_match): Doc fix.
9101
9102 2002-05-09 Kim F. Storm <storm@cua.dk>
9103
9104 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
9105 Enlarge cursor rectangle drawn around image with non-zero relief.
9106
9107 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
9108 Enlarge cursor rectangle drawn around image with non-zero relief.
9109
9110 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
9111 Enlarge cursor rectangle drawn around image with non-zero relief.
9112
9113 2002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
9114
9115 * xselect.c (lisp_data_to_selection_data): Don't set selection
9116 type if comes from the Lisp object's car. If the selection
9117 contains a pure ASCII text, always return QSTRING as its type.
9118
9119 2002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9120
9121 * mac.c (mac-cut-function): Doc fix.
9122
9123 2002-05-05 Richard M. Stallman <rms@gnu.org>
9124
9125 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
9126
9127 2002-05-04 Jason Rumney <jasonr@gnu.org>
9128
9129 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
9130 for event-click-count.
9131
9132 * process.c (init_process): Only add server subfeature if we can
9133 use non-blocking I/O.
9134
9135 2002-05-04 Andrew Choi <akochoi@shaw.ca>
9136
9137 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
9138 repeatedly.
9139
9140 2002-05-03 Jason Rumney <jasonr@gnu.org>
9141
9142 * process.c (Fmake_network_process): Only support server sockets
9143 when we can make them non-blocking.
9144
9145 * s/ms-w32.h (HAVE_SELECT): Define.
9146
9147 * w32.h (FILE_NDELAY): New flag.
9148
9149 * w32.c (sys_getpeername, fcntl): New functions.
9150 (_sys_read_ahead): Temporarily block on non-blocking sockets.
9151
9152 * w32proc.c: include sys/file.h.
9153
9154 2002-05-03 Colin Walters <walters@verbum.org>
9155
9156 * callproc.c (Vgame_score_directory): Renamed to
9157 Vshared_game_score_directory.
9158
9159 2002-04-30 Richard M. Stallman <rms@gnu.org>
9160
9161 * s/gnu.h [emacs]: Include stdio.h.
9162 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
9163
9164 * eval.c (do_autoload): Error if called while preparing to dump.
9165
9166 * fns.c (Frequire): Error if need to load while preparing to dump.
9167
9168 2002-04-28 Colin Walters <walters@verbum.org>
9169
9170 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
9171 Default to "~/.emacs.d/games".
9172
9173 2002-04-29 Stefan Monnier <monnier@cs.yale.edu>
9174
9175 * lread.c (openp): Change arg exec_only to predicate.
9176 (build_load_history): Use XCAR/XCDR.
9177 (Flocate_file_internal): New fun.
9178 (syms_of_lread): Defsubr it.
9179 (Fload): Update call to openp.
9180
9181 * lisp.h (openp): Update prototype.
9182
9183 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
9184 * w32proc.c (sys_spawnve):
9185 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
9186 * w32.c (check_windows_init_file):
9187 * sound.c (Fplay_sound_internal):
9188 * process.c (Fstart_process):
9189 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
9190 * mac.c (run_mac_command):
9191 * emacs.c (init_cmdargs):
9192 * callproc.c (Fcall_process): Update call to openp.
9193
9194 * textprop.c (remove_properties): Don't use XCAR without CONSP.
9195
9196 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
9197
9198 2002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9199
9200 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
9201 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
9202
9203 2002-04-28 Richard M. Stallman <rms@gnu.org>
9204
9205 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
9206
9207 * eval.c (Fcommandp): New arg for_call_interactively.
9208 * lisp.h (Fcommandp): Declare new arg.
9209
9210 2002-04-28 Jason Rumney <jasonr@gnu.org>
9211
9212 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
9213
9214 * w32.c (stat, fstat): Use file index information to generate
9215 inodes for directories where available.
9216
9217 2002-04-26 Andrew Choi <akochoi@shaw.ca>
9218
9219 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
9220 [HAVE_CARBON]: Include Mac object files.
9221
9222 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
9223 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
9224 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
9225 MAC_OSX, and MAC_OS instead of macintosh.
9226
9227 * editfns.c [MAC_OS8]: Include stdio.h.
9228
9229 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
9230
9231 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
9232 Apple Monaco.
9233
9234 * process.c: Declare QCfamily and QCfilter as extern.
9235 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
9236 calling select.
9237
9238 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
9239
9240 * tparam.c [MAC_OSX]: Don't define BC and UP.
9241
9242 * config.in [HAVE_CARBON]: Add.
9243
9244 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
9245 Move here from mac/src and mac/inc.
9246
9247 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
9248
9249 2002-04-26 Gerd Moellmann <gerd@gnu.org>
9250
9251 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
9252 Compute phys_cursor_width from the x position returned
9253 by x_draw_glyhs, which is cheaper.
9254 (x_display_and_set_cursor): Compute the buffer-local value
9255 of `cursor-in-non-selected-windows' only when needed.
9256
9257 2002-04-25 Gerd Moellmann <gerd@gnu.org>
9258
9259 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
9260 cursor on a stretch glyph has a width that depends on
9261 x_stretch_cursor_p.
9262
9263 2002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9264
9265 * abbrev.c (abbrev-start-location): Doc fix.
9266
9267 * indent.c (Fvertical_motion): Fix last change.
9268
9269 2002-04-25 Gerd Moellmann <gerd@gnu.org>
9270
9271 * indent.c (Fvertical_motion): Move to the start of the line
9272 containing PT before moving up or down.
9273
9274 2002-04-24 Gerd Moellmann <gerd@gnu.org>
9275
9276 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
9277 case of writing a whole row, more or less analogous to the case of
9278 writing only parts of a row.
9279
9280 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
9281 0 for NO_CURSOR.
9282
9283 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
9284
9285 2002-04-23 Colin Walters <walters@verbum.org>
9286
9287 * buffer.c (syms_of_buffer): Doc fix.
9288
9289 2002-04-23 Gerd Moellmann <gerd@gnu.org>
9290
9291 * xterm.c (notice_overwritten_cursor): Handle the special case
9292 of the cursor being in the first blank non-text line at the
9293 end of a window.
9294
9295 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
9296 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
9297 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
9298 bar cursors only, to make phys_cursor_width contain what its name
9299 suggests.
9300 (notice_overwritten_cursor): Consider the cursor image erased if
9301 the output area intersects the cursor image in y-direction.
9302
9303 2002-04-23 Simon Marshall <simon@gnu.org>
9304
9305 * xfns.c (x_set_mouse_color): Change default for cross_cursor
9306 to XC_hand2.
9307
9308 2002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9309
9310 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
9311
9312 2002-04-22 Kim F. Storm <storm@cua.dk>
9313
9314 * textprop.c (remove_properties): Fixed trap for malformed plist.
9315
9316 2002-04-22 Richard M. Stallman <rms@gnu.org>
9317
9318 * cmds.c (Fend_of_line): Handle intangible text in mid line.
9319
9320 * window.c (make_window): Initialize height_fixed_p,
9321 last_cursor_off_p, and p->cursor_off_p slots.
9322
9323 2002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9324
9325 * fns.c (use-dialog-box): Doc fix.
9326
9327 2002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9328
9329 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
9330 variables `row', `i' and `area'.
9331 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
9332 toolkit library.
9333
9334 2002-04-19 Stefan Monnier <monnier@cs.yale.edu>
9335
9336 * xfaces.c (clear_font_table): Don't free the default font of
9337 a frame even if it's on another display.
9338 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
9339 that could be Qt.
9340
9341 2002-04-19 Juanma Barranquero <lektu@terra.es>
9342
9343 * indent.c (Fmove_to_column): Remove unused local variable
9344 `next_boundary_byte'.
9345 (current_column_1): Likewise.
9346
9347 2002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
9348
9349 * msdos.c (Qhbar): New variable.
9350 (syms_of_msdos): Intern and staticpro it.
9351 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
9352 cursor type.
9353
9354 2002-04-19 Dave Lambert <dlambert@acm.org>
9355
9356 Theses change implement an underscore-like (`hbar') cursor.
9357
9358 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
9359
9360 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
9361 Handle the `hbar' cursor type.
9362 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
9363
9364 * xfns.c (Qhbar): New variable.
9365 (syms_of_xfns): Intern and staticpro it.
9366 (x_specified_cursor_type): Handle `hbar' cursor.
9367
9368 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
9369 not defined.
9370
9371 2002-04-18 Richard M. Stallman <rms@gnu.org>
9372
9373 * textprop.c (remove_properties): New arg LIST allows scanning
9374 either a list or a plist.
9375 (interval_has_some_properties_list): New function, like
9376 interval_has_some_properties using list instead of plist.
9377 All callers changed.
9378 (Fremove_list_of_text_properties): New function.
9379 (syms_of_textprop): Defsubr it.
9380
9381 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
9382
9383 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
9384
9385 2002-04-17 Juanma Barranquero <lektu@terra.es>
9386
9387 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
9388
9389 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
9390
9391 * window.c (coordinates_in_window): Don't report on margin area
9392 if its width is zero.
9393
9394 2002-04-16 Jason Rumney <jasonr@gnu.org>
9395
9396 * w32fns.c (Fx_file_dialog): Decode file name before using.
9397
9398 * w32term.c (construct_drag_n_drop): Likewise.
9399
9400 2002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
9401
9402 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
9403 store load-history in pure space.
9404
9405 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
9406
9407 2002-04-16 Stefan Monnier <monnier@cs.yale.edu>
9408
9409 * xterm.c (Qlatin_1, Qutf_8): New vars.
9410 (syms_of_xterm): Initialize them.
9411 (XTread_socket): Eliminate incorrect optimization that tried to avoid
9412 decoding the output of X*LookupString.
9413 Always use latin-1 to decode the output of XLookupString.
9414 Try Xutf8LookupString if XmbLookupString failed.
9415
9416 * region-cache.c (new_region_cache): Use BEG.
9417
9418 2002-04-16 Gerd Moellmann <gerd@gnu.org>
9419
9420 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
9421 configuration files.
9422 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
9423 returns 0.
9424
9425 2002-04-15 Andreas Schwab <schwab@suse.de>
9426
9427 * config.in: Regenerated using autoheader.
9428
9429 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
9430 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
9431 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
9432 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
9433 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
9434 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
9435 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
9436 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
9437 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
9438 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
9439 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
9440 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
9441 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
9442 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
9443 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
9444 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
9445 STACK_DIRECTION, now set by autoconf.
9446
9447 2002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9448
9449 * dispnew.c (marginal_area_string): Sort arguments.
9450
9451 * dispextern.h (marginal_area_string): Add prototype.
9452
9453 2002-04-13 Richard M. Stallman <rms@gnu.org>
9454
9455 * fileio.c (Finsert_file_contents):
9456 Don't call temp_output_buffer_setup--do just part, by hand.
9457
9458 * coding.c (run_pre_post_conversion_on_str):
9459 Don't call temp_output_buffer_setup--do just part, by hand.
9460
9461 * keyboard.c (command_loop_1): Don't call start_hourglass
9462 or cancel_hourglass when executing a macro.
9463
9464 * marker.c (count_markers): New function.
9465
9466 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
9467 grow without limit. Move recently used elements to the front.
9468
9469 2002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
9470
9471 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
9472
9473 2002-04-12 Gerd Moellmann <gerd@gnu.org>
9474
9475 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
9476 rows marginal areas.
9477 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
9478 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
9479
9480 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
9481
9482 2002-04-12 Dave Love <fx@gnu.org>
9483
9484 * dispnew.c (marginal_area_string): New.
9485
9486 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
9487 (Qleft_margin, Qright_margin): Declare.
9488 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
9489
9490 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
9491 note_mode_line_highlight and extended.
9492
9493 * keyboard.c (Qleft_margin, Qright_margin): Declare.
9494 (make_lispy_event): Deal with mouse events in margins.
9495
9496 2002-04-12 Stefan Monnier <monnier@cs.yale.edu>
9497
9498 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
9499
9500 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
9501 than deactivating the mark if tmm is set to `lambda'.
9502 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
9503 Use a single event for HELP_EVENT.
9504 (Fexecute_extended_command): Save last_point_position.
9505
9506 2002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9507
9508 * lisp.h (Fpropertize): Add prototype.
9509
9510 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
9511
9512 2002-04-10 Colin Walters <walters@verbum.org>
9513
9514 * config.in: Add HAVE_SHARED_GAME_DIR.
9515
9516 * callproc.c: (Vgame_score_directory): New variable.
9517 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
9518
9519 2002-04-10 Richard M. Stallman <rms@gnu.org>
9520
9521 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
9522
9523 2002-04-09 Stefan Monnier <monnier@cs.yale.edu>
9524
9525 * minibuf.c (read_minibuf): Use empty_string.
9526 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
9527 Short-circuit the search as soon as it "failed".
9528 (Fall_completions): Allow lambda forms and lists of strings for alist.
9529 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
9530 when require_match is nil.
9531 (Ftest_completion): Rename from `test_completion' and export to elisp.
9532 Call the predicate also when alist is a list.
9533 Obey Vcompletion_regexp_list.
9534 (do_completion, Fminibuffer_complete_and_exit): Use it.
9535 (Fassoc_string): Rename from `assoc_for_completion'.
9536 Allow list of strings as well and export to elisp.
9537
9538 2002-04-08 Stefan Monnier <monnier@cs.yale.edu>
9539
9540 * puresize.h (BASE_PURESIZE): Increase to 900KB.
9541
9542 2002-04-08 Juanma Barranquero <lektu@terra.es>
9543
9544 * w32.c (sys_accept): Don't hide variable `s'.
9545
9546 2002-04-05 Gerd Moellmann <gerd@gnu.org>
9547
9548 * callint.c (Fcall_interactively): Use INTEGERP instead of
9549 NUMBERP for checking Vhistory_length.
9550
9551 2002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9552
9553 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
9554 Doc fix to reflect it.
9555
9556 2002-04-04 Richard M. Stallman <rms@gnu.org>
9557
9558 * xdisp.c (display_mode_element): New arg RISKY.
9559 Disregard text props found or specified within a variable
9560 that isn't marked risky-local-variable.
9561 (Qrisky_local_variable): New variable.
9562 (syms_of_xdisp): Init and staticpro it.
9563
9564 2002-04-04 Stefan Monnier <monnier@cs.yale.edu>
9565
9566 * undo.c (record_point): New fun.
9567 (record_delete, record_insert): Use it.
9568
9569 2002-04-03 Juanma Barranquero <lektu@terra.es>
9570
9571 * doc.c (Fdocumentation): Add missing parentheses.
9572 (Fdocumentation_property): Likewise.
9573
9574 2002-04-03 Stefan Monnier <monnier@cs.yale.edu>
9575
9576 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
9577 data is 0, just return nil.
9578
9579 2002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
9580
9581 * msdos.c (syms_of_msdos): Fix last change with
9582 mouse_autoselect_window.
9583
9584 2002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9585
9586 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
9587 mouse_autoselect_window.
9588
9589 2002-04-02 Stefan Monnier <monnier@cs.yale.edu>
9590
9591 * keyboard.c (make_lispy_event): Handle unknown keysyms together
9592 with system-specific keysyms. Use it also for unknown function keys.
9593
9594 * doc.c (reread_doc_file): Return whether reload was attempted.
9595 (Fdocumentation, Fdocumentation_property): Don't try to reload
9596 if the doc is 0 and only ask once.
9597
9598 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
9599
9600 2002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
9601
9602 * keyboard.c (read_char): If the event was Qselect_window,
9603 restore timer_idleness_start_time to its previous value.
9604
9605 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
9606
9607 2002-04-01 Stefan Monnier <monnier@cs.yale.edu>
9608
9609 * region-cache.c (new_region_cache): Use BEG.
9610
9611 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
9612 Use BEG and BEG_BYTE.
9613
9614 * doc.c (get_doc_string): Return nil if the location is wrong.
9615 (reread_doc_file): New fun.
9616 (Fdocumentation, Fdocumentation_property):
9617 Call it if get_doc_string fails.
9618 (Fsnarf_documentation): Make it work for a dumped Emacs.
9619
9620 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
9621 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
9622
9623 * charset.c (Fstring): Allow 0 arguments.
9624
9625 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
9626
9627 * process.c (DATAGRAM_CONN_P, list_processes_1)
9628 (Fprocess_datagram_address, Fset_process_datagram_address)
9629 (Fset_network_process_options, server_accept_connection):
9630 Fix some int/Lisp_Object confusions (thank you union types).
9631
9632 2002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9633
9634 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
9635
9636 * w32term.c: Likewise.
9637 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
9638
9639 * keyboard.c (Qselect_window): New symbol.
9640 (head_table): Use it.
9641 (keys_of_keyboard): Bound select-window event to handle-select-window.
9642 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
9643
9644 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
9645 (last_window): New variable.
9646 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
9647 (note_mouse_movement): Remove reimplemented code in #if 0.
9648 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
9649 Emacs windows.
9650
9651 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
9652
9653 2002-03-31 Gerd Moellmann <gerd@gnu.org>
9654
9655 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
9656 Callers changed.
9657
9658 2002-03-30 Richard M. Stallman <rms@gnu.org>
9659
9660 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
9661 loop whenever it stops making progress.
9662
9663 * widget.c (set_frame_size): Don't call change_frame_size.
9664
9665 2002-03-30 Gerd Moellmann <gerd@gnu.org>
9666
9667 * dispnew.c (direct_output_for_insert):
9668 Call mark_window_display_accurate.
9669
9670 2002-03-29 Jason Rumney <jasonr@gnu.org>
9671
9672 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
9673
9674 2002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
9675
9676 * Makefile.in (lread.o): Depend on coding.h.
9677
9678 * lread.c (openp, Fload): Encode the file name before passing it
9679 to `stat', `access', and `emacs_open'.
9680 (openp): GCPRO the encoded file name. Don't recompute Lisp
9681 strings unnecessarily.
9682
9683 2002-03-29 Kim F. Storm <storm@cua.dk>
9684
9685 * fns.c (Flax_plist_put): Doc fix.
9686
9687 2002-03-28 Miles Bader <miles@gnu.org>
9688
9689 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
9690
9691 2002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9692
9693 * process.c (set-network-process-options): Add usage.
9694 (make-network-process): Doc fix.
9695
9696 2002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
9697
9698 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
9699
9700 2002-03-26 Richard M. Stallman <rms@gnu.org>
9701
9702 * fns.c (Fsubstring_no_properties): New function.
9703 (Flax_plist_get, Flax_plist_put): New functions.
9704 (syms_of_fns): defsubr them.
9705
9706 * xdisp.c (update_menu_bar): Test only update_mode_lines;
9707 don't test or alter w->update_mode_line.
9708
9709 * window.c (Fdisplay_buffer): Doc fix.
9710
9711 2002-03-24 Richard M. Stallman <rms@gnu.org>
9712
9713 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
9714
9715 2002-03-24 Gerd Moellmann <gerd@gnu.org>
9716
9717 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
9718 (Fdefmacro): Handle `(declare ...)'.
9719 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
9720 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
9721
9722 2002-03-24 Jason Rumney <jasonr@gnu.org>
9723
9724 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
9725 (xbm_file_p): Add prototypes.
9726 (xbm_format, xbm_image_p): Sync with xfns.c.
9727 (reflect_byte): New function.
9728 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
9729 (xbm_load_image): Create bitmaps with a depth of 1.
9730 (init_xfns): Enable XBM images.
9731
9732 2002-03-23 Jason Rumney <jasonr@gnu.org>
9733
9734 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
9735 correctly. Do not pass up_modifier to keyboard buffer.
9736
9737 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
9738
9739 2002-03-22 Stefan Monnier <monnier@cs.yale.edu>
9740
9741 * Makefile.in (bootstrapclean): New target.
9742 (bootstrap-temacs, bootstrap-doc): Remove.
9743 (bootstrap-emacs): Use a bog-standard `temacs'.
9744 Don't bother to build a DOC file.
9745
9746 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
9747
9748 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
9749 in temacs even if !CANNOT_DUMP.
9750 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
9751
9752 * alloc.c (check_pure_size): Only output a warning.
9753
9754 2002-03-22 Jason Rumney <jasonr@gnu.org>
9755
9756 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
9757 supported.
9758
9759 * w32term.c (zv_bits): Declare as short, for word alignment.
9760 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
9761 (syms_of_w32term): Define x-use-underline-position-properties.
9762
9763 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
9764 (clear_image_cache): Block input, fix logic, clear matrices in
9765 all frames that share this cache.
9766
9767 2002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
9768
9769 * emacs.c (main): Update the Copyright year in the blurb printed
9770 by "emacs --version".
9771
9772 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
9773
9774 * xterm.c (XTread_socket): If XK_ISO_Lock and
9775 XK_ISO_Last_Group_Lock are defined, handle keysyms between
9776 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
9777
9778 2002-03-21 Kim F. Storm <storm@cua.dk>
9779
9780 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
9781 menu-bar bindings in keymap and local-map properties _are_ used.
9782 But try keymap property first in accordance with 2002-01-03 patch.
9783 Added comment describing why this is not always reliable.
9784 (tool_bar_items): Ditto for tool-bar.
9785
9786 2002-03-21 Jason Rumney <jasonr@gnu.org>
9787
9788 * w32fns.c (x_clear_image_1): Disable color table code.
9789
9790 2002-03-21 Kim F. Storm <storm@cua.dk>
9791
9792 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
9793 removed the wrong version of the DEFUN macro; fixed it.
9794
9795 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
9796 Fmember rather than Fmemq).
9797 (Fprovide): Check that subfeatures is a list.
9798
9799 * process.c (QCfeature, QCdatagram): Removed variables.
9800 (QCtype, Qdatagram): New variables.
9801 (network_process_featurep): Removed function.
9802 (Fmake_network_process): Removed :feature check.
9803 Use :type 'datagram instead of :datagram t to create a datagram
9804 socket. This allows us to add other connection types (e.g. raw
9805 sockets) later in a consistent manner.
9806 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
9807 supported subfeatures for feature make-network-process.
9808 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
9809 Intern and staticpro QCtype and Qdatagram.
9810 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
9811
9812 * xfns.c: (QCtype): Remove duplicate declaration and
9813 initialization (is now declared in process.c).
9814
9815 * w32fns.c: (QCtype): Remove duplicate declaration and
9816 initialization (is now declared in process.c).
9817
9818 2002-03-21 Richard M. Stallman <rms@gnu.org>
9819
9820 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
9821 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
9822 when jumping to `fail' to avoid undoing reg changes in the
9823 last iteration of the loop.
9824 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
9825
9826 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
9827 Depend on process.h.
9828
9829 2002-03-20 Jason Rumney <jasonr@gnu.org>
9830
9831 Most of the following changes are still conditional on HAVE_IMAGES
9832 which is not set by default on Windows.
9833
9834 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
9835
9836 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
9837 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
9838 (four_corners_best, x_clear_image_1, x_clear_image)
9839 (x_alloc_image_color, postprocess_image)
9840 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
9841 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
9842 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
9843
9844 * w32gui.h (struct XImage): Define.
9845
9846 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
9847 extract mouse co-ordinates.
9848
9849 2002-03-20 Jason Rumney <jasonr@gnu.org>
9850
9851 * w32.c (init_winsock): Dynamically load new server and UDP
9852 socket functions.
9853 (socket_to_fd): New function.
9854 (sys_socket): Use it.
9855 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
9856 (sys_recvfrom, sys_sendto): New wrapper functions.
9857
9858 * process.c (QCfamily, QCfilter): Remove duplicate declaration
9859 and initialization.
9860
9861 * makefile.w32-in (LIBS): Remove $(WSOCK32).
9862
9863 2002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
9864
9865 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
9866 Don't use "sun" as a variable, it's a predefined constant on Sun
9867 machines.
9868
9869 2002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9870
9871 * bytecode.c (Fbyte_code): Revert last change.
9872
9873 2002-03-19 Kim F. Storm <storm@cua.dk>
9874
9875 * makefile.w32-in (LIBS): Add $(WSOCK32).
9876 From David Ponce <dponce@voila.fr>.
9877
9878 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9879
9880 * process.c (wait_reading_process_input): Move variables `pname'
9881 and `pnamelen' down where they are used.
9882
9883 * bytecode.c (Fbyte_code): Discard unused computed value to
9884 prevent gcc warning.
9885
9886 * lisp.h (Fplist_member): Add prototype.
9887
9888 2002-03-18 Kim F. Storm <storm@cua.dk>
9889
9890 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
9891 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
9892
9893 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
9894 Remove explicit GNU_LINUX settings for datagram support.
9895
9896 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9897
9898 * process.c (Fmake_network_process): Remove unused variable `sa'.
9899 Doc fix. Add usage:.
9900 (set_socket_options): Remove unused variables `optnum' and `opttype'.
9901
9902 2002-03-17 Richard M. Stallman <rms@gnu.org>
9903
9904 * xdisp.c (cursor_type_changed): New variable.
9905 (redisplay_internal): Redisplay all windows if cursor_type_changed.
9906 Clear it when clearing windows_or_buffers_changed.
9907 (try_cursor_movement, redisplay_window, try_window_id)
9908 (try_window_reusing_current_matrix): Test cursor_type_changed
9909 along with windows_or_buffers_changed.
9910
9911 * window.h (cursor_type_changed): New variable.
9912
9913 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
9914 not update_mode_lines, and always set it to 1.
9915
9916 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
9917 if no frames needed redrawing.
9918
9919 2002-03-17 Kim F. Storm <storm@cua.dk>
9920
9921 The following changes add support for network server processes,
9922 datagram connections, and local (unix) sockets.
9923
9924 * process.h (struct Lisp_Process): New member log.
9925 Doc fix: Member command used to indicate stopped network process.
9926 Doc fix: Member childp contains plist for network process.
9927 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
9928
9929 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
9930 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
9931 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
9932 New variables.
9933 (NETCONN1_P): New macro.
9934 (DATAGRAM_SOCKETS): New conditional symbol.
9935 (datagram_address): New array.
9936 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
9937 (status_message): Use concat3.
9938 (Fprocess_status): Add `listen' status to doc string. Return `stop'
9939 for a stopped network process.
9940 (Fset_process_buffer): Update contact plist for network process.
9941 (Fset_process_filter): Ditto. Don't enable input for stopped
9942 network processes. Server must listen, even if filter is t.
9943 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
9944 New functions.
9945 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
9946 (Fprocess_contact): Added KEY argument. Handle datagrams.
9947 (list_processes_1): Optionally show only processes with the query
9948 on exit flag set. Dynamically adjust column widths. Omit tty
9949 column if not needed. Report stopped network processes.
9950 Identify server and datagram network processes.
9951 (Flist_processes): New optional arg `query-only'.
9952 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
9953 (conv_lisp_to_sockaddr, set_socket_options)
9954 (network_process_featurep, unwind_request_sigio): New helper functions.
9955 (Fprocess_datagram_address, Fset_process_datagram_address):
9956 (Fset_network_process_options): New lisp functions.
9957 (Fopen_network_stream): Removed. Now defined in simple.el.
9958 (Fmake_network_process): New lisp function. Code is based on previous
9959 Fopen_network_stream, but heavily reworked with new property list based
9960 argument list, support for datagrams, server processes, and local
9961 sockets in addition to old client-only functionality.
9962 (server_accept_connection): New function.
9963 (wait_reading_process_input): Use it to handle incoming connects.
9964 Do not enable input on a new connection if process is stopped.
9965 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
9966 (send_process): Handle datagram sockets.
9967 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
9968 network process is indicated by setting command field to t .
9969 (Fprocess_send_eof): No-op if datagram connection.
9970 (Fstatus_notify): Don't read input for a stream server socket or a
9971 stopped network process.
9972 (init_process): Initialize datagram_address array.
9973 (syms_of_process): Intern and staticpro new variables, defsubr new
9974 functions.
9975
9976 2002-03-16 Jason Rumney <jasonr@gnu.org>
9977
9978 * w32fns.c (w32_to_all_x_charsets): Return correct type in
9979 startup case.
9980
9981 2002-03-16 Richard M. Stallman <rms@gnu.org>
9982
9983 * xdisp.c (redisplay_internal, redisplay_windows):
9984 Use list_of_error to call internal_condition_case_1.
9985 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
9986 so as to catch all errors with no possibility of debugger redisplay.
9987 (list_of_error): New variable.
9988 (syms_of_xdisp): Init and staticpro it.
9989
9990 * print.c (print_object): Delete `\ ' from printed rep of frame.
9991
9992 2002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
9993
9994 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
9995 until its implementation is fixed.
9996
9997 2002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9998
9999 * xfns.c (png_load): Remove unused variable `gamma_str'.
10000
10001 2002-03-14 Richard M. Stallman <rms@gnu.org>
10002
10003 * xfns.c (x_real_positions): Handle failure in XQueryTree.
10004
10005 2002-03-14 Miles Bader <miles@gnu.org>
10006
10007 * intervals.c (adjust_for_invis_intang): New function.
10008 (set_point_both): Use `adjust_for_invis_intang' to do most of the
10009 work for dealing with invisible+intangible regions. Do so before
10010 and after both forward and backward movements, to handle both
10011 front-sticky and rear-sticky cases.
10012 * textprop.c (text_property_stickiness): Function moved here from
10013 `editfns.c'.
10014 * intervals.h (text_property_stickiness): New declaration.
10015 * editfns.c (char_property_eq): Function removed.
10016 (text_property_stickiness): Function moved to `textprop.c'.
10017
10018 2002-03-13 Jason Rumney <jasonr@gnu.org>
10019
10020 * config.in: Add STRFTIME_NO_POSIX2.
10021
10022 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
10023 and %OX when underlying strftime does not.
10024
10025 2002-03-13 Stefan Monnier <monnier@cs.yale.edu>
10026
10027 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
10028 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
10029 line) to avoid annoying flicker.
10030 (xm_scroll_callback): Get rid of the now unnecessary kludge.
10031 (XTread_socket): Mark it static.
10032
10033 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
10034
10035 2002-03-13 Kim F. Storm <storm@cua.dk>
10036
10037 * puresize.h (BASE_PURESIZE): Increase to 775000.
10038
10039 2002-03-12 Juanma Barranquero <lektu@terra.es>
10040
10041 * editfns.c (syms_of_editfns): Fix typo.
10042
10043 2002-03-12 Gerd Moellmann <gerd@gnu.org>
10044
10045 * xsmfns.c: Include stdio.h because termhooks.h needs it.
10046 Include termopt.h for interrupt_input.
10047
10048 2002-03-11 Andreas Schwab <schwab@suse.de>
10049
10050 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
10051
10052 2002-03-11 Gerd Moellmann <gerd@gnu.org>
10053
10054 * xterm.c (note_mouse_movement): Put code for
10055 x_autoselect_window_p in #if 0.
10056
10057 * lread.c (Fload): Don't assume that message_with_string uses the
10058 string it is given like a C string.
10059
10060 2002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10061
10062 * xterm.h (x_session_check_input, x_session_initialize): Declared.
10063
10064 * xterm.c: (XTread_socket): Add call to x_session_check_input and
10065 x_session_have_connection.
10066 (x_initialize): Add call to x_session_initialize.
10067
10068 * termhooks.h (enum event_kind): Add save_session_event.
10069
10070 * keyboard.c: Add Emacs event save_session_event.
10071
10072 * emacs.c (main): Add call to syms_of_xsmfns.
10073
10074 * lisp.h: Declare syms_of_xsmfns as extern.
10075
10076 * config.in: Add HAVE_X_SM.
10077
10078 * Makefile.in (LIBXT): Add -lSM -lICE
10079 if HAVE_X_SM and not USE_X_TOOLKIT.
10080 (XOBJ): New file xsmfns.c added.
10081
10082 * xsmfns.c: New file for X session management.
10083
10084 2002-03-09 Jason Rumney <jasonr@gnu.org>
10085
10086 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
10087 read-only when setting modified time.
10088
10089 2002-03-08 Gerd Moellmann <gerd@gnu.org>
10090
10091 * xdisp.c (move_it_vertically_backward): At the end of the function,
10092 when moving forward by lines, treat terminal frames specially.
10093
10094 * keyboard.c (echo_char): Make sure to add a separator between
10095 keys even if echo_dash hasn't been called.
10096
10097 * xdisp.c: Use new string macros.
10098 (update_echo_area): Pass number of bytes to message3 instead of
10099 number of chars.
10100 (set_message_1): Don't access a string's size_byte directly.
10101 (decode_mode_spec_coding): Use number of bytes of eoltype string
10102 instead number of chars.
10103
10104 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
10105
10106 2002-03-08 Juanma Barranquero <lektu@terra.es>
10107
10108 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
10109 24-bit.
10110
10111 2002-03-06 Jason Rumney <jasonr@gnu.org>
10112
10113 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
10114
10115 2002-03-06 Gerd Moellmann <gerd@gnu.org>
10116
10117 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
10118 (cancel_echoing, echo_length, echo_truncate): Changed to
10119 work with new kboard definition.
10120 (echo_now): Use message3_nolog instead of message2_nolog.
10121
10122 * alloc.c (mark_kboards): Mark echo_string.
10123
10124 * keyboard.h (ECHOBUFSIZE): Removed.
10125 (struct kboard): Member echoptr removed, member echobuf renamed
10126 to echo_string.
10127
10128 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
10129 message3 instead of message2 to display the message using STRING's
10130 text properties.
10131
10132 2002-03-05 Andreas Schwab <schwab@suse.de>
10133
10134 * xdisp.c (hscroll_margin): Change to EMACS_INT.
10135
10136 2002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
10137
10138 * frame.c (default-frame-alist): Explain that setting it doesn't
10139 affect existing frames.
10140
10141 2002-03-05 Stefan Monnier <monnier@cs.yale.edu>
10142
10143 * indent.c (skip_invisible): Fix my brain fart.
10144
10145 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
10146
10147 2002-03-04 Stefan Monnier <monnier@cs.yale.edu>
10148
10149 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
10150 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
10151 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
10152 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
10153 and variables to use EMACS_INT instead of just int.
10154
10155 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
10156
10157 2002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
10158
10159 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
10160 environment, pass it down with corrected value.
10161
10162 2002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10163
10164 * lread.c (read_filtered_event): Do not call start_hourglass
10165 before returning.
10166
10167 2002-03-04 Juanma Barranquero <lektu@terra.es>
10168
10169 * w32term.c (x_display_and_set_cursor): Fix typo.
10170
10171 2002-03-03 Richard M. Stallman <rms@gnu.org>
10172
10173 * fileio.c (Fmake_temp_name): Doc fix.
10174
10175 2002-03-03 Gary Wong <gtw@gnu.org>
10176
10177 * termcap.c [!emacs]: Replace ospeed for building standalone
10178 libtermcap, for binary compatibility.
10179
10180 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
10181
10182 2002-03-03 Richard M. Stallman <rms@gnu.org>
10183
10184 * xrdb.c (file_p): Rename arg `path' to `filename'.
10185
10186 * abbrev.c (Fexpand_abbrev): Increment plist as use count
10187 only if it is an integer.
10188
10189 * xfns.c (png_load): Set screen_gamma based on f->gamma.
10190 If png_get_sRGB gives an answer, call png_set_gamma
10191 using the default image gamma value.
10192
10193 * lread.c (read1): When reading from a file, default string to
10194 multibyte only if it has some multibyte characters.
10195
10196 * print.c (print_object): Output multibyte chars 128...255
10197 using \x even if ! print_escape_multibyte.
10198
10199 * xdisp.c (display_mode_element): Move the places where
10200 bytepos, charpos, this, and lisp_string are set.
10201 Use lisp_string to set bytepos.
10202
10203 * xdisp.c (redisplay_internal):
10204 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
10205
10206 * xdisp.c (display_mode_element): Merge properties specified with
10207 :propertize onto those that come with the string.
10208
10209 2002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
10210
10211 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
10212 automatic-hscrolling. Users changed.
10213 <hscroll-margin>: Renamed from automatic-hscroll-margin.
10214 Users changed.
10215 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
10216
10217 2002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
10218
10219 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
10220
10221 2002-03-02 Kim F. Storm <storm@cua.dk>
10222
10223 * window.c (Fminibuffer_selected_window): New function.
10224 (syms_of_window): Defsubr it.
10225
10226 2002-03-01 Kim F. Storm <storm@cua.dk>
10227
10228 * window.h (struct window): New member phys_cursor_width.
10229
10230 * window.c (make_window, replace_window): Init phys_cursor_width.
10231
10232 * xterm.c (x_display_and_set_cursor): Blink box cursor using
10233 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
10234
10235 * w32term.c (x_display_and_set_cursor): Blink box cursor using
10236 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
10237
10238 * lisp.h (GCPRO6): New macro.
10239
10240 * process.c (Fopen_network_stream): Use GCPRO6.
10241
10242 2002-03-01 Kim F. Storm <storm@cua.dk>
10243
10244 * process.c (Qconnect, Qfailed): New variables.
10245 (syms_of_process): Intern and staticpro them.
10246 (Fprocess_status): Document connect and failed return values.
10247 [NON_BLOCKING_CONNECT]: New conditional.
10248 (connect_wait_mask, num_pending_connects): New variables.
10249 (status_message): Convert Qfailed status.
10250 (Fopen_network_stream): Added support for non-blocking connect.
10251 New optional args: filter, sentinel, non_blocking. Doc updated.
10252 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
10253 (deactivate_process): Handle pending non-blocking connect.
10254 (wait_reading_process_input): Poll for status of non-blocking
10255 connects. Exec sentinel directly when connect succeeds.
10256 (status_notify): Don't read process output if not yet connected.
10257
10258 2002-02-28 Kim F. Storm <storm@cua.dk>
10259
10260 * window.c: (minibuf_selected_window): Renamed from
10261 Vminibuf_selected_window. Users changed.
10262 (syms_of_window): Staticpro it.
10263
10264 2002-02-26 Kim F. Storm <storm@cua.dk>
10265
10266 The following changes add a new Vminibuf_selected_window variable
10267 which is similar to Vminibuf_scroll_window, but which is only set
10268 on entry to the minibuffer (from a non-minibuffer window):
10269
10270 * window.c: (Vminibuf_selected_window): New variable.
10271 (struct save_window_data): New member minibuf_selected_window.
10272 (Fset_window_configuration): Restore Vminibuf_selected_window.
10273 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
10274 Set minibuf_scroll_window member to nil if minibuf_level is 0.
10275 (compare_window_configurations): Compare minibuf_selected_window.
10276
10277 * window.h: (Vminibuf_selected_window): Declare extern.
10278
10279 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
10280 entry to minibuffer or on entry from a non-minibuffer window.
10281
10282 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
10283 Vminibuf_selected_window instead of Vminibuf_scroll_window.
10284
10285 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
10286 instead of Vminibuf_scroll_window when deciding in which window
10287 the region should be highlighted. Consequently, the region remains
10288 highlighteded even when a completion buffer is also displayed.
10289
10290 2002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
10291
10292 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
10293
10294 * xselect.c (Qcompound_text_with_extensions): Renamed from
10295 Qcompound_text_no_extensions.
10296 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
10297
10298 2002-02-26 Juanma Barranquero <lektu@terra.es>
10299
10300 * w32proc.c (syms_of_ntproc): Doc fix.
10301
10302 2002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10303
10304 * intervals.h: Include "dispextern.h" unconditionally.
10305
10306 2002-02-24 Jason Rumney <jasonr@gnu.org>
10307
10308 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
10309 and disp-table.elc.
10310 (lisp): Add emacs-lisp/backquote.elc.
10311
10312 2002-02-24 Kim F. Storm <storm@cua.dk>
10313
10314 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
10315 The validation of the event type was too strict as it didn't
10316 allow string events; buffer names are used in bindings for
10317 menu-bar-select-buffer (see `menu-bar-update-buffers').
10318
10319 2002-02-23 Kim F. Storm <storm@cua.dk>
10320
10321 The following changes rework my patch of 2002-02-06 which
10322 added command remapping by entering the commands directly into
10323 the keymaps. Now, command remapping uses an explicit `remap'
10324 prefix in the keymaps, i.e. [remap COMMAND].
10325
10326 * keymap.c (Qremap, remap_command_vector): New variables.
10327 (is_command_symbol): Removed function.
10328 (Fdefine_key): No longer accept a symbol for KEY.
10329 Added validation of [remap COMMAND] argument for KEY.
10330 The DEF is no longer required to be a symbol when remapping a command.
10331 (Fremap_command): New function to remap command through keymaps.
10332 (Flookup_key): Perform command remapping initiated by
10333 Fremap_command directly for speed.
10334 (Fkey_binding): Use Fremap_command for command remapping.
10335 (where_is_internal): Handle new command remapping representation.
10336 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
10337 staticpro them. Defsubr Fremap_command.
10338
10339 * keymap.h (Fremap_command): Declare extern.
10340 (is_command_symbol): Remove extern.
10341
10342 * keyboard.c (command_loop_1): Use Fremap_command for command
10343 remapping; now try command remapping for all symbols.
10344
10345 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
10346
10347 * coding.h (run_pre_post_conversion_on_str): Add prototype.
10348
10349 2002-02-23 Jason Rumney <jasonr@gnu.org>
10350
10351 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
10352 on the string before encoding it.
10353 (Fw32_get_clipboard_data): Run post-read-conversion on the string
10354 after decoding it.
10355
10356 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
10357
10358 2002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10359
10360 * w32term.c (enter_timestamp): Remove unused static variable to
10361 prevent warning.
10362
10363 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
10364
10365 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
10366
10367 * w16select.c (Fw16_get_clipboard_data): Fix last change.
10368
10369 * xselect.c (selection_data_to_lisp_data): Fix last change.
10370
10371 2002-02-22 Jason Rumney <jasonr@gnu.org>
10372
10373 * w32term.h (struct w32_output): New member menu_command_in_progress.
10374
10375 * w32menu.c (menubar_selection_callback): Free the menu and
10376 clear the menu_command_in_progress flag.
10377
10378 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
10379 (menu_free_timer): New variable.
10380 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
10381 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
10382 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
10383 menu command is in progress.
10384 <WM_COMMAND>: Set the menu_command_in_progress flag.
10385 Kill any menu_free_timer that is running.
10386
10387 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
10388 Call ExtTextOutA rather than ExtTextOut.
10389
10390 2002-02-22 Eli Zaretskii <eliz@gnu.org>
10391
10392 * puresize.h (BASE_PURESIZE): Increase to 755000.
10393
10394 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
10395
10396 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
10397 on the string before encoding it.
10398 (Fw16_get_clipboard_data): Run post-read-conversion on the string
10399 after decoding it.
10400
10401 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
10402
10403 Support for ICCCM Extended Segments in X selections:
10404
10405 * xselect.c <Qcompound_text_no_extensions>: New variable.
10406 (syms_of_xselect): Intern and staticpro it.
10407 (selection_data_to_lisp_data): Run post-read-conversion on decoded
10408 selection text.
10409 (lisp_data_to_selection_data): If next-selection-coding-system is
10410 compound-text-no-extensions, set the type of selection to be
10411 compound-text.
10412
10413 * xterm.h (x_encode_text): Update prototype.
10414
10415 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
10416 callers changed. If SELECTIONP is non-zero, run the
10417 pre-write-conversion function before encoding the selection text.
10418
10419 2002-02-21 Kim F. Storm <storm@cua.dk>
10420
10421 * frame.c (syms_of_frame): Change mouse-highlight default to t.
10422
10423 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
10424 Correct composing of language-change event.
10425
10426 2002-02-20 Kim F. Storm <storm@cua.dk>
10427
10428 * keyboard.c (menu_bar_items): Don't include keymap or local-map
10429 bindings at PT when building menu (the menu is not updated often
10430 enough for this to work reliable).
10431 (tool_bar_items): Likewise.
10432 (current_active_maps): Removed unused (and buggy) function.
10433
10434 2002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10435
10436 * xfns.c (gif_load): Use correct width and height for GIF images.
10437
10438 2002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
10439
10440 * floatfns.c (Fatan): Accept an optional second arg and call
10441 atan2 if passed 2 args.
10442
10443 2002-02-18 Jason Rumney <jasonr@gnu.org>
10444
10445 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
10446
10447 2002-02-17 Jason Rumney <jasonr@gnu.org>
10448
10449 * w32term.c (x_autoselect_window_p): New variable.
10450 (syms_of_w32term): DEFVAR_BOOL and initialize it.
10451 (note_mouse_movement): Use it.
10452
10453 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
10454
10455 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
10456
10457 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
10458 New variables.
10459 (syms_of_w32fns): Intern and staticpro them.
10460 (x_frame_parms) <"fullscreen">: New parameter.
10461 (x_fullscreen_move, x_set_fullscreen): New functions.
10462 (x_set_frame_parameters): Support Qfullscreen.
10463 (x_real_positions): Save x/y_pixels_diff frame params.
10464 (x_figure_window_size): Support full-screen frames.
10465 (Fx_create_frame): Default the fullscreen parameter.
10466
10467 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
10468 (x_fullscreen_adjust): New functions.
10469 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
10470 fullscreen. Call x_check_fullscreen_move, and set the
10471 want_fullscreen member of output_data.w32
10472 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
10473
10474 * w32term.h: New enum for FULLSCREEN_* constants.
10475 (struct w32_output): New members want_fullscreen, x_pixels_diff,
10476 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
10477 (x-fullscreen-adjust): New prototype.
10478
10479 2002-02-17 Kim F. Storm <storm@cua.dk>
10480
10481 * frame.c: (Vmouse_highlight): New variable.
10482 (syms_of_frame): DEFVAR_LISP it.
10483
10484 * frame.h: (Vmouse_highlight): Declare extern.
10485
10486 * xterm.h (struct x_display_info): Add mouse_face_hidden.
10487
10488 * xterm.c (disable_mouse_highlight): Removed variable.
10489 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
10490 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
10491 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
10492 and on after keyboard input.
10493 (x_term_init): Initialize mouse_face_hidden.
10494
10495 * msdos.h (struct display_info): Add mouse_face_hidden.
10496
10497 * msdos.c (disable_mouse_highlight): Removed variable.
10498 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
10499 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
10500 (internal_terminal_init): Initialize mouse_face_hidden.
10501 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
10502 and on after keyboard input.
10503
10504 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
10505
10506 * w32term.c (disable_mouse_highlight): Removed variable.
10507 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
10508 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
10509 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
10510 and on after keyboard input.
10511 (w32_initialize_display_info): Initialize mouse_face_hidden.
10512
10513 2002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
10514
10515 * msdos.c (last_mouse_window): New variable.
10516 (dos_rawgetc): Fix last change--if the mouse is in the same window
10517 as recorded in last_mouse_window, don't select this window.
10518
10519 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
10520
10521 * msdos.c (x_autoselect_window_p): New variable.
10522 (syms_of_msdos): Defvar it.
10523 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
10524 which the last mouse movement occured, unless it is already selected.
10525
10526 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
10527 New variables.
10528 (syms_of_xdisp): DEVFAR them.
10529 (hscroll_window_tree): Use automatic_hscroll_margin and
10530 Vautomatic_hscroll_step to compute the amount of window scrolling.
10531
10532 2002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10533
10534 * xterm.c (x-autoselect-window): New variable.
10535 (note_mouse_movement): Use it.
10536
10537 * keyboard.c: Do not include "systime.h" twice.
10538
10539 2002-02-15 Andreas Schwab <schwab@suse.de>
10540
10541 * puresize.h (BASE_PURESIZE): Increase to 9/5.
10542
10543 * alloc.c (NSTATICS): Increase to 1280.
10544
10545 2002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
10546
10547 * alloc.c (NSTATICS): Bump to 1026.
10548
10549 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
10550 (Vx_super_keysym): New variables.
10551 (syms_of_xterm): DEFVAR_LISP them.
10552 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
10553 variables to determine which keys to use for the various modifiers.
10554
10555 2002-02-13 Kim F. Storm <storm@cua.dk>
10556
10557 * window.c: (Vmode_line_in_non_selected_windows): Removed.
10558 (mode_line_in_non_selected_windows): New variable.
10559 (syms_of_window): DEFVAR_BOOL it.
10560
10561 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
10562 Use mode_line_in_non_selected_windows.
10563 (mode_line_in_non_selected_windows): Declare extern.
10564 (Vmode_line_in_non_selected_windows): Removed extern.
10565
10566 2002-02-13 Richard M. Stallman <rms@gnu.org>
10567
10568 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
10569 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
10570 (Fclear_this_command_keys): Doc fixes.
10571
10572 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
10573 (update_face_from_frame_parameter): Increment face_change_count
10574 and windows_or_buffers_changed to force redisplay using changed faces.
10575
10576 * xdisp.c (QCpropertize): New variable.
10577 (mode_line_proptrans_alist): New variable.
10578 (display_mode_element): New arg PROPS; all calls changed.
10579 Implement this, for strings.
10580 Handle literal output of strings by sharing the
10581 main-line code for strings, using local var `literal'.
10582 Handle :propertize feature.
10583 (syms_of_xdisp): Initialze and staticpro QCpropertize and
10584 mode_line_proptrans_alist.
10585
10586 2002-02-11 Kim F. Storm <storm@cua.dk>
10587
10588 * window.c: (Vmode_line_in_non_selected_windows): New variable.
10589 (syms_of_window): DEFVAR_LISP it.
10590
10591 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
10592 (CURRENT_MODE_LINE_FACE_ID): Use it.
10593 (Vmode_line_in_non_selected_windows): Declare extern.
10594
10595 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
10596 to get mode line face.
10597
10598 2002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
10599
10600 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
10601 variables; cus-start.el doesn't need them anymore.
10602
10603 2002-02-09 Kim F. Storm <storm@cua.dk>
10604
10605 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
10606 reduction. This fixes a display problem where stray newlines were
10607 inserted in the window (corrected by C-l). Clarified code (IMHO).
10608
10609 2002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
10610
10611 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
10612
10613 * xdisp.c (display_mode_lines): Fix last change.
10614
10615 2002-02-09 Jason Rumney <jasonr@gnu.org>
10616
10617 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
10618 match each other.
10619 (w32_load_system_font): Prevent Cleartype fonts from loading.
10620 (Fx_show_tip): Ensure tip frames are above other topmost windows.
10621
10622 2002-02-09 Kim F. Storm <storm@cua.dk>
10623
10624 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
10625 (CURRENT_MODE_LINE_HEIGHT): Use it.
10626 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
10627
10628 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
10629 (pos_visible_p, handle_face_prop): Likewise.
10630 (display_mode_lines): Likewise, but for the real selected window.
10631 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
10632
10633 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
10634 in non-selected windows.
10635 (realize_basic_faces): Realize it.
10636 (syms_of_term): Intern and staticpro it.
10637
10638 2002-02-08 Kim F. Storm <storm@cua.dk>
10639
10640 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
10641 Changed mail addresses to emacs-devel@gnu.org.
10642
10643 2002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
10644
10645 * fileio.c (Fsubstitute_in_file_name): If the file name includes
10646 ~user, and there's no such user, don't discard everything before ~user.
10647
10648 * floatfns.c (Fround): Doc fix.
10649
10650 2002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10651
10652 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
10653
10654 2002-02-07 Stefan Monnier <monnier@cs.yale.edu>
10655
10656 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
10657
10658 2002-02-07 Kim F. Storm <storm@cua.dk>
10659
10660 * keymap.c (where_is_internal): Only check whether definition is
10661 remapped if it fulfills is_command_symbol.
10662
10663 2002-02-07 Andreas Schwab <schwab@suse.de>
10664
10665 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
10666
10667 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
10668
10669 2002-02-06 Kim F. Storm <storm@cua.dk>
10670
10671 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
10672 defining command remapping. Doc updated.
10673 (Flookup_key): Remap command through keymap if KEY is a symbol.
10674 (is_command_symbol): New function.
10675 (Fkey_binding): Use it. New optional argument NO-REMAP.
10676 Doc updated. Callers changed. Perform command remapping via
10677 recursive call unless that arg is non-nil.
10678 (where_is_internal): New argument no_remap. Callers changed.
10679 Call recursively to find original key bindings for a remapped
10680 comand unless that arg is non-nil.
10681 (Fwhere_is_internal): New optional argument NO-REMAP.
10682 Doc updated. Callers changed. Pass arg to where_is_internal.
10683
10684 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
10685 (is_command_symbol): Added prototype.
10686
10687 * keyboard.c (Vthis_original_command): New variable.
10688 (syms_of_keyboard): DEFVAR_LISP it.
10689 (command_loop_1): Set it, and perform command remapping.
10690
10691 2002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10692
10693 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
10694
10695 2002-02-06 Jason Rumney <jasonr@gnu.org>
10696
10697 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
10698
10699 2002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
10700
10701 * charset.c (get_charset_id): Use if-else instead of ?:.
10702
10703 2002-02-06 Richard M. Stallman <rms@gnu.org>
10704
10705 * filelock.c (S_ISLNK): Define if not defined.
10706
10707 2002-02-03 Richard M. Stallman <rms@gnu.org>
10708
10709 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
10710
10711 * lread.c (read1): Redesign strategy for force_multibyte and
10712 force_singlebyte. Now is_multibyte records whether read_buffer
10713 is multibyte. Encountering any multibyte character makes it so.
10714
10715 2002-02-02 Stefan Monnier <monnier@cs.yale.edu>
10716
10717 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
10718 with the same sequence, map that sequence to f10 rather than f0.
10719
10720 2002-02-03 Andreas Schwab <schwab@suse.de>
10721
10722 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
10723 latter never being defined on GNU/Linux.
10724
10725 2002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
10726
10727 * xfaces.c (realize_default_face): Don't set the weight and slant of
10728 the default face to Qnormal, unless these attributes are unspecified.
10729
10730 2002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10731
10732 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
10733 Call cancel_hourglass unconditionally.
10734
10735 * eval.c (Fsignal): Remove duplicated declaration of
10736 the variable `display_hourglass_p'.
10737
10738 2002-01-31 Richard M. Stallman <rms@gnu.org>
10739
10740 * editfns.c (region_limit): Nicer error message.
10741
10742 * coding.c (decode_composition_emacs_mule):
10743 Give up if NCOMPONENT gets too large to index `component'.
10744
10745 * callint.c (check_mark): New arg to specify clearer error message.
10746 Callers changed.
10747
10748 2002-01-27 Richard M. Stallman <rms@gnu.org>
10749
10750 * minibuf.c (Fcompleting_read): Doc fix.
10751
10752 2002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10753
10754 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
10755 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
10756 Fix doc-strings.
10757
10758 2002-01-26 Richard M. Stallman <rms@gnu.org>
10759
10760 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
10761
10762 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
10763 and scroll_up_aggressively.
10764
10765 2002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10766
10767 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
10768
10769 2002-01-25 Stefan Monnier <monnier@cs.yale.edu>
10770
10771 * textprop.c (Fnext_property_change, Fnext_single_property_change)
10772 (Fprevious_property_change, Fprevious_single_property_change):
10773 Stay within the narrowed-buffer boundaries.
10774
10775 2002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
10776
10777 * term.c (Ftty_display_color_cells): New function.
10778 (syms_of_term): Defsubr it.
10779 (Ftty_display_color_cells, Ftty_display_color_p): Change the
10780 argument name to DISPLAY. Doc fix.
10781
10782 * dispextern.h: Add prototype for set_tty_color_mode and
10783 tty_setup_colors.
10784
10785 2002-01-24 Jason Rumney <jasonr@gnu.org>
10786
10787 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
10788 If region left to draw is not what was expected, mark the frame as
10789 garbaged.
10790
10791 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
10792 Combine the regions returned by BeginPaint and GetUpdateRect.
10793
10794 2002-01-23 Jason Rumney <jasonr@gnu.org>
10795
10796 * w32term.c (x_update_window_begin): Only hide caret if
10797 w32_use_visible_system_caret is set.
10798 (x_update_window_end): Only show caret if
10799 w32_use_visible_system_caret is set.
10800 (syms_of_w32term): Handle SystemParametersInfo call failing.
10801
10802 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
10803
10804 2002-01-22 Richard M. Stallman <rms@gnu.org>
10805
10806 * unexelf.c (unexec): Define n so as to cause compilation error
10807 for the code where people have often written n instead of nn.
10808
10809 * .gdbinit (hookpost-run): Defined.
10810
10811 2002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10812
10813 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
10814
10815 2002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10816
10817 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
10818 if fullscreen is being set.
10819
10820 2002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10821
10822 * minibuf.c (Fminibuffer_contents)
10823 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
10824 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
10825
10826 2002-01-21 Richard M. Stallman <rms@gnu.org>
10827
10828 * window.c (check_frame_size): Fix minimum height calculation.
10829
10830 2002-01-20 Ken Raeburn <raeburn@gnu.org>
10831
10832 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
10833 height before comparison.
10834 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
10835
10836 2002-01-20 Jason Rumney <jasonr@gnu.org>
10837
10838 * w32term.c (w32_system_caret_width): Remove.
10839 (w32_use_visible_system_caret): New user flag.
10840 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
10841 Windows reports a screen reader running.
10842 (x_update_window_begin): Hide the system caret.
10843 (x_update_window_end): Show the system caret.
10844 (x_display_and_set_cursor): Don't draw a cursor when
10845 w32_use_visible_system_caret is set. Do not adjust width.
10846
10847 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
10848 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
10849 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
10850 the user requests it. Use system default width when creating.
10851 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
10852
10853 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
10854 New window messages.
10855
10856 2002-01-20 Richard M. Stallman <rms@gnu.org>
10857
10858 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
10859
10860 2002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10861
10862 * doprnt.c (doprnt1): Fix typos in error call.
10863
10864 2002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
10865
10866 * unexelf.c (unexec) [__sgi]: Support the .got sections.
10867
10868 2002-01-20 Jason Rumney <jasonr@gnu.org>
10869
10870 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
10871 that Windows returns. If a double check fails, try to guess how
10872 ExtTextOut is going to act.
10873
10874 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
10875 in place of stricmp.
10876 (w32_list_synthesized_fonts): Removed.
10877 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
10878 (struct enumfont_t): New element; list.
10879 (enum_font_cb2): List all style and charset variations of a font.
10880 (Fw32_select_font): New optional argument; include_proportional.
10881 Exclude vertical fonts. Exclude proportional fonts unless
10882 include_proportional is non-nil.
10883 (w32_enable_synthesized_fonts): Change to a boolean.
10884 (Fw32_send_sys_command): Doc fix.
10885
10886 2002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10887
10888 * dispnew.c (update_frame): Move the variable `tem' to the block
10889 where it is used.
10890
10891 2002-01-19 Jason Rumney <jasonr@gnu.org>
10892
10893 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
10894 call to face-set-after-frame-default.
10895
10896 2002-01-18 Richard M. Stallman <rms@gnu.org>
10897
10898 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
10899 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
10900
10901 2002-01-17 Richard M. Stallman <rms@gnu.org>
10902
10903 * window.c (enlarge_window): When exceeding size of parent,
10904 directly delete all the siblings instead of trying to resize it.
10905
10906 2002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10907
10908 * term.c (set_tty_color_mode): Remove unused variable `tem'.
10909
10910 2002-01-16 Henrik Enberg <henrik@enberg.org>
10911
10912 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
10913
10914 2002-01-16 Kim F. Storm <storm@cua.dk>
10915
10916 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
10917 is invisible. This can happen if cursor is on top line of a
10918 window, and we switch to a buffer with a header line.
10919
10920 * w32term.c (x_erase_phys_cursor): Ditto.
10921
10922 2002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10923
10924 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
10925 `dont_resize' only when used.
10926
10927 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
10928
10929 2002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
10930
10931 * xdisp.c (display_mode_element): When computing charpos, depend
10932 on multibyteness of elt, not the text in field.
10933
10934 2002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10935
10936 * buffer.c (Fkill_all_local_variables):
10937 Increment `update_mode_lines' only once.
10938
10939 2002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10940
10941 * lisp.h (adjust_after_replace_noundo)
10942 (Fupdate_coding_systems_internal): Add prototypes.
10943
10944 * sound.c (Fplay_sound): Initialize header_size also for :data case.
10945
10946 2002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
10947
10948 Support for the --color command-line argument and tty-color-mode
10949 frame parameter:
10950
10951 * term.c (tty_default_color_capabilities, tty_setup_colors)
10952 (set_tty_color_mode): New functions.
10953 (term_init): Call tty_default_color_capabilities.
10954 (Qtty_color_mode_alist): New variable.
10955 (syms_of_term): Intern and staticpro it.
10956
10957 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
10958 frames.
10959 (do_switch_frame): For termcap frames, switch the tty
10960 color mode as specified by the frame's parameters.
10961 (Qtty_color_mode): New variable.
10962 (syms_of_frame): Intern and staticpro it.
10963
10964 * emacs.c (USAGE2): Add the --color option.
10965 (standard_args): Ditto.
10966
10967 2002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10968
10969 * xterm.h (struct x_output): New members want_fullscreen,
10970 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
10971 y_pixels_outer_diff.
10972 New enum for FULLSCREEN_* constants.
10973 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
10974 is NULL.
10975 (x_fullscreen_adjust): Add prototype.
10976
10977 * emacs.c (USAGE2): Add the new full-screen arguments.
10978 (standard_args): Ditto.
10979
10980 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
10981 New variables.
10982 (syms_of_xfns): Intern and staticpro them.
10983 (x_frame_parms) <"fullscreen">: New parameter.
10984 (x_fullscreen_move, x_set_fullscreen): New functions.
10985 (x_set_frame_parameters): Support for Qfullscreen.
10986 (x_real_positions): More accurate computation of the frame position.
10987 (x_figure_window_size): Support full-screen frames.
10988 (Fx_create_frame): Default the fullscreen parameter.
10989
10990 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
10991 (XTread_socket) <Expose>: Call x_check_fullscreen.
10992 <ConfigureNotify>: Don't resize to fullscreen.
10993 Call x_check_fullscreen_move, and set the want_fullscreen member of
10994 output_data.x.
10995
10996 2002-01-13 Jason Rumney <jasonr@gnu.org>
10997
10998 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
10999 for mice with more than 3 buttons.
11000
11001 * w32term.c (parse_button): New parameter xbutton. Callers changed.
11002 (w32_read_socket): Handle new "XBUTTON" messages.
11003
11004 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
11005 (syms_of_w32fns): DEFVAR_BOOL it.
11006 (w32_wnd_proc): Handle new "XBUTTON" messages.
11007
11008 2002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11009
11010 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
11011
11012 2002-01-13 Andreas Schwab <schwab@suse.de>
11013
11014 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
11015
11016 2002-01-12 Andreas Schwab <schwab@suse.de>
11017
11018 * .gdbinit (xbuffer): Remove address operator since data is now a
11019 pointer.
11020
11021 2002-01-11 Richard M. Stallman <rms@gnu.org>
11022
11023 * insdel.c (adjust_after_replace_noundo): New function.
11024
11025 * coding.c (code_convert_region): Don't copy old text if undo disabled.
11026
11027 2002-01-09 Jason Rumney <jasonr@gnu.org>
11028
11029 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
11030 when checking for multiple frames.
11031
11032 2002-01-08 Richard M. Stallman <rms@gnu.org>
11033
11034 * window.c (delete_window): Rewrite the code for changing the
11035 selected window to handle the case where WINDOW is not a leaf.
11036
11037 2002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
11038
11039 * process.c (send_process): Set src_multibyte to 1 after the call
11040 top setup_coding_system, not before the call.
11041
11042 2002-01-07 Jason Rumney <jasonr@gnu.org>
11043
11044 * xmenu.c (set_frame_menubar, xmenu_show):
11045 (xdialog_show): Initialize wv->help to Qnil.
11046
11047 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
11048 (w32_dialog_show): Initialize wv->help to Qnil.
11049
11050 2002-01-06 Jason Rumney <jasonr@gnu.org>
11051
11052 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
11053
11054 * w32menu.c (w32_menu_display_help): Revert last change.
11055
11056 * xmenu.c (menu_highlight_callback): Revert last change.
11057
11058 2002-01-06 Andreas Schwab <schwab@suse.de>
11059
11060 * insdel.c (make_gap_larger): Make sure buffer size does not
11061 overflow range of int.
11062
11063 2002-01-05 Jason Rumney <jasonr@gnu.org>
11064
11065 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
11066 OVERLAPS_P.
11067
11068 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
11069
11070 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
11071 to the left or to the right of the pointer, put it against
11072 the left screen edge.
11073 (x_frame_parms): Add missing braces around initializer.
11074
11075 * w32term.c (x_setup_relief_colors): Don't compute an image's
11076 background color if it doesn't have a Pixmap.
11077 (notice_overwritten_cursor): Don't depend on
11078 output_cursor and updated_area. Compare pixel coordinates with
11079 window's cursor pixel coordinates.
11080 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
11081 Call notice_overwritten_cursor with new arg list.
11082 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
11083 unconditionally.
11084 (x_draw_image_relief): Use predefined macro instead of
11085 constant when the value of `tool_bar_button_relief' is negative.
11086
11087 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
11088
11089 2002-01-04 Richard M. Stallman <rms@gnu.org>
11090
11091 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
11092
11093 2002-01-03 Richard M. Stallman <rms@gnu.org>
11094
11095 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
11096 (Fkey_binding): Try the `keymap' property map first.
11097 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
11098 minor mode bindings.
11099
11100 2002-01-03 Kim F. Storm <storm@cua.dk>
11101
11102 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
11103
11104 2002-01-02 Richard M. Stallman <rms@gnu.org>
11105
11106 * keyboard.c (read_key_sequence): Handle the keymap property
11107 before minor mode maps.
11108
11109 * editfns.c (Fformat): Update thissize from field_width
11110 based on the actual width, in the string case.
11111
11112 2002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11113
11114 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
11115 when used as truth value to prevent gcc warnings.
11116
11117 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
11118 * w32proc.c: Include <config.h>.
11119
11120 2002-01-01 Andreas Schwab <schwab@suse.de>
11121
11122 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
11123 not EMACS_INT, to make them compatible with DEFVAR_INT.
11124 * lisp.h (max_specpdl_size): Adjust declaration.
11125
11126 2002-01-01 Richard M. Stallman <rms@gnu.org>
11127
11128 * print.c (print_object): Test print_escape_nonascii only for
11129 unibyte strings.
11130 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
11131 when outputting to a multibyte buffer.
11132
11133 2001-12-29 Richard M. Stallman <rms@gnu.org>
11134
11135 * print.c (print_object): In multibyte string, use hex escapes.
11136 Use octal only for unibyte strings.
11137 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
11138
11139 * lread.c (read_escape): New arg BYTEREP for reporting whether
11140 escape forces unibyte or multibyte.
11141 (read1): When reading a string, take note of that info.
11142
11143 2001-12-29 Ken Raeburn <raeburn@gnu.org>
11144
11145 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
11146 comparison to test lisp value returned by Fget.
11147
11148 2001-12-29 Richard M. Stallman <rms@gnu.org>
11149
11150 * lisp.h (max_specpdl_size): Add declaration.
11151
11152 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
11153
11154 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
11155 Handle modifier bits. Correct typo in error message.
11156
11157 2001-12-28 Richard M. Stallman <rms@gnu.org>
11158
11159 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
11160 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
11161 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
11162 Update calls to Fdefine_abbrev.
11163 (write_abbrev): Update for changed data format.
11164 Don't list "system" abbrevs.
11165 (Fexpand_abbrev): Update use count with new data format.
11166 (describe_abbrev): Update for changed data format.
11167 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
11168
11169 * config.in (HAVE_MBSINIT): Add #undef.
11170
11171 * strftime.c (mbsinit): Define as no-op if not available.
11172
11173 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
11174 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
11175
11176 * keymap.c (Flookup_key): Error message if key has wrong data type.
11177 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
11178 (exclude_key): New variable.
11179
11180 2001-12-28 Gerd Moellmann <gerd@gnu.org>
11181
11182 * xterm.c (x_setup_relief_colors): Don't compute an image's
11183 background color if it doesn't have a Pixmap.
11184
11185 * xterm.c (notice_overwritten_cursor): Don't depend on
11186 output_cursor and updated_area. Compare pixel coordinates with
11187 window's cursor pixel coordinates.
11188 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
11189 Call notice_overwritten_cursor with new arg list.
11190 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
11191 unconditionally.
11192
11193 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
11194 height of the cursor line to the amount to scroll.
11195
11196 2001-12-27 Richard M. Stallman <rms@gnu.org>
11197
11198 * intervals.c (set_point_both): The position after an invisible,
11199 intangible character is not an acceptable stopping point.
11200
11201 2001-12-27 Ken Raeburn <raeburn@gnu.org>
11202
11203 * window.c (enlarge_window): In new preserve_before code, convert
11204 CURBEG from lisp object to integer before doing arithmetic.
11205
11206 2001-12-27 Richard M. Stallman <rms@gnu.org>
11207
11208 * bytecode.c (Fbyte_code): Undo previous change.
11209
11210 2001-12-26 Kim F. Storm <storm@cua.dk>
11211
11212 * keyboard.c (record_char): Ignore duplicate help-echo events only
11213 separated by mouse-movement. When tracking mouse, only record
11214 first and last mouse-movement event in same window.
11215 Don't record mouse-movement events in keyboard macros.
11216
11217 2001-12-25 Richard M. Stallman <rms@gnu.org>
11218
11219 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
11220 (Fenlarge_window): New arg PRESERVE_BEFORE.
11221
11222 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
11223 instead of Fstring_as_unibyte.
11224
11225 2001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11226
11227 The following changes remove mocklisp support:
11228
11229 * mocklisp.h, mocklisp.c: Files removed.
11230
11231 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
11232 `Qmocklisp' and `Qmocklisp_arguments'.
11233 Remove prototype of syms_of_mocklisp.
11234
11235 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
11236
11237 * callint.c: Do not include mocklisp.h.
11238 (Fcall_interactively): Do not test for mocklisp case.
11239
11240 * eval.c: Remove variables `Qmocklisp_arguments',
11241 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
11242 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
11243 Do not test for mocklisp case.
11244 (Fwhile): Remove unused variable `tem'.
11245 (syms_of_eval): Remove variable `moclisp-arguments'.
11246
11247 * data.c (wrong_type_argument): Remove mocklisp case.
11248
11249 * doc.c (Fdocumentation): Remove mocklisp case.
11250
11251 * emacs.c (main): Do not call syms_of_mocklisp.
11252
11253 2001-12-21 Richard M. Stallman <rms@gnu.org>
11254
11255 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
11256 to the left or to the right of the pointer, put it against
11257 the left screen edge.
11258
11259 2001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
11260
11261 * Makefile.in (distclean): Remove .gdbinit if we are building
11262 outside the source tree.
11263
11264 2001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
11265
11266 * w32.c (emacs_root_dir): New function.
11267
11268 * msdos.c (emacs_root_dir): New function.
11269
11270 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
11271 of the current drive as the fallback for default_directory.
11272
11273 * dired.c (file_name_completion): Run the elements of
11274 completion-ignored-extensions through ENCODE_FILE.
11275
11276 * lisp.h (scmp): Remove prototype, since it's now a static
11277 function private to dired.c.
11278
11279 2001-12-18 Richard M. Stallman <rms@gnu.org>
11280
11281 * dired.c (scmp): Function moved from minibuf.c.
11282 Delete multibyte handling--used only on encoded strings.
11283
11284 * minibuf.c (scmp): Function moved to dired.c.
11285
11286 * fns.c (merge): Add QUIT call.
11287
11288 2001-12-18 Dave Love <fx@gnu.org>
11289
11290 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
11291 language/georgian.el.
11292
11293 2001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
11294
11295 * Makefile.in (lisp, shortlisp): Synchronize with changes to
11296 lisp/Makefile.in:DONTCOMPILE.
11297
11298 2001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11299
11300 * xdisp.c (window_box_height): Do not return negative values.
11301 From Gerd Moellmann <gerd@gnu.org>.
11302
11303 * keyboard.c (head_table): Add missing braces around initializer.
11304
11305 * term.c (keys): Likewise.
11306
11307 * xfns.c (x_frame_parms, visual_classes): Likewise.
11308
11309 2001-12-17 Sam Steingold <sds@gnu.org>
11310
11311 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
11312 patch (COMPOSING_P, not COMPOSING).
11313
11314 2001-12-17 Richard M. Stallman <rms@gnu.org>
11315
11316 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
11317
11318 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
11319 before calling decode_coding.
11320
11321 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
11322
11323 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
11324 instead of only for COMPOSITION_DISABLED.
11325
11326 2001-12-16 Richard M. Stallman <rms@gnu.org>
11327
11328 * alloc.c (pure_alloc): After overflow, allocate just a small block.
11329
11330 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
11331
11332 * buffer.h (struct buffer): New field `display_error_modiff'.
11333 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
11334
11335 * window.c (Frecenter): Clear display_error_modiff field.
11336
11337 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
11338 Call redisplay_window, but not if display_error_modiff field says no.
11339 (redisplay_window_error): New function.
11340 (displayed_buffer): New variable.
11341 (redisplay_internal, redisplay_windows): Call the new functions
11342 instead of redisplay_window directly.
11343
11344 2001-12-15 Richard M. Stallman <rms@gnu.org>
11345
11346 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
11347
11348 2001-12-14 Andrew Innes <andrewi@gnu.org>
11349
11350 * makefile.w32-in (EMACSLOADPATH): Define.
11351 ($(EMACS)): Run `list-load-path-shadows' after dumping emacs.
11352 (bootstrap-temacs): Remove dependency on bootstrap-clean.
11353
11354 2001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
11355
11356 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
11357 parameter have a numeric value all the time.
11358
11359 * w32fns.c (x_report_frame_params): Likewise.
11360
11361 2001-12-12 Richard M. Stallman <rms@gnu.org>
11362
11363 * fileio.c (Fwrite_region): Doc fix.
11364
11365 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
11366 (redisplay_internal): Call clear_image_cache only for window terminals.
11367
11368 2001-12-12 Gerd Moellmann <gerd@gnu.org>
11369
11370 * xdisp.c (move_it_vertically_backward): Change heuristic
11371 for the case that we didn't move far enough initially.
11372
11373 * window.c (Frecenter): Simplify computation in the case of window
11374 system frames and ARG < 0; use window_box_height.
11375
11376 2001-12-11 Richard M. Stallman <rms@gnu.org>
11377
11378 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
11379 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
11380
11381 2001-12-11 Andrew Innes <andrewi@gnu.org>
11382
11383 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
11384 arg is negative.
11385
11386 2001-12-11 Richard M. Stallman <rms@gnu.org>
11387
11388 * m/hp800.h: Split the __hpux conditional into the parts
11389 that are right for GNU/Linux too and the parts that are not.
11390 Use the former if GNU_LINUX.
11391 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
11392
11393 * s/gnu-linux.h (GNU_LINUX): Defined.
11394
11395 2001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11396
11397 * macros.c, msdos.c, w16select.c: Change doc-string comments to
11398 `new style' [w/`doc:' keyword].
11399
11400 2001-12-10 Jason Rumney <jasonr@gnu.org>
11401
11402 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
11403 before using.
11404
11405 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11406
11407 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
11408 keyword].
11409
11410 2001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
11411
11412 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
11413
11414 * s/hpux10.h (srand48): Don't undefine.
11415
11416 2001-12-09 Jason Rumney <jasonr@gnu.org>
11417
11418 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
11419 Add comment to explain where the struct came from.
11420 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
11421 (add_menu_item): Process pop-up menus first to avoid memory leak.
11422 (add_menu_item, w32_menu_display_help): Use `help' field as
11423 Lisp_Object.
11424 (w32_free_submenu_strings): Only free owner-drawn strings.
11425
11426 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11427
11428 * COPYING: Moved back.
11429
11430 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
11431 Add parentheses around && within ||.
11432
11433 * indent.c (compute_motion): Likewise.
11434
11435 * intervals.c (merge_properties_sticky): Likewise.
11436
11437 * coding.c (setup_coding_system, shrink_encoding_region)
11438 (Fdecode_sjis_char): Likewise.
11439
11440 2001-12-07 Andreas Schwab <schwab@suse.de>
11441
11442 * xdisp.c (display_mode_element): Don't read past end of string if
11443 it ends with '%'.
11444
11445 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
11446 can hold.
11447
11448 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
11449 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
11450 type changed to Lisp_Object.
11451 (syms_of_data): DEFVAR_LISP them.
11452
11453 2001-12-07 Richard M. Stallman <rms@gnu.org>
11454
11455 * callproc.c (init_callproc): Set Vdata_directory based on the source
11456 location whenever Emacs was run uninstalled.
11457
11458 2001-12-06 Paul Eggert <eggert@twinsun.com>
11459
11460 * config.in (HAVE_WORKING_VFORK): New #undefs.
11461 * process.c (create_process):
11462 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
11463 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
11464 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
11465 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
11466 * m/intel386.h (HAVE_VFORK): Likewise.
11467 * m/mips-siemens.h (HAVE_VFORK): Likewise.
11468 * m/mips.h (HAVE_VFORK): Likewise.
11469 * s/freebsd.h (vfork): Remove #define.
11470 * s/lynxos.h (HAVE_VFORK): Remove #undef.
11471 * s/usg5-4-2.h: Fix comment about vfork.
11472
11473 2001-12-06 Richard M. Stallman <rms@gnu.org>
11474
11475 * s/hpux10.h (random): Add undef.
11476 (HAVE_RANDOM): Define it just once.
11477
11478 2001-12-06 Stefan Monnier <monnier@cs.yale.edu>
11479
11480 * eval.c: Undo last change: the standard syntax is not wanted.
11481
11482 2001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
11483
11484 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
11485 scroll bars of the frame before deleting the frame itself. If the
11486 frame has a widget, delete the frame with XtDestroyWidget, and do
11487 not call XDestroyWindow before that.
11488
11489 2001-12-06 Kim F. Storm <storm@cua.dk>
11490
11491 * xfns.c (x_report_frame_params): Return actual fringe widths.
11492
11493 * w32fns.c (x_report_frame_params): Return actual fringe widths.
11494
11495 2001-12-05 Andrew Innes <andrewi@gnu.org>
11496
11497 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
11498 excessively large.
11499
11500 * insdel.c (make_gap_larger): New function.
11501 (make_gap_smaller): New function.
11502 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
11503 Call make_gap_smaller if arg is negative.
11504
11505 2001-12-04 Stefan Monnier <monnier@cs.yale.edu>
11506
11507 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
11508 Pass a dummy argument when calling interrupt_signal.
11509 (parse_menu_item): Mark disabled items before checking for empty def.
11510 (read_char_minibuf_menu_prompt): Make safety more visible.
11511 (read_key_sequence): Add a `first_unbound' variable.
11512 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
11513 unbound prefix as soon as we can detect it.
11514
11515 * doc.c (Fsnarf_documentation): Add prototype.
11516 (get_doc_string): Handle negative arguments.
11517 (Fdocumentation): Use AREF and ASIZE.
11518 Move the calls to get_doc_string to a single place.
11519 Don't confuse an interactive-spec for a docstring reference.
11520 (Fdocumentation_property): Take advantage of the fact that
11521 get_doc_string now ignores the sign of the docstring position.
11522
11523 * eval.c: Use standard syntax for usage in docstrings.
11524
11525 2001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11526
11527 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
11528
11529 2001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11530
11531 * xterm.c (x_draw_image_relief): Use predefined macro instead of
11532 constant when the value of `tool_bar_button_relief' is negative.
11533
11534 2001-12-02 Richard M. Stallman <rms@gnu.org>
11535
11536 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
11537 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
11538
11539 * fileio.c (read_non_regular): Delete Fsignal call.
11540
11541 2001-12-01 Stefan Monnier <monnier@cs.yale.edu>
11542
11543 * lisp.h (run_hook_list_with_args): Undo last change.
11544
11545 2001-12-01 Gerd Moellmann <gerd@gnu.org>
11546
11547 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
11548
11549 2001-12-01 Jason Rumney <jasonr@gnu.org>
11550
11551 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
11552
11553 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
11554 [!WM_MOUSELEAVE]: Define.
11555
11556 * w32menu.c (current_popup_menu, get_menu_item_info):
11557 (set_menu_item_info): New vars.
11558 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
11559 (w32_menu_show): Set current_popup_menu.
11560 (add_menu_item): Allocate new strings for owner-drawn menu items
11561 and help strings.
11562 Use owner-draw for disabled menu items again.
11563 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
11564 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
11565
11566 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
11567 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
11568 <WM_EXITMENULOOP>: Free menu strings.
11569 <WM_MOUSELEAVE>: Stop tracking mouse.
11570 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
11571
11572 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
11573 and mouse face.
11574
11575 2001-12-01 Kim F. Storm <storm@cua.dk>
11576
11577 The following changes add left-fringe and right-fringe
11578 frame parameters to adjust fringe widths, or remove one or
11579 both fringes.
11580
11581 * frame.h (struct frame): Remove trunc_area_pixel_width and
11582 trunc_area_cols fields.
11583 (Qleft_fringe, Qright_fringe): Declare.
11584 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
11585
11586 * frame.c (Qleft_fringe, Qright_fringe): New vars.
11587 (syms_of_frame): Initialize them.
11588
11589 * window.c (coordinates_in_window): Handle separate left and right
11590 fringe widths.
11591
11592 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
11593 and fringe_cols fields.
11594 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
11595 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
11596 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
11597 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
11598 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
11599 (x_compute_fringe_widths): Add prototype.
11600
11601 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
11602 fill fringe evenly with small dashes.
11603 (x_draw_fringe_bitmap): Clear background if necessary. Align and
11604 clip the new ZV bitmap to avoid jitter between rows.
11605 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
11606 background. Don't draw fringe bitmaps if fringe width is zero.
11607 (x_compute_fringe_widths): New function.
11608 (x_new_font, x_set_window_size_1): Use it.
11609
11610 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
11611 (x_set_frame_parameters): Process `font' parameter before other
11612 parameters as fringe widths depend on it.
11613 (x_set_fringe_width): New function.
11614 (x_figure_window_size): Use x_compute_fringe_widths.
11615 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
11616 parameters.
11617
11618 * widget.c (set_frame_size): Use x_compute_fringe_widths.
11619 (EmacsFrameSetCharSize): Ditto.
11620
11621 * w32term.h: Merged changes from xterm.h.
11622 * w32term.c: Merged changes from xterm.c.
11623 * w32fns.c: Merged changes from xfns.c.
11624
11625 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11626
11627 * COPYING: Removed.
11628
11629 2001-11-29 Dave Love <fx@gnu.org>
11630
11631 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
11632 extra extra slot.
11633 (detect_coding_mask): Fix call of detect_coding_iso2022.
11634
11635 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11636
11637 * fileio.c (file-name-coding-system)
11638 (default-file-name-coding-system): Doc fix (links to referenced
11639 variables added).
11640
11641 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
11642
11643 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
11644 Add dummy uses of gcproN variables.
11645
11646 * category.c (describe_category, describe_category_1)
11647 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
11648 (syms_of_category): Don't defsubr Sdescribe_categories.
11649
11650 2001-11-28 Richard M. Stallman <rms@gnu.org>
11651
11652 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
11653
11654 * Makefile.in (lispdir): New variable, referring to build dir.
11655 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
11656
11657 2001-11-28 Andrew Innes <andrewi@gnu.org>
11658
11659 * w32menu.c (w32_menu_display_help): Actually add the new argument
11660 OWNER.
11661
11662 2001-11-28 Jason Rumney <jasonr@gnu.org>
11663
11664 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
11665 menu items. From David Ponce <dponce@wanadoo.fr>.
11666 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
11667 conditionally.
11668 (w32_menu_display_help): New argument OWNER. Rewritten to store a
11669 help event in the owner frame's keyboard buffer.
11670
11671 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
11672 (Fx_show_tip): Don't subtract last width from row width.
11673
11674 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
11675 (w32_read_socket): Use EQ to compare frames.
11676
11677 2001-11-28 Gerd Moellmann <gerd@gnu.org>
11678
11679 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
11680 OVERLAPS_P.
11681
11682 2001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11683
11684 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
11685 `gcpro3' and `gcpro4'.
11686
11687 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
11688
11689 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
11690
11691 * ccl.c: Use AREF and ASIZE.
11692
11693 2001-11-27 Stefan Monnier <monnier@cs.yale.edu>
11694
11695 * lisp.h (run_hook_list_with_args): Remove.
11696 (LIST_END_P): Fix call to wrong_type_argument.
11697 (make_fixnum_or_float): Use EMACS_INT rather than int.
11698
11699 2001-11-26 Stefan Monnier <monnier@cs.yale.edu>
11700
11701 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
11702 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
11703
11704 * eval.c: Use AREF and ASIZE.
11705 (Ffetch_bytecode): Add the file name to the error message.
11706
11707 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
11708 which match the end of the file-name.
11709 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
11710 is not a valid env var, but leave it as is instead.
11711
11712 * keymap.c (access_keymap): Handle t bindings like nil bindings.
11713 Make nil bindings in char-tables transparent.
11714 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
11715
11716 2001-11-26 Richard M. Stallman <rms@gnu.org>
11717
11718 * textprop.c (set_text_properties_1): Allow START, END in either order.
11719 Do nothing if range is empty.
11720
11721 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
11722
11723 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
11724 (clean): Not here.
11725
11726 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
11727
11728 * textprop.c (set_text_properties_1): Clearly mark that the
11729 interval should not be empty.
11730
11731 * intervals.c (graft_intervals_into_buffer):
11732 Don't call set_text_properties_1 on an empty interval.
11733
11734 2001-11-25 Richard M. Stallman <rms@gnu.org>
11735
11736 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
11737
11738 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
11739 don't lose the data in it.
11740
11741 2001-11-25 Juanma Barranquero <lektu@terra.es>
11742
11743 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
11744
11745 * buffer.c (Fkill_buffer): Use Frun_hooks, not Vrun_hooks.
11746
11747 * print.c (temp_output_buffer_setup): Use Frun_hooks, not Vrun_hooks.
11748
11749 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
11750
11751 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
11752
11753 2001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
11754
11755 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
11756 Niemitalo <kon@iki.fi>.
11757
11758 2001-11-25 Jason Rumney <jasonr@gnu.org>
11759
11760 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
11761
11762 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
11763 (Fx_show_tip): Block input during frame creation.
11764 (Fx_show_tip, Fx_hide_tip): Enable.
11765
11766 2001-11-24 Richard M. Stallman <rms@gnu.org>
11767
11768 * lread.c (Fload): Detect recursive load error for more than 3
11769 nestings of the same file.
11770 (Vrecursive_load_depth_limit): Variable deleted.
11771 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
11772
11773 2001-11-24 Jason Rumney <jasonr@gnu.org>
11774
11775 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
11776 mouse position if either left or top is not specified.
11777
11778 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
11779 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
11780 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
11781 (my_create_tip_window): Assign tip_window.
11782 (x_create_tip_frame): Use same defaults as X.
11783 (compute_tip_xy): Remove unused variable. Use full screen width.
11784 (Fx_show_tip): Do not double height. Call ShowWindow directly.
11785
11786 * w32term.c (x_after_update_window_line): Doc fix.
11787 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
11788 frames.
11789 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
11790
11791 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
11792 for all Windowed systems.
11793
11794 2001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
11795
11796 * msdos.c (IT_clear_screen): If the frame's faces are not yet
11797 realized, use the initial screen colors to clear the screen.
11798
11799 2001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11800
11801 * textprop.c (Fset_text_properties): Remove unused variables
11802 `unchanged', `prev_changed', `s' and `len'.
11803
11804 * search.c (Freplace_match): Remove unused variable `inslen'.
11805
11806 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
11807
11808 2001-11-22 Jason Rumney <jasonr@gnu.org>
11809
11810 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
11811 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
11812 (my_create_tip_window): New function.
11813 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
11814 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
11815
11816 2001-11-20 Jason Rumney <jasonr@gnu.org>
11817
11818 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
11819 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
11820
11821 * w32fns.c (Vw32_system_coding_system): Remove.
11822 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
11823
11824 2001-11-19 Stefan Monnier <monnier@cs.yale.edu>
11825
11826 * fileio.c (Fwrite_region): Move choose_write_coding_system to
11827 after build_annotations.
11828
11829 * syntax.c (describe_syntax): Add dummy arg.
11830 (describe_syntax_1): Update call to describe_vector.
11831
11832 * category.c (describe_category): Add dummy arg.
11833 (describe_category_1): Update call to describe_vector.
11834
11835 * keymap.c (Fdescribe_vector): Add `describer' parameter.
11836 (describe_command, describe_translation): Add dummy second param.
11837 (describe_map): Call elt_describer with two arguments.
11838 (describe_vector_princ): Add `fun' parameter.
11839 Call it instead of the hardcoded `princ'.
11840 (describe_vector): Add arg `args'.
11841 Pass it as a new second argument to elt_describer.
11842
11843 * keymap.h (describe_vector): Update prototype.
11844
11845 * frame.c: Don't include keymap.h any more.
11846 (keys_of_frame): Remove.
11847
11848 * lisp.h (keys_of_frame): Remove declaration.
11849
11850 * emacs.c (main): Don't call `keys_of_frame' any more.
11851
11852 2001-11-14 Andreas Schwab <schwab@suse.de>
11853
11854 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
11855 if defined, 0 otherwise.
11856 (MAP_FAILED): Define if not defined and use it to test mmap failure.
11857 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
11858
11859 2001-11-19 Richard M. Stallman <rms@gnu.org>
11860
11861 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
11862
11863 2001-11-18 Jason Rumney <jasonr@gnu.org>
11864
11865 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
11866 (x_draw_bar_cursor): If the background color of the glyph under
11867 the cursor equals the frame's cursor color, use the glyph's
11868 foreground color for drawing the bar cursor.
11869 (x_after_update_window_line): Clear internal border in different
11870 circumstances.
11871 (w32_set_vertical_scroll_bar): Check for width and height > 0.
11872 (w32_draw_relief_rect): Correct relief by 1 pixel.
11873 (x_set_glyph_string_background_width):
11874 Set extends_to_end_of_line_p if the row's fill_line_p is set and
11875 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
11876 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
11877 if cursor_in_non_selected_windows is false.
11878 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
11879 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
11880 Notice if cursor gets overwritten.
11881 (notice_overwritten_cursor): Renamed from
11882 note_overwritten_text_cursor. Rewritten to take glyph widths
11883 into account, and to take X positions as parameters.
11884 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
11885 around call to x_draw_glyphs.
11886 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
11887 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
11888 color to use for image glyph reliefs.
11889 (x_draw_image_relief): Accept zero tool_bar_button_relief.
11890 (glyph_rect): Remove unused variable `area'.
11891
11892 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
11893 some items.
11894 (x_set_internal_border_width): Set frame garbaged when window
11895 doesn't exist yet.
11896 (Fx_create_frame): Accept zero tool_bar_button_relief.
11897 (x_clear_image_1, four_corners_best, image_background)
11898 (image_background_transparent): New functions.
11899 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
11900 (gs_format): Add `:background' entry.
11901 (lookup_image): Set IMG's background color if specified.
11902 (pbm_load, xbm_load_image, png_load): Set IMG's background field
11903 when appropriate.
11904 (x_clear_image_1): Reset `background_valid' and
11905 `background_transparent_valid' fields.
11906 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
11907 calculating it here. Set IMG's background_transparent field.
11908 (enum xpm_keyword_index): Add XPM_BACKGROUND.
11909 (enum png_keyword_index): Add PNG_BACKGROUND.
11910 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
11911 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
11912 (enum gif_keyword_index): Add GIF_BACKGROUND.
11913 (enum gs_keyword_index): Add GS_BACKGROUND.
11914 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
11915 Pre-calculate image background color where necessary.
11916 (x_create_x_image_and_pixmap, xbm_load, gs_load):
11917 Use display info's n_cbits entry for screen depth.
11918 (Fx_show_tip): Remove unused variables `buffer', `top',
11919 `left', `max_width' and `max_height'.
11920
11921 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
11922
11923 2001-11-18 Gerd Moellmann <gerd@gnu.org>
11924
11925 * puresize.h (BASE_PURESIZE): Increase to 750000.
11926
11927 2001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11928
11929 * frame.c (Fframe_live_p): Doc fix.
11930
11931 2001-11-18 Richard M. Stallman <rms@gnu.org>
11932
11933 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
11934 (message_dolog_marker3): New static variables hold three markers.
11935 (syms_of_xdisp): Initialize and staticpro them.
11936 (message_dolog): Use message_dolog_marker1..3 instead of
11937 allocating markers each time. Unchain them when done.
11938
11939 2001-11-17 Richard M. Stallman <rms@gnu.org>
11940
11941 * doc.c (Fsnarf_documentation): Doc fix.
11942
11943 2001-11-17 Andreas Schwab <schwab@suse.de>
11944
11945 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
11946
11947 2001-11-17 Richard M. Stallman <rms@gnu.org>
11948
11949 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
11950
11951 2001-11-17 Jason Rumney <jasonr@gnu.org>
11952
11953 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
11954
11955 2001-11-17 Gerd Moellmann <gerd@gnu.org>
11956
11957 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
11958 with invalid position.
11959
11960 2001-11-16 Richard M. Stallman <rms@gnu.org>
11961
11962 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
11963
11964 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
11965 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
11966 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
11967
11968 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
11969
11970 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
11971
11972 * fileio.c (build_annotations): Split off the tail.
11973 (build_annotations_2): New fun. Extracted from build_annotations.
11974 (Fwrite_region): Split the call to build_annotations into two
11975 calls to build_annotations and build_annotations_2.
11976
11977 2001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11978
11979 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
11980 clear_waiting_for_input with argument.
11981
11982 * xterm.h (x_update_cursor): Remove duplicated prototype.
11983
11984 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
11985
11986 * xterm.c (waiting_for_input): Remove unnecessary declaration.
11987
11988 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
11989
11990 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
11991
11992 * fileio.c (choose_write_coding_system): New fun, extracted
11993 from Fwrite_region.
11994 (Fwrite_region): Use it.
11995
11996 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
11997 (funcall_lambda, run_hook_with_args): Make static and add prototype.
11998 (ml_apply, find_handler_clause): Add prototype.
11999
12000 2001-11-16 Eli Zaretskii <eliz@gnu.org>
12001
12002 * config.in: Add #undef HAVE_COFF_H.
12003
12004 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
12005 Required for ISC 4.1.
12006
12007 2001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
12008
12009 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
12010 Andrew Wiseman <a.wiseman@btclick.com>.
12011
12012 2001-11-16 Kim F. Storm <storm@cua.dk>
12013
12014 The following changes are made to clean up the various internal
12015 references to the fringes to actually use the term `fringe' for
12016 them. Previously, they were called `flags areas', `bitmap areas',
12017 `left/right side of windows', or implicitly as `flags' or
12018 `bitmaps':
12019
12020 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
12021 Comments fixed. Use renamed symbols.
12022
12023 * dispnew.c: Comment fix. Use renamed symbols.
12024
12025 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
12026 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
12027 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
12028
12029 * msdos.c: Comment fix.
12030
12031 * w32fns.c: Use renamed symbols.
12032
12033 * w32term.c: Comment fixes. Use renamed symbols.
12034 (fringe_bitmap_type): Renamed from bitmap_type.
12035 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
12036 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
12037 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
12038
12039 * w32term.h: Comment fixes. Use renamed symbols.
12040 (fringes_extra): Renamed from flags_areas_extra.
12041 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
12042 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
12043 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
12044 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
12045 (FRAME_X_LEFT_FRINGE_WIDTH):
12046 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
12047 (FRAME_X_RIGHT_FRINGE_WIDTH):
12048 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
12049
12050 * widget.c: Use renamed symbols.
12051
12052 * window.c: Comment fixes. Use renamed symbols.
12053 (coordinates-in-window-p): Doc fix.
12054
12055 * xdisp.c: Comment fixes. Use renamed symbols.
12056
12057 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
12058
12059 * xfns.c: Use renamed symbols.
12060
12061 * xterm.c: Comment fixes. Use renamed symbols.
12062 (fringe_bitmap_type): Renamed from bitmap_type.
12063 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
12064 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
12065 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
12066
12067 * xterm.h: Comment fixes. Use renamed symbols.
12068 (fringes_extra): Renamed from flags_areas_extra.
12069 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
12070 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
12071 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
12072 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
12073 (FRAME_X_LEFT_FRINGE_WIDTH):
12074 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
12075 (FRAME_X_RIGHT_FRINGE_WIDTH):
12076 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
12077
12078 2001-11-15 Jason Rumney <jasonr@gnu.org>
12079
12080 * w32menu.c (add-menu-item): Make help_echo and radio buttons
12081 work for most menu items. From David Ponce
12082 <david.ponce@wanadoo.fr>.
12083
12084 2001-11-15 Gerd Moellmann <gerd@gnu.org>
12085
12086 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
12087 Some x_set_* function expect to be called even if old and new
12088 value are equal.
12089
12090 * xdisp.c (build_desired_tool_bar_string): Accept zero
12091 tool_bar_button_relief.
12092
12093 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
12094
12095 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
12096
12097 * xterm.c (x_draw_bar_cursor): If the background color of the
12098 glyph under the cursor equals the frame's cursor color, use
12099 the glyph's foreground color for drawing the bar cursor.
12100
12101 * dispnew.c (direct_output_forward_char): Fix character/byte
12102 position comparison.
12103
12104 2001-11-15 Miles Bader <miles@gnu.org>
12105
12106 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
12107 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
12108 Update arguments to find_field.
12109 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
12110 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
12111 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
12112 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
12113
12114 2001-11-14 Richard M. Stallman <rms@gnu.org>
12115
12116 * editfns.c (Fpropertize): Allow call with 1 arg.
12117
12118 * dispextern.h (image_background, image_background_transparent):
12119 Conditionalize on HAVE_X_WINDOWS.
12120
12121 2001-11-13 Richard M. Stallman <rms@gnu.org>
12122
12123 * print.c (Fprin1_to_string): Doc fix.
12124
12125 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
12126
12127 * floatfns.c (Fceiling, Ffloor): Doc fixes.
12128
12129 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
12130
12131 * fileio.c (Ffile_accessible_directory_p): Doc fix.
12132
12133 * eval.c (syms_of_eval): Doc fix.
12134
12135 * coding.c (syms_of_coding): Doc fix.
12136
12137 * doc.c (Fsnarf_documentation): Doc fix.
12138
12139 * dispnew.c (syms_of_display): Doc fix.
12140
12141 * category.c (Fget_unused_category): Doc fix.
12142
12143 * buffer.c (syms_of_buffer): Doc fixes.
12144
12145 2001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
12146
12147 * print.c (prin1, print): Doc fix.
12148
12149 2001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12150
12151 * fontset.h: Remove declarations of variables
12152 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
12153
12154 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
12155 `Vclip_large_size_font'.
12156
12157 2001-11-13 Jason Rumney <jasonr@gnu.org>
12158
12159 * w32fns.c: Doc fix.
12160
12161 2001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12162
12163 * xfaces.c (Fface_attributes_as_vector): Doc fix.
12164
12165 * fns.c: Doc fix.
12166
12167 * emacs.c: Doc fix.
12168
12169 * coding.c: Doc fix.
12170
12171 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
12172 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
12173 `new style' [w/`doc:' keyword].
12174
12175 2001-11-12 Richard M. Stallman <rms@gnu.org>
12176
12177 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
12178 LeaveNotify events. Only FocusIn and FocusOut do that now.
12179 (x_display_and_set_cursor): Do display hollow cursors in active
12180 minibuffer windows when they are not selected.
12181
12182 2001-11-12 Jason Rumney <jasonr@gnu.org>
12183
12184 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
12185 * w32term.c: Change doc-string comments to `new style'.
12186 [w/`doc:' keyword]. Doc fixes.
12187
12188 * w32fns.c: Don't define max.
12189 (Fx_open_connection): Only execute once.
12190
12191 2001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12192
12193 * ccl.c: Change macros to use do-while block instead of if-else.
12194 Use braces to follow GNU Coding Standards.
12195
12196 2001-11-11 Richard M. Stallman <rms@gnu.org>
12197
12198 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
12199
12200 * lread.c (read_escape): Use end_of_file_error for reporting eof.
12201
12202 * insdel.c (replace_range): Use adjust_markers_for_replace
12203 instead of adjust_markers_for_delete and adjust_markers_for_insert.
12204
12205 * intervals.h: Declare set_text_properties and set_text_properties_1.
12206
12207 * textprop.c (set_text_properties_1): New subroutine
12208 broken out of set_text_properties.
12209 (set_text_properties): Use set_text_properties_1.
12210
12211 * intervals.c (graft_intervals_into_buffer):
12212 Use set_text_properties_1 to clear out properties.
12213
12214 * search.c (Freplace_match): Use replace_range to insert
12215 and delete. Don't request property inheritance from
12216 surrounding text.
12217
12218 2001-11-10 Jason Rumney <jasonr@gnu.org>
12219
12220 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
12221 vertical fonts. Allow them if face name is explicitly specified.
12222 Do not give up if we find a font that cannot be converted to an xlfd.
12223
12224 2001-11-10 Gerd Moellmann <gerd@gnu.org>
12225
12226 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
12227 instead of malloc/free.
12228
12229 2001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12230
12231 * xfaces.c (merge_face_vectors): Use braces to follow GNU
12232 Coding Standards.
12233 (Finternal_set_lisp_face_attribute): Likewise.
12234
12235 * buffer.c (Fbury_buffer): Likewise.
12236
12237 * indent.c (current_column_1): Remove unused variable `prev_col'.
12238
12239 * coding.c (encode_coding): Use precomputed value of `src'.
12240 (encode_coding): Remove unused variable `src_end'.
12241 (code_convert_region): Remove unused variables `count'.
12242
12243 2001-11-07 Jason Rumney <jasonr@gnu.org>
12244
12245 * w32term.c (x_display_and_set_cursor): Do not move system caret
12246 if cursor_glyph is NULL.
12247
12248 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12249
12250 * keymap.c (access_keymap): Fix compilation error.
12251
12252 2001-11-07 Miles Bader <miles@gnu.org>
12253
12254 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
12255
12256 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12257
12258 * intervals.c (graft_intervals_into_buffer):
12259 Remove #ifdef'd-out code.
12260 (graft_intervals_into_buffer): Remove unused variable `middle'.
12261
12262 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
12263 code (eval-current-buffer).
12264 Change doc-string comments to `new style' [w/`doc:' keyword].
12265
12266 2001-11-06 Richard M. Stallman <rms@gnu.org>
12267
12268 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
12269
12270 2001-11-06 Stefan Monnier <monnier@cs.yale.edu>
12271
12272 * lread.c (read1): Fix behavior with nested backquoting.
12273
12274 * keyboard.c (make_lispy_event): Check integerness and fix
12275 Lisp_Object/int mixup.
12276
12277 2001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12278
12279 * fns.c (copy_hash_table): Remove unused variable `v'.
12280
12281 * fontset.c (fontset_font_pattern): Remove unused variable
12282 `family_registry'.
12283
12284 * indent.c (current_column_1): Remove unused variable `prev_col'.
12285
12286 2001-11-05 Richard M. Stallman <rms@gnu.org>
12287
12288 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
12289
12290 * buffer.c (Fkill_buffer): Don't delete auto save file
12291 if buffer is modified.
12292
12293 2001-11-05 Andrew Innes <andrewi@gnu.org>
12294
12295 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
12296 CHECK_NUMBER_CDR.
12297
12298 2001-11-05 Richard M. Stallman <rms@gnu.org>
12299
12300 * unexelf.c (unexec): Minor changes; clean up comments.
12301
12302 2001-11-05 Sam Steingold <sds@gnu.org>
12303
12304 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
12305
12306 2001-11-05 Andreas Schwab <schwab@suse.de>
12307
12308 * sound.c (sound_perror): Save errno from being clobbered.
12309
12310 2001-11-05 Dale Hagglund <rdh@yottayotta.com>
12311
12312 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
12313 the program image directly.
12314
12315 2001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12316
12317 * buffer.h (Fbuffer_local_value): Add prototype.
12318
12319 2001-11-04 Richard M. Stallman <rms@gnu.org>
12320
12321 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
12322 and CHECK_BUFFER.
12323
12324 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
12325 (record_char): Likewise.
12326
12327 * keyboard.c (make_lispy_event): Don't insist a drag event must
12328 move to a different buffer position. Instead, check for moving at
12329 least double_click_fuzz.
12330
12331 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
12332
12333 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
12334
12335 * indent.c (current_column_1, Fmove_to_column): Separate the code
12336 for display-table glyphs from the code for buffer text, to fix
12337 bugs in the former.
12338
12339 2001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
12340
12341 * buffer.c (Fbuffer_local_value): New function.
12342 (syms_of_buffer): Defsubr it.
12343
12344 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
12345 value of `cursor-in-non-selected-windows'.
12346
12347 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
12348 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
12349 (syms_of_xdisp): Initialize it.
12350
12351 2001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12352
12353 * xfns.c (Fx_create_frame): Doc fix.
12354
12355 * coding.c: Change doc-string comments to `new style' [w/`doc:'
12356 keyword].
12357
12358 * eval.c (top_level_value, top_level_set): Remove commented and
12359 #ifdef'd-out code.
12360 (Fdefvar): Fix usage in doc-string.
12361
12362 2001-11-03 Richard M. Stallman <rms@gnu.org>
12363
12364 * xfns.c: Include unistd.h, if it exists.
12365
12366 * editfns.c: Move the include of ctype.h after unistd.h.
12367
12368 * gmalloc.c: Test BROKEN_PROTOTYPES.
12369
12370 2001-11-03 Ken Raeburn <raeburn@gnu.org>
12371
12372 * lisp.h (CHECK_STRING_CAR): New macro.
12373 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
12374 treating XCAR and XCDR as lvalues.
12375 (openp): Use CHECK_STRING_CAR.
12376 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
12377
12378 2001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
12379
12380 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
12381 (SIGMASKTYPE): Define.
12382
12383 * syssignal.h (sigunblock): Don't define if already defined.
12384
12385 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12386
12387 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
12388 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
12389 Fix typos in comments.
12390
12391 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
12392 and #ifdef'd-out code.
12393 Fix and reindent comments.
12394
12395 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
12396
12397 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
12398 argument `i' in macros.
12399
12400 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
12401 `i' in macros.
12402
12403 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
12404 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
12405 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
12406 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
12407 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
12408 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
12409 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
12410 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
12411 in macros.
12412
12413 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
12414 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
12415 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
12416 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
12417 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
12418 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
12419 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
12420 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
12421 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
12422 (remove unused second argument).
12423
12424 2001-11-02 Stefan Monnier <monnier@cs.yale.edu>
12425
12426 * syntax.c (describe_syntax): New wrapper.
12427 (Finternal_describe_syntax_value): Rename from describe_syntax.
12428 Don't insert space at front and \n at the end.
12429 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
12430
12431 * regex.c (re_wctype): Try to fix some warnings.
12432 (regcomp, regexec): Don't forget the __restrict.
12433
12434 2001-11-02 Richard M. Stallman <rms@gnu.org>
12435
12436 * textprop.c (Fget_char_property): Doc fix.
12437
12438 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12439
12440 * process.c (Fstart_process): Add usage to doc-string.
12441
12442 * data.c (Fsetq_default): Ditto.
12443
12444 * callint.c (Finteractive): Ditto.
12445
12446 2001-11-01 Stefan Monnier <monnier@cs.yale.edu>
12447
12448 * macros.c: Don't include keymap.h any more.
12449
12450 2001-11-01 Richard M. Stallman <rms@gnu.org>
12451
12452 * data.c (Fmake_local_variable): Doc fix.
12453
12454 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
12455 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
12456
12457 * keymap.c (Fdescribe_buffer_bindings): Print character property
12458 bindings along with or instead of the buffer local map.
12459 Make the overriding maps override what they should.
12460
12461 2001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12462
12463 * window.c (grow_mini_window): Fix typo in comment.
12464
12465 2001-11-01 Gerd Moellmann <gerd@gnu.org>
12466
12467 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
12468 (XTset_vertical_scroll_bar): Likewise.
12469
12470 * xfns.c (x_build_heuristic_mask): Use four_corners_best
12471 instead of IMAGE_BACKGROUND.
12472
12473 * xfns.c (four_corners_best): Reindent.
12474
12475 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
12476 Handle :box so that it is possible to specify sexprs.
12477
12478 2001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
12479
12480 * s/hpux11.h: New file.
12481
12482 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12483
12484 * emacs.c (USAGE1): Show command line option --no-window-system
12485 instead of --no-windows in usage.
12486 (standard_args): Rename --no-windows to --no-window-system.
12487 (bug_reporting_address): Follow Emacs coding conventions.
12488
12489 * eval.c (Fcommandp): Doc fix.
12490 Change doc-string comments to `new style' [w/`doc:' keyword].
12491
12492 * frame.c (Fframe_live_p): Doc fix.
12493
12494 * buffer.c (selective-display-ellipses): Doc fix.
12495
12496 2001-10-31 Gerd Moellmann <gerd@gnu.org>
12497
12498 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
12499
12500 * xfaces.c (realize_x_face): If C is not a single-byte character,
12501 set the face's colors_copied_bitwise_p instead of the defaulted_p
12502 members which have a different meaning.
12503 (free_face_colors): Do nothing for a face whose colors have been
12504 copied bitwise.
12505
12506 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
12507
12508 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12509
12510 * marker.c, mocklisp.c: Change doc-string comments to `new style'
12511 [w/`doc:' keyword].
12512
12513 2001-10-31 Gerd Moellmann <gerd@gnu.org>
12514
12515 * fns.c (require_unwind): Return Lisp_Object.
12516
12517 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12518
12519 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
12520 (last-input-char): Revert doc-string to be the same as the
12521 doc-string of `last-input-event'.
12522
12523 * xdisp.c: Fix typos in comments.
12524
12525 2001-10-31 Gerd Moellmann <gerd@gnu.org>
12526
12527 * window.c (grow_mini_window): Handle case that the root
12528 window is already smaller than the nominal mininum height.
12529
12530 2001-10-30 Stefan Monnier <monnier@cs.yale.edu>
12531
12532 * emacs.c (main): Don't call keys_of_macros any more.
12533
12534 * lisp.h (keys_of_macros): Remove.
12535
12536 * macros.c (keys_of_macros): Remove.
12537
12538 * xfaces.c (Fface_attribute_relative_p): Declare args.
12539
12540 2001-10-30 Jason Rumney <jasonr@gnu.org>
12541
12542 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
12543 (enum_font_cb2): Ignore fonts with vertical orientation.
12544
12545 2001-10-30 Richard M. Stallman <rms@gnu.org>
12546
12547 * keyboard.c (Finput_pending_p): Doc fix.
12548
12549 2001-10-30 Gerd Moellmann <gerd@gnu.org>
12550
12551 * xterm.c (x_after_update_window_line): Don't run the code
12552 clearing in borders for rows whose visible height is 0.
12553
12554 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
12555 resized_p flag is set. If not set, use the much less flickering
12556 method previously used.
12557
12558 * dispnew.c (change_frame_size_1): Set frame's resized_p.
12559
12560 * frame.h (struct frame) <resized_p>: New member.
12561
12562 * lread.c (to_multibyte): Ensure read_buffer is at least twice
12563 as large as the number of bytes to convert.
12564
12565 * lread.c (to_multibyte): New function.
12566 (read1): Use it.
12567
12568 2001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
12569
12570 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
12571
12572 2001-10-30 Gerd Moellmann <gerd@gnu.org>
12573
12574 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
12575 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
12576 if the row's fill_line_p is set and drawing the last glyph with
12577 DRAW_IMAGE_{RAISED,SUNKEN}.
12578
12579 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
12580
12581 2001-10-29 Stefan Monnier <monnier@cs.yale.edu>
12582
12583 * xmenu.c: Include coding.h and charset.h.
12584 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
12585 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
12586 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
12587 Explicitly set wv->help. Use `TRUE' rather than `True'.
12588 (menu_help_callback): Use empty_string.
12589
12590 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
12591 (Fx_popup_dialog): Explicitly init f.
12592 (w32_menu_display_help): Use empty_string.
12593
12594 2001-10-29 Richard M. Stallman <rms@gnu.org>
12595
12596 * fns.c (Frequire): Detect recursive try to require the same
12597 feature 3 or more levels deep, and get error.
12598 (require_unwind): New subroutine.
12599 (require_nesting_list): New variable.
12600 (syms_of_fns): Init and staticpro it.
12601
12602 * print.c (print_object): Clarify indication of insertion type.
12603
12604 2001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
12605
12606 * coding.c (syms_of_coding): Document that locale-coding-system is
12607 used for decoding input on X.
12608
12609 * window.c (Fscroll_left, Fscroll_right): Doc fix.
12610
12611 2001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12612
12613 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
12614 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
12615
12616 2001-10-29 Gerd Moellmann <gerd@gnu.org>
12617
12618 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
12619 use NO_CURSOR if cursor_in_non_selected_windows is false.
12620
12621 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
12622 the slant attribute if FRAME is t.
12623
12624 * xfns.c (x_set_internal_border_width): Set frame garbaged
12625 when X window doesn't exist yet.
12626
12627 * xterm.c (x_after_update_window_line): Clear internal border
12628 in different circumstances.
12629
12630 * xterm.c (XTread_socket) <KeyPress>: Don't use
12631 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
12632 <handa@etl.go.jp>.
12633
12634 2001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
12635
12636 * m/ibms390.h: New file. From Adam Thornton
12637 <athornton@sinenomine.net>.
12638
12639 2001-10-28 Gerd Moellmann <gerd@gnu.org>
12640
12641 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
12642
12643 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
12644 a loop counter.
12645
12646 2001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12647
12648 * emacs.c: Use argv[0] instead of emacs when -t was specified.
12649
12650 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
12651 keyword].
12652 Fix typos in comments.
12653
12654 * emacs.c (bug_reporting_address): New function.
12655 Use it when displaying usage message.
12656
12657 * minibuf.c (read_minibuf): Remove unused external declaration of
12658 variable `Qread_only'.
12659
12660 * keymap.c (access_keymap): Remove unused variable `charset'.
12661
12662 2001-10-28 Miles Bader <miles@gnu.org>
12663
12664 * xfaces.c (merge_face_heights): Handle TO being relative as well.
12665 Remove #ifdef'd-out code.
12666 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
12667 (syms_of_xfaces): Initialize them.
12668
12669 2001-10-27 Jason Rumney <jasonr@gnu.org>
12670
12671 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
12672 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
12673 position using the system caret.
12674
12675 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
12676 (w32_system_caret_height, w32_system_caret_x)
12677 (w32_system_caret_y): New variables for tracking system caret.
12678 (w32_initialize): Initialize them.
12679 (x_display_and_set_cursor): Make system caret follow the active cursor.
12680
12681 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
12682 New messages types.
12683
12684 * w32term.c (note_mouse_highlight): Clear old help_echo.
12685
12686 2001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12687
12688 * xterm.c: Fix typo in a comment.
12689
12690 * emacs.c: Fix typos in comments.
12691 Remove unnecessary spaces.
12692 Change doc-string comments to `new style' [w/`doc:' keyword].
12693 (USAGE2): Fix typos in usage string.
12694
12695 * xterm.c: Fix typo in a comment.
12696
12697 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
12698 emacs.c.
12699
12700 2001-10-27 Gerd Moellmann <gerd@gnu.org>
12701
12702 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
12703 instead of 1/2 line_height in the heuristic for skipping
12704 farther backward when target_y was not reached.
12705
12706 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
12707 Display errno only if non-zero.
12708 (sound_warning): New function.
12709 (vox_configure): Don't treat failing to set sample rate as error.
12710 (various places): Improve error messages.
12711
12712 2001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
12713
12714 * fileio.c (Faccess_file): Run the argument filename through
12715 Fexpand_file_name, before using it.
12716
12717 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
12718 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
12719
12720 2001-10-26 Gerd Moellmann <gerd@gnu.org>
12721
12722 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
12723
12724 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
12725 Fix clearing in the case of scroll bars on the right.
12726
12727 2001-10-26 Juanma Barranquero <lektu@terra.es>
12728
12729 * w32gui.h (XImage): Add a dummy typedef.
12730
12731 2001-10-26 Gerd Moellmann <gerd@gnu.org>
12732
12733 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
12734
12735 2001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
12736
12737 * frame.c (Fframe_parameter): Fix last change.
12738
12739 * fileio.c: Revert last change (which removed old commented-out
12740 version of expand-file-name). Add a comment that explains why
12741 this old version should not be removed.
12742
12743 2001-10-25 Gerd Moellmann <gerd@gnu.org>
12744
12745 * frame.c (Fframe_parameter): Fix a bug whereby some
12746 ``artificial'' frame parameters, like `minibuffer' were not
12747 obtained by calling Fframe_parameters.
12748
12749 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
12750 cursor differently.
12751
12752 * xdisp.c (move_it_vertically_backward): Compute line height
12753 differently. Add heuristic to try to be more compatible to 20.x.
12754
12755 2001-10-25 Stefan Monnier <monnier@cs.yale.edu>
12756
12757 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
12758
12759 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
12760 boolean.
12761
12762 2001-10-25 Miles Bader <miles@gnu.org>
12763
12764 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
12765 BG is a pointer to a structure, not a structure.
12766 (gif_format, png_format): Add missing commas.
12767
12768 2001-10-24 Richard M. Stallman <rms@gnu.org>
12769
12770 * xfaces.c (Fface_attributes_as_vector): New function.
12771 (syms_of_xfaces): Defsubr it.
12772
12773 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12774
12775 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
12776 variable `area'.
12777
12778 2001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12779
12780 * search.c (scan_newline): Remove unused variable `selective_display'.
12781
12782 2001-10-25 Miles Bader <miles@gnu.org>
12783
12784 * dispextern.h (struct image): Add `background',
12785 `background_valid', and `background_transparent' fields.
12786 (image_background, image_background_transparent): New declarations.
12787 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
12788 * xfns.c (image_background, image_background_transparent)
12789 (four_corners_best): New functions.
12790 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
12791 (gs_format): Add `:background' entry.
12792 (lookup_image): Set IMG's background color if specified.
12793 (pbm_load, xbm_load_image, png_load): Set IMG's background field
12794 when appropriate.
12795 (x_clear_image_1): Reset `background_valid' and
12796 `background_transparent_valid' fields.
12797 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
12798 calculating it here. Set IMG's background_transparent field.
12799 (enum xpm_keyword_index): Add XPM_BACKGROUND.
12800 (enum png_keyword_index): Add PNG_BACKGROUND.
12801 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
12802 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
12803 (enum gif_keyword_index): Add GIF_BACKGROUND.
12804 (enum gs_keyword_index): Add GS_BACKGROUND.
12805 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
12806 Pre-calculate image background color where necessary.
12807 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
12808 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
12809 color to use for image glyph reliefs.
12810
12811 2001-10-24 Gerd Moellmann <gerd@gnu.org>
12812
12813 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
12814 in full-width rows.
12815
12816 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
12817 Fix clearing of area not covered by scroll bar.
12818
12819 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12820
12821 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
12822 and `real_start'.
12823 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
12824 (glyph_rect): Remove unused variable `area'.
12825
12826 2001-10-24 Gerd Moellmann <gerd@gnu.org>
12827
12828 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
12829
12830 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
12831 (row_containing_pos): Take additional argument DY.
12832 Treat rows ending in middle of char differently.
12833 (display_line): Handle tabs on window systems differently.
12834
12835 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
12836 with additional argument.
12837
12838 * dispextern.h (row_containing_pos): Adjust prototype.
12839
12840 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
12841 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
12842 (try_window_id, try_window_reusing_current_matrix)
12843 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
12844 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
12845
12846 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12847
12848 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
12849 gnuemacs).
12850 (HAVE_BOXES): Fix typo in comment.
12851 (push_menu_pane): Fix typo in comment.
12852
12853 * xdisp.c: (display_prop_string_p): Remove unused local declaration
12854 of `Qwhen'.
12855 (single_display_prop_string_p): Remove unused local declarations
12856 of `Qwhen' and `Qmargin'.
12857 (string_buffer_position): Remove unused variable `around'.
12858 (store_frame_title): Remove unused variable `width'.
12859
12860 * window.c: Don't define max.
12861 (coordinates_in_window): Remove unused variable `uy'.
12862
12863 * widget.c: Don't define max.
12864
12865 * process.c: Don't define max.
12866 (create_process): Remove unused variable `buffer'.
12867
12868 2001-10-23 Gerd Moellmann <gerd@gnu.org>
12869
12870 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
12871
12872 2001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
12873
12874 * xfaces.c (Finternal_set_lisp_face_attribute)
12875 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
12876 frame is on a windowed display.
12877
12878 2001-10-23 Gerd Moellmann <gerd@gnu.org>
12879
12880 * dispnew.c (sync_window_with_frame_matrix_rows):
12881 Fix handling of windows which aren't full-width, fix handling
12882 of marginal areas.
12883
12884 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
12885
12886 2001-10-23 Andreas Schwab <schwab@suse.de>
12887
12888 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
12889 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
12890
12891 2001-10-23 Gerd Moellmann <gerd@gnu.org>
12892
12893 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
12894 REAL_END. Notice if cursor gets overwritten.
12895 (notice_overwritten_cursor): Take X positions as parameters.
12896 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
12897 around call to x_draw_glyphs.
12898
12899 2001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12900
12901 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
12902 instead of C) and usage.
12903
12904 * editfns.c (char-to-string): Fix argument names (use CHAR instead
12905 of C) and usage.
12906
12907 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
12908 `left', `max_width' and `max_height'.
12909
12910 2001-10-23 Gerd Moellmann <gerd@gnu.org>
12911
12912 * xdisp.c (display_line): For a tab continued to the next line,
12913 set row's ends_in_middle_of_char_p.
12914
12915 2001-10-22 Gerd Moellmann <gerd@gnu.org>
12916
12917 * xdisp.c (display_line): Fix computation of continuation lines
12918 width for TABs.
12919
12920 2001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12921
12922 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
12923 `Qlaplace'.
12924
12925 * fileio.c: Remove unused code.
12926
12927 2001-10-22 Miles Bader <miles@gnu.org>
12928
12929 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
12930 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
12931 Remove `DOC_STRINGS_IN_COMMENTS' cases.
12932
12933 2001-10-21 Jason Rumney <jasonr@gnu.org>
12934
12935 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
12936
12937 2001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
12938
12939 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
12940 (Finsert_string): Avoid the multi-line string literals warning.
12941
12942 2001-10-22 Miles Bader <miles@gnu.org>
12943
12944 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
12945 (Fdocumentation): Don't use it.
12946 (syms_of_doc): Don't initialize it.
12947
12948 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
12949 * print.c (Fwith_output_to_temp_buffer): Likewise.
12950 * window.c (Fsave_window_excursion): Likewise.
12951 * editfns.c (Fsave_excursion, Fsave_current_buffer)
12952 (Fsave_restriction): Likewise.
12953 * eval.c (Frun_hooks, Frun_hook_with_args)
12954 (Frun_hook_with_args_until_failure)
12955 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
12956 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
12957 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
12958 (Funwind_protect, Fcondition_case): Likewise.
12959 * coding.c (Ffind_operation_coding_system): Likewise.
12960 * keyboard.c (Ftrack_mouse): Likewise.
12961
12962 2001-10-21 Miles Bader <miles@gnu.org>
12963
12964 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
12965 (Fmake_hash_table): Add usage: string to doc string.
12966 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
12967 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
12968 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
12969 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
12970 (Fml_prefix_argument_loop): Likewise.
12971
12972 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12973
12974 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
12975
12976 * sysdep.c (init_sys_modes): Change doc-string comments to `new
12977 style' [w/`doc:' keyword].
12978
12979 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
12980 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
12981 comments to `new style' [w/`doc:' keyword].
12982
12983 2001-10-21 Jason Rumney <jasonr@gnu.org>
12984
12985 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
12986
12987 * w32term.c (remember_mouse_glyph): New function.
12988 (w32_mouse_position): Use it.
12989 (note_mouse_movement): If the mouse moved off the glyph, remember
12990 its new position.
12991
12992 * w32term.h (struct w32_output): Correct spelling of x_compatible.
12993 (w32_display_info): Add mouse_face_overlay.
12994
12995 * w32term.c (notice_overwritten_cursor): Renamed from
12996 note_overwritten_text_cursor. Rewritten to take glyph widths into
12997 account.
12998 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
12999 (fast_find_string_pos): New function.
13000 (fast_find_position): Return the correct vpos. Add parameter
13001 STOP. In the final row, stop before glyphs having STOP as object.
13002 Don't consider glyphs that are not from a buffer.
13003 (fast_find_position) [0]: Add a presumably more correct version
13004 for after 21.1.
13005 (expose_window_tree, expose_frame): Don't compute intersections here.
13006 (expose_window): Do it here instead.
13007 (expose_window_tree, expose_window, expose_line): Return 1 when
13008 overwriting mouse-face.
13009 (expose_window): If W is the window currently being updated, mark
13010 the frame garbaged.
13011 (expose_frame): If mouse-face was overwritten, redo it.
13012 (x_use_underline_position_properties): New variable.
13013 (syms_of_xterm): DEFVAR_BOOL it.
13014 (x_draw_glyph_string): Add comment to use it in future.
13015 (x_draw_glyph_string): Restore clipping after drawing box.
13016 Fix a computation of the underline position.
13017 (w32_get_glyph_string_clip_rect): Minor cleanup.
13018 (x_fill_stretch_glyph_string): Remove an assertion.
13019 (x_produce_glyphs): Don't convert multibyte characters
13020 to unibyte characters in unibyte buffers.
13021 (cursor_in_mouse_face_p): New function.
13022 (x_draw_stretch_glyph_string): Use it to choose a different GC
13023 when drawing a cursor within highlighted text. Don't draw
13024 background again if it has already been drawn.
13025 (x_draw_glyph_string_box): Don't draw a full-width
13026 box just because the glyph row's full_width_p flag is set.
13027 (x_draw_glyphs): Fix computation of rightmost x for
13028 full-width rows.
13029 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
13030 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
13031 change bottom shadow accordingly. Some cleanup.
13032 (x_update_window_end): Handle overwritten mouse face
13033 also for tool bar windows.
13034 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
13035 DRAW is DRAW_IMAGE_RAISED.
13036 (clear_mouse_face): Return 1 if text with mouse face was
13037 actually redrawn. Make the function static.
13038 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
13039 optimize away highlighting if we pass over that same overlay again.
13040 (note_mouse_highlight): Call mouse_face_overlay_overlaps
13041 to detect a case where we have to highlight a different region
13042 despite not having left the currently highlighted region.
13043 Set mouse_face_overlay in the x_display_info. Avoid changing the
13044 mouse pointer shape when show_mouse_face has already done it, or
13045 there is no need. Handle mouse-face and help-echo in strings.
13046 (glyph_rect): New function.
13047 (w32_mouse_position): Use it to raise the threshold for mouse
13048 movement event generation.
13049 (w32_initialize_display_info): Initialize the x_display_info's
13050 mouse_face_overlay.
13051 (w32_set_vertical_scroll_bar): Don't clear a zero height
13052 or width area.
13053 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
13054 a widget to zero height.
13055
13056 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
13057 Protect unibyte strings created by replacing their multibyte
13058 equivalents in menu_items.
13059 (w32_menu_show): Don't overwrite an item's name with its key
13060 description in case the description is a multibyte string.
13061 (single_submenu): Some cleanup.
13062
13063 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
13064 (postprocess_image): New function.
13065 (lookup_image): Call it for all image types except PostScript.
13066 (x_kill_gs_process): Call postprocess_image.
13067 (tiff_error_handler, tiff_warning_handler): New functions.
13068 (tiff_load): Install them as handlers.
13069 (x_kill_gs_process): Recognize if someone has cleared the image
13070 cache under us.
13071 (valid_image_p): Protect better against invalid image
13072 specifications. Previous code could signal an error.
13073 (Fx_hide_tip, Fshow_tip): Doc fix.
13074 (Fv_max_tooltip_size): New variable.
13075 (syns_of_xfns): DEFVAR_LISP it.
13076 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
13077 window buffer to *tip* right after creating the frame. Set frame's
13078 window_width. Use a maximum tooltip size specified by
13079 Vx_max_tooltip_size, if that has valid contents.
13080 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
13081 Make sure the tooltip is completely visible.
13082 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
13083 (Fx_create_frame): Adjust the frame's height for presence
13084 of the tool bar before calling x_figure_window_size.
13085 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
13086 when the window gets smaller.
13087 (x_set_foreground_color): Set frame's cursor_pixel.
13088 (x_set_foreground_color, x_set_background_color): Cleaned up.
13089 (x_set_font): Handle case of x_new_fontset returning the same name
13090 as before, although there was a change in fontsets.
13091
13092 2001-10-21 Miles Bader <miles@gnu.org>
13093
13094 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
13095 (Flogxor): Add usage: string to doc string.
13096 * charset.c (Fstring): Likewise.
13097 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
13098 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
13099
13100 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13101
13102 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
13103
13104 * alloc.c: Reindent DEFUNs with doc: keywords.
13105
13106 * abbrev.c (Finsert_abbrev_table_description): Reindent.
13107
13108 * frame.c: Change doc-string comments to `new style' [w/`doc:'
13109 keyword].
13110
13111 See ChangeLog.9 for earlier changes.
13112
13113 ;; Local Variables:
13114 ;; coding: iso-2022-7bit
13115 ;; End:
13116
13117 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
13118 Copying and distribution of this file, with or without modification,
13119 are permitted provided the copyright notice and this notice are preserved.
13120
13121 ;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4