(Fread_file_name): Set completion-ignore-case for case-insensitive systems.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
73bc43da
MY
12004-03-14 Masatake YAMATO <jet@gyve.org>
2
3 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
4 when keymap and cursor are setup.
5
9062aa89
ST
62004-03-14 Steven Tamm <steventamm@mac.com>
7
8 * Makefile.in (XMENU_OBJ): Do not include xmenu.o if
9 HAVE_CARBON is defined.
10
e4b1b5ab
KS
112004-03-14 Kim F. Storm <storm@cua.dk>
12
13 * dispextern.h (x_find_image_file): Add prototype.
14
15 * image.c (x_find_image_file): Make extern.
16
17 * xfns.c (x_find_image_file): Remove prototype.
18
5109b06a
EZ
192004-03-13 Eli Zaretskii <eliz@elta.co.il>
20
21 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is
22 defined.
23
24 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is
25 defined.
26
e69cfac2
RS
272004-03-12 Richard M. Stallman <rms@gnu.org>
28
29 * fns.c (internal_equal): New arg PROPS controls comparing
30 text properties. All callers changed.
31 (Fequal_including_properties): New function.
32 (syms_of_fns): defsubr it.
33
45034953
KS
342004-03-12 Kim F. Storm <storm@cua.dk>
35
36 Fix image support on MAC. From YAMAMOTO Mitsuharu.
37
38 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
39 (image_background, image_background_transparent): Fix prototypes.
40
41 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to
42 dispextern.h.
43
44 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
45 (x_query_font, x_find_ccl_program, x_set_window_size)
46 (x_make_frame_visible, mac_initialize, XCreatePixmap)
47 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
48 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
49
50 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
51 (x_query_font, x_find_ccl_program, x_set_window_size)
52 (x_make_frame_visible, mac_initialize, XCreatePixmap)
53 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
54 (mac_draw_line_to_pixmap): Add prototypes.
55
562004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
57
58 * macterm.c (XTread_socket): Fix mouse click on tool bar.
59
a12d3d87
KS
602004-03-11 Kim F. Storm <storm@cua.dk>
61
d3ab1cf1
KS
62 * dispextern.h: Move image related prototypes from xfns.c section
63 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
64 HAVE_X_WINDOWS.
65
37de9f51 66 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
a12d3d87
KS
67 Move gtkutil.o to new GTK_OBJ list.
68 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
69 (GTK_OBJ) [USE_GTK]: New declaration.
70 (obj): Add $(GTK_OBJ) to list.
71
5243c06a 722004-03-11 Steven Tamm <steventamm@mac.com>
5109b06a 73
5243c06a
ST
74 * image.c [MAC_OSX]: Include sys/stat.h
75
76 * macfns.c (syms_of_macfns): Remove definitions of things now
77 defined in image.c
78
c0f97789
KS
792004-03-11 Kim F. Storm <storm@cua.dk>
80
81 The following changes consolidates the identical/similar image
82 support code previously found in xfns.c, w32fns.c, and macfns.c
83 into a new file image.c.
84
85 * makefile.w32-in (OBJ1): Add image.o.
86 ($(BLD)/image.$(O)): Add dependencies.
87
88 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
89 (image.o): Add dependencies.
90
91 * image.c: New file with consolidated image support code.
92 (COLOR_TABLE_SUPPORT): New define to control whether
93 color table support is available (X only).
94 (Bitmap_Record): Common name for x_bitmap_record,
95 w32_bitmap_record, and mac_bitmap_record.
96 (XImagePtr): Common name for pointer to XImage or equivalent.
97 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
98 to XImagePtr on X+MAC, and to HDC on W32.
99 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
100 (NO_PIXMAP): Common name for "None" or equivalent.
101 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
102 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
103 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
104 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen): Define
105 with suitable equivalents on W32 and MAC for code sharing.
106 (XDrawLine): Define on MAC for code sharing.
107 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
108 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
109 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
110 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
111 (x_reference_bitmap, x_create_bitmap_from_data)
112 (x_create_bitmap_from_file, x_destroy_bitmap)
113 (x_destroy_all_bitmaps, x_create_bitmap_mask)
114 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
115 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
116 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
117 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
118 (define_image_type, lookup_image_type, valid_image_p)
119 (image_error, enum image_value_type, struct image_keyword)
120 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
121 (make_image, free_image, prepare_image_for_display, image_ascent)
122 (four_corners_best, image_background, image_background_transparent)
123 (x_clear_image_1, x_clear_image, x_alloc_image_color)
124 (make_image_cache, free_image_cache, clear_image_cache)
125 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
126 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
127 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
128 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
129 (init_image_func_pointer, image_load_quartz2d)
130 (struct ct_color, init_color_table, free_color_table)
131 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
132 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
133 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
134 (x_disable_image, x_build_heuristic_mask)
135 (XBM support, XPM support, PBM support, PNG support, JPEG support)
136 (TIFF support, GIF support, Ghostscript support): Consolidate image
137 code from xfns.c, w32fns.c, and macfns.c.
138 (syms_of_image): Consolidate image related symbol setup here.
139 (init_image): Consolidate image related initializations here.
140
141 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
142 and init_image. Remove call to init_xfns.
143
144 * macterm.h (struct mac_bitmap_record): Add file member. Not
145 currently used, but simplifies code sharing.
146
147 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
148 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
149 (x_reference_bitmap, x_create_bitmap_from_data)
150 (x_create_bitmap_from_file, x_destroy_bitmap)
151 (x_destroy_all_bitmaps, x_create_bitmap_mask)
152 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
153 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
154 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
155 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
156 (define_image_type, lookup_image_type, valid_image_p)
157 (image_error, enum image_value_type, struct image_keyword)
158 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
159 (make_image, free_image, prepare_image_for_display, image_ascent)
160 (four_corners_best, image_background, image_background_transparent)
161 (x_clear_image_1, x_clear_image, x_alloc_image_color)
162 (make_image_cache, free_image_cache, clear_image_cache)
163 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
164 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
165 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
166 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
167 (init_image_func_pointer, image_load_quartz2d)
168 (struct ct_color, init_color_table, free_color_table)
169 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
170 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
171 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
172 (x_disable_image, x_build_heuristic_mask)
173 (XBM support, XPM support, PBM support, PNG support, JPEG support)
174 (TIFF support, GIF support, Ghostscript support): Merge with image
175 code from xfns.c and macfns.c into image.c.
176 (syms_of_xfns): Move image related symbols to image.c.
177 (init_external_image_libraries, init_xfns): Remove; initialization
178 moved to init_image in image.c.
179
180 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
181 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
182 (x_reference_bitmap, x_create_bitmap_from_data)
183 (x_create_bitmap_from_file, x_destroy_bitmap)
184 (x_destroy_all_bitmaps, x_create_bitmap_mask)
185 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
186 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
187 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
188 (define_image_type, lookup_image_type, valid_image_p)
189 (image_error, enum image_value_type, struct image_keyword)
190 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
191 (make_image, free_image, prepare_image_for_display, image_ascent)
192 (four_corners_best, image_background, image_background_transparent)
193 (x_clear_image_1, x_clear_image, x_alloc_image_color)
194 (make_image_cache, free_image_cache, clear_image_cache)
195 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
196 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
197 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
198 (struct ct_color, init_color_table, free_color_table)
199 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
200 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
201 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
202 (x_disable_image, x_build_heuristic_mask)
203 (XBM support, XPM support, PBM support, PNG support, JPEG support)
204 (TIFF support, GIF support, Ghostscript support): Merge with image
205 code from xfns.c and macfns.c into image.c.
206 (syms_of_xfns): Move image related symbols to image.c.
207 (init_external_image_libraries, init_xfns): Remove; initialization
208 moved to init_image in image.c.
209
210 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
211 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
212 (x_reference_bitmap, x_create_bitmap_from_data)
213 (x_create_bitmap_from_file, x_destroy_bitmap)
214 (x_destroy_all_bitmaps, x_create_bitmap_mask)
215 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
216 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
217 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
218 (define_image_type, lookup_image_type, valid_image_p)
219 (image_error, enum image_value_type, struct image_keyword)
220 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
221 (make_image, free_image, prepare_image_for_display, image_ascent)
222 (four_corners_best, image_background, image_background_transparent)
223 (x_clear_image_1, x_clear_image, x_alloc_image_color)
224 (make_image_cache, free_image_cache, clear_image_cache)
225 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
226 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
227 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
228 (struct ct_color, init_color_table, free_color_table)
229 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
230 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
231 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
232 (x_disable_image, x_build_heuristic_mask)
233 (XBM support, XPM support, PBM support, PNG support, JPEG support)
234 (TIFF support, GIF support, Ghostscript support): Merge with
235 w32fns.c and macfns.c image code into image.c.
236 (syms_of_xfns): Move image related symbols to image.c.
237 (init_xfns): Remove; initialization moved to init_image in image.c.
238
239 * lisp.h (syms_of_image, init_image): Add protoypes.
240 (init_xfns): Remove prototype.
241
242 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
243 (x_reference_bitmap, x_create_bitmap_from_data)
244 (x_create_bitmap_from_file, x_destroy_bitmap)
245 (x_create_bitmap_mask): Move prototypes from dispextern.h.
246 (gamma_correct) [MAC_OS]: Add prototype.
247
248 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
249 (x_reference_bitmap, x_create_bitmap_from_data)
250 (x_create_bitmap_from_file, x_destroy_bitmap)
251 (x_create_bitmap_mask): Move prototypes to dispextern.h.
252
6eced09c
KH
2532004-03-09 Kenichi Handa <handa@etlken2>
254
255 * coding.c (decode_coding_emacs_mule): Handle insufficent source
256 correctly.
257
9a7e95f3
RS
2582004-03-04 Richard M. Stallman <rms@gnu.org>
259
04a6e76b
RS
260 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
261
9a7e95f3
RS
262 * window.c (Fdisplay_buffer): Doc fix.
263
264 * buffer.c (Fpop_to_buffer): Doc fix.
265
6c2488df
KS
2662004-03-03 Kim F. Storm <storm@cua.dk>
267
268 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
269
d8d95bc7
SM
2702004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
271
272 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
273
357589bf
RS
2742004-03-02 Richard M. Stallman <rms@gnu.org>
275
276 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
277
409949b5
KH
2782004-03-02 Kenichi Handa <handa@m17n.org>
279
280 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
281
d24bc50f
KS
2822004-03-02 Kim F. Storm <storm@cua.dk>
283
284 * window.h (struct window): New member overlay_arrow_bitmap.
285
286 * window.c (make_window): Initialize overlay_arrow_bitmap.
287
288 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
289 implement and integrate multiple overlay arrows with redisplay.
290 (syms_of_xdisp): DEFVAR_LISP and initialize it.
291 (last_arrow_position, last_arrow_string): Replace by properties.
292 (Qlast_arrow_position, Qlast_arrow_string)
293 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
294 (syms_of_xdisp): Intern and staticpro them.
295 (overlay_arrow_string_or_property, update_overlay_arrows)
296 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
297 (overlay_arrow_at_row): New functions for multiple overlay arrows.
298 (redisplay_internal): Use them instead of directly accessing
299 Voverlay_arrow_position etc. for multiple overlay arrows.
300 (mark_window_display_accurate): Use update_overlay_arrows.
301 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
302 (try_window_id): Use overlay_arrows_changed_p.
303 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
304 (display_line): Use overlay_arrow_at_row to check multiple
305 overlay arrows, and get relevant overlay-arrow-string and
d8d95bc7 306 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
d24bc50f
KS
307 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
308 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
309
310 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
311 (update_window_fringes): Remove unused code.
312
c1464661
JR
3132004-03-01 Jason Rumney <jasonr@gnu.org>
314
315 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
316
a64387ee
JB
3172004-03-01 Juanma Barranquero <lektu@terra.es>
318
319 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
320
321 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
322
334faa08
JD
3232004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
324
325 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
326 how many colors can be displayed.
327
bb62616f
KH
3282004-03-01 Kenichi Handa <handa@m17n.org>
329
330 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
331 correctly.
332
0fd16104
KS
3332004-02-28 Kim F. Storm <storm@cua.dk>
334
335 * dispnew.c (update_window): Update header line also if there are
336 no other changes in window (move code after set_cursor label).
337
338 * lisp.h (mark_window_display_accurate): Remove prototype.
339
340 * window.c (window_loop, Fforce_window_update): Force mode line
341 updates by setting prevent_redisplay_optimizations_p and
342 update_mode_lines.
343
b59dd9c8
JD
3442004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
345
d8d95bc7 346 * xfns.c (x_window): Fix indentation.
b59dd9c8
JD
347
348 * xterm.c (x_calc_absolute_position): Call x_real_positions
349 to get WM window sizes and use those to calculate position.
d8d95bc7 350 (x_set_offset): Remove code commented out.
b59dd9c8 351
a874691c
MB
3522004-02-28 Miles Bader <miles@gnu.org>
353
354 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
355
3e0c6482
KS
3562004-02-28 Kim F. Storm <storm@cua.dk>
357
358 * keyboard.c (kbd_buffer_store_event_hold): New function to store
359 an event into kbd fifo, but with special handling of quit event;
360 a quit event is saved for later, and further events are discarded
361 until the saved quit event has been processed.
362 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
363 (gen_help_event): Store help event in kbd fifo.
364 (NREAD_INPUT_EVENTS): Remove.
365 (read_avail_input): Adapt to new read_socket_hook interface.
366 Remove allocation and initialization of local input_event buffer,
367 as read_socket_hook stores events directly in fifo. Allocate and
368 initialize local hold_quit event to handle postponed quit event
369 (and store it if set by kbd_buffer_store_event_hold).
370
371 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
372 (gen_help_event): Fix prototype.
373
a64387ee 374 * macterm.c (XTread_socket): Remove bufp_r and
3e0c6482
KS
375 numcharsp args. Add hold_quit arg.
376 Rework to use just one, local, inev input_event. Store inev
377 directly in fifo using kbd_buffer_store_event_hold.
378
379 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
380 (read_input_waiting): Adapt to new read_socket_hook interface.
381 Remove allocation and initialization of local input_event buffer,
382 as read_socket_hook stores events directly in fifo. Allocate and
383 initialize local hold_quit event to handle postponed quit event
384 (and store it if set by kbd_buffer_store_event_hold).
385
a64387ee 386 * term.c (read_socket_hook): Fix arg list.
3e0c6482
KS
387
388 * termhooks.h (read_socket_hook): Fix prototype.
389
390 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
391 numcharsp args. Add hold_quit arg.
392 Rework to use just one, local, inev input_event. Store inev
393 directly in fifo using kbd_buffer_store_event_hold.
394
395 * w32inevt.h (w32_console_mouse_position): Fix prototype.
396
397 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
398 Add hold_quit arg. Rework to use just one, local, inev
399 input_event. Store inev directly in fifo using
400 kbd_buffer_store_event_hold. Update count in one place.
401 Postpone call to gen_help_event until inev is stored; use new
402 local do_help for this.
403 Remove local emacs_event in handing of ButtonPress event; just use
404 inev instead (so no reason to copy it later).
405
406 * xsmfns.c (x_session_check_input): Remove numchars arg.
407
d8d95bc7
SM
408 * xterm.c (x_focus_changed, x_detect_focus_change):
409 Remove numchars arg. Always store event into bufp arg.
410 Return nothing. Callers changed accordingly.
3e0c6482
KS
411 (glyph_rect): Simplify.
412 (STORE_KEYSYM_FOR_DEBUG): New macro.
413 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
414 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
415 (current_hold_quit) [USE_GTK]: Add.
416 (event_handler_gdk): Adapt to new handle_one_xevent.
417 (handle_one_xevent): Remove bufp_r and numcharsp args.
418 Add hold_quit arg. Rework to use just one, local, inev
419 input_event. Store inev directly in fifo using
420 kbd_buffer_store_event_hold. Update count in one place.
421 Postpone call to gen_help_event until inev is stored; use new
422 local do_help for this.
423 Simplify handling of keysyms (consolidate common code). Fix bug
424 where count was updated with nchars instead of nbytes.
425 Remove local emacs_event in handing of ButtonPress event; just use
426 inev instead (so no reason to copy it later).
427 Remove `out' label. Rename label `ret' to `done'; add various
428 `goto done' to clarify code flow in deeply nested blocks.
429 (x_dispatch_event): Simplify as handle_one_xevent now calls
430 kbd_buffer_store_event itself.
431 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
432 arg. Call handle_one_xevent with new arglist. Store event from
433 x_session_check_input in fifo.
434 [USE_GTK]: Setup current_hold_quit.
435 Decrement handling_signal before unblocking input.
436 (x_initialize) [USE_GTK]: Initialize current_count.
437
438 * xterm.h (x_session_check_input): Fix prototype.
439
e3564461 4402004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
a64387ee 441
d8d95bc7 442 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
a64387ee 443
e3564461
ST
444 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
445 macgui.h).
a64387ee 446
e3564461 447 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
a64387ee 448
e3564461
ST
449 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
450 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
451 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
452 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
453 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
454 (Bitmap): Remove typedef.
455 (Pixmap): Change int to GWorldPtr.
456
d8d95bc7 457 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
a64387ee 458
d8d95bc7
SM
459 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
460 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
461 New #define to extract 16-bit depth color components from unsigned
e3564461
ST
462 long representation.
463 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
464 colors used for masks.
465 (struct mac_display_info): Add color_p. Remove n_cbits.
a64387ee 466
e3564461
ST
467 * macfns.c: Include sys/types.h and sys/stat.h.
468 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
469 Include QuickTime/QuickTime.h.
470 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
471 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
472 functions defined in macterm.c.
473 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
474 (ZPixmap): New #define for compatibility with xfns.c.
475 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
476 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
d8d95bc7
SM
477 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
478 New functions.
e3564461 479 (four_corners_best, x_create_x_image_and_pixmap)
d8d95bc7
SM
480 (x_destroy_x_image, unwind_create_frame, x_disable_image)
481 (x_edge_detection, init_color_table, colors_in_color_table)
e3564461
ST
482 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
483 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
484 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
485 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
486 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
487 long mixup.
488 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
489 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
490 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
491 (x_set_cursor_type, Fxw_color_values, valid_image_p)
492 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
493 (x_alloc_image_color, clear_image_cache, lookup_image)
494 (x_find_image_file, xbm_read_bitmap_file_data)
495 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
496 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
497 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
498 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
499 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
d8d95bc7 500 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
e3564461
ST
501 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
502 #if 0.
503 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
504 #if 0. Free white_relief.gc and black_relief.gc.
d8d95bc7
SM
505 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
506 New functions (from xfns.c).
e3564461
ST
507 (Fx_create_frame): Record unwind_create_frame.
508 (Fxw_display_color_p): Use dpyinfo->color_p.
509 (Fx_display_grayscale_p, Fx_display_planes): Don't use
510 dpyinfo->n_cbits.
511 (Fx_display_color_cells): Use dpyinfo->n_planes;
512 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
513 (Qheuristic, cross_disabled_images, emboss_matrix)
514 (laplace_matrix): New variables (from xfns.c).
515 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
516 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
517 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
d8d95bc7
SM
518 (image_background_transparent): New function (from xfns.c).
519 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
520 (image_load_quicktime): Add declaration.
521 [MAC_OSX] (image_load_quartz2d): Likewise.
522 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
523 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
d8d95bc7 524 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
e3564461
ST
525 (xbm_load_image_from_file, x_laplace_read_row)
526 (x_laplace_write_row, pbm_read_file): Remove functions.
527 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
528 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
529 (colors_in_color_table): Sync with xfns.c (although not used).
530 (lookup_rgb_color): Don't lookup color table. Just do gamma
531 correction.
532 (COLOR_INTENSITY): New #define (from xfns.c).
d8d95bc7
SM
533 (x_disable_image): New function (from xfns.c).
534 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
535 (x_build_heuristic_mask): Sync with xfns.c.
536 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
537 (HAVE_PBM): Remove #ifdef.
538 (pbm_load): Sync with xfns.c. Set img->width and img->height
539 before IMAGE_BACKGROUND.
d8d95bc7 540 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
e3564461
ST
541 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
542 Don't enclose with #if HAVE_PNG.
543 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
d8d95bc7
SM
544 symbol _CGImageCreateWithPNGDataProvider is defined.
545 Otherwise use image_load_quicktime.
e3564461 546 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
d8d95bc7
SM
547 [HAVE_PNG] (png_load): Sync with xfns.c.
548 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
549 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
550 HAVE_JPEG.
551 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
552 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
553 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
554 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
555 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
556 (tiff_image_p, tiff_load): Don't enclose declarations with #if
557 HAVE_TIFF.
558 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
559 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
560 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
d8d95bc7
SM
561 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
562 New functions (from xfns.c).
e3564461 563 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
d8d95bc7 564 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
e3564461
ST
565 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
566 Don't enclose with #if HAVE_GIF.
567 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
568 animated gif. Otherwise use image_load_quicktime.
569 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
570 gif_DrawText to avoid conflict with QuickdrawText.h.
571 [HAVE_GIF] (gif_load): Sync with xfns.c.
572 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
573 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
574 Ghostscript is not supported yet).
575 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
576 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
577 cross_disabled_images (from xfns.c). Remove #if 0 for supported
578 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
579 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
580 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
d8d95bc7
SM
581 HAVE_PNG. Call EnterMovies to support animated gifs.
582 Call init_image_func_pointer to bind a symbol
e3564461 583 _CGImageCreateWithPNGDataProvider if it is defined.
a64387ee 584
d8d95bc7 585 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
e3564461
ST
586 (x_draw_bar_cursor): Sync declaration with xterm.c.
587 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
588 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
589 graphics).
590 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
591 (mac_draw_line_to_pixmap, XCreatePixmap)
592 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
d8d95bc7
SM
593 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
594 New functions.
595 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
596 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
597 Cast bits to char *.
e3564461
ST
598 (reflect_byte): New function (from w32fns.c).
599 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
600 due to byte alignment.
d8d95bc7
SM
601 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
602 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
e3564461
ST
603 (XSetForeground): Remove static (now used in macfns.c).
604 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
605 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
606 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
607 (x_draw_glyph_string_box, x_draw_image_foreground)
608 (x_draw_image_foreground_1, x_draw_image_glyph_string)
609 (x_draw_stretch_glyph_string, x_draw_glyph_string)
610 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
611 Sync with xterm.c.
612 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
613 than the xterm.c version when a strictly horizontal or vertical
614 line is drawn.
615 (XTset_terminal_window): Add static.
616 (x_make_frame_visible): Add UNBLOCK_INPUT.
617 (x_free_frame_resources): New funcion (from xterm.c).
618 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
619 occurs in tool bar area.
d8d95bc7
SM
620 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
621 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
e3564461
ST
622 Initialize image cache.
623 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
624 Enclose unused functions with #if 0.
625 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
626 (decode_mac_font_name): New function to apply code conversions
d8d95bc7 627 from a mac font name to an XLFD font name according to its script code.
e3564461 628 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
d8d95bc7 629 font name to a mac font name according to REGISTRY and ENCODING fields.
e3564461
ST
630 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
631 whose name starts with `.'.
632 (init_font_name_table): Use decode_mac_font_name. Add both
633 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
634 of a font is smJapanese.
635 (mac_do_list_fonts): New function to list fonts that match a given
636 pattern.
637 (x_list_fonts, XLoadQueryFont): Use it.
638 (XLoadQueryFont): Set rbearing field for each variable width
639 character to avoid needless redraw.
640 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
641
446f5f3d
KS
6422004-02-26 Kim F. Storm <storm@cua.dk>
643
af617d0f
KS
644 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
645 as read_socket_hook handler on X aborts if buffer is too small
646 and W32 handler doesn't always check buffer limit.
647
446f5f3d
KS
648 * xdisp.c (handle_single_display_prop): Handle left-fringe and
649 right-fringe similar to a display margin image. Specifically,
650 the characters having the fringe prop are no longer shown, and
651 we use IT_IMAGE/next_element_from_image with image_id = -1 to
652 do this. Set fringe bitmap face_id in it->face_id.
653 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
654 still realize it->face (i.e. the fringe bitmap face).
655
7d8a0b55
MB
6562004-02-25 Miles Bader <miles@gnu.org>
657
658 * xdisp.c (check_it): Check string/string_pos consistency.
659 (init_iterator): Initialize string-related fields properly.
660
6612004-02-11 Miles Bader <miles@gnu.org>
662
663 * xdisp.c (produce_image_glyph): Force negative descents to zero.
664
6652004-02-10 Miles Bader <miles@gnu.org>
666
667 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
668 BLOCK_INPUT can be nested, so it doesn't make much sense.
669
a64387ee 6702004-02-24 Michael Mauger <mmaug@yahoo.com>
ce35edd1
JR
671
672 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
673 (xbm_read_bitmap_data): Use unsigned char for image data.
674
92f5fba2
LT
6752004-02-23 Luc Teirlinck <teirllm@auburn.edu>
676
677 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
678
8565fb3d
JR
6792004-02-22 Jason Rumney <jasonr@gnu.org>
680
681 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
682 correctly over other bitmaps.
683
f8125c39
EZ
6842004-02-21 Eli Zaretskii <eliz@elta.co.il>
685
686 * emacs.c (USAGE1): Split into two halves.
687 (USAGE2): Second half of the old USAGE1.
d8d95bc7
SM
688 (USAGE3): Rename from USAGE2.
689 (USAGE4): Rename from USAGE3.
f8125c39 690
4effffca
EZ
6912004-02-21 Juri Linkov <juri@jurta.org>
692
693 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
694 Fix --multibyte. Move --help, --version to USAGE2. Add alias
695 --file. Fix -f, -l. Sort options. Untabify.
696 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
697
923c1e6f
LT
6982004-02-19 Luc Teirlinck <teirllm@auburn.edu>
699
700 * category.c (Fdefine_category, Fcategory_docstring)
701 (Fget_unused_category, Fset_category_table)
702 (Fcategory_set_mnemonics): Doc fixes.
703
b0e225fd
KS
7042004-02-20 Kim F. Storm <storm@cua.dk>
705
706 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
707 The following changes are relative to the 2004-01-21 revision.
708 (NREAD_INPUT_EVENTS): Define as max number of input events to read
709 in one call to read_socket_hook. Value is 8.
710 (read_avail_input): Separate and rework handling of read_socket_hook
711 and non-read_socket_hook cases. Use smaller input_event buffer
d8d95bc7
SM
712 in read_socket_hook case, and repeat if full buffer is read.
713 Use new local variable 'discard' to skip input after C-g.
b0e225fd
KS
714 In non-read_socket_hook case, just use a single input_event, and
715 call kbd_buffer_store_event on the fly for each character.
716
b15aa9f9
SM
7172004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
718
719 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
720 Remove unused `gu' alternative.
721
83c9aa95
AS
7222004-02-19 Andreas Schwab <schwab@suse.de>
723
724 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
725 warning.
726
cc808173
KS
7272004-02-18 Kim F. Storm <storm@cua.dk>
728
729 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
730 Fix last change.
731
ab90a54d
KS
7322004-02-17 Kim F. Storm <storm@cua.dk>
733
b26f249f
KS
734 * xdisp.c (fast_find_position): Fix return value of new version;
735 it was inverted compared to the 21.1 version.
736 (get_window_cursor_type): Don't look at glyph if NULL.
737 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
0bf7d005 738
ab90a54d
KS
739 * keyboard.c: Rework previous change; it didn't consider that the
740 buf array was allocated on the stack.
741 (prev_read): Remove variable.
742 (read_avail_input_buf): New static event buffer array.
b9568dfc 743 (in_read_avail_input): New static variable to handle re-entrancy.
ab90a54d 744 (read_avail_input): Change buf to pinter to read_avail_input_buf.
b9568dfc
KS
745 Use in_read_avail_input to handle re-entrance; when re-entered,
746 fully initialize and use tmp_buf array instead of read_avail_input_buf.
747 Do not initialize read_avail_input_buf in full here; instead assume it
ab90a54d
KS
748 is always cleared on entry. To ensure that, we clear (just) the
749 entries that were used before we return.
750 (init_keyboard): Initialize read_avail_input_buf here.
751
4e039f3f
EZ
7522004-02-16 Jesper Harder <harder@ifa.au.dk> (tiny change)
753
754 * cmds.c (Fend_of_line): Doc fix.
755
7b5368c1
EZ
7562004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
757
758 * keyboard.c (prev_read): New static variable.
759 (read_avail_input): Use it to zero out only those slots in buf[]
760 that were used last time we were called.
761
ca4bc494
EZ
7622004-02-16 Eli Zaretskii <eliz@elta.co.il>
763
764 * Makefile.in (obj): Move fringe.o from here...
765 (XOBJ, MAC_OBJ): ...to here.
766
159c348e
SE
7672004-02-16 Stephen Eglen <stephen@gnu.org>
768
769 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
770
d2f14999
SM
7712004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
772
b15aa9f9
SM
773 * data.c (Fbyteorder):
774 * fringe.c (Fdefine_fringe_bitmap):
775 * xdisp.c (handle_single_display_prop):
d2f14999
SM
776 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
777
8d50508a
JR
7782004-02-16 Jason Rumney <jasonr@gnu.org>
779
780 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
781
dd4497dc
ST
7822004-02-15 Steven Tamm <steventamm@mac.com>
783
784 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
785 controlling emulation of a three button mouse with option and
786 command keys.
787 (Qreverse, mac_get_enumlated_btn): Handle the emulation
b15aa9f9 788 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
dd4497dc 789
c9159cb3
KS
7902004-02-15 Kim F. Storm <storm@cua.dk>
791
2cc52658
KS
792 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
793
c9159cb3
KS
794 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
795 Perform byte-swapping.
796
12fde2dc
KS
7972004-02-14 Kim F. Storm <storm@cua.dk>
798
799 * dispextern.h (struct draw_fringe_bitmap_params): Change member
800 bits from char to short to facilitate wider bitmaps.
801 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
802 member.
803
804 * fringe.c (struct fringe_bitmap): Change member bits from char to
805 short to facilitate 16 bits wide bitmaps. Modify all standard
806 bitmaps accordingly.
807 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
808 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
809 (draw_fringe_bitmap): Ditto.
810 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
811 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
812 handle up to 16 bits wide bitmaps.
813 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
f21a7192 814 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
12fde2dc
KS
815
816 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
817 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
818 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
819
820 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
821 so it is no longer necessary to expand them here.
822
823 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
824
9d7271e8
KS
8252004-02-12 Kim F. Storm <storm@cua.dk>
826
827 * window.c (Fwindow_fringes): Doc fix.
828
706c1e4f
JD
8292004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
830
831 * xselect.c (x_get_foreign_selection): Add new optional parameter
832 time_stamp.
833 (Fx_get_selection_internal): Ditto, pass time_stamp to
834 x_get_foreign_selection.
835
836 * data.c (Fbyteorder): New function.
837
c2d12b5d
JD
8382004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
839
840 * atimer.c: Move include stdio.h to same place as in other files.
841
842 * region-cache.c: Ditto.
843
844 * sysdep.c: Ditto.
845
846 * xfaces.c: Ditto.
847
4c1947b9
SS
8482004-02-09 Sam Steingold <sds@gnu.org>
849
850 * w32term.c (w32_draw_fringe_bitmap): Fixed a typo in the last patch.
851
82722af3
KS
8522004-02-09 Kim F. Storm <storm@cua.dk>
853
854 * fringe.c: New file. Move original fringe related declarations
855 and code from dispextern.h and xdisp.c here.
856 Rework code to support user defined fringe bitmaps, redefining
857 standard bitmaps, ability to overlay user defined bitmap with
858 overlay arrow bitmap, and add faces to bitmaps.
859 (Voverflow_newline_into_fringe): Declare here.
860 (enum fringe_bitmap_align): New enum.
861 (..._bits): All bitmaps are now defined without bitswapping; that
862 is now done in init_fringe_once (if necessary).
863 (standard_bitmaps): New array with specifications for the
864 standard fringe bitmaps.
865 (fringe_faces): New array.
866 (valid_fringe_bitmap_id_p): New function.
867 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
868 (draw_fringe_bitmap): New function which draws fringe bitmap,
869 possibly overlaying bitmap with cursor in right fringe or the
870 overlay arrow in the left fringe.
871 (update_window_fringes): Do not handle overlay arrow here.
872 Compare and copy fringe bitmap faces.
873 (init_fringe_bitmap): New function.
874 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
875 define and destroy user defined fringe bitmaps.
876 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
877 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
878 (syms_of_fringe): New function. Defsubr new DEFUNs.
879 DEFVAR_LISP Voverflow_newline_into_fringe.
880 (init_fringe_once, init_fringe): New functions.
881 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
4c1947b9 882
82722af3
KS
883 * Makefile.in (obj): Add fringe.o.
884 (fringe.o): New dependencies.
885
886 * dispextern.h (FRINGE_ID_BITS): New definition for number of
887 bits allocated to hold a fringe number. Increase number of bits
888 from 4 to 8 to allow user defined fringe bitmaps.
889 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
890 left_user_fringe_face_id, right_user_fringe_bitmap,
891 right_user_fringe_face_id.
892 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
893 Move to new file fringe.c.
894 (MAX_FRINGE_BITMAPS): Define here.
895 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
896 and overlay_p. Change member which to int.
897 (struct redisplay_interface): New members define_fringe_bitmap
898 and destroy_fringe_bitmap.
899 (valid_fringe_bitmap_id_p): Add prototype.
900 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
901
902 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
903 arrows.
904 (update_frame): Do flush_display if force_flush_display_p to
905 ensure display (specifically fringes) are updated in a timely
906 manner when resizing the frame by dragging the mouse.
907 (update_window_line): Update row if overlay arrow changed.
908 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
909 or overlay arrow changed.
910
911 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
912 syms_of_fringe, and init_fringe.
913
914 * frame.h (struct frame): New member force_flush_display_p.
915
916 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
917 Add prototypes.
918
a3993cc8 919 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
a64387ee 920 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
a3993cc8
KS
921 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
922 Use cursor color for displaying cursor in fringe.
82722af3
KS
923 (x_redisplay_interface): Add null handlers for
924 define_fringe_bitmap and destroy_fringe_bitmap functions.
925
926 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
927 xterm.c to handle overlayed fringe bitmaps and to use cursor color
928 for displaying cursor in fringe.
929 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
930 specific functions to define and destroy fringe bitmaps in fringe_bmp.
931 (w32_redisplay_interface): Add them to redisplay_interface.
932 (w32_term_init): Call w32_init_fringe instead of explicitly
933 defining fringe bitmaps in fringe_bmp array.
934 (x_delete_display): Call w32_reset_fringes instead of explicitly
935 destroying fringe bitmaps in fringe_bmp array.
936
937 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
938 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
939 (continued_bits, continuation_bits, ov_bits, first_line_bits)
940 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
941 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
942 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
943 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
944 Move fringe handling vars and code to new file fringe.c.
945 (handle_display_prop): Handle left-fringe and right-fringe
946 display properties; store user fringe bitmaps in iterator.
947 (move_it_in_display_line_to): Handle cursor in fringe at eob.
948 (clear_garbaged_frames): Set force_flush_display_p if resized.
949 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
950 (display_line): Handle cursor in fringe at eob.
951 (display_line): Set row user fringe bitmaps from iterator.
952
953 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
954 Use cursor color for displaying cursor in fringe.
955 (x_redisplay_interface): Add null handlers for
956 define_fringe_bitmap and destroy_fringe_bitmap functions.
957
030400eb
JD
9582004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
959
960 * macfns.c (Fx_change_window_property): Make doc string and
961 parameters same as for X version.
962
963 * w32fns.c (Fx_change_window_property): Ditto.
964
3af55251
KS
9652004-02-07 Kim F. Storm <storm@cua.dk>
966
ec110e9e
KS
967 * xdisp.c (hscroll_window_tree): Position cursor near to right
968 margin in hscrolled window when jumping to end of line (rather
969 than centering cursor).
970
3af55251
KS
971 * process.c (wait_reading_process_input): Don't do adaptive read
972 buffering if waiting for a specific process.
973
b0c138ce
LT
9742004-02-05 Luc Teirlinck <teirllm@auburn.edu>
975
976 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
977 (Fread_minibuffer, Feval_minibuffer)
978 (Fread_string, Fread_no_blanks_input)
979 (Fcompleting_read): Doc fixes.
980 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
981 completion-regexp-list. Define Qcase_fold_search and staticpro it.
982 (read_minibuf): Fix initial comment.
983 (Ftry_completion, Fall_completions, Ftest_completion): Bind
984 case-fold-serach to the value of completion-ignore-case when
985 checking completion-regexp-list.
986 (Fdisplay_completion_list): Make it handle arguments that are
987 symbols. Doc fix.
988
9676f5ad 9892004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
64d1e373 990
9676f5ad 991 * xterm.h: Add declaration of free_frame_menubar.
64d1e373 992
9676f5ad
JD
993 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
994 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
b0c138ce 995 (Fx_change_window_property): Add declaration of parameters type and
9676f5ad 996 format. Remove unused variable cons.
5b698285
JD
997
998 * xselect.c: Include stdio,h.
999
fc1d15f6
KH
10002004-02-05 Kenichi Handa <handa@m17n.org>
1001
ebaff4af
KH
1002 * fns.c (Fset_char_table_range): Fix previous change.
1003
fc1d15f6
KH
1004 * buffer.c (Fset_buffer_multibyte): Fix docstring.
1005
9676f5ad
JD
10062004-02-04 Luc Teirlinck <teirllm@auburn.edu>
1007
1008 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
1009
da75761f
SM
10102004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
1011
1012 * keymap.c (Vmouse_events): Rename from Vmenu_events.
1013 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
1014
13c5d120
KH
10152004-02-04 Kenichi Handa <handa@m17n.org>
1016
1017 * fns.c (Fset_char_table_range): Handle charsets ascii,
1018 eight-bit-control, and eight-bit-graphic correctly.
1019
2883d842
JR
10202004-02-03 Jason Rumney <jasonr@gnu.org>
1021
1022 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
1023
1024 * w32fns.c (x_to_w32_font): Likewise.
1025
69eff41f
JD
10262004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1027
1028 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
1029 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
1030
1031 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
1032 ClientMessages.
1033
1034 * xselect.c: Include termhooks.h and X11/Xproto.h
1035 (x_check_property_data, x_fill_property_data)
1036 (x_property_data_to_lisp, mouse_position_for_drop)
1037 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
da75761f 1038 (Fx_send_client_event): Move here from xfns.c.
69eff41f
JD
1039 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
1040
da75761f 1041 * xfns.c (x-send-client-message): Move to xselect.c
69eff41f
JD
1042 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
1043 OUTER_P.
1044 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
1045 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
1046 if vector_ret_p is true.
1047 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
69eff41f 1048
dcdbbb5d
EZ
10492004-02-02 Eli Zaretskii <eliz@elta.co.il>
1050
1051 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
1052 basename of FILE relative to it, not FILE itself.
1053
09721b31
KH
10542004-02-02 Kenichi Handa <handa@m17n.org>
1055
1056 * coding.c (coding_restore_composition): Check invalid
1057 composition data more rigidly.
1058
eb996101
LT
10592004-01-30 Luc Teirlinck <teirllm@auburn.edu>
1060
1061 * fileio.c (Fread_file_name_internal): Correctly handle the case
1062 where insert-default-directory is nil.
1063 (Fread_file_name): Always return an empty string if the user exits
1064 with an empty minibuffer. Adapt the docstring accordingly.
1065 (syms_of_fileio): Adapt the docstring of insert-default-directory
1066 to the change in Fread_file_name.
1067
a0367d42
EZ
10682004-01-29 Eli Zaretskii <eliz@elta.co.il>
1069
1070 * alloca.c [!alloca]: Fix the prototype for xfree.
1071
13f52ed8
KH
10722004-01-29 Kenichi Handa <handa@m17n.org>
1073
1074 * fns.c (string_char_to_byte): Optimize for ASCII only string.
1075 (string_byte_to_char): Likewise.
1076
d57625a0
JR
10772004-01-28 Peter Runestig <peter@runestig.com>
1078
1079 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
1080
a64387ee 10812004-01-27 Steven Tamm <steventamm@mac.com>
911c78b4
ST
1082
1083 * unexmacosx.c (unexec_copy): Do not copy more than was
1084 requested to prevent overwriting during unexec.
1085
eb37b8fd
JD
10862004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1087
ce38070a
JD
1088 * process.c (sigchld_handler): Add comment about not calling malloc.
1089
eb37b8fd
JD
1090 * process.h: Add extern to synch_process_termsig.
1091
a64387ee 10922004-01-27 Steven Tamm <steventamm@mac.com>
21a3e657 1093
da75761f
SM
1094 * macterm.c (make_mac_frame, make_mac_terminal_frame):
1095 Move setting of scroll bars from make_mac_frame to
1096 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
21a3e657 1097
d62a265d
RS
10982004-01-26 Richard M. Stallman <rms@gnu.org>
1099
1100 * search.c (Freplace_match): Handle nonexistent
1101 back-references properly.
1102
11032004-01-03 Richard M. Stallman <rms@gnu.org>
1104
1105 * window.c (decode_any_window): New function.
1106 (Fwindow_height, Fwindow_width, Fwindow_edges)
1107 (Fwindow_pixel_edges, Fwindow_inside_edges)
1108 (Fwindow_inside_pixel_edges): Use decode_any_window.
1109
ff236419
JD
11102004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1111
1112 * process.h: synch_process_termsig new variable.
1113
1114 * callproc.c: Define synch_process_termsig.
1115 (Fcall_process): Initiate synch_process_termsig to zero and
1116 check if non-zero and get signal name after subprocess has ended.
1117
1118 * process.c (sigchld_handler): Set synch_process_termsig
1119 if terminated by a signal. synch_process_death setting removed.
1120
1121 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
1122
41b867ea
AS
11232004-01-26 Andreas Schwab <schwab@suse.de>
1124
1125 * print.c (print_preprocess): Declare size as EMACS_INT to not
1126 lose bits.
1127 (print_object): Likewise.
1128 * alloc.c (Fpurecopy): Likewise.
1129
a08084ff
LT
11302004-01-25 Luc Teirlinck <teirllm@auburn.edu>
1131
1132 * window.c (Fwindow_minibuffer_p): Doc fix.
1133
b19ac475
JY
11342004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
1135
1136 * editfns.c (Fformat): Make both passes accept the same set of flags.
1137
fe905025
KH
11382004-01-23 Kenichi Handa <handa@m17n.org>
1139
1140 * fns.c (Fmd5): If OBJECT is a buffer different from the current
1141 one, set buffer to OBJECT temporarily.
1142
438fc6c0
SM
11432004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
1144
455316e2
SM
1145 * keyboard.c (kbd_buffer_gcpro): Remove.
1146 (kbd_buffer_store_event, clear_event, Fdiscard_input)
1147 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
1148 Don't initialize and/or maintain the variable any more. It was made
1149 redundant by my commit of 2003-06-15.
1150
438fc6c0
SM
1151 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
1152
5335a4ee
JD
11532004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1154
1155 * lisp.h: Add undef DECL_ALIGN.
1156
dcdaeebc
SM
11572004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
1158
1159 * process.c (wait_reading_process_input) [SYNC_INPUT]:
1160 Check interrupt_input_pending explicitly.
1161
1162 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
1163
1164 * keyboard.c (handle_async_input): New fun,
1165 extracted from input_available_signal.
1166 (input_available_signal, reinvoke_input_signal): Use it.
1167
9076a823
SM
11682004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
1169
d7107586
SM
1170 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
1171
1172 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
1173 manipulation macros for when tags are in the lower bits.
1174 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
1175 (DECL_ALIGN): New macro.
1176 (DEFUN): Use it.
1177
1178 * lisp.h [ENABLE_CHECKING]: Don't force union type.
1179
1180 * s/darwin.h (__attribute__): Remove outdated workaround.
1181
1182 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
1183
1184 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
1185 Don't check range of malloc address.
1186 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
1187
9076a823
SM
1188 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
1189
1190 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
1191
ba029065
KH
11922004-01-19 Kenichi Handa <handa@m17n.org>
1193
1194 * fontset.c (fontset_font_pattern): Fix previous change.
1195
7af0e8d7
MB
11962004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
1197
1198 * xdisp.c (Voverflow_newline_into_fringe)
1199 (move_it_in_display_line_to, redisplay_internal)
1200 (update_window_fringes, redisplay_window, display_line, window):
1201 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
1202 that it compiles without a window-system.
1203 * dispnew.c (direct_output_for_insert, update_window): Likewise.
1204
77a9cf69
KS
12052004-01-16 Kim F. Storm <storm@cua.dk>
1206
1207 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
1208
a64387ee 1209 * buffer.c (init_buffer_once): Set buffer_defaults and
77a9cf69
KS
1210 buffer_local_flags for indicate_buffer_boundaries.
1211 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
1212 default- variable for it.
1213
1214 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
1215 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
d7107586 1216 New members exact_window_width_line_p and cursor_in_fringe_p for
77a9cf69
KS
1217 overflowing newlines into right fringe.
1218 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
1219 and indicate_bottom_line_p for buffer boundaries and scrolling.
1220 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
1221 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
1222 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
1223 and HOLLOW_SQUARE_BITMAP.
1224 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
1225 Add prototypes.
1226
1227 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
1228 instead of related indicator fields.
1229 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
1230 (direct_output_for_insert): Handle exact width lines like
1231 contined lines. Call update_window_fringes.
1232 (update_window): Call update_window_fringes.
1233 (scrolling_window): Don't skip desired rows with changed bitmaps.
1234 Check if fringe bitmaps changes when assigning scrolled rows.
1235
1236 * xdisp.c (Voverflow_newline_into_fringe): New variable.
1237 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
1238 (move_it_in_display_line_to): Overflow newline into fringe for
1239 rows that are exactly as wide as the window.
1240 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
1241 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
1242 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
1243 (fringe_bitmaps): Add new bitmaps.
1244 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
1245 Select proper bitmap for cursor in fringe when appropriate.
1246 Handle alignment of bitmap to top or bottom of row.
1247 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
1248 done by update_window_fringes.
1249 (update_window_fringes, draw_window_fringes): New functions.
1250 (redisplay_internal): Call update_window_fringes in case only
1251 cursor row is updated.
1252 (redisplay_window): Call update_window_fringes.
1253 Explicitly call draw_window_fringes if redisplay was done using
1254 the current matrix or the overlay arrow is in the window.
1255 (try_window_reusing_current_matrix): Mark scrolled rows for
1256 fringe update (to update buffer-boundaries / scrolling icons).
1257 (find_last_unchanged_at_beg_row): Handle exact width lines line
1258 continued lines.
1259 (display_line): Overflow newline into fringe for rows that are
1260 exactly as wide as the window. Don't append space for newline
d7107586 1261 in this case.
77a9cf69
KS
1262 (notice_overwritten_cursor): Explicitly clear cursor bitmap
1263 in fringe as if it had been overwritten.
1264 (erase_phys_cursor): Erase cursor bitmap in fringe.
d7107586 1265 (syms_of_xdisp): Mark show-trailing-whitespace and
77a9cf69
KS
1266 void-text-area-pointer as user options.
1267 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
d7107586 1268
77a9cf69
KS
1269 * xterm.c (x_update_window_end): Call draw_window_fringes.
1270 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
1271 in row instead of actually drawing fringe bitmaps.
1272 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
1273 (x_draw_window_cursor): Draw cursor in fringe.
1274
1275 * w32term.c (x_update_window_end): Call draw_window_fringes.
1276 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
1277 in row instead of actually drawing fringe bitmaps.
1278 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
1279 (w32_draw_window_cursor): Draw cursor in fringe.
1280
1281 * macterm.c (x_update_window_end): Call draw_window_fringes.
1282 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
1283 in row instead of actually drawing fringe bitmaps.
1284 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
1285 (mac_draw_window_cursor): Draw cursor in fringe.
1286
a633a954
JD
12872004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1288
1289 * xterm.c (handle_one_xevent): Don't handle characters that are part
1290 of an old style (XLookupString) compose sequence.
1291
80460525
KH
12922004-01-15 Kenichi Handa <handa@m17n.org>
1293
1294 * search.c (Freplace_match): Use make_multibyte_string or
1295 make_unibyte_string according to the buffer multibyteness.
1296
7fc34f85
SM
12972004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
1298
1299 * alloc.c (struct interval_block, struct string_block)
1300 (struct symbol_block, struct marker_block, live_string_p)
1301 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
1302 Better preserve alignment for objects in blocks.
1303 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
1304
1305 * lread.c (defvar_per_buffer): Remove dead declaration.
1306
1307 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
1308 space size.
1309
66070bd1
JD
13102004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1311
1312 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
1313 if a key press should pop down. Only pop down if a key is pressed
1314 outside the menu/dialog.
1315 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
1316 popup_get_selection.
1317 (create_and_show_dialog): Pass 1 for down_on_keypress to
1318 popup_get_selection.
1319
de7515d6
JD
13202004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1321
1322 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
1323 BLOCK/UNBLOCK_INPUT.
1324
160b1b50
JD
13252004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1326
1327 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
1328 specified.
1329
3a9f36e6
KH
13302004-01-08 Kenichi Handa <handa@m17n.org>
1331
1332 * editfns.c (Fformat): Fix '&' to '&&'.
1333
3803eb32
AS
13342004-01-08 Andreas Schwab <schwab@suse.de>
1335
1336 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
1337 size if PSEUDOVECTOR_FLAG is set.
1338
9da88f37
KH
13392004-01-07 Kenichi Handa <handa@m17n.org>
1340
74ac5074
KH
1341 * charset.c (Fdeclare_equiv_charset): Fix docstring.
1342
9da88f37
KH
1343 * fontset.c (fontset_ref_via_base): Fix previous change.
1344
05faee07
KS
13452004-01-07 Kim F. Storm <storm@cua.dk>
1346
1347 * process.c (read_process_output): Only activate adaptive
1348 buffering if we read less than 256 bytes at a time.
1349
634910c8
KS
13502004-01-06 Kim F. Storm <storm@cua.dk>
1351
1352 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
1353 object and image object. Return glyph width and height.
1354 (mode_line_string, marginal_area_string): Ditto.
1355
1356 * dispextern.h (buffer_posn_from_coords, mode_line_string)
1357 (marginal_area_string): Fix prototypes.
1358
1359 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
1360 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
1361 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
1362
1363 * keyboard.c (make_lispy_position): Use modified mode_line_string,
1364 buffer_posn_from_coords, and marginal_area_string functions to
1365 include both string object and image object in the lispy position.
1366 Also add actual glyph width and height to position.
1367 (read_key_sequence): Use real buffer position from mouse
1368 event to find keymap property even when click is in marginal area.
1369
1370 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
1371 mode_line_string and marginal_area_string functions to handle
1372 both string object and image object properties.
d7107586 1373
57951c2e
AS
13742004-01-06 Andreas Schwab <schwab@suse.de>
1375
1376 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
1377 character.
1378
181e6a61
AS
13792004-01-02 Andreas Schwab <schwab@suse.de>
1380
d7107586
SM
1381 * macterm.c (emacs_options, x_initialized, same_x_server):
1382 Remove unused (and duplicated) definitions.
181e6a61 1383
31e0fbdd
KS
13842004-01-02 Kim F. Storm <storm@cua.dk>
1385
1386 * process.h (struct Lisp_Process): New members for adaptive read
1387 buffering: adaptive_read_buffering, read_output_delay, and
1388 read_output_skip.
1389
1390 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
1391 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
1392 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
1393 (process_output_delay_count, process_output_skip): New vars.
1394 (Vprocess_adaptive_read_buffering): New variable.
1395 (make_process): Initialize adaptive read buffering members.
1396 (Fstart_process): Set adaptive_read_buffering member.
1397 (deactivate_process): Cleanup adaptive read buffering.
1398 (wait_reading_process_input): Temporarily omit delayed
1399 subprocesses from the set of file descriptors to read from;
1400 adjust the select timeout if we skipped any subprocesses.
1401 (read_process_output): Increase adaptive read buffering delay if
1402 we read less than a full buffer; reduce delay when we read a
1403 full buffer.
1404 (send_process): Simplify using local Lisp_Process var.
1405 Reset adaptive read buffering delay after write.
1406 (init_process): Initialize process_output_delay_count and
1407 process_output_skip.
1408 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
1409
68c6a789
JR
14102004-01-01 Jason Rumney <jasonr@gnu.org>
1411
d7107586 1412 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
68c6a789 1413
3f70fe82
LT
14142003-12-30 Luc Teirlinck <teirllm@auburn.edu>
1415
1416 * print.c (Ferror_message_string): Add hyperlink in the docstring
1417 to the definition of `signal' in the Elisp manual.
1418 * eval.c (Fsignal): Ditto.
1419
a64387ee 14202003-12-29 James Clark <jjc@jclark.com> (tiny change)
c2be49ed
EZ
1421
1422 * fns.c (internal_equal): Return t for two NaN arguments.
1423
7abd90ea
RS
14242003-12-29 Richard M. Stallman <rms@gnu.org>
1425
1426 * data.c (store_symval_forwarding): Handle setting
1427 default-fill-column, etc., by changing the value in
1428 buffers that use the default.
1429
1430 * minibuf.c (Fset_minibuffer_window): Doc fix.
1431
1432 * fileio.c (choose_write_coding_system): Ignore auto_saving
1433 if using the visited file for auto saves.
1434 (Fwrite_region): Don't update SAVE_MODIFF
1435 if auto-saving in visited file.
1436
3e7cfcdc
KH
14372003-12-29 Kenichi Handa <handa@m17n.org>
1438
1439 * dispextern.h (face_font_available_p): Extern it.
1440
1441 * fontset.c (Voverriding_fontspec_alist): New variable.
1442 (lookup_overriding_fontspec): New function.
d7107586 1443 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
3e7cfcdc
KH
1444 (fontset_font_pattern): Likewise.
1445 (regulalize_fontname): New function.
1446 (Fset_fontset_font): Call regulalize_fontname.
1447 (Fset_overriding_fontspec_internal): New function.
d7107586
SM
1448 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
1449 Defsubr Sset_overriding_fontspec_internal.
3e7cfcdc
KH
1450
1451 * xfaces.c (face_font_available_p): New function.
1452
7abd90ea
RS
14532003-12-28 Richard M. Stallman <rms@gnu.org>
1454
1455 * buffer.c (Fother_buffer): Don't crash if BUF is nil
1456 or if its name is nil.
1457
1458 * buffer.c (Fkill_buffer): Don't delete auto-save file
1459 if it's the same as the visited file.
1460
de1d1a40
LT
14612003-12-28 Luc Teirlinck <teirllm@auburn.edu>
1462
1463 * coding.c (Fcheck_coding_system): Doc fix.
1464
204fb75e
KS
14652003-12-28 Kim F. Storm <storm@cua.dk>
1466
1467 * Makefile.in (eval.o): Depend on dispextern.h.
1468
1469 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
1470 image glyph using image's ascent.
1471 (mode_line_string): Return image glyph as object clicked on.
1472 Adjust y0 for image glyph using image's ascent.
1473
1474 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
1475 (struct glyph): New members, ascent and descent. Used to save
1476 this glyph's ascent and descent, instead of having.
1477 (struct glyph): Declare member face_id using FACE_ID_BITS.
1478 (find_hot_spot): Add prototype.
1479
1480 * keyboard.c (Qimage): Remove extern (now in lisp.h).
1481 (QCmap): Declare extern.
1482 (make_lispy_position): When position is inside image hot-spot,
1483 use hot-spot element's id as posn element.
1484
1485 * lisp.h (IMAGEP): New macro to test for image object type.
1486 (Qimage): Declare extern.
1487
1488 * macfns.c (Qimage): Remove extern (now in lisp.h).
1489 (valid_image_p, parse_image_spec): Use IMAGEP macro.
1490
1491 * macterm.c (Qface, Qmouse_face): Remove unused externs.
1492
1493 * w32fns.c (Qimage): Remove extern (now in lisp.h).
1494 (valid_image_p, parse_image_spec): Use IMAGEP macro.
1495
1496 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
1497
1498 * w32term.c (Qface, Qmouse_face): Remove unused externs.
1499
1500 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
1501 pointer types.
1502 (Qrelative_width, Qalign_to): Remove unused variables.
1503 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
1504 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
1505 image maps.
d7107586 1506 (x_y_to_hpos_vpos): Return glyph relative coordinates through
204fb75e
KS
1507 new dx and dy args.
1508 Remove buffer_only_p arg (always 0). Simplify code accordingly.
1509 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
1510 than row's ascent and height, to get sensible height on tall rows.
1511 (build_desired_tool_bar_string): Remove Qimage extern.
1512 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
1513 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
1514 image glyph is alone on the last line.
1515 (append_glyph, append_composite_glyph, produce_image_glyph)
d7107586 1516 (append_stretch_glyph): Set glyph's ascent and descent.
204fb75e 1517 (on_hot_spot_p): New function to check if position is inside an
d7107586 1518 rectangular, circular, or polygon-shaped image hot-spot,
204fb75e
KS
1519 (find_hot_spot): New function to search for image hot-spot.
1520 (Flookup_image_map): New defun to search for image hot-spot.
1521 (define_frame_cursor1): New aux function to determine frame pointer.
1522 (note_mode_line_or_margin_highlight, note_mouse_highlight):
1523 Handle `pointer' text property and :pointer image property to
1524 control frame pointer shape. Detect image hot-spots for pointer
1525 and help_echo properties. Use define_frame_cursor1.
1526 (note_mouse_highlight): Use Vvoid_text_area_pointer.
1527 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
1528 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
1529
1530 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
1531
1532 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
1533 (Qimage): Remove extern (now in lisp.h).
1534 (valid_image_p, parse_image_spec): Use IMAGEP macro.
1535
1536 * xmenu.c (show_help_event): Remove unused code.
1537
1538 * xterm.c (Qface, Qmouse_face): Remove unused externs.
1539 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
1540 row's ascent and descent, to get a sensible height on tall rows.
1541
fc052137
LT
15422003-12-25 Luc Teirlinck <teirllm@auburn.edu>
1543
1544 * minibuf.c (Fcompleting_read): Undo previous change.
1545
a64387ee 15462003-12-25 Lars Hansen <larsh@math.ku.dk>
b9148500
LH
1547
1548 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
1549 Arguments GCPRO'ed in call to file name handler.
1550
56ffd194
TTN
15512003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
1552
1553 * termcap.c (tgetst1): Scan for "%pN"; if all
1554 N are continuous in [1,9], remove all "%pN".
1555
5202d23d
JD
15562003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1557
f26fab36
JD
1558 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
1559
5202d23d
JD
1560 * xfaces.c (lface_fully_specified_p): Take into account that
1561 MAC OS always have unspecified stipple.
1562
8babaa59
TTN
15632003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
1564
1565 * tparam.c (tparam1): Add handling for `%pN', which
1566 means use param N for the next substitution.
1567
2d176448
TTN
15682003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
1569
1570 * xfaces.c (Fcolor_gray_p): Fix omission bug:
1571 In case `frame' is nil, consult the selected frame.
1572 (Fcolor_supported_p): Likewise.
1573
adb0708c
LT
15742003-12-23 Luc Teirlinck <teirllm@auburn.edu>
1575
000eeb15
LT
1576 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
1577 Doc fixes.
0dc72b11
LT
1578
1579 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
1580 and an integer. Adapt the introductory comment accordingly.
adb0708c
LT
1581 (Fread_from_minibuffer): Delete code moved into read_minibuf.
1582 Doc fix.
1583 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
1584 read_minibuf.
1585 (Fcompleting_read): Delete code moved into read_minibuf.
d7107586 1586 (Ftest_completion): Make it handle obarrays and hash tables correctly.
adb0708c 1587
2e4d132b
KH
15882003-12-03 Kenichi Handa <handa@m17n.org>
1589
1590 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
1591 encoding sequence.
1592
3999c705
KH
15932003-12-01 Kenichi Handa <handa@m17n.org>
1594
1595 * composite.c (syms_of_composite): Don't make the compostion hash
1596 table week.
1597
d344ecbb
LT
15982003-11-30 Luc Teirlinck <teirllm@auburn.edu>
1599
1600 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
1601 * textprop.c (Fget_char_property_and_overlay): New function.
1602 (syms_of_textprop): Defsubr it.
1603
03d6484e
JD
16042003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1605
019b1f0e
JD
1606 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
1607 to compile on terminal configuration.
1608
03d6484e
JD
1609 * fileio.c (Fread_file_name): Check use_file_dialog also before
1610 calling Fx_file_dialog.
1611
1612 * fns.c: use_file_dialog: New variable.
1613 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
1614
442d3fd0
KS
16152003-11-29 Kim F. Storm <storm@cua.dk>
1616
1617 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
1618 (syms_of_msdos): Don't intern and staticpro them.
1619
0f6a07a8
KS
16202003-11-27 Kim F. Storm <storm@cua.dk>
1621
1622 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
1623 coordinates relative to glyph at posn. If glyph is an image,
1624 return that as object at posn. Callers changed.
1625 (mode_line_string, marginal_area_string): Calculate and return
1626 pixel coordinates relative to glyph. Callers changed.
1627
1628 * dispextern.h (buffer_posn_from_coords, mode_line_string)
1629 (marginal_area_string): Fix prototypes.
1630 (window_box_left_offset, window_box_right_offset): Add prototypes.
1631
1632 * frame.h (get_specified_cursor_type, get_window_cursor_type):
1633 Remove prototypes.
1634
1635 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
1636
1637 * keyboard.c (make_lispy_position): Add x and y coordinates
1638 relative to the current glyph as 7th element of position.
1639 If glyph is an image, return it in the object element.
1640 (read_key_sequence): Skip checks for keymap property in cases
1641 where POSN_STRING is not a string (e.g. an image).
1642
1643 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
1644 (Vshow_text_cursor_in_void): New variable.
1645 (glyph_to_pixel_coords): Don't use negative hpos.
1646 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
1647 (append_stretch_glyph): Change ascent arg to be actual value
1648 in pixels rather than ratio to height. Callers changed.
1649 (calc_pixel_width_or_height): New aux function, implementing
1650 pixel based artihmetic for glyph widths and heights.
1651 (produce_stretch_glyph): Use calc_pixel_width_or_height for
1652 :width, :height, :align-to, and :ascent, thus allowing these to
1653 be specified in pixels as well as multiples of characters.
1654 Don't produce stretch glyphs with zero width or height.
1655 (get_specified_cursor_type): Declare static.
1656 (get_window_cursor_type): Declare static. Add glyph arg to be
1657 able to know when cursor is on an image; always substitute
1658 hollow-box cursor for filled-box cursor on images, to avoid
1659 negative images and flicker when blinking the cursor.
1660 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
1661 (note_mode_line_or_margin_highlight): Use non-text cursor rather
1662 than vertical scroll-bar cursor in display margins.
1663 (note_mouse_highlight): Use non-text cursor rather than text
1664 cursor in fringes and over images in the text area.
1665 Use non-text cursor when mouse pointer is outside editable text,
1666 i.e. in the void after end-of-line or end-of-buffer; this was
1667 already done for W32, but is now standard for all systems --
1668 user can toggle show-text-cursor-in-void to get old behaviour.
1669 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
1670 Vdisplay_pixels_per_inch.
1671
00498bfc
AS
16722003-11-25 Andreas Schwab <schwab@suse.de>
1673
1674 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
1675 EMACS_INT to not lose bits.
1676 (Ffillarray): Don't set bits beyond the size of a bool vector.
1677
edaa824d
KS
16782003-11-25 Kim F. Storm <storm@cua.dk>
1679
1680 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
1681 define this defun on systems that cannot use stderr as lvalue.
1682
74d6f539
GM
16832003-11-24 Gerd Moellmann <gerd@gnu.org>
1684
1685 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
1686 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
1687 ld's default is incompatible with unexec.
1688
6a1ff3ba
KS
16892003-11-23 Kim F. Storm <storm@cua.dk>
1690
63dc7c6b
KS
1691 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
1692 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
1693 (Fforce_window_update): New defun.
1694 (syms_of_window): Defsubr it.
1695 (Fset_window_margins, Fset_window_fringes): Doc fix.
1696
6a1ff3ba
KS
1697 * print.c (Fredirect_debugging_output): New defun.
1698 (syms_of_print): Defsubr it.
1699
aef109b7
LT
17002003-11-22 Luc Teirlinck <teirllm@auburn.edu>
1701
1702 * fns.c (Fset_char_table_parent): Doc fix.
1703
6a1ff3ba 17042003-11-22 Kim F. Storm <storm@cua.dk>
63ccbe21
KS
1705
1706 * dispnew.c (buffer_posn_from_coords): Return actual row/column
1707 for glyph clicked on, rather than (unused) pixel positions.
1708 (mode_line_string, marginal_area_string): Change X and Y args to
1709 pointers for returning actual row/column for glyph clicked on.
1710 Simplify and optimize loops.
1711
aef109b7
LT
1712 * dispextern.h (mode_line_string, marginal_area_string):
1713 Update prototypes.
63ccbe21
KS
1714
1715 * keyboard.c (make_lispy_position): New function for generating
1716 mouse click positions from frame and pixel coordinates.
1717 Enhanced to return buffer position and actual row/column for
1718 events outside the text area using updated mode_line_string and
1719 marginal_area_string functions.
1720 Return left-fringe and right-fringe clicks as such, rather than
1721 clicks in text area.
1722 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
1723 pixel_to_glyph_coords, as we never use the results.
1724 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
1725 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
1726 Eliminate unused code in WHEEL_EVENT handling.
1727 (make_lispy_movement): Use make_lispy_position.
1728
1729 * window.c (coordinates_in_window): Remove redundant tests.
1730 Fix returned X pixel value for left-margin.
1731
1732 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
1733 mode_line_string and marginal_area_string parameters.
1734
a64387ee 17352003-11-22 Lars Hansen <larsh@math.ku.dk>
930a9995 1736
d7107586
SM
1737 * w32.c (struct the_group, getgrgid): Add.
1738 * mac.c (struct my_group, getgrgid): Add.
aef109b7 1739
3dbf3426
LT
17402003-11-21 Luc Teirlinck <teirllm@auburn.edu>
1741
1742 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
1743
cae8ddbb 17442003-11-21 Lars Hansen <larsh@math.ku.dk>
ded4064f 1745
d7107586
SM
1746 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
1747 include in call to file name handler. Optionally translate numeric
1748 UID and GID to strings. Update docstring.
1749 (directory_files_internal): Add parameter ID-FORMAT.
1750 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
1751 include in call to file name handler and call to
1752 directory_files_internal. Update Docstring.
1753 (Fdirectory_files): Add dummy parameter in call to
1754 directory_files_internal.
1755 * lisp.h (Qinteger): Add.
1756 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
1757 (Ffile_attributes): Add parameter.
1758 * data.c (Qinteger): Export.
cae8ddbb 1759
2550b848
LT
17602003-11-21 Luc Teirlinck <teirllm@auburn.edu>
1761
3dbf3426 1762 * fns.c (Freverse, Fnreverse): Doc fixes.
2550b848 1763
88380018
KS
17642003-11-19 Kim F. Storm <storm@cua.dk>
1765
1766 * xdisp.c (init_iterator): Initialize it->start to position
1767 before reseating (in case start position is invisible).
1768 (init_to_row_start): Set it->start to row-start.
1769 (redisplay_window): Accept optional_new_start if start position
1770 is invisible (in which case IT_CHARPOS overshoots PT).
1771 (display_line): Setup row->start from it->start (rather than
1772 it->current which is wrong if first char on line is invisible).
1773 When done, reseat it->start to it->current (= start of next row).
1774 (expose_area): Fix exposure of text area when first char (e.g. TAB)
1775 is only partially visible.
1776
1777 * dispextern.h (struct it): New member start.
1778
854c1a59
SM
17792003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
1780
455316e2
SM
1781 * alloc.c (make_float, Fcons): Clear the markbit at init time.
1782 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
1783 of block_index outside of the macro call.
1784 (Fgarbage_collect): Remove null code.
1785
1786 * m/amdx86-64.h: Don't redefine XPNTR.
1787
854c1a59
SM
1788 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
1789 of VALMASK.
1790
1791 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
1792 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
1793 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
1794
1795 * lisp.h (VALMASK): Only define for non-union type.
1796 (MARKBIT): Remove.
1797 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
1798 (XTYPE): Define unconditionally.
1799 (XSETTYPE): Remove one more remnant.
1800 (EQ): Define differently for the union and non-union cases.
1801 (INTMASK): New bit mask.
1802 (struct Lisp_Marker): Move down to prepare for upcoming patch.
1803 (GC_EQ): Delegate to EQ.
1804
1805 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
1806
a0c6ef2d
JD
18072003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1808
1809 * xterm.c (x_window_to_scroll_bar): Move check of display to
1810 where window_id is compared.
1811
859492c4
KS
18122003-11-17 Kim F. Storm <storm@cua.dk>
1813
1814 * dispextern.h (struct it): New member first_vpos.
1815
1816 * xdisp.c (start_display): Set it->first_vpos.
1817 (try_window_id): Use first_vpos to start display in first _text_
1818 line if no reusable lines at start of window with header line.
1819
810f2256
JD
18202003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1821
7c402969 1822 * w32fns.c (XPutPixel):
854c1a59
SM
1823 * w32bdf.c (w32_init_bdf_font):
1824 * sunfns.c (sel_read):
1825 * process.c (Fmake_network_process):
1826 * frame.c (store_frame_param):
1827 * fontset.c (Fset_fontset_font):
1828 * emacs.c (shut_down_emacs):
a64387ee 1829 * ccl.c (ccl_driver): Remove period at end of error message.
7c402969 1830
a32e9bfd
JD
1831 * config.in: Regenerate.
1832
810f2256
JD
1833 * xfns.c (x_window_to_frame, x_any_window_to_frame)
1834 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
1835 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
1836 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
1837 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
1838
1839 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
1840
1841 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
1842 (XTmouse_position, handle_one_xevent): Pass Display* to
1843 x_window_to_scroll_bar.
1844 (x_window_to_scroll_bar): Take a Display* argument.
1845 Check that display for frame is equal to Display* argument.
854c1a59 1846 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
810f2256
JD
1847 x_display_info_for_display instead. Use Display in xev instead
1848 of GDK_DISPLAY.
1849 (x_dispatch_event): Call x_display_info_for_display.
1850 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
1851 (x_connection_closed): Call xg_display_close for GTK.
1852 (x_term_init): Call xg_display_open for additional displays.
1853 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
1854 for GTK.
1855
1856 * xmenu.c (single_menu_item, mouse_position_for_popup)
1857 (x_activate_menubar): Formatting adjustments.
1858
1859 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
1860 adjustments.
1861
1862 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
1863 (xg_display_close, xg_create_default_cursor)
1864 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
1865 handling.
854c1a59
SM
1866 (xg_left_ptr_cursor): Remove.
1867 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
810f2256
JD
1868 cursor here.
1869 (xg_win_to_widget): Take Display* argument, call
1870 gdk_xid_table_lookup_for_display.
1871 (xg_create_frame_widgets, xg_get_file_name, create_menus)
1872 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
1873 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
1874 in FRAME_X_DISPLAY_INFO.
1875 (xg_get_scroll_id_for_window): Take Display* argument.
1876 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
854c1a59 1877 (xg_initialize): Remove xg_left_ptr_cursor.
810f2256
JD
1878
1879 * gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
1880 Display* argument also. Declare xg_display_open,
1881 xg_display_close, xg_create_default_cursor.
1882
0b03cc78
JD
18832003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1884
1885 * xterm.c (x_detect_focus_change): Do not change focus frame for
1886 Enter/LeaveNotify if the current focus frame has explicit focus.
1887
77e688fa
KS
18882003-11-14 Kim F. Storm <storm@cua.dk>
1889
1890 * dispnew.c (update_text_area): Fix redisplay error when hscroll
1891 is active and first glyph is only partially visible.
854c1a59 1892
dd429b03
KH
18932003-11-13 Kenichi Handa <handa@m17n.org>
1894
1895 * xdisp.c (select_frame_for_redisplay): New function.
1896 (redisplay_internal): Record also selected_frame for
1897 unwind_redisplay. Call select_frame_for_redisplay before
1898 redrawing each frame.
1899 (unwind_redisplay): Argument changed to a cons.
1900
6d9266f4
LT
19012003-11-12 Luc Teirlinck <teirllm@auburn.edu>
1902
1903 * fns.c (Fstring_to_multibyte): Doc fix.
1904
80060eb3
KH
19052003-11-11 Kenichi Handa <handa@m17n.org>
1906
1907 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
1908
74305183
JD
19092003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1910
1911 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
1912 program specified positions.
1913
cfda993e
JD
19142003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1915
1916 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
1917
df211069
KH
19182003-11-08 Kenichi Handa <handa@m17n.org>
1919
1920 * Makefile.in (lisp): Add kannada.el.
1921 (shortlisp): Likewise.
1922
4307d534
KH
19232003-11-07 Kenichi Handa <handa@m17n.org>
1924
854c1a59
SM
1925 * coding.c (coding_allocate_composition_data):
1926 Reset coding->composing to COMPOSITION_NO.
4307d534
KH
1927 (coding_restore_composition): Detect invalid composition data.
1928 Give Fstring and Fvector a Lispy integer, not C int.
1929
854c1a59
SM
19302003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
1931
1932 * floatfns.c (Flogb): Don't use VALMASK.
1933
1934 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
1935 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
1936
1937 * lisp.h (XINT): Move the cast to clarify what is going on.
1938 (GCTYPEMASK, XSETTYPE): Remove.
1939 (XGCTYPE): Make it an alias of XTYPE.
1940
d04103a1
JD
19412003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1942
1943 * xterm.c (x_term_init): Fix formatting.
1944
da18b5ac
JD
19452003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1946
1947 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
1948 and xg_did_tearoff.
1949
1950 * gtkutil.c: Remove variable xg_did_tearoff.
1951 (xg_have_tear_offs): New function.
1952 (tearoff_remove): Just decrease xg_detached_menus.
1953 (tearoff_activate): Increase xg_detached_menus and call
1954 tearoff_remove when tearoff is removed.
854c1a59 1955 (xg_keep_popup): Remove function.
da18b5ac
JD
1956 (create_menus): Give add_tearoff_p as argument to recursive
1957 call to create_menus.
1958 (xg_create_widget): Use variables instead of multiple
1959 strcmp. Tell create_menus to create tear off only for
1960 menu bar menus.
1961 (xg_update_menubar): Change title for a detached menu also.
1962 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
1963 of deep_p.
1964 (xg_initialize): Initialize xg_detached_menus, remove
1965 initialization of xg_did_tearoff.
1966
1967 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
1968 xg_have_tear_offs returns non-zero.
1969 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
1970 call to xg_keep_popup.
1971
64d4923e
AC
19722003-11-01 Andrew Choi <akochoi@shaw.ca>
1973
1974 * macterm.c (XTread_socket): Handle menubar selection and grow
1975 window only for mouseDown events.
854c1a59 1976
6cc8bc07
JD
19772003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1978
1979 * xterm.c (x_term_init): For GTK part, increase x_initialized
1980 to check for more than one display. Use error instead of return 0.
1981
043131c4
AC
19822003-10-31 Andrew Choi <akochoi@shaw.ca>
1983
854c1a59 1984 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
043131c4
AC
1985 (copy_dysymtab): Call it.
1986
bdda99a1
LT
19872003-10-31 Luc Teirlinck <teirllm@auburn.edu>
1988
1989 * eval.c (Fdefvaralias): Doc fix.
1990
800f42ff 19912003-10-26 Luc Teirlinck <teirllm@auburn.edu>
0d11571e
LT
1992
1993 * data.c (Fsetplist): Doc fix.
1994
ef35b389
LK
19952003-10-14 Lute Kamstra <lute@gnu.org>
1996
1997 * window.c (Fset_window_fringes): Clarify docstring.
07107abc 1998
ef35b389 19992003-10-14 Kim F. Storm <storm@cua.dk>
854c1a59 2000
07107abc
KS
2001 * window.c (Fset_window_margins): Simplify arg checking.
2002
f7005886
RS
20032003-10-13 Richard M. Stallman <rms@gnu.org>
2004
2005 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
2006 (print_partial_compiled_pattern): Replace assert with a printout.
2007 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
2008
2009 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
2010
2011 * window.c (Fset_window_margins): Allow only integers as args.
2012 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
2013 Doc fixes.
2014
9c0c2af5
LK
20152003-10-13 Lute Kamstra <lute@gnu.org>
2016
2017 * window.c (Fset_window_fringes): Elaborate docstring.
2018
3f080e4e
AC
20192003-10-12 Andrew Choi <akochoi@shaw.ca>
2020
854c1a59 2021 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
a4887377 2022
3f080e4e
AC
2023 * s/darwin.h (GC_MARK_STACK): Define.
2024
0aa513ed
JD
20252003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2026
2027 * window.c (shrink_windows): New function.
2028 (size_window): Call shrink_windows to calculate window sizes when
2029 shrinking frame with more than one window.
2030
6aa8858a
KS
20312003-10-12 Kim F. Storm <storm@cua.dk>
2032
2033 * xdisp.c (compute_fringe_widths): Doc fix.
2034
c2164d91
KH
20352003-10-08 Kenichi Handa <handa@m17n.org>
2036
854c1a59 2037 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
c2164d91 2038
f82ac129
KH
20392003-10-07 Kenichi Handa <handa@m17n.org>
2040
2041 * coding.c (Qcoding_system_define_form): New variable.
2042 (syms_of_coding): Intern and staticpro it.
2043 (Fcheck_coding_system): Try to autoload the definition of
2044 CODING-SYSTEM.
2045
9296c947
LT
20462003-10-05 Luc Teirlinck <teirllm@auburn.edu>
2047
2048 * fns.c (Frequire): Doc fix.
2049
c1f0671a
JD
20502003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2051
3d8c3826
JD
2052 * xfns.c (Fx_send_client_event): New function as a base for
2053 manipulating extended window manager hints.
6dc15d98 2054 (Fx_send_client_event): Remove unused variable s.
3d8c3826 2055
068ae0fd
JD
2056 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
2057 that function is removed.
2058
2059 * xterm.c (x_set_offset): Use move_offset_left/top instead of
2060 x/y_pixels_outer_diff.
2061 (x_check_expected_move): Calculate move_offset_left/top.
2062
2063 * xterm.h (struct x_output): New members: move_offset_top/left.
2064
854c1a59 2065 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
068ae0fd
JD
2066 call x_set_offset directly.
2067
2068 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
2069
96f09305
JD
2070 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
2071
2072 * xterm.c (x_delete_display): Free font names and font_encoder
2073 in dpyinfo->font_table.
2074
854c1a59
SM
2075 * xfns.c (Fx_close_connection): Only call XFreeFont here.
2076 Move xfree of font names to x_delete_display.
96f09305 2077
c1f0671a
JD
2078 * xterm.h (struct x_display_info): New member, wm_type.
2079 (struct x_output): New members, expected_top/left and
2080 check_expected_move.
2081
2082 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
2083 is received.
854c1a59
SM
2084 (handle_one_xevent): Rename x_check_expected_move from
2085 x_check_fullscreen_move.
c1f0671a
JD
2086 (x_set_offset): Only add WM decoration sizes to modified_top/left
2087 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
854c1a59 2088 (x_check_expected_move): Rename from x_check_fullscreen_move.
c1f0671a
JD
2089 Removed fullscreen specific code. Use check_expected_move,
2090 expected_left/top instead. Also, set wm_type.
2091 (x_term_init): Initialize wm_type to unknown.
2092
2093 * frame.c (x_fullscreen_move): Remove addition of WM decoration
2094 sizes to move_x/y.
2095
be2fdba9
KH
20962003-10-03 Kenichi Handa <handa@m17n.org>
2097
2098 * macterm.c (x_load_font): Clear all members of FONTP before start
2099 filling them.
2100
21012003-10-02 Kenichi Handa <handa@m17n.org>
2102
2103 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
2104 before calling find_ccl_program_func. Call find_ccl_program_func
2105 only when fontp->font_encoder is not NULL.
2106
2107 * xterm.c (x_load_font): Clear all members of FONTP before start
2108 filling them.
2109
26a6e439
JPW
21102003-10-03 John Paul Wallington <jpw@gnu.org>
2111
2112 * keymap.c (map_keymap): Don't abort when binding is a vector.
2113
0d4c2dc2
JR
21142003-10-02 Jason Rumney <jasonr@gnu.org>
2115
854c1a59
SM
2116 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
2117 Sync dependencies with Makefile.in.
a63cf46f
JR
2118 (alloca.o): Remove.
2119
0d4c2dc2
JR
2120 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
2121 filling them.
2122
2123 * w32bdf.c (w32_load_bdf_font): Likewise.
2124
ab8f7d5c
RS
21252003-09-30 Richard M. Stallman <rms@gnu.org>
2126
2127 * term.c (set_tty_color_mode): Calculate current_mode_spec
2128 regardless of value of VAL.
2129
854c1a59 2130 * intervals.c (graft_intervals_into_buffer):
ab8f7d5c
RS
2131 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
2132 Handle over_used when splitting UNDER.
2133
a64387ee 21342003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ab8f7d5c
RS
2135
2136 * regex.c (regex_compile): Free the stack when returning from function.
2137
3413f972
KH
21382003-09-28 Kenichi Handa <handa@m17n.org>
2139
2140 * fontset.c (Finternal_char_font): Change return value to
2141 cons (FONT-NAME . GLYPH-CODE).
2142
40409f05
EZ
21432003-09-28 Eli Zaretskii <eliz@elta.co.il>
2144
2145 * term.c (tty_setup_colors): Treat any negative argument as -1.
2146
f98ddc99
KH
21472003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
2148
2149 * process.c (send_process): Delete unused temp_buf.
2150
66c8f1a8
DL
21512003-09-26 Dave Love <fx@gnu.org>
2152
2153 * xterm.c (x_bitmap_mask): Declare.
2154
ca716c26
DL
21552003-09-25 Dave Love <fx@gnu.org>
2156
2157 * Makefile.in (fns.o): Depend on md5.h.
2158
fbe57420
KS
21592003-09-25 Kim F. Storm <storm@cua.dk>
2160
2161 * window.c (set_window_buffer): Fix redisplay problems when
2162 switching between buffers with different display margin widths.
2163
ef6ae4ff
KS
21642003-09-23 Kim F. Storm <storm@cua.dk>
2165
2166 * process.c (set_socket_option): Fix :bindtodevice option.
2167 (Fset_network_process_option): Update process contact list when
2168 setting option succeeds.
2169 (Fmake_network_process): Doc fix.
2170
68e03c1c
DL
21712003-09-23 Dave Love <fx@gnu.org>
2172
7146d1c1 2173 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
68e03c1c 2174
2f809aae
EZ
21752003-09-22 Eli Zaretskii <eliz@elta.co.il>
2176
2177 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
2178 color mode is an integer number (it could be -1).
2179
8fe7d8c8
RS
21802003-09-22 Richard M. Stallman <rms@gnu.org>
2181
2182 * intervals.c (graft_intervals_into_buffer): Correct the main loop
2183 in the case where OVER is longer than UNDER.
2184
2f71b5ea
MY
21852003-09-22 Masatake YAMATO <jet@gyve.org>
2186
7146d1c1 2187 * window.c (Fset_window_scroll_bars): Validate the value of
2f71b5ea 2188 `vertical_type'.
7146d1c1 2189
0c4da023
KS
21902003-09-21 Kim F. Storm <storm@cua.dk>
2191
2192 * frame.c (Vdefault_frame_scroll_bars): New variable.
2193 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
2194 (syms_of_frame): DEFVAR_LISP it, and initialize according to
2195 window-system default scroll bar position.
2196
b648413b
KS
2197 * window.c (Fwindow_scroll_bars): Doc fix.
2198
8f5b9e34
JD
21992003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2200
854c1a59 2201 * xterm.c (x_set_offset): Take window manager decorations into account.
8f5b9e34 2202
b0f23edf
RS
22032003-09-19 Richard M. Stallman <rms@gnu.org>
2204
2205 * atimer.h: Don't include lisp.h.
2206 (P_): Define it here (as well as elsewhere).
2207
2208 * print.c (Fprin1_to_string): Move the PRINTPREPARE
2209 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
2210
2211 * data.c (Fvariable_binding_locus): New function.
2212 (syms_of_data): defsubr it.
2213 (Flocal_variable_p): Delete duplicate call to indirect_variable.
2214
e1283999
DL
22152003-09-18 Dave Love <fx@gnu.org>
2216
ad5f3636
DL
2217 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
2218
e1283999
DL
2219 * process.c (Fnetwork_interface_info): Fix type error.
2220 (Fnetwork_interface_list): Doc fix.
2221 (read_process_output, read_process_output): Delete unused var.
2222
b8c7fd71
KS
22232003-09-17 Kim F. Storm <storm@cua.dk>
2224
2225 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
2226 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
2227 (Fnetwork_interface_info): Check that ifreq struct has required
2228 fields before accessing them; this requires that those fields are
2229 defined as macros, which may be too restrictive on some platforms,
2230 but it is better than failing on other platforms.
2231 (syms_of_process): Only defsubr above fns when included.
2232
11e0a411
DL
22332003-09-17 Dave Love <fx@gnu.org>
2234
2235 * unexalpha.c: Don't include varargs.h.
2236
e9c50801
KS
22372003-09-17 Kim F. Storm <storm@cua.dk>
2238
2239 * process.c (Fset_process_sentinel): Add sentinel to childp plist
2240 for network process.
2241 (socket_options): Add `:' prefix to option names. Add optbit field.
2242 (set_socket_option): Remove no_error arg and special handling of s < 0.
2243 Return 1<<optbit for known option, 0 for unknown.
2244 Do not interpret 0 as false for boolean option (only nil).
2245 Pass failed option and value to report_file_error.
7146d1c1 2246 (Fset_network_process_options): Replace by Fset_network_process_option.
e9c50801
KS
2247 (Fset_network_process_option): New function to set just one option.
2248 (Fmake_network_process): Allow :coding arg to be a cons.
2249 Allow :server arg to be an integer specifying backlog size.
2250 Remove :options arg, and allow options to be specified directly
2251 as :KEY, VALUE pairs. Parse these options before binding socket.
2252 As before, :reuseaddr t is default for a server process, but this
2253 can now be disabled by specifying :reuseaddr nil.
2254 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
2255 (init_process): Availability of network options is now checked with
2256 simpler syntax (featurep 'make-network-process :OPTION); use loop to
2257 setup features.
2258 (syms_of_process): Fix defsubr's for the replaced functions.
2259
a0fc3644
DL
22602003-09-16 Dave Love <fx@gnu.org>
2261
2262 * Makefile.in: Depend on coding.h.
2263
6df2a645
KS
22642003-09-14 Kim F. Storm <storm@cua.dk>
2265
2266 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
2267 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
2268 (syms_of_process): Defsubr them.
2269
2270 * config.in: Regenerate.
7146d1c1
SM
2271
22722003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
2273
2274 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
2275 * m/news-r6.h (XUNMARK): Remove.
2276 * m/mips.h (XUNMARK): Remove.
2277 * m/mips-siemens.h (XUNMARK): Remove.
2278 * m/iris4d.h (XUNMARK): Remove.
2279 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
2280
0930c1a1
SM
22812003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
2282
31003b9e
SM
2283 * lisp.h (VALBITS): Don't remove 1 for the markbit.
2284 (union Lisp_Object): Use unsigned int for types. Remove markbit.
2285 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
2286 (XTYPE): Use unsigned right-shift.
2287 (XMARKBIT, XMARK, XUNMARK): Remove.
2288
0930c1a1
SM
2289 * alloc.c (init_intervals, init_symbol, init_marker):
2290 Don't preallocate anything.
2291 (Fgarbage_collect, mark_object): Ignore the markbit.
2292
2293 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
2294
19bb0fcd 22952003-09-08 Lute Kamstra <lute@gnu.org>
5df034de
LK
2296
2297 * xdisp.c (pint2hrstr): New function.
2298 (decode_mode_spec): Add `%i' and `%I' specs.
2299 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
2300 for `mode-line-format'.
2301
03bb6a06
AS
23022003-09-07 Andreas Schwab <schwab@suse.de>
2303
2304 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
2305 avoid warning.
2306
2063d89c
EZ
23072003-09-07 Eli Zaretskii <eliz@elta.co.il>
2308
0930c1a1 2309 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
2063d89c 2310
ed159bbf
KS
23112003-09-03 Kim F. Storm <storm@cua.dk>
2312
2313 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
2314 change (superseded by 2002-08-30 change); the default blink-off
2315 cursor is now again "no cursor".
2316
fe64a394
JR
23172003-09-01 Jason Rumney <jasonr@gnu.org>
2318
2319 * makefile.w32-in (alloca.o): Remove.
2320 (coding.o): Depend on intervals.h
2321 (emacs.o, bytecode.o): Depend on window.h
2322
c0175e24
DL
23232003-09-01 Dave Love <fx@gnu.org>
2324
2325 * Makefile.in (alloca.o): Remove commands.
2326 (coding.o): Depend on intervals.h composite.h window.h.
2327 (emacs.o): Depend on window.h keyboard.h keymap.h.
2328 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
2329 (bytecode.o): Depend on window.h.
2330
a24d4cb2
JR
23312003-08-31 Jason Rumney <jasonr@gnu.org>
2332
4bc2315e
JR
2333 * w32term.c (w32_per_char_metric): Allow cached metrics to be
2334 returned even when font_type is unknown.
2335
a24d4cb2
JR
2336 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
2337
9d35adc7
JD
23382003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2339
2340 * xterm.c (x_term_init): Initialize new fields in x_display_info.
2341
2342 * xterm.h (struct x_display_info): Add red/green/blue_bits and
2343 *_offset.
2344
2345 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
2346 calculate pixel value.
2347
6f68b035
GM
23482003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
2349
0930c1a1
SM
2350 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
2351 Don't tell redisplay display is accurate when it's actually been
2352 paused for pending input.
6f68b035 2353
4828b4d7
RS
23542003-08-29 Richard M. Stallman <rms@gnu.org>
2355
2356 * dispnew.c (adjust_glyph_matrix): Call window_box
2357 whenever W is nonzero.
2358
2359 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
2360 (Fkill_local_variable, Fmake_variable_frame_local)
0930c1a1 2361 (Flocal_variable_p, Flocal_variable_if_set_p):
4828b4d7
RS
2362 Use indirect_variable to trace thru variable aliases.
2363
2364 * config.in: Updated.
2365
2366 * callint.c (Fcall_interactively): Save and restore
2367 Vthis_command, Vthis_original_command, real_this_command,
2368 and current_kboard->Vlast_command.
2369
2370 * abbrev.c (Fexpand_abbrev): Insert before deleting.
2371
e019878d
GM
23722003-08-29 Gerd Moellmann <gerd@gnu.org>
2373
2374 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
2375
85478bc6
KH
23762003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
2377
0930c1a1 2378 * coding.c (decode_coding_iso2022): Initialize local variable c2.
85478bc6
KH
2379 (decode_coding_sjis_big5): Likewise.
2380
07ce82d3
JR
23812003-08-27 Jason Rumney <jasonr@gnu.org>
2382
d3703de3
JR
2383 * w32.c (sys_pipe): Protect against file descriptor overflow.
2384
ee4a01d1
JR
2385 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
2386
07ce82d3
JR
2387 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
2388
a64387ee 23892003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
72d19c66
LK
2390
2391 * xfns.c (Vgtk_version_string): New variable.
2392 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
2393
5459e42a
EZ
23942003-08-24 Eli Zaretskii <eliz@elta.co.il>
2395
0930c1a1 2396 * term.c (term_init): Remove `const' from buffer_size's declaration.
3d8714e7 2397
5459e42a
EZ
2398 * Makefile.in (msdos.o): Depend on intervals.h.
2399
0930c1a1 2400 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
5459e42a 2401
231d6cfb
JD
24022003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2403
2404 * xterm.h (struct x_display_info): New fields: client_leader_window
2405 and Xatom_wm_client_leader.
2406
2407 * xterm.c (x_initialize): Move call to x_session_initialize to ...
2408 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
2409
2410 * xsmfns.c (create_client_leader_window): New function.
2411 (x_session_initialize): Call create_client_leader_window, take
2412 dpyinfo as argument.
2413
2414 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
2415
2416 * Makefile.in (xsmfns.o): Add more depenedencies.
2417
afa88464
DL
24182003-08-21 Dave Love <fx@gnu.org>
2419
2420 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
2421
f730033e
KH
24222003-08-21 Kenichi Handa <handa@m17n.org>
2423
2424 * term.c (term_init): Fix previous change; don't rely on the
2425 length of `buffer' if TERMINFO is defined.
2426
6dca786c
DL
24272003-08-20 Dave Love <fx@gnu.org>
2428
2429 * atimer.h: Include lisp.h.
2430
2431 * lisp.h (EMACS_LISP_H): New.
2432 (popup_activated_flag): Don't declare.
2433
2434 * alloca.c: Some merging with gnulib. Change logic and doc
2435 concerning (x)malloc/(x)free -- no longer Emacs-specific.
2436 [DO_BLOCK_INPUT]: Don't include lisp.h.
2437 (xmalloc, xfree): Declare.
2438 (malloc): Don't declare.
2439
0930c1a1 2440 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
6dca786c
DL
2441 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
2442 atimer.h, blockinput.h.
2443
2444 * alloc.c (lisp_align_malloc): Change type of `aligned'.
2445
2446 * alloca.s: Removed.
2447
3a06a6d9
RS
24482003-08-19 Gerd Moellmann <gerd@gnu.org>
2449
2450 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
2451 use -lncurses.
2452
2453 * term.c (term_init): Use a buffer of size 4096 for tgetent since
2454 FreeBSD returns something longer than 2044. Abort if the end of
2455 the buffer is overwritten.
2456
27eeee55
MB
24572003-08-19 Miles Bader <miles@gnu.org>
2458
2459 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
2460
2f297815
GM
24612003-08-19 Gerd Moellmann <gerd@gnu.org>
2462
f4446bbf
GM
2463 * alloc.c (lisp_align_malloc): Check for memory full when
2464 allocating ablocks, which also avoids freeing a pointer into an
2465 ablocks structure.
2466
2467 * puresize.h (BASE_PURESIZE): Increase to 1100000.
2468
0930c1a1 2469 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
2f297815 2470
0e7d7aae
RS
24712003-08-16 Richard M. Stallman <rms@gnu.org>
2472
2473 * editfns.c (Fencode_time): Doc fix.
2474
24752003-08-16 David Ponce <david@dponce.com>
2476
2477 * fileio.c (Fwrite_region): Fix conditional expression to issue
2478 the right message.
2479
24802003-08-16 Juri Linkov <juri@jurta.org> (tiny change)
2481
2482 * syntax.c (Fforward_word): Argument changed to optional.
0930c1a1 2483 Set default value to 1.
0e7d7aae 2484
5d551295
KH
24852003-08-15 Kenichi Handa <handa@m17n.org>
2486
2487 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
2488 what autoscaled.
2489 (best_matching_font): Once we find a better scalable font, set
2490 non_scalable_has_exact_height_p to 1.
2491 (try_font_list): Call try_alternative_families to try any family
2492 with the given registry.
2493
1661e56b
AS
24942003-08-09 Andreas Schwab <schwab@suse.de>
2495
f29181dc
AS
2496 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
2497
1661e56b
AS
2498 * print.c (print_string): Fix printing of multibyte string with
2499 nontrivial printcharfun.
2500
465aa50a
JD
25012003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2502
2503 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
2504
2505 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
2506
e430e5ba
KH
25072003-07-31 Kenichi Handa <handa@m17n.org>
2508
2509 * process.c (read_process_output): Return the actually read bytes
2510 instead of the result of decoding.
2511
97e7188e
KH
25122003-07-31 Kenichi Handa <handa@m17n.org>
2513
2514 * xterm.h (struct x_bitmap_record): New member have_mask.
2515
2516 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
2517 to 0.
2518 (x_create_bitmap_from_file): Likewise.
2519 (x_destroy_bitmap): Check have_mask member before freeing a mask.
2520 (x_destroy_all_bitmaps): Likewise.
2521 (x_create_bitmap_mask): Set have_mask member to 1.
2522
b53094d6
RS
25232003-07-30 Richard M. Stallman <rms@gnu.org>
2524
2525 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
2526
631f2082
JD
25272003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2528
2529 * gtkutil.c (xg_mark_data): Update calls to mark_object.
2530
c855f2ca
RS
25312003-07-29 Richard M. Stallman <rms@gnu.org>
2532
2533 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
2534 Conditionalize XIM code on HAVE_XIM.
2535
2536 * fns.c (Fclear_string): New function.
2537 (syms_of_fns): defsubr it.
2538
17e6d491
KH
25392003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
2540
0930c1a1 2541 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
17e6d491 2542
29ea8ae9
SM
25432003-07-22 Stefan Monnier <monnier@cs.yale.edu>
2544
2545 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
2546
2547 * buffer.c (delete_all_overlays): New function.
2548 * buffer.h (delete_all_overlays): Declare.
2549 * coding.c (run_pre_post_conversion_on_str):
2550 * print.c (temp_output_buffer_setup):
2551 * fileio.c (Finsert_file_contents):
2552 * minibuf.c (get_minibuffer): Use it.
2553
1dd7ccf2
AC
25542003-07-22 Andrew Choi <akochoi@shaw.ca>
2555
2556 * unexmacosx.c (unexec_regions_sort_compare):
2557 (unexec_regions_merge): New functions. Sort and merge unexec
2558 regions before dumping them.
2559
f57bd967
DL
25602003-07-22 Dave Love <fx@gnu.org>
2561
2562 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
2563
7cdee936
SM
25642003-07-21 Stefan Monnier <monnier@cs.yale.edu>
2565
2566 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
2567 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
2568 MARKBIT as the gcmarkbit for strings.
2569
e50886d3
RS
25702003-07-21 Richard M. Stallman <rms@gnu.org>
2571
2572 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
2573
29ea8ae9 2574 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
e50886d3
RS
2575 (syms_of_fns): Corresponding change.
2576
2577 * alloc.c (syms_of_alloc): Doc fixes.
2578
25792003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
2580
2581 * s/netbsd.h: Use -Wl syntax.
2582
fdc39b59
RS
25832003-07-17 Richard M. Stallman <rms@gnu.org>
2584
2585 * xterm.c (xim_initialize): Redo 6/24 change.
2586
9c53385f
SM
25872003-07-15 Stefan Monnier <monnier@cs.yale.edu>
2588
2589 * buffer.c (copy_overlays): Use EMACS_INT for positions.
2590 (Fswitch_to_buffer): Don't signal an error when switching to the same
2591 buffer in a dedicated window.
2592
2593 * alloc.c: Use bitmaps for cons, as was done for floats.
2594 (init_float, init_cons): Let the normal code allocate the first block.
2595 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
2596 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
2597 New macros.
2598 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
2599 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
2600 (live_cons_p): Check the pointer is not past the `conses' array.
2601 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
2602 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
2603 (survives_gc_p): Use CONS_MARKED_P and simplify.
2604 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
2605
dde13196
PE
26062003-07-13 Paul Eggert <eggert@twinsun.com>
2607
2608 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
2609 puts it into BSS instead, at least on Solaris 8 and 9.
2610 This is a valid optimization, and it may occur on other platforms,
2611 so Emacs should not assume that initializing a static variable to
2612 zero puts it into data.
2613 * alloc.c (pure, staticvec):
2614 Initialize these arrays to nonzero, so that they're not
2615 put into BSS by that optimization.
2616
a801bc34
SM
26172003-07-13 Stefan Monnier <monnier@cs.yale.edu>
2618
2619 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
2620 (lisp_align_malloc): Use posix_memalign is available.
2621 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
2622 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
2623 for consistency. Update users.
2624
0c8b2afa
RS
26252003-07-13 Richard M. Stallman <rms@gnu.org>
2626
2627 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
2628
668c2ab0
JB
26292003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
2630
2631 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
2632 and use the Gtk+ function gtk_window_icon_from_file if available.
2633
2634 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
2635 handle mask of bitmaps.
2636 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
2637 mask property.
2638 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
2639
2640 * xterm.h (xg_set_icon): New function.
2641
800bebe3
RS
26422003-07-12 Paul Eggert <eggert@twinsun.com>
2643
2644 * unexelf.c (unexec): Consider a section to precede the .bss
2645 section if its addresses overlap that of .bss.
2646
69e38995
RS
26472003-07-12 Richard M. Stallman <rms@gnu.org>
2648
2649 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
2650
2651 * config.in (HAVE_CRTIN): Add #undef.
2652 (INLINE): Really inline only if OPTIMIZE is defined.
2653
2654 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
2655 END_FILES_1.
2656 (START_FILES_1, END_FILES_1): New macros (conditional).
a801bc34 2657 (LD_SWITCH_SYSTEM_TEMACS): Define.
69e38995
RS
2658
2659 * s/openbsd.h: Don't include bsd4-3.h.
a801bc34
SM
2660 (TERMINFO): Define.
2661 (LIBS_TERMCAP): Define.
2662 (LD_SWITCH_SYSTEM): Define (two definitions).
69e38995
RS
2663
2664 * xfns.c: Include libpng/png.h instead of png.h.
2665
f1d0c238
AS
26662003-07-11 Andreas Schwab <schwab@suse.de>
2667
2668 * buffer.c (modify_overlay): Update prototype.
2669 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
2670 Likewise.
2671
5f6bf5fe
SM
26722003-07-09 Stefan Monnier <monnier@cs.yale.edu>
2673
2674 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
2675 (struct interval): Move to intervals.h.
2676 (struct Lisp_Marker): Use EMACS_INT for position info.
2677 (forward_point): Remove prototype of defunct function.
2678 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
2679 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
2680 (syms_of_textprop, set_text_properties): Remove prototypes that are
2681 already in intervals.h.
2682
2683 * intervals.h (struct interval): Move from lisp.h.
2684 Use EMACS_INT for position and size info.
2685
2686 * coding.c: Include intervals.h for Fset_text_properties.
2687
2688 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
2689 position and length information.
2690
2765b457
SM
26912003-07-09 Stefan Monnier <monnier@cs.yale.edu>
2692
2693 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
2694 position and length information.
2695
2410d73a
SM
26962003-07-09 Stefan Monnier <monnier@cs.yale.edu>
2697
2698 Change overlays_after and overlays_before so the overlays themselves
2699 are linked into lists, rather than using cons cells. After all each
2700 Lisp_Misc already occupies 5 words, so we can add a `next' field to
2701 Lisp_Overlay for free and save up one cons cell per overlay (not
2702 to mention one indirection when traversing the list of overlay).
2703
2704 * lisp.h (struct Lisp_Overlay): New field `next'.
2705
2706 * buffer.h (struct buffer): Change overlays_before and overlays_after
2707 from Lisp lists of overlays to pointers to overlays.
2708
2709 * buffer.c (overlay_strings, recenter_overlay_lists):
2710 Fix typo in eassert in last commit.
2711 (unchain_overlay): New function.
2712 (add_overlay_mod_hooklist): Use AREF.
2713 (copy_overlays, reset_buffer, overlays_at, overlays_in)
2714 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
2715 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
2716 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
2717 (report_overlay_modification, evaporate_overlays, init_buffer_once):
2718 Adjust to new type of overlays_(before|after).
2719
2720 * alloc.c (mark_object): Mark the new `next' field of overlays.
2721 (mark_buffer): Manually mark the overlays_(after|before) fields.
2722
2723 * coding.c (run_pre_post_conversion_on_str):
2724 * editfns.c (overlays_around):
2725 * xdisp.c (load_overlay_strings):
2726 * fileio.c (Finsert_file_contents):
2727 * indent.c (current_column):
2728 * insdel.c (signal_before_change, signal_after_change):
2729 * intervals.c (set_point_both):
2730 * print.c (temp_output_buffer_setup): Use new type for
2731 overlays_(before|after).
2732
04812929
SM
27332003-07-08 Stefan Monnier <monnier@cs.yale.edu>
2734
2735 * buffer.c (report_overlay_modification): Don't run hooks while
2736 traversing the list of overlays.
2737
2738 * buffer.h (struct buffer): Use an int for overlay_center.
2739 (overlays_at, evaporate_overlays, recenter_overlay_lists)
2740 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
2741
2742 * buffer.c (reset_buffer, recenter_overlay_lists)
2743 (adjust_overlays_for_insert, adjust_overlays_for_delete)
2744 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
2745 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
2746 (overlays_at, evaporate_overlays, recenter_overlay_lists)
2747 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
2748
2749 * xdisp.c (fast_find_position): Remove unused var.
2750
2751 * cmds.c (Qexpand_abbrev): New sym.
2752 (syms_of_cmds): Initialize it.
2753 (internal_self_insert): Use it to call expand-abbrev.
2754
2e7ecf15
KS
27552003-07-09 Kim F. Storm <storm@cua.dk>
2756
2757 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if emacs
2758 was configured with --without-xim.
42f81f64 2759 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
2e7ecf15 2760
c6de56a0
RS
27612003-07-07 Richard M. Stallman <rms@gnu.org>
2762
2763 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
2764
2765 * alloc.c (Fgarbage_collect): Doc fix.
2766
b93fb365
KH
27672003-07-07 Nozomu Ando <nand@mac.com> (tiny change)
2768
2769 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
2770
bfe1a3f7
SM
27712003-07-06 Stefan Monnier <monnier@cs.yale.edu>
2772
04812929
SM
2773 * minibuf.c (read_minibuf): UNGCPRO before returning.
2774 (Ftry_completion, Fall_completions): Doc fix.
2775
bfe1a3f7
SM
2776 * alloc.c (live_float_p): Check that p is not past the `floats' array,
2777 now that `floats' is not the last element of the struct any more.
2778
ee79d1aa
JR
27792003-07-06 Jason Rumney <jasonr@gnu.org>
2780
2781 * w32term.h (ClipboardSequence_Proc): New type.
2782
2783 * w32fns.c (clipboard_sequence_fn): New variable.
2784 (globals_of_w32fns): Initialize it.
2785
2786 * w32select.c (last_clipboard_sequence_number): New variable.
2787 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
2788 number if possible.
2789
49723c04
SM
27902003-07-06 Stefan Monnier <monnier@cs.yale.edu>
2791
4698665f
SM
2792 * m/amdx86-64.h (MARKBIT):
2793 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
2794 MARKBIT and ARRAY_MARK_FLAG any more.
2795
2796 * m/hp800.h (XSETMARKBIT):
2797 * m/sr2k.h (XSETMARKBIT):
2798 * lisp.h (XSETMARKBIT): Remove unused macro.
2799
49723c04
SM
2800 * lisp.h (mark_object): Change prototype.
2801
2802 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
2803 (last_marked): Change accordingly.
2804 (mark_interval, mark_maybe_object, mark_maybe_pointer)
2805 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
2806 (mark_buffer): Update calls to mark_object.
2807
2808 * bytecode.c (mark_byte_stack):
2809 * fns.c (sweep_weak_table):
2810 * keyboard.c (mark_kboards): Update calls to mark_object.
2811
1d660eca
JR
28122003-07-06 Jason Rumney <jasonr@gnu.org>
2813
2814 * alloc.c (struct ablock): Only include padding when there is some.
2815
618b5ae4
SM
28162003-07-04 Stefan Monnier <monnier@cs.yale.edu>
2817
2818 * alloc.c (ALIGN): Add casts to simplify usage.
2819 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
2820 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
2821 (struct ablock, struct ablocks): New types.
2822 (free_ablock): New global var.
2823 (lisp_align_malloc, lisp_align_free): New functions.
2824 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
2825 (struct float_block): Reorder and add gcmarkbits.
2826 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
2827 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
2828 (init_float, make_float): Use lisp_align_malloc.
2829 (free_float, live_float_p): Don't use `type' any more.
2830 (make_float): Use FLOAT_UNMARK to access to mark bit.
2831 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
2832 Use FLOAT_MARKED_P to access the mark bit.
2833 (pure_alloc): Simplify use of ALIGN.
2834 (mark_object): Use FLOAT_MARK to access the mark bit.
2835 (gc_sweep): Use new macros to access the float's mark bit.
2836 (init_alloc_once): Init free_ablock.
2837
2838 * lisp.h (struct Lisp_Float): Remove unused field `type'.
2839
3ef06d12
SM
28402003-06-27 Stefan Monnier <monnier@cs.yale.edu>
2841
2842 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
2843 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
2844 (allocate_buffer): Move.
2845 (string_bytes): Don't mask markbit of `size_byte'.
2846 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
2847 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
2848 Use the `size' field of buffers (rather than the `name' field) for
2849 the mark bit, as is done for all other vectorlike objects.
2850 Use the new macros to access the mark bit of vectorlike objects.
2851
e81043aa
RS
28522003-06-26 Richard M. Stallman <rms@gnu.org>
2853
2854 * puresize.h (BASE_PURESIZE): Increment base size.
2855
2856 * xdisp.c (fast_find_position): Enable Gerd's new definition.
2857
2858 * xterm.c (xim_initialize): Undo previous change.
2859
2d0834cc
SM
28602003-06-26 Stefan Monnier <monnier@cs.yale.edu>
2861
2862 * alloc.c (survives_gc_p): Simplify.
2863
2864 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
2865
2866 * window.c (Fset_window_dedicated_p): Simplify.
2867 (display_buffer_1): Don't raise the win from which minibuf was entered.
2868 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
2869 (Fminibuffer_selected_window): Simplify.
2870
2871 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
2872
2873 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
2874 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
2875
2876 * insdel.c (check_markers, adjust_markers_for_delete)
2877 (adjust_markers_for_insert, adjust_markers_for_replace)
2878 (prepare_to_modify_buffer, RESTORE_VALUE):
2879 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
2880 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
2881 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
2882 * alloc.c (Fmake_marker, free_marker, gc_sweep):
2883 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
2884 * editfns.c (save_excursion_restore, transpose_markers):
2885 * window.c (delete_window):
2886 * xdisp.c (message_dolog): Update for new types.
2887
d54ae3d8
JD
28882003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2889
a5f696ac
JD
2890 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
2891 (realize_default_face): Use default_face_done_p for the force_p
2d0834cc 2892 argument to set_lface_from_font_name. Set default_face_done_p to one.
a5f696ac
JD
2893
2894 * frame.c (make_frame): Initialize default_face_done_p.
2895
2896 * frame.h (struct frame): Add default_face_done_p.
2897
d54ae3d8
JD
2898 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
2899 will be defined.
2900
2336fe58
SM
29012003-06-25 Stefan Monnier <monnier@cs.yale.edu>
2902
2903 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
2904 Initialize the new field `gcmarkbit'.
2905 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
2906 (mark_interval_tree): Don't mark the tree separately from the nodes.
2907 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
2908 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
2909 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
2910
2911 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
2912 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
2913 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
2914 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
2915 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
2916
bcea31c2
DL
29172003-06-24 Dave Love <fx@gnu.org>
2918
2919 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
2920
2921 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
2922 from gnulib.
2923
2601f59e
RS
29242003-06-21 Richard M. Stallman <rms@gnu.org>
2925
2926 * fileio.c (Fwrite_region): Alternate messages
2927 for append and partial write.
2928
2929 * keyboard.c (read_key_sequence): When converting upcase fn key to
2930 downcase, update fkey and keytran so `backspace' gets translated.
2931
2932 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
2933
2934 * process.c (wait_reading_process_input): Don't signal SIGIO
2935 in batch mode.
2936
b5d2c621
KH
29372003-06-17 Kenichi Handa <handa@m17n.org>
2938
2939 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
2940 composite.h.
2941
2942 * xselect.c: Don't include charset.h, coding.h, composite.h.
2943 (Qforeign_selection): New variable.
2944 (syms_of_xselect): Intern and static it.
2945 (selection_data_to_lisp_data): Return a unibyte string made from
2946 data with `foreign-selection' text property.
2947
6793bc63
SM
29482003-06-15 Stefan Monnier <monnier@cs.yale.edu>
2949
2950 * termhooks.h (EVENT_INIT): New macro.
2951
2952 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
2953
2954 * alloc.c (mark_kboards): Move to keyboard.c.
2955
2956 * keyboard.c (record_asynch_buffer_change, read_avail_input):
2957 * xterm.c (x_dispatch_event):
2958 * xmenu.c (find_and_call_menu_selection):
2959 * xdisp.c (handle_tool_bar_click):
2960 * w32menu.c (menubar_selection_callback):
2961 * sysdep.c (kbd_input_ast, read_input_waiting):
2962 * msdos.c (dos_rawgetc):
2963 * macterm.c (mac_check_for_quit_char):
2964 * macmenu.c (menubar_selection_callback):
2965 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
2966 data to kbd_buffer_store_event.
2967
b3ea810c
KS
29682003-06-15 Kim F. Storm <storm@cua.dk>
2969
2970 * xdisp.c (x_fix_overlapping_area): Always use area relative X
6793bc63 2971 to fix redisplay problem with tall characters (such as \e,AC\e(B).
b3ea810c 2972
b8f75eda
KG
29732003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
2974
2975 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
2976
ba92ce48
KH
29772003-06-12 Kenichi Handa <handa@m17n.org>
2978
2979 * fileio.c (Fwrite_region): Save and restore restriction.
2980
b80263be
DL
29812003-06-12 Dave Love <fx@gnu.org>
2982
2983 * alloca.c (alloca): Declare arg as size_t.
2984
6793bc63
SM
2985 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
2986 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
b80263be 2987
b23c0a83
DL
29882003-06-11 Dave Love <fx@gnu.org>
2989
2990 * search.c (shrink_regexp_cache): Use xrealloc.
2991 (syms_of_search): Use xmalloc.
2992
700e47c2
KS
29932003-06-10 Kim F. Storm <storm@cua.dk>
2994
2995 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
2996 Adjust phys_cursor.x to be relative to window box, rather than
2997 text area before checking -- to ensure cursor is redrawn when
2998 exposing window.
2999 Note: This also fixes a similar (older) bug if display margins
3000 are present.
3001
f11aa0b2
KH
30022003-06-06 Kenichi Handa <handa@m17n.org>
3003
3004 * coding.c (encoding_buffer_size): If coding->type is
3005 coding_type_ccl, double magnification on CRLF encoding.
3006
3d143690
JR
30072003-06-06 Jason Rumney <jasonr@gnu.org>
3008
3009 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
3010 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
3011
3012 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
3013 Mac too.
3014
f16205ca
DL
30152003-06-05 Dave Love <fx@gnu.org>
3016
b23c0a83
DL
3017 * strftime.c: Merge changes from gnulib.
3018
f16205ca
DL
3019 * mktime.c (__mktime_internal): Merge changes from gnulib
3020 involving year 69 and dst2.
3021
3022 Changes to merge with gnulib version and be consistent with the
3023 autoconf test:
3024
6793bc63
SM
3025 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
3026 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
f16205ca
DL
3027 [HAVE_LOCALE_H]: Include locale.h.
3028 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
3029
9b87a0bc
KS
30302003-06-05 Kim F. Storm <storm@cua.dk>
3031
3032 * window.c (coordinates_in_window): Convert X and Y to window
3033 relative coordinates inside mode-line and header-line parts.
3034 Convert X and Y to margin area relative coordinates inside left
3035 and right display margin parts.
3036
5a8a15ec
JR
30372003-06-05 Jason Rumney <jasonr@gnu.org>
3038
3039 * w32fns.c (add_system_logical_colors_to_map): New function.
3040 (Fx_open_connection): Use it.
3041
01ed8ff1
SM
30422003-06-04 Stefan Monnier <monnier@cs.yale.edu>
3043
3044 * process.c (allocate_pty): Revert part of the previous patch.
3045 (Faccept_process_output): Simplify.
3046
b427b65d
JR
30472003-06-04 Jason Rumney <jasonr@gnu.org>
3048
3049 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
3050
3051 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
3052 (lispy_mouse_wheel_names): Remove.
3053 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
3054 Always define drag_and_drop_syms.
3055
3056 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
3057 WHEEL_EVENT events.
3058
914a8c47
SM
30592003-06-03 Stefan Monnier <monnier@cs.yale.edu>
3060
01ed8ff1
SM
3061 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
3062
914a8c47
SM
3063 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
3064
adcb132c
JD
30652003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3066
3067 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
3068 menu item label.
3069
be781fa7
RS
30702003-06-03 Richard M. Stallman <rms@gnu.org>
3071
3072 * window.c (Fwindow_edges): Doc fix.
3073 (Fwindow_pixel_edges, Fwindow_inside_edges)
3074 (Fwindow_inside_pixel_edges): New functions.
3075 (syms_of_window): defsubr them.
3076
3077 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
3078 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
3079
914a8c47
SM
30802003-06-02 Stefan Monnier <monnier@cs.yale.edu>
3081
3082 * dispnew.c (Fsit_for): Don't lie about the number of args.
3083
5b07197a
DL
30842003-06-02 Dave Love <fx@gnu.org>
3085
3086 * callproc.c: Use HAVE_FCNTL_H, not USG5.
3087 (syms_of_callproc) <process-environment>: Doc fix.
3088
3089 * doc.c: Use HAVE_FCNTL_H, not USG5.
3090
3091 * xfaces.c (font_rescale_ratio): Fix for K&R.
3092
3093 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
3094
3095 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
3096
3097 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
3098
3099 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
3100 (xg_create_frame_widgets): Use ENCODE_UTF_8.
3101
d7107586 3102 * xterm.c (Qutf_8): Move to coding.c
5b07197a
DL
3103
3104 * xmenu.c (ENCODE_MENU_STRING): New.
3105 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
3106 Use it.
3107
3108 * coding.h (ENCODE_UTF_8): New.
3109 (Qutf_8): Declare.
3110
3111 * coding.c (Qutf_8): New.
3112 (syms_of_coding): Intern it.
3113
3114 * fns.c: Doc fixes.
3115
7335b336
KH
31162003-06-02 Kenichi Handa <handa@m17n.org>
3117
3118 * buffer.c (Fset_buffer_multibyte): Fix previous change.
3119
914a8c47
SM
31202003-06-01 Stefan Monnier <monnier@cs.yale.edu>
3121
3122 * lread.c (openp): Make sure STR is a string.
3123
9862c135
JR
31242003-06-01 David Ponce <david@dponce.com>
3125
3126 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
3127 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
3128
3129 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
3130 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
3131 (discard_mouse_events): Discard WHEEL_EVENT events too.
3132 (lispy_wheel_names, wheel_syms): New.
3133 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
3134 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
3135 defined.
914a8c47 3136 (make_lispy_event): Add WHEEL_EVENT handler.
9862c135
JR
3137
3138 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
3139 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
3140 WHEEL_EVENT events.
3141
f984e73e
JPW
31422003-05-31 John Paul Wallington <jpw@gnu.org>
3143
3144 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
3145 timer are in lisp/emacs-lisp.
3146
1efcd78f
KH
31472003-05-31 Kenichi Handa <handa@m17n.org>
3148
458c8af4
KH
3149 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
3150 region when a buffer is changed to unibyte.
3151
1efcd78f
KH
3152 * charset.h (VALID_LEADING_CODE_P): New macro.
3153 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
3154
778e2804
KH
3155 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
3156 is nonzero, accept multibyte form of eight-bit-control chars.
3157 (decode_composition_emacs_mule): Likewise.
3158 (decode_coding_emacs_mule): Likewise.
3159 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
3160 multibyte form of eight-bit-control chars.
3161
3162 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
3163 (Finsert_file_contents): If coding-system-for-read is bound to
3164 Qauto_save_coding, use the coding system emacs-mule with special
3165 setting for recovering a file.
3166 (choose_write_coding_system): On auto saving, use the coding
3167 system emacs-mule with special setting for auto saving.
3168 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
3169
034060e4
KH
31702003-05-30 Kenichi Handa <handa@m17n.org>
3171
3172 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
3173 properly before calling ccl_driver.
3174
778e2804 3175 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
034060e4
KH
3176
3177 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
3178 nonzero.
3179 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
3180 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
3181
595f5aa5
GM
31822003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
3183
3184 * xfaces.c (realize_default_face): Do not abort if lface is
3185 non-existent - reverts change from 2003-05-19.
3186
103e0180
KH
31872003-05-29 Kenichi Handa <handa@m17n.org>
3188
3189 * coding.c (decode_coding_iso2022): Pay attention to the byte
3190 sequence of CTEXT extended segment, and retain those bytes as is.
3191
31922003-05-28 Kenichi Handa <handa@m17n.org>
3193
3194 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
3195 of CODING_REPLACEMENT_CHARACTER.
3196 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
3197 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
3198 check this flag on encoding.
3199 (encode_coding_sjis_big5): Check
3200 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
3201 (Fset_terminal_coding_system_internal): Set
3202 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
3203 instead of setting CODING_FLAG_ISO_SAFE flag in
3204 terminal_coding.flags.
3205
3206 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
3207 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
3208 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
3209
ff6a3bfb 32102003-05-28 Richard M. Stallman <rms@gnu.org>
45f266dc 3211
ff6a3bfb
RS
3212 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
3213
3214 * eval.c (unbind_to): Move init of this_binding to separate statement.
45f266dc 3215
1963c428
KS
32162003-05-28 Kim F. Storm <storm@cua.dk>
3217
3218 * xdisp.c (expose_window): Fix error in calculation of
3219 window relative coordinates of area to redisplay.
3220
2b5d4601
JR
32212003-05-27 Jason Rumney <jasonr@gnu.org>
3222
3223 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
3224
1c64a4a2
JB
32252003-05-27 David Ponce <david@dponce.com>
3226
3227 Handle W32 mouse wheel events as mouse click events, like in X.
3228
3229 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
3230 MOUSE_WHEEL_EVENT anymore.
3231
3232 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
3233 Scrolling down/up the mouse wheel is respectively mapped to mouse
3234 button 4 and 5.
3235 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
3236 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
3237 WM_MOUSEWHEEL events.
3238
2d031b89
AS
32392003-05-27 Andreas Schwab <schwab@suse.de>
3240
20464fdf
AS
3241 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
3242
2d031b89
AS
3243 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
3244 partially visible line.
3245
3246 * alloc.c (Fgarbage_collect): Fix last change.
3247
97bc76d4
JPW
32482003-05-26 John Paul Wallington <jpw@gnu.org>
3249
3250 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
3251
56613f06
SM
32522003-05-25 Stefan Monnier <monnier@cs.yale.edu>
3253
3254 * window.c (Fset_window_buffer): Add type of `keep_margins'.
3255 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
3256
3257 * window.h (window_box_text_cols): Declare.
3258
3259 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
3260 (x_draw_vertical_border): Remove unused var `f'.
3261
3262 * xfaces.c (build_scalable_font_name): Remove `unused var
3263 pixel_size' warning.
3264
3265 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
3266
3267 * unexelf.c (unexec): Remove `unused var n' warning.
3268
3269 * strftime.c (my_strftime_localtime_r): Remove `defined but
3270 unused' warning.
3271
3272 * process.c (allocate_pty): Remove `unused var stb' and
3273 `cp might be used uninitialized' warnings.
3274
3275 * dispnew.c (mode_line_string): Remove unused var `f'.
3276
3277 * coding.c (find_safe_codings): Remove unused var `i'.
3278
3279 * bytecode.c (Fbyte_code): Remove `unused val' warning.
3280
3281 * buffer.c (Fkill_buffer): Remove unused var `list'.
3282
3283 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
3284
93421a1f
JD
32852003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3286
3287 * frame.c (make_frame): Condition want_fullscreen with
3288 HAVE_WINDOW_SYSTEM.
3289
c4b8aebc
JB
32902003-05-25 Juanma Barranquero <lektu@terra.es>
3291
3292 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
3293 (Fwindow_scroll_bars): Fix typo in docstring.
3294
0416870b
KS
32952003-05-24 Kim F. Storm <storm@cua.dk>
3296
3297 The following changes serve several purposes:
3298
3299 1) Swap the position of fringes and display margins in windows, i.e.
3300 the fringes are now displayed between the margins and the text area
3301 (by default).
3302
3303 2) Allow fringe and scroll bar parameters to be set per-buffer and
3304 per-window (like display margins). Such settings are now stored
3305 in window configurations, preserved when frames are resized, and
9018a88e 3306 copied when windows are split vertically or horizontally.
0416870b
KS
3307 Several bugs related to display margins have been fixed.
3308
3309 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
9018a88e 3310
0416870b
KS
3311 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
3312 rather than FRAME_WIDTH (FRAME_FONT (f)).
3313
3314 5) Introduce a consistent naming of variables, members and macros
3315 depending on whether their value is measured in pixels or in
3316 canonical columns/lines. Pixel dimensions are named *_width and
3317 *_height, while canonical columns/lines are named *_cols and
3318 *_lines. Pixel positions are named *_x and *_y, while column/line
3319 positions are named *_col and *_line.
3320
3321 6) Consolidate more of the X, W32, and MAC gui code by moving
3322 common data into struct frame, and generalize it for the non-gui
3323 case by using suitable defaults.
3324
3325 7) Cleanup and consolidate the macros controlling frame and window
3326 layout into frame.h and window.h, and generalize the use of the
3327 various window_box_* functions (enhanced to handle the new fringe
3328 position and the per-window fringe and scroll bar settings).
3329
3330 * frame.h (struct frame): Rename members height to text_lines,
3331 width to text_cols, window_height to total_lines, window_width to
3332 total_cols, new_height to new_text_lines, new_width to
3333 new_text_cols. All uses changed.
3334 (struct frame): New members which consolidate common members of
3335 x_output, w32_output, and mac_output structures: left_pos,
3336 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
3337 win_gravity, size_hint_flags, border_width, internal_border_width,
3338 line_height, fringe_cols, left_fringe_width, right_fringe_width,
3339 want_fullscreen. All uses changed.
3340 (struct frame): New member column_width contaning the canonical
3341 column width, analogue to line_height. All uses changed.
3342 (struct frame): Rename members scroll_bar_pixel_width to
3343 config_scroll_bar_width, and scroll_bar_cols to
3344 config_scroll_bar_cols. All uses changed.
3345 (struct frame): New member scroll_bar_actual_width which
3346 consolidates and renames the vertical_scroll_bar_extra member of
3347 x_output, w32_output, and mac_output structures. All uses changed.
3348 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
3349 from x/w32/macterm.h files. All uses changed. Also change code
3350 which referred to f->output_data...->pixel_height.
3351 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
3352 from x/w32/macterm.h files. All uses changed. Also change code
3353 which referred to f->output_data...->pixel_width.
3354 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
3355 Also change code which referred to f->height.
3356 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
3357 Also change code which referred to f->width.
3358 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
3359 to update new_text_lines and new_text_cols members directly.
3360 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
3361 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
3362 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
3363 FRAME_SCROLL_BAR_COLS. All uses changed.
3364 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
3365 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
3366 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
3367 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
3368 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
3369 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
3370 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
3371 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
3372 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
3373 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
3374 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
3375 return line_height member (it now has proper value also for
3376 non-window frames).
3377 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
3378 return new column_width member (rather than the default font width).
3379 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
3380 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
3381 from x/w32/macterm.h files. Unconditionally return corresponding
3382 member of frame structure (they now have proper values also for
3383 non-window frames).
3384 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
3385 Calculate return value from left and right widths.
3386 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
3387 internal_border_width member (has proper value for non-window frame).
3388 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
3389 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
3390 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
3391 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
3392 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
3393 consolidated from xterm.h, macterm.h, and w32term.h.
3394 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
3395 consolidated from xterm.h, macterm.h, and w32term.h.
3396 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
3397 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
3398 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
3399 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
3400 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
3401 consolidated from x/mac/w32term.h.
3402 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
3403 consolidated from x/mac/w32term.h.
3404 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
3405 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
3406 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
3407 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
3408
3409 * window.h (struct window): Rename members left to left_col,
3410 top to top_line, height to total_lines, width to total_cols,
3411 left_margin_width to left_margin_cols, right_margin_width to
3412 right_margin_cols, orig_height to orig_total_lines, orig_top to
3413 orig_top_line. All uses changed.
3414 (struct window): New members left_fringe_width, right_fringe_width,
3415 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
3416 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
3417 New macros primarily used to simplify other macros.
3418 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
3419 referred to XINT (w->width).
3420 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
3421 referred to XINT (w->height).
3422 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
3423 referred to XINT (w->width) * canon_x_unit.
3424 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
3425 referred to XINT (w->height) * canon_y_unit.
3426 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
3427 referred to XINT (w->left).
3428 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
3429 all uses and code that referred to XINT (w->left) + XINT (w->width).
3430 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
3431 referred to XINT (w->top).
3432 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
3433 referred to XINT (w->top) + XINT (w->height).
3434 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
3435 referred to XINT (w->left) * canon_x_unit.
3436 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
3437 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
3438 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
3439 referred to XINT (w->top) * canon_y_unit.
3440 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
3441 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
3442 (WINDOW_LEFTMOST_P): New macro.
3443 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
3444 All uses changed.
3445 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
3446 All uses changed.
3447 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
3448 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
3449 Do not exclude left fringe width.
3450 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
3451 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
3452 Do not exclude fringe widths.
3453 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
3454 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
3455 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
3456 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
3457 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
3458 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
3459 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
3460 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
3461 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
3462 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
3463 New macros. Change code which referenced corresponding
3464 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
3465 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
3466 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
3467 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
3468 allow per-window scroll-bar settings.
3469 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
3470 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
3471 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
3472 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
3473 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
3474 FRAME_SCROLL_BAR_WIDTH.
3475 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
9018a88e 3476 (WINDOW_SCROLL_BAR_AREA_X): New macros.
0416870b
KS
3477 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
3478 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
3479 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
3480 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
3481 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
3482 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
3483 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
3484 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
3485 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
3486 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
3487 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
3488 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
3489 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
3490 (window_from_coordinates): Update prototype.
3491 (Fset_window_buffer): Update EXFUN.
3492 (set_window_buffer): Update prototype.
9018a88e 3493
0416870b 3494 * dispextern.h (struct glyph_matrix): Rename members window_left_x
9018a88e 3495 to window_left_col, window_top_y to window_top_line. All uses
0416870b
KS
3496 changed.
3497 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
3498 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
3499 internal_border_width is now set to 0 for non-window frames.
3500 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
3501 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
3502 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
3503 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
3504 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
3505 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
3506 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
3507 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
3508 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
9018a88e 3509 Move to window.h and renamed [see window.h changes].
0416870b
KS
3510 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
3511 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
9018a88e
SM
3512 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
3513 Use WINDOW_TOTAL_LINES.
0416870b
KS
3514 (frame_update_line_height): Remove prototype.
3515
3516 * buffer.h (struct buffer): Rename members measured in columns:
3517 left_margin_width to left_margin_cols, right_margin_width to
3518 right_margin_cols. All uses changed.
3519 New members left_fringe_width, right_fringe_width,
3520 fringes_outside_margins for per-buffer fringe settings.
3521 New members scroll_bar_width and vertical_scroll_bar_type for
3522 per-buffer scroll bar settings.
3523
3524 * buffer.c (init_buffer_once): Set buffer_defaults and
3525 buffer_local_flags for new buffer-local variables
3526 left_fringe_width, right_fringe_width, fringes_outside_margins,
3527 scroll_bar_width, and vertical_scroll_bar_type.
3528 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
3529 default-* variables for them.
3530
3531 * dispnew.c: Make (many) trivial substitutions for renamed and
3532 new macros in dispextern.h, frame.h and window.h.
3533 (mode_line_string): No need to adjust width for mode lines, as it
3534 is already adjusted by the caller.
3535 (marginal_area_string): Handle fringes inside/outside margins.
9018a88e 3536
0416870b
KS
3537 * frame.c: Make (many) trivial substitutions for renamed and
3538 new macros in dispextern.h, frame.h and window.h.
3539 (make_frame): Initialize left_fringe_width, right_fringe_width,
3540 fringe_cols, scroll_bar_actual_width, border_width,
3541 internal_border_width, column_width, line_height, x_pixels_diff,
3542 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
3543 members with values suitable for a non-window frames.
3544
3545 * gtkutil.c: Make (many) trivial substitutions for renamed and
3546 new macros in dispextern.h, frame.h and window.h.
9018a88e 3547
0416870b
KS
3548 * indent.c: Make (few) trivial substitutions for renamed and
3549 new macros in dispextern.h, frame.h and window.h.
3550
3551 * keyboard.c: Make (many) trivial substitutions for renamed and
3552 new macros in dispextern.h, frame.h and window.h.
3553 (make_lispy_event): Use window positions returned from
3554 window_from_coordinates when constructing the lisp event for
3555 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
3556 (incorrect) values locally.
3557 (make_lispy_movement): Use window positions returned from
3558 window_from_coordinates when constructing the lisp event, rather
3559 than calculating (incorrect) values locally.
3560
3561 * scroll.c: Make (some) trivial substitutions for renamed and
3562 new macros in dispextern.h, frame.h and window.h.
3563
3564 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
3565 scroll-bars.
3566
3567 * sysdep.c: Make (few) trivial substitutions for renamed and
3568 new macros in dispextern.h, frame.h and window.h.
3569
3570 * term.c: Make (some) trivial substitutions for renamed and
3571 new macros in dispextern.h, frame.h and window.h.
3572
3573 * widget.c: Make (few) trivial substitutions for renamed and
3574 new macros in dispextern.h, frame.h and window.h.
3575
3576 * window.c: Make (many) trivial substitutions for renamed and
3577 new macros in dispextern.h, frame.h and window.h.
3578 (make_window): Initialize new members
3579 left_margin_cols, right_margin_cols, left_fringe_width,
3580 right_fringe_width, fringes_outside_margins, scroll_bar_width,
3581 and vertical_scroll_bar_type.
3582 (coordinates_in_window): Adapted to new fringe/margin positions
9018a88e 3583 and per-window fringes and scroll-bars.
0416870b 3584 Fix bug related to incorrectly adjusting coordinates by
9018a88e 3585 frame's internal_border_width (the effect normally negible since
0416870b
KS
3586 the internal_border_width is typically 0 or 1 pixel, but very
3587 noticeable for an internal_border_width of e.g. 25 pixels).
3588 Upon successful return (other than ON_NOTHING), the coordinates
3589 are now always properly converted to window relative for the
3590 given display element.
3591 (window_from_coordinates): Add new parameters wx and wy to
3592 return the window relative x and y position in the returned
3593 window and part. A null arg means, don't return the position.
3594 All callers changed.
3595 (adjust_window_margins): New function which may reduce the width
3596 of the display margins if a window's text area is too small after
3597 resizing or splitting windows.
3598 (size_window): Fix bug that did not account for display margin
3599 widths when checking the minimum width of a window; use
3600 adjust_window_margins.
3601 (set_window_buffer): Call Fset_window_fringes and
3602 Fset_window_scroll_bars to setup per-window elements.
3603 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
3604 existing display margin, fringe widths, and scroll bar settings
9018a88e
SM
3605 (e.g. after splitting a window or resizing the frame).
3606 All callers changed.
0416870b
KS
3607 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
3608 (Fsplit_window): Duplicate original window's display margin,
3609 fringe, and scroll-bar settings; then call Fset_window_buffer with
3610 KEEP_MARGINS non-nil. This fixes a bug which caused a split
3611 window to only preserve the display margins in one of the windows.
c4b8aebc 3612 When splitting horizontally, call adjust_window_margins on both
0416870b
KS
3613 windows to ensure that the text area of the new windows is non too
3614 narrow. This fixes a bug which could cause emacs to trap if the
3615 width of the split window was less than the width of the display
3616 margins.
9018a88e
SM
3617 (window_box_text_cols): Renamed from window_internal_width.
3618 All uses changed. Adapt to per-window fringes and scroll bars.
0416870b
KS
3619 Fix bug that caused vertical separator to be subtracted also on
3620 window frames. Fix another bug that did not reduce the returned
3621 value by the columns used for display margins.
3622 (window_scroll_line_based): Fix bug related to scrolling too much
3623 when display margins are present (implicitly fixed by the fix to
3624 window_box_text_cols).
3625 (scroll_left, scroll_right): Fix bug related to scrolling too far
3626 by default when display margins are present (implicitly fixed by
3627 the fix to window_box_text_cols).
3628 (struct saved_window): Rename members left to left_col, top to
3629 top_line, width to total_cols, height to total_lines, orig_top to
3630 orig_top_line, orig_height to orig_total_lines. All uses changed.
3631 New members left_margin_cols, right_margin_cols,
3632 left_fringe_width, right_fringe_width, fringes_outside_margins,
3633 scroll_bar_width, and vertical_scroll_bar_type for saving
3634 per-window display elements.
3635 (Fset_window_configuration): Restore display margins, fringes,
3636 and scroll bar settings. This fixes a bug which caused display
3637 margins to be discarded when saving and restoring a window
3638 configuration.
3639 (save_window_save): Save display margins, fringes, and scroll bar
3640 settings. This fixes a bug which caused display margins to be
3641 discarded when saving and restoring a window configuration.
3642 (Fset_window_margins): Do nothing if display margins are not
3643 really changed. Otherwise, call adjust_window_margins to ensure
3644 the text area doesn't get too narrow. This fixes a bug which
3645 could cause emacs to trap if setting display margins wider than
3646 the width of the window.
3647 (Fset_window_fringes): New defun to allow user to specifically set
3648 this window's fringe widths and position vs. display margins.
3649 (Fwindow_fringes): New defun to return window's actual fringe
3650 settings.
3651 (Fset_window_scroll_bars): New defun to allow user to specifically
3652 set this window's scroll bar width and position.
3653 (Fwindow_scroll_bars): New defun to return window's actual scroll
3654 bar settings.
3655 (compare_window_configurations): Also compare display margins,
3656 fringes, and scroll bar settings.
3657 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
3658
3659 * xdisp.c: Make (many) trivial substitutions for renamed and
3660 new macros in dispextern.h, frame.h and window.h.
3661 (window_box_width): Adapt to per-window fringes and scroll bars,
3662 and new fringe vs. display margin position. Note that returned
3663 value is no longer guaranteed to be a whole multiple of the frame
3664 column width, since per-window fringes may now be any width.
3665 (window_box_left_offset): New function like window_box_left, but
3666 value is relative to left border of window (rather than frame).
3667 (window_box_right_offset): New function like window_box_right,
3668 but value is relative to left border of window.
3669 (window_box_left): Adapt to per-window fringes and scroll bars,
3670 and new fringe vs. display margin position. Simplify by using
3671 WINDOW_LEFT_EDGE_X and window_box_left_offset.
3672 (window_box): Allow null args for unnecessary return values;
3673 change/simplify relevant callers.
3674 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
9018a88e
SM
3675 and new fringe vs. display margin position.
3676 Use window_box_left_offset and window_box_right_offset
0416870b 3677 (get_glyph_string_clip_rect): Adapt to per-window fringes and
9018a88e
SM
3678 scroll bars, and new fringe vs. display margin position.
3679 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
0416870b
KS
3680 (draw_fringe_bitmap): Rework to handle per-window fringes and new
3681 fringe vs. display margin position.
3682 (hscroll_window_tree): Use window_box_width instead of window_box.
a64387ee
JB
3683 (redisplay_window): Adapt to per-window scroll bars.
3684 (draw_glyphs): Rework to handle per-window fringes and scroll
9018a88e
SM
3685 bars, and new fringe vs. display margin position.
3686 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
a64387ee 3687 (x_clear_end_of_line): Adapt to per-window fringes and scroll
0416870b
KS
3688 bars, and new fringe vs. display margin position. Fix bug which
3689 increased total width of full_width rows by width of scroll bars
3690 although window's total width already includes that.
3691 (x_fix_overlapping_area): Simplify using window_box_left_offset.
3692 (expose_area): Simplify using window_box_left_offset.
3693 (x_draw_vertical_border): Handle per-window scroll bar settings,
3694 mixing windows with left, right and no scroll bars.
3695
3696 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
3697 where it's used in x_list_fonts (for clarity).
3698 (frame_update_line_height): Remove unused function; functionality
3699 is now done directly when setting the default font in x_set_font.
3700
3701 * xfns.c: Make (many) trivial substitutions for renamed and
3702 new macros in dispextern.h, frame.h and window.h.
3703
3704 * xmenu.c: Make (some) trivial substitutions for renamed and
3705 new macros in dispextern.h, frame.h and window.h.
3706
3707 * xterm.h (struct x_output): Move members left_pos, top_pos,
3708 border_width, pixel_height, pixel_width, line_height,
3709 internal_border_width, vertical_scroll_bar_extra,
3710 left_fringe_width, right_fringe_width, fringe_cols,
3711 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
3712 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
3713 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
3714 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
3715 (PIXEL_WIDTH, PIXEL_HEIGHT)
3716 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
3717 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
3718 frame.h and renamed [see frame.h changes].
3719 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
3720 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
3721 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
3722 and renamed [see frame.h changes].
9018a88e 3723
0416870b
KS
3724 * xterm.c: Make (several) trivial substitutions for renamed and
3725 new macros in dispextern.h, frame.h and window.h.
3726 (x_draw_glyph_string_box): Adapt to per-window fringes and
3727 scroll-bars.
3728 (scroll_run): Adapt to new fringe position.
3729 (glyph_rect): Use window coordinates returned from
3730 window_from_coordinates rather than frame_to_window_pixel_xy.
3731 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
3732 scroll-bars.
3733 (handle_one_xevent): Simplify a USE_GTK conditional.
3734 (x_clip_to_row): Remove superfluous whole_line_p arg and code
3735 (fringes are now inside margins, i.e. always in the clipping area).
3736 All callers changed.
3737 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
3738 directly, then call compute_fringe_widths. Don't call
3739 frame_update_line_height.
3740
3741 * w32term.h (struct w32_output): Move members left_pos, top_pos,
3742 border_width, pixel_height, pixel_width, line_height,
3743 internal_border_width, vertical_scroll_bar_extra,
3744 left_fringe_width, right_fringe_width, fringe_cols,
3745 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
3746 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
3747 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
3748 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
3749 (PIXEL_WIDTH, PIXEL_HEIGHT)
3750 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
3751 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
3752 frame.h and renamed [see frame.h changes].
3753 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
3754 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
3755 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
3756 and renamed [see frame.h changes].
9018a88e 3757
0416870b
KS
3758 * w32term.c: Make (several) trivial substitutions for renamed and
3759 new macros in dispextern.h, frame.h and window.h.
3760 (x_draw_glyph_string_box): Adapt to per-window fringes and
3761 scroll-bars.
3762 (glyph_rect): Use window coordinates returned from
3763 window_from_coordinates rather than frame_to_window_pixel_xy.
3764 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
3765 scroll-bars.
3766 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
3767 (fringes are now inside margins, i.e. always in the clipping area).
3768 All callers changed.
3769 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
3770 directly, then call compute_fringe_widths. Don't call
3771 frame_update_line_height.
3772
3773 * w32console.c: Make (few) trivial substitutions for renamed and
3774 new macros in dispextern.h, frame.h and window.h.
3775
3776 * w32fns.c: Make (many) trivial substitutions for renamed and
3777 new macros in dispextern.h, frame.h and window.h.
3778
3779 * w32menu.c: Make (few) trivial substitutions for renamed and
3780 new macros in dispextern.h, frame.h and window.h.
3781
3782 * macterm.h (struct mac_output): Move members left_pos, top_pos,
3783 border_width, pixel_height, pixel_width, line_height,
3784 internal_border_width, vertical_scroll_bar_extra,
3785 left_fringe_width, right_fringe_width, fringe_cols,
3786 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
3787 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
3788 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
3789 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
3790 (PIXEL_WIDTH, PIXEL_HEIGHT)
3791 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
3792 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
3793 frame.h and renamed [see frame.h changes].
3794 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
3795 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
3796 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
3797 and renamed [see frame.h changes].
9018a88e 3798
0416870b
KS
3799 * macterm.c: Make (several) trivial substitutions for renamed and
3800 new macros in dispextern.h, frame.h and window.h.
3801 (x_draw_glyph_string_box): Adapt to per-window fringes and
3802 scroll-bars.
3803 (glyph_rect): Use window coordinates returned from
3804 window_from_coordinates rather than frame_to_window_pixel_xy.
3805 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
3806 scroll-bars.
3807 (x_clip_to_row): Remove superfluous whole_line_p arg and code
3808 (fringes are now inside margins, i.e. always in the clipping area).
3809 All callers changed.
3810 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
3811 directly, then call compute_fringe_widths. Don't call
3812 frame_update_line_height.
3813
3814 * macfns.c: Make (several) trivial substitutions for renamed and
3815 new macros in dispextern.h, frame.h and window.h.
9018a88e 3816 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
0416870b
KS
3817
3818 * macmenu.c: Make (few) trivial substitutions for renamed and
3819 new macros in dispextern.h, frame.h and window.h.
3820
3821 * msdos.h (struct x_output): Remove members left_pos, top_pos,
3822 and line_height, and use corresponding new members in struct
3823 frame. All uses changed.
3824 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
3825 superseeded by corresponding macros in frame.h.
3826
3827 * msdos.c: Make (several) trivial substitutions for renamed and
3828 new macros in dispextern.h, frame.h and window.h.
3829 (IT_note_mouse_highlight): Use updated window coordinates returned
9018a88e 3830 by window_from_coordinates, rather than adjusting them locally.
0416870b
KS
3831 (internal_terminal_init): No need to initialize line_height here;
3832 it now defaults to 1.
3833
9018a88e
SM
38342003-05-24 Stefan Monnier <monnier@cs.yale.edu>
3835
3836 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
3837 dropping `down' events.
3838
016bd3c0
AS
38392003-05-24 Andreas Schwab <schwab@suse.de>
3840
3841 * coding.c (find_safe_codings): Fix last change.
3842
4dacadcc
TTN
38432003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
3844
3845 * xfns.c (x_window): Fix typo from 2003-05-21 change.
3846
319830ce
SM
38472003-05-23 Stefan Monnier <monnier@cs.yale.edu>
3848
9018a88e
SM
3849 * xdisp.c (display_mode_element): Increase max depth.
3850 Simplify the error handling code. Use a different error string
3851 for the case where we hit the depth limit.
3852
319830ce
SM
3853 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
3854
3855 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
3856
38572003-05-21 Stefan Monnier <monnier@cs.yale.edu>
3858
3859 * intervals.c (get_local_map): Don't get char-property of previous
3860 point any more: get_pos_property already does it and better.
3861
c67de8ba
DL
38622003-05-21 Dave Love <fx@gnu.org>
3863
3864 [Merged from unicode branch.]
3865
3866 * xfns.c (x_window, x_window): Use use_xim.
3867
3868 * xterm.c (use_xim): Initialize.
3869 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
3870 (x_term_init): Maybe set use_xim.
3871
3872 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
3873
edd3ff1d
JR
38742003-05-21 Jason Rumney <jasonr@gnu.org>
3875
3876 * unexw32.c (_start): Remove _fmode initialization.
3877
3878 * emacs.c (main) [WINDOWSNT]: Move it here.
3879
463f55ee
DL
38802003-05-20 Dave Love <fx@gnu.org>
3881
3882 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
3883
af253914
RS
38842003-05-19 Richard M. Stallman <rms@gnu.org>
3885
3886 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
3887 as value for QCfont attribute.
3888 (realize_default_face): lface should already exist; crash if not.
3889 Specify 0 for FORCE_P when calling set_lface_from_font_name.
3890
3891 * frame.c (Fignore_event): Doc fix.
3892
1d211019
KH
38932003-05-19 Kenichi Handa <handa@m17n.org>
3894
3895 * coding.c (decode_coding_string): Handle post-read-conversion
3896 even if the coding doesn't require decoding.
3897
4dd68254
RS
38982003-05-18 Richard M. Stallman <rms@gnu.org>
3899
3900 * callproc.c (Fcall_process_region): Doc fix.
3901
14d87dc9
SM
39022003-05-17 Stefan Monnier <monnier@cs.yale.edu>
3903
deca5d96
SM
3904 * lread.c (Fload): Print a message if package is obsolete.
3905
14d87dc9
SM
3906 * window.c (Fselect_window): Add optional `norecord' arg.
3907 (select_window_1): Fold into Fselect_window.
3908 (select_window_norecord): New function.
3909 (temp_output_buffer_show): Use it. Preserve current buffer.
3910
3911 * window.h (Fselect_window): Update declaration.
3912
3913 * window.c (delete_window, Fother_window, Fset_window_configuration):
3914 * minibuf.c (read_minibuf):
3915 * macterm.c (x_new_focus_frame):
3916 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
3917 * callint.c (Fcall_interactively):
3918 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
3919
3920 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
3921
78f52183
DK
39222003-05-17 David Kastrup <dak@gnu.org>
3923
3924 * process.c (read_process_output): Back out change from 2003-03-09.
3925
14d87dc9
SM
39262003-05-17 Stefan Monnier <monnier@cs.yale.edu>
3927
3928 * editfns.c (get_pos_property): Don't assume that `object' = nil.
3929
3930 * textprop.c (text_property_stickiness): New arg `buffer'.
3931
3932 * intervals.h (text_property_stickiness): New arg `buffer'.
3933 (get_pos_property): Declare.
3934
3935 * intervals.c (get_local_map): Use get_pos_property, to obey
3936 stickiness and empty overlays.
3937 (create_root_interval, graft_intervals_into_buffer): Use BEG.
3938 (merge_properties, intervals_equal, merge_properties_sticky):
3939 Use XCAR, XCDR.
3940 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
3941
1fd1cc2f
RS
39422003-05-17 Richard M. Stallman <rms@gnu.org>
3943
4f9f637a
RS
3944 * minibuf.c (read_minibuf): If buffer is empty, record the default
3945 in the history.
3946 (Fminibuffer_complete_word): When deleting the overlap, take account
3947 of its real position.
3948
3949 * fns.c (map_char_table): Fix previous change.
3950
1fd1cc2f
RS
3951 * syntax.c (find_defun_start):
3952 When open_paren_in_column_0_is_defun_start,
3953 return beginning of buffer.
3954
3955 * lisp.h (map_char_table): Declare added arg.
3956
3957 * fns.c (map_char_table): New arg TABLE gets the master table.
3958 All calls changed.
3959 Process default and inheritance, resorting to Faref if necessary.
3960
3961 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
3962 (Faccessible_keymaps): Pass new arg to map_char_table.
3963
3964 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
3965
3966 * casetab.c (set_case_table): Pass new arg to map_char_table.
3967
3968 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
3969
3970 * lisp.h (specbinding_func): New typedef.
3971 (struct specbinding): Use specbinding_func, to put the `volatile'
3972 in the right place.
3973
3974 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
3975 to avoid GCC warning.
14d87dc9 3976
b4bd27c5
RS
39772003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org> (tiny change)
3978
14d87dc9 3979 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
b4bd27c5 3980
35fb885d
SM
39812003-05-15 Stefan Monnier <monnier@cs.yale.edu>
3982
3983 * keyboard.c (apply_modifiers): Don't fill the other cache.
3984
9a274fbd
SM
39852003-05-14 Stefan Monnier <monnier@cs.yale.edu>
3986
c55b5fad
SM
3987 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
3988
9a274fbd
SM
3989 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
3990 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
3991 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
3992 (Fset_window_configuration, Fcurrent_window_configuration)
3993 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
3994 (Fpos_visible_in_window_p, mark_window_cursors_off)
3995 (window_internal_height, window_internal_width, Frecenter)
3996 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
3997 (replace_buffer_in_all_windows, init_window_once, init_window)
3998 (syms_of_window, keys_of_window): Move from lisp.h.
3999 * lisp.h: Move window.c declarations to window.h.
4000
4001 * bytecode.c: Include window.h.
4002 * emacs.c: Include window.h.
4003
14d87dc9 4004 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
9a274fbd
SM
4005 (keyremap): Add `parent' field.
4006 (keyremap_step): Use it. Remove `parent' argument.
4007 (read_key_sequence): Setup and use the new `parent' field.
4008
fd93e331
SM
40092003-05-11 Stefan Monnier <monnier@cs.yale.edu>
4010
4011 * keyboard.c (adjust_point_for_property): Ensure termination.
4012
1c4001a1
SM
40132003-05-10 Stefan Monnier <monnier@cs.yale.edu>
4014
4015 * keyboard.c (follow_key): Remove dead variable `did_meta'.
4016 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
4017 duplicated handling of function-key-map and key-translation-map
4018 in read_key_sequence.
4019 (read_key_sequence): Use them.
4020
4021 * keyboard.c (adjust_point_for_property): Try harder to move point
4022 to the non-sticky end of an invisible property.
4023
4024 * xdisp.c (single_display_prop_intangible_p): Make `space' display
4025 property intangible as well.
4026
780379b1
AS
40272003-05-10 Andreas Schwab <schwab@suse.de>
4028
4029 * xmenu.c (single_menu_item): Change last parameter to void* to
4030 avoid warning.
4031
ca2de342
RS
40322003-05-09 Richard M. Stallman <rms@gnu.org>
4033
4034 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
4035 Bind Qinhibit_modification_hooks to t so there will be no GC.
4036 Rename local `tem' to `save_deactivate_mark'.
4037
4038 * eval.c (specpdl_ptr): Declare volatile.
4039 (unbind_to): Copy the whole binding and decrement specpdl_ptr
4040 before doing the work of unbinding it.
4041
4042 * lisp.h (struct specbinding): Declare elements volatile.
4043 (specpdl_ptr): Declare volatile.
4044
4045 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
4046
4047 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
4048 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
4049
347003be
DL
40502003-05-08 Dave Love <fx@gnu.org>
4051
4052 * coding.c (Vlast_coding_system_used): Doc fix.
4053
5adcec23
JR
40542003-05-07 Jason Rumney <jasonr@gnu.org>
4055
4056 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
4057 when system does not support them.
4058
5fe3b8a4
SM
40592003-05-05 Stefan Monnier <monnier@cs.yale.edu>
4060
4061 * fileio.c (Qwrite_region_annotate_functions): New var.
4062 (build_annotations): Use it to process the global part of the hook.
4063 (syms_of_fileio): Init and staticpro it.
4064
4065 * keyboard.c (safe_run_hooks_error): Display a message instead of
4066 silently ignoring the error.
4067
40682003-05-03 Stefan Monnier <monnier@cs.yale.edu>
4069
4070 * keyboard.c (input_available_signal): Mark static.
4071 (menu_bar_items): Use map_keymap.
4072 (menu_bar_one_keymap): Remove.
4073 (menu_bar_item): Adjust arglist (for use in map_keymap).
4074 Properly hide a second binding when not both are keymaps.
4075
4076 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
4077 (single_keymap_panes): Use it and map_keymap.
4078 (single_menu_item): Use skp as well.
4079
4080 * keymap.h (map_keymap_function_t): New type.
4081 (map_keymap): Declare.
4082
4083 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
4084 (map_keymap_call, Fmap_keymap): New functions.
4085 (syms_of_keymap): Defsubr map-keymap.
4086
4b1b4443
JD
40872003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4088
4089 * gtkutil.c (create_dialog, make_widget_for_menu_item)
4090 (make_menu_item, create_menus, xg_update_menu_item): Don't call
4091 ..._with_mnemonic functions for menu items.
4092
1f816871
KH
40932003-05-01 Kenichi Handa <handa@m17n.org>
4094
4095 * coding.c (coding_system_accept_latin_extra_p): Delete this
4096 function.
4097 (find_safe_codings): Pay attention to
4098 the property tranlsation-table-for-encode of each codings.
4099 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
4100
5ed6ba5b
SM
41012003-05-01 Stefan Monnier <monnier@cs.yale.edu>
4102
4103 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
4104
32c06229
SM
41052003-04-30 Stefan Monnier <monnier@cs.yale.edu>
4106
4107 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
4108
4109 * lisp.h (CHECK): Wrap args in parenthesis.
4110 (specbind): Fix doc: symbol = Qnil is not supported any more.
4111
4112 * bytecode.c (Fbyte_code) <unwind-protect>:
4113 Use Fprogn rather than 0 and Qnil.
4114
4115 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
4116 `double', and `triple' modifiers as well.
4117
ed3c3314
RS
41182003-04-30 Richard M. Stallman <rms@gnu.org>
4119
4120 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
4121
4122 * alloc.c (abort_on_gc): New variable.
4123 (Fgarbage_collect): Abort if abort_on_gc is set.
4124
4125 * lisp.h (abort_on_gc): Add decl.
4126
4127 * eval.c (Fsignal): Clear abort_on_gc.
4128
4129 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
32c06229 4130 Reinit FORMAT_START and END before second scan.
ed3c3314
RS
4131
4132 * xdisp.c (move_it_vertically_backward): Do the final big else
4133 even if nlines is 0.
4134
4135 * xdisp.c (redisplay_internal): Finish the per-frame loop
4136 even if redisplay is suspended by input.
4137
0b325c12
AC
41382003-04-24 Andrew Choi <akochoi@shaw.ca>
4139
4140 * macterm.c (x_list_fonts): Return all fonts that match if
4141 maxnames = -1.
4142
4e837cd0
KH
41432003-04-25 Kenichi Handa <handa@m17n.org>
4144
4145 * syntax.c (skip_chars): Fix previous change.
4146
9af7511a
KH
41472003-04-24 Kenichi Handa <handa@m17n.org>
4148
4149 * syntax.c (skip_chars): Make the code faster by using the common
4150 technique of *p, *stop, and *endp.
4151
e3b2c21f
JD
41522003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4153
4154 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
32c06229 4155 tool_bar_items so GTK tool bar expose callback does not access items
e3b2c21f
JD
4156 being updated.
4157
32c06229
SM
41582003-04-19 Stefan Monnier <monnier@cs.yale.edu>
4159
4160 * eval.c (Fapply): Undo last change and add a comment about why.
4161
c6464167
MB
41622003-04-18 Miles Bader <miles@gnu.org>
4163
4164 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
4165 pickier PARSE_MULTIBYTE_SEQ.
4166
e509f168
SM
41672003-04-17 Stefan Monnier <monnier@cs.yale.edu>
4168
4169 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
4170 Use XCDR, XCAR, CONSP.
4171 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
4172 (Fapply): Remove unnecessary GCPRO.
4173
4174 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
4175
4176 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
4177
4178 * buffer.h: Don't hardcode BEG==1.
4179
4180 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
4181
5ceea398
RS
41822003-04-16 Richard M. Stallman <rms@gnu.org>
4183
4184 * xdisp.c (try_window, try_window_reusing_current_matrix):
4185 When at end of window, set window_end_pos to Z-ZV.
4186
4187 * buffer.c (Foverlay_recenter): Doc fix.
4188
e509f168
SM
41892003-04-14 Stefan Monnier <monnier@cs.yale.edu>
4190
4191 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
4192
d243e605
AC
41932003-04-14 Andrew Choi <akochoi@shaw.ca>
4194
4195 * macterm.c (mac_check_for_quit_char): Don't check more often than
4196 once a second.
4197
6901b111
SM
41982003-04-11 Stefan Monnier <monnier@cs.yale.edu>
4199
4200 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
4201 specially, so that they can't hide an implicit switch-frame event.
4202 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
4203 (head_table): Use switch-frame as event_kind for select-window.
4204 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
4205
4206 * editfns.c (Fformat): Lisp_Object/int mixup.
4207 (format2): Remove unused var numargs.
4208
e301806f 42092003-04-11 Kenichi Handa <handa@m17n.org>
aa95b710 4210
6901b111 4211 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
aa95b710
KH
4212 (Qafter_insert_file_set_coding): New variable.
4213 (syms_of_fileio): Initialize and staticpro it. Delete declaration
4214 for after-insert-file-adjust-coding-function.
4215 (Finsert_file_contents): Call Qafter_insert_file_set_coding
4216 instead of Vafter_insert_file_adjust_coding_function.
4217
38914424
KH
42182003-04-11 Kenichi Handa <handa@m17n.org>
4219
4220 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
4221
4222 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
4223 string. Callers changed.
4224
42252003-04-10 Kenichi Handa <handa@m17n.org>
a288d979 4226
6901b111 4227 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
a288d979 4228 (syms_of_fileio): Declare it as a lisp variable.
6901b111
SM
4229 (Finsert_file_contents):
4230 Call Vafter_insert_file_adjust_coding_function before calling
a288d979
KH
4231 decode-format.
4232
f979dc05
JD
42332003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4234
4235 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
4236 get GtkAdjustment as widget now is a GtkRange.
4237
4238 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
4239 GtkRange to avoid memory leak.
4240
f8c6b4c2 42412003-04-09 Kenichi Handa <handa@m17n.org>
cb98871c 4242
50ebc53d
KH
4243 * xfaces.c (Vface_font_rescale_alist): New variable.
4244 (struct font_name): New member rescale_ratio.
4245 (font_rescale_ratio): New function.
6901b111 4246 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
50ebc53d
KH
4247 (better_font_p): On comparing point sized, pay attention to
4248 recale_ratio member of fonts.
4249 (build_scalable_font_name): Reflect font->rescale_ratio in the
4250 font name.
6901b111 4251 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
50ebc53d 4252
cb98871c
KH
4253 * lread.c (read1): Before calling index, check if the 2nd
4254 arguemnt is in ASCII range.
4255
4773b8ca
RS
42562003-04-08 Richard M. Stallman <rms@gnu.org>
4257
b0ada147
RS
4258 * fileio.c (Ffile_symlink_p): Doc fix.
4259
4260 * editfns.c (Fformat): Translate positions of text properties
4261 in the format string to apply them to the result.
4262
4773b8ca
RS
4263 * fileio.c (Finsert_file_contents): Doc fix.
4264 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
4265
42662003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6901b111 4267
4773b8ca
RS
4268 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
4269
e8f25745 42702003-04-08 Steven Tamm <steventamm@mac.com>
b0ada147 4271
e8f25745
ST
4272 * mac.c (init_mac_osx_environment): Switch libexec and bin so
4273 that self-contained application finds libexec files.
4274
f8c6b4c2 42752003-04-08 Kenichi Handa <handa@m17n.org>
2310d84c 4276
6901b111
SM
4277 * coding.c (code_convert_region_unwind):
4278 Set Vlast_coding_system_used to the argument.
2310d84c
KH
4279 (code_convert_region): If post-read-conversion function changed
4280 the value of last-coding-sytem, keep the new value in
4281 coding->symbol so that it won't be overridden.
4282 (run_pre_post_conversion_on_str): Likewise.
7c086845
KH
4283 (coding_system_accept_latin_extra_p): New function.
4284 (find_safe_codings): Pay attention to characters registered in
4285 latin-extra-code-table.
2310d84c 4286
39c9a034
TTN
42872003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
4288
4289 * Makefile.in (md5.o): Add missing dependency info.
4290
eb67c5d6
RS
42912003-04-06 Richard M. Stallman <rms@gnu.org>
4292
4293 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
4294
4295 * marker.c (verify_bytepos): New function.
4296
4297 * intervals.c (set_intervals_multibyte_1): When becoming
4298 multibyte, adjust right and left child sizes to a whole set of
4299 characters. If an interval gets zero total-length, delete it.
4300 If an interval consists of just its children, delete one of them.
4301
4302 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
4303 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
39c9a034 4304
eb67c5d6
RS
4305 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
4306 All calls deleted.
4307 (lisp_malloc): Do the work here directly.
4308
b1f81fc5
JB
43092003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
4310
4311 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
4312 char tables.
4313
43142003-04-04 Kenichi Handa <handa@m17n.org>
aa8b70ae
KH
4315
4316 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
4317 destructively change "%S" to "%s".
4318
774666fb
MB
43192003-04-03 Miles Bader <miles@gnu.org>
4320
4321 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
4322 always set.
4323
19c37f01
DL
43242003-04-01 Dave Love <fx@gnu.org>
4325
4326 * xfns.c (xpm_lookup_color): Grok "opaque".
4327
2f4b24c3
AC
43282003-03-31 Andrew Choi <akochoi@shaw.ca>
4329
4330 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
4331 parent window ID.
4332
4333 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
4334
4335 * macterm.h (struct mac_output): Define x_pixels_diff and
4336 y_pixels_diff.
b1f81fc5 4337
9443fcf6
JB
43382003-03-31 Juanma Barranquero <lektu@terra.es>
4339
4340 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
4341 blockinput.h and files included from it.
4342
e072891b
KS
43432003-03-31 Kim F. Storm <storm@cua.dk>
4344
4345 The following changes consolidates the common code related to
4346 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
4347 files into frame.c.
9443fcf6 4348
e072891b
KS
4349 * frame.c: Include blockinput.h.
4350 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
4351 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
4352 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
4353 related vars here.
4354 (struct frame_parm_table, frame_parms): New table for describing
4355 frame parameters and their associated Q-variable.
4356 The order of the parameters corresponds to the sequence of the
4357 frame_parm_handlers table in redisplay_interface.
4358 (x_fullscreen_move, x_set_frame_parameters)
4359 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
4360 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
4361 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
4362 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
4363 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
4364 Generic functions for processing of frame parameters.
4365 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
4366 (display_x_get_resource, x_get_resource_string): Functions for
4367 generic access to X resources.
4368 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
4369 (x_default_parameter, Fx_parse_geometry): Functions for generic
4370 access to frame parameters.
6901b111
SM
4371 (x_figure_window_size): Generic calculation of frame size.
4372 Fixed to add space needed for tool bar. Also setup size_hint_flags.
e072891b
KS
4373 (syms_of_frame): Intern and staticpro frame parameter variables.
4374 Defvar_lisp Vx_resource_class and Vx_resource_name here.
4375 Defsubr Sx_get_resource and Sx_parse_geometry.
9443fcf6 4376
e072891b
KS
4377 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
4378 parameter related vars defined in frame.c.
4379 (EMACS_CLASS): Define here.
4380 (enum FULLSCREEN_*): Define here.
4381 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
4382 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
4383 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
4384 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
4385 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
4386 (x_set_visibility, x_set_autoraise, x_set_autolower)
4387 (x_set_unsplittable, x_set_vertical_scroll_bars)
4388 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
4389 (x_figure_window_size): Add prototypes.
4390
4391 * dispextern.h (frame_parm_handler): New typedef.
4392 (struct redisplay_interface): New member frame_parm_handlers.
4393 (enum resource_types): Move declaration here.
4394 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
4395 (x_default_parameter): Add prototypes.
4396
4397 * window.c: Remove extern decl for frame parameter vars.
4398 (change_window_heights): New generic function;
4399 replaces x_change_window_heights. All users changed.
4400
4401 * window.h (change_window_heights): Add prototype.
4402
4403 * xfaces.c: Remove extern decl for frame parameter vars.
4404
4405 * xterm.h (EMACS_CLASS): Remove. Use generic define.
4406 (struct w32_display_info): Fix type of xrdb member.
4407 (enum FULLSCREEN_*): Remove.
4408 Remove prototypes for generic functions (in frame.h).
4409
4410 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
4411 parameters now defined in frame.h and frame.c.
4412 (Vx_resource_name): Remove. Use generic var.
4413 (enum x_frame_parms): Remove (bogus, unused enum).
4414 (check_x_display_info): Make non-static (for frame.c).
4415 (struct x_frame_parm_table, x_frame_parms): Remove.
4416 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
4417 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
4418 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
4419 (x_change_window_heights, x_set_autoraise, x_set_autolower)
4420 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
4421 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
4422 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
4423 Remove. Use generic functions instead.
4424 (enum resource_types): Remove.
4425 (x_set_scroll_bar_default_width): New global function (for frame.c).
4426 (Fx_create_frame): Depend on x_figure_window_size to add space for
4427 toolbar and setup size_hint_flags.
4428 (x_frame_parm_handlers): New table for redisplay_interface.
4429 (syms_of_xfns): Don't intern/staticpro removed vars.
9443fcf6 4430
e072891b
KS
4431 * xterm.c: Remove unnecessary extern declarations.
4432 (x_fullscreen_adjust): Remove. Use generic instead.
4433 (x_redisplay_interface): Add x_frame_parm_handlers member.
4434
4435 * w32gui.h (XrmDatabase): New (dummy) typedef.
4436
4437 * w32term.h (EMACS_CLASS): Remove. Use generic define.
4438 (struct w32_display_info): Fix type of xrdb member.
4439 (enum FULLSCREEN_*): Remove.
4440 (x_fullscreen_adjust): Remove prototype.
4441
4442 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
4443 parameters now defined in frame.h and frame.c.
4444 (Vx_resource_name): Remove. Use generic var.
4445 (enum x_frame_parms): Remove (bogus, unused enum).
4446 (check_x_display_info): Make non-static (for frame.c).
4447 (struct x_frame_parm_table, x_frame_parms): Remove.
4448 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
4449 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
4450 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
4451 (x_change_window_heights, x_set_autoraise, x_set_autolower)
4452 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
4453 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
4454 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
4455 Remove. Use generic functions instead.
4456 (enum resource_types): Remove.
4457 (x_set_scroll_bar_default_width): New global function (for frame.c).
4458 (Fx_create_frame): Depend on x_figure_window_size to add space for
4459 toolbar and setup size_hint_flags.
4460 (w32_frame_parm_handlers): New table for redisplay_interface.
4461 (syms_of_w32fns): Don't intern/staticpro removed vars.
9443fcf6 4462
e072891b
KS
4463 * w32term.c: Remove unnecessary extern declarations.
4464 (x_fullscreen_adjust): Remove. Use generic instead.
4465 (x_redisplay_interface): Add w32_frame_parm_handlers member.
4466
4467 * w32reg.c (x_get_string_resource): Use XrmDatabase.
4468
4469 * macgui.h (XrmDatabase): New (dummy) typedef.
4470
4471 * macterm.h (EMACS_CLASS): Remove.
4472 (struct mac_display_info): Add xrdb member.
4473 (struct mac_output): Add want_fullscreen member.
4474
4475 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
4476 parameters now defined in frame.h and frame.c.
4477 (Vx_resource_name): Remove. Use generic var.
4478 (check_x_display_info): Make non-static (for frame.c).
4479 (struct x_frame_parm_table, x_frame_parms): Remove.
4480 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
4481 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
4482 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
4483 (x_change_window_heights, x_set_autoraise, x_set_autolower)
4484 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
4485 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
4486 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
4487 Remove. Use generic functions instead.
4488 (enum resource_types): Remove.
4489 (x_set_scroll_bar_default_width): New global function (for frame.c).
4490 (mac_frame_parm_handlers): New table for redisplay_interface.
4491 (syms_of_macfns): Don't intern/staticpro removed vars.
9443fcf6 4492
e072891b
KS
4493 * macterm.c: Remove unnecessary extern declarations.
4494 (x_redisplay_interface): Add mac_frame_parm_handlers member.
4495
3e6a560b
KS
4496 * Makefile.in (frame.o): Add dependency on blockinput.h and files
4497 included from it (atimer.h and systime.h).
4498
7b7b454e
AS
44992003-03-30 Andreas Schwab <schwab@suse.de>
4500
4501 * xdisp.c (x_insert_glyphs): Fix swapped width and height
4502 parameters for shift_glyphs_for_insert.
4503
4504 * macterm.c (x_redisplay_interface): Add missing entry for
4505 draw_vertical_window_border.
4506
beb402de
KG
45072003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
4508
4509 * fileio.c (Fexpand_file_name): In the no-handler case, after
4510 expanding, look again for a handler and invoke it. This is needed
4511 for filenames like "/foo/../user@host:/bar/../baz" -- the first
4512 expansion produces "/user@host:/bar/../baz" which needs to be
4513 expanded again for the finame result "/user@host:/baz".
4514
b676f356
JD
45152003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4516
4517 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
4518 of area to be redrawn for better performance.
4519
3c671a56
SM
45202003-03-28 Stefan Monnier <monnier@cs.yale.edu>
4521
4522 * xterm.c (take_vertical_position_into_account): Remove.
4523 (xt_action_hook): Call set_vertical_scroll_bar if needed.
4524 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
4525 (xm_scroll_callback, x_create_toolkit_scroll_bar)
4526 (x_set_toolkit_scroll_bar_thumb): Simplify.
4527 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
4528 (XTread_socket): Remove unused var.
4529 (x_make_frame_invisible): Replace goto with else.
4530
4531 * xdisp.c (set_vertical_scroll_bar): New fun.
4532 (redisplay_window): Use it.
4533
84f2e615
RS
45342003-03-26 Richard M. Stallman <rms@gnu.org>
4535
4536 * xdisp.c (update_tool_bar): Recompute tool bar if
4537 update_mode_lines is set. Set w->update_mode_line
4538 only if the tool bar contents actually change.
4539 (update_menu_bar): Undo previous change.
4540
70b6104c
JD
45412003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4542
5fd6f727
JD
4543 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
4544 (xg_frame_set_char_size): Calculate scroll bar width before frame
4545 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
4546 (xg_separator_p): Check for all documented separator types.
4547 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
4548 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
4549
70b6104c
JD
4550 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
4551 so tool bar gets updated.
4552
d9b36d19
SM
45532003-03-26 Stefan Monnier <monnier@cs.yale.edu>
4554
4555 * data.c (store_symval_forwarding): Re-instate part of the code
4556 that was deleted with too much enthusiasm.
4557
45582003-03-25 Stefan Monnier <monnier@cs.yale.edu>
4559
4560 * data.c (store_symval_forwarding): Delete special read-only
4561 hack for type == -1, since we now use ->constant instead.
4562 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
4563
4564 * buffer.c (overlays_in): Declare static.
4565 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
4566 `constant' field rather than the variable's `type' field.
4567
365fa1b3
AC
45682003-03-24 Andrew Choi <akochoi@shaw.ca>
4569
4570 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
4571
4572 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
4573
4574 * fns.c [MAC_OSX]: Do not redefine vector.
4575
4576 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
4577
4578 * macgui.h: Remove definition of No_Cursor.
4579
d9b36d19 4580 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
365fa1b3
AC
4581
4582 * xdisp.c: Define No_Cursor.
4583 (x_write_glyphs, notice_overwritten_cursor)
4584 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
4585 (note_mouse_highlight): Remove Mac-specific code.
4586 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
d9b36d19 4587
c0bcce6f
JPW
45882003-03-24 John Paul Wallington <jpw@gnu.org>
4589
4590 * xdisp.c (redisplay_window): If mini window's buffer is not
4591 empty, then redisplay it like other windows.
4592
a526b96c
KS
45932003-03-23 Kim F. Storm <storm@cua.dk>
4594
4595 * w32term.c (w32_draw_window_cursor): Fix last change.
4596
37ab321e
KH
45972003-03-23 Kenichi Handa <handa@m17n.org>
4598
a526b96c
KS
4599 * alloc.c (make_string_from_bytes, make_specified_string):
4600 Add `const' for the arg CONTENTS.
37ab321e
KH
4601
4602 * lisp.h (make_string_from_bytes, make_specified_string):
4603 Prototypes adjusted.
4604
7863d625
JD
46052003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4606
a526b96c 4607 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
fd4c9408 4608
7863d625
JD
4609 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
4610 (XG_SB_RANGE): New define.
4611
4612 * gtkutil.c (xg_fixed_handle_expose): New function.
4613 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
4614 expose events.
4615 (xg_update_scrollbar_pos): Take two more arguments, left and width
4616 of scroll bar including borders.
4617 Clear left and right part outside scroll bar separately as some
4618 themes have bars that are not an even number of pixels.
d9b36d19 4619 Don't set reallocate_redraws, don't call
7863d625
JD
4620 gdk_window_process_all_updates.
4621 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
4622 so no need to change it. Calculate size and value with XG_SB_RANGE.
4623
d9b36d19
SM
4624 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
4625 Pass left and width of scroll bar including borders to
7863d625
JD
4626 xg_update_scrollbar_pos.
4627
af0ad939
TTN
46282003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
4629
4630 * Makefile.in: Make sure space precedes end-of-line backslashes.
4631
b22139fd
KS
46322003-03-22 Kim F. Storm <storm@cua.dk>
4633
4634 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
4635 Add generic versions here. Remove system specific versions
4636 defined elsewhere.
4637
4638 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
4639 Add prototypes.
4640
6e6410cf
KS
4641 * xterm.h (STORE_NATIVE_RECT): New macro.
4642
5c9cc435
KS
46432003-03-21 Kim F. Storm <storm@cua.dk>
4644
00c64fab
SM
4645 * xdisp.c (get_glyph_string_clip_rect):
4646 Use FRAME_INTERNAL_BORDER_WIDTH.
5c9cc435
KS
4647
4648 * dispextern.h (struct redisplay_interface): Add active_p
4649 argument to draw_window_cursor member. All uses changed.
4650
acd37560
KS
46512003-03-21 Kim F. Storm <storm@cua.dk>
4652
4653 The following changes consolidate code related to writing and
4654 inserting glyphs, exposing frame, the tool bar, the mouse face,
4655 the output cursor, and help echo from xterm.c, w32term.c and
4656 macterm.c into xdisp.c. It also generalizes the use of the
4657 window_part enum instead of using numeric values throughout.
af0ad939 4658
acd37560
KS
4659 * xdisp.c: Consolidate gui-independent code here.
4660 Include keymap.h.
4661 (Qhelp_echo): Import.
4662 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
4663 (help_echo_string, help_echo_window, help_echo_object)
4664 (previous_help_echo_string, help_echo_pos): Declare here.
4665 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
4666 (estimate_mode_line_height): Define here. Handle windowing
4667 systems directly (without using estimate_mode_line_height_hook).
4668 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
4669 (update_window_cursor, update_cursor_in_window_tree)
4670 (fast_find_position, fast_find_string_pos)
4671 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
4672 (expose_area, expose_line, expose_overlaps, expose_window)
4673 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
4674 declared static as they are only used locally in xdisp.c.
4675 (draw_glyphs): Rename from x_draw_glyphs and make static.
4676 (tool_bar_item_info, notice_overwritten_cursor): Make static.
4677 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
4678 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
af0ad939 4679 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
acd37560
KS
4680 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
4681 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
4682 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
4683 (note_mouse_highlight, x_clear_window_mouse_face)
4684 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
4685 (x_intersect_rectangles): New generic functions for use by xdisp.c
4686 and GUI front-ends.
4687 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
4688 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
4689
4690 * dispextern.h (Display_Info): Generic typedef for *_display_info.
4691 (NativeRectangle): Generic typedef for rectangle type.
4692 (enum window_part): Move here from window.c.
4693 (struct redisplay_interface): New members flush_display_optional,
4694 define_frame_cursor, clear_frame_area, draw_window_cursor,
4695 draw_vertical_window_border, shift_glyphs_for_insert.
4696 Rename member clear_mouse_face to clear_window_mouse_face.
4697 (estimate_mode_line_height_hook): Remove hook.
4698 (auto_raise_tool_bar_buttons_p): Don't declare extern.
4699 (tool_bar_item_info): Remove prototype.
4700 (help_echo_string, help_echo_window, help_echo_object)
4701 (previous_help_echo_string, help_echo_pos)
4702 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
4703 (x_stretch_cursor_p, output_cursor): Declare extern.
4704 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
4705 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
4706 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
4707 (display_and_set_cursor, set_output_cursor, x_cursor_to)
4708 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
4709 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
4710 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
4711 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
4712 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
4713 Add prototypes.
4714 (mode_line_string, marginal_area_string): Fix prototypes.
4715
4716 * window.c (enum window_part): Move to dispextern.h.
4717 (coordinates_in_window): Use enum window_part member names
4718 instead of numbers to describe return value.
4719 (struct check_window_data): Change part member to window_part.
4720 (check_window_containing): Return window_part unaltered.
4721 (window_from_coordinates): Change part arg from int to enum
4722 window_part. Allow part arg to be null. All users changed.
4723
4724 * window.h (window_from_coordinates): Fix prototype.
4725
4726 * term.c (estimate_mode_line_height): Move to xdisp.c.
4727
4728 * keyboard.c (make_lispy_event): Use enum window_part.
4729
4730 * dispnew.c (mode_line_string, marginal_area_string): Use enum
4731 window_part instead of int in arg list. Users changed.
4732
4733 * xterm.h (No_Cursor): Declare as None for X.
4734 (struct mac_output): Replace member cross_cursor by hand_cursor.
af0ad939 4735
acd37560
KS
4736 * xterm.c: Remove consolidated defines and code.
4737 (BETWEEN): Remove unused macro.
4738 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
4739 (x_define_frame_cursor, x_clear_frame_area)
4740 (x_draw_window_cursor): New X-specific functions for RIF.
4741 (x_redisplay_interface): Add new members.
4742
4743 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
4744
4745 * w32term.h (struct w32_output): Remove cross_cursor member.
4746
4747 * w32term.c: Remove consolidated defines and code.
4748 (BETWEEN): Remove unused macro.
4749 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
4750 (w32_define_frame_cursor, w32_clear_frame_area)
4751 (w32_draw_window_cursor): New W32-specific functions for RIF.
4752 (w32_redisplay_interface): Add new members.
4753
a64387ee 4754 * w32gui.h (No_Cursor): Define as 0 for W32.
acd37560
KS
4755 (XRectangle): Add X compatible rectangle type.
4756 (NativeRectangle): Declare as RECT for W32.
4757 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
4758
4759 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
4760
4761 * w32console.c: Remove consolidated defines and code.
af0ad939 4762
acd37560
KS
4763 * msdos.h (Display_Info): Add generic typedef.
4764
4765 * msdos.c: Remove consolidated defines and code.
4766 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
4767
4768 * macterm.h (struct mac_output): Replace member cross_cursor by
4769 hand_cursor.
4770 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
4771
4772 * macterm.c: Remove consolidated defines and code.
4773 (BETWEEN): Remove unused macro.
4774 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
4775 (mac_define_frame_cursor, mac_clear_frame_area)
4776 (mac_draw_window_cursor): New Mac-specific functions for RIF.
4777 (x_redisplay_interface): Add new members.
4778
4779 * macgui.h (No_Cursor): Define as 0 for Mac.
4780 (XRectangle): Add X compatible rectangle type.
4781 (NativeRectangle): Declare as Rect for Mac.
4782 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
4783
204ccab1
KS
4784 * macfns.c (x_set_mouse_color): Setup hand_cursor.
4785 (x_set_cursor_color): Use x_display_and_set_cursor.
acd37560 4786
9443fcf6 4787 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
acd37560
KS
4788 included from it. Add dependency on keymap.h.
4789
4790 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
4791
8ba01a70 47922003-03-21 Kenichi Handa <handa@m17n.org>
3f817c73
KH
4793
4794 * fileio.c (Fexpand_file_name): Fix previous change.
4795
8ba01a70 47962003-03-19 Kenichi Handa <handa@m17n.org>
4f497b0a
KH
4797
4798 * fileio.c (Ffile_name_directory): Reconstruct file name by
4799 make_specified_string.
4800 (Ffile_name_nondirectory, Ffile_name_as_directory)
4801 (Fdirectory_file_name, Fexpand_file_name)
4802 (Fsubstitute_in_file_name): Likewise.
4803 (Fread_file_name): Compare decoded homedir with DIR and
4804 DEFAULT_FILENAME.
4805
4806 * alloc.c (make_specified_string): If NCHARS is negative, count
4807 the number of characters.
4808
19536747
JD
48092003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4810
de38ae5a
JD
4811 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
4812 all widgets.
4813
19536747
JD
4814 * gtkutil.h: Removed xg_ignore_next_thumb.
4815
37ab321e 48162003-03-18 Kenichi Handa <handa@m17n.org>
cb0d4562
KH
4817
4818 * coding.c (Vchar_coding_system_table): Remove this variable.
4819 (Vcoding_system_safe_chars): New variable.
4820 (intersection): Remove this function.
4821 (find_safe_codings): Don't use Vchar_coding_system_table, but try
4822 all codings in SAFE_CODINGS.
00c64fab 4823 (Ffind_coding_systems_region_internal): Adjust for the change of
cb0d4562
KH
4824 find_safe_codings. Get generic coding systems from
4825 Vcoding_system_safe_chars.
4826 (Fdefine_coding_system_internal): New function.
4827 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
4828 Initialize and staticpro Vcoding_system_safe_chars.
4829
17097258
JD
48302003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4831
2a2071c3
JD
4832 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
4833 equal old values before updating.
4834
17097258
JD
4835 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
4836
4837 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
4838
48392003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4840
4841 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
4842 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
4843 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
4844 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
4845 (xg_create_scroll_bar): Pass bar to button event callback.
4846 (xg_find_top_left_in_fixed): New function.
4847 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
4848 whole scroll bar area. Get old position with
4849 xg_find_top_left_in_fixed, calculate and only clear needed areas.
4850 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
4851 dragging is in progress. Calculate whole as for Motif.
4852 Remove code that saved last values. Call gtk_range functions to
4853 set scroll bar sizes.
4854
4855 * gtkutil.h: Removed xg_ignore_next_thumb.
4856
8cb9dfbf
JB
48572003-03-17 Juanma Barranquero <lektu@terra.es>
4858
4859 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
4860 and files included from it.
4861
00c64fab
SM
48622003-03-18 Stefan Monnier <monnier@cs.yale.edu>
4863
4864 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
4865 multiple occurrences of the same keymap under different prefixes.
4866 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
4867
c45bb3b2
JR
48682003-03-16 Jason Rumney <jasonr@gnu.org>
4869
4870 * w32gui.h: Use HDC for Display.
4871
4872 * w32term.c (w32_encode_char): Prevent double-byte chars from
4873 crashing Emacs.
4874
4875 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
4876 as binary.
4877
2a6d0874
JB
48782003-03-16 Juanma Barranquero <lektu@terra.es>
4879
4880 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
4881
03eb5fab
KS
48822003-03-16 Kim F. Storm <storm@cua.dk>
4883
4884 The following changes consolidate some of the gui-independent
4885 parts of the processing and drawing of "glyph strings" from
4886 xterm.c, w32term.c, and macterm.c into xdisp.c.
2a6d0874 4887
03eb5fab
KS
4888 * dispextern.h (struct glyph): Reduce face_id member from 22 to
4889 21 bits (this reduces number of faces from 4M to 2M).
4890 Replace W32 specific w32_font_type member (2 bits) by generic
4891 font_type member (3 bits) for portability.
4892 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
4893 (enum draw_glyphs_face): Define here.
4894 (struct glyph_string): Define here. Merge W32 and X versions.
4895 (struct redisplay_interface): New members per_char_metric,
4896 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
4897 (VCENTER_BASELINE_OFFSET): Define here.
4898 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
4899 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
4900
4901 * xdisp.c: Consolidate gui-independent "glyph string" code here.
4902 (dump_glyph_string): Moved here.
4903 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
4904 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
4905 (fill_composite_glyph_string, fill_glyph_string)
4906 (fill_image_glyph_string, fill_stretch_glyph_string)
4907 (left_overwritten, left_overwriting, right_overwritten)
4908 (right_overwriting, get_char_face_and_encoding)
4909 (set_glyph_string_background_width, compute_overhangs_and_x)
4910 (append_glyph, append_composite_glyph, produce_image_glyph)
4911 (take_vertical_position_into_account, append_stretch_glyph)
4912 (produce_stretch_glyph): New generic functions (based on X version).
4913 Call platform specific functions through rif.
4914 (INIT_GLYPH_STRING): New macro, hides W32 details.
4915 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
4916 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
4917 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
4918 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
4919 (notice_overwritten_cursor):
4920 Generic functions exported to platform modules. Users changed.
4921
4922 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
4923 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
4924 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
fad49844 4925 New macros for consolidated code.
2a6d0874 4926
03eb5fab
KS
4927 * xterm.c: Remove consolidated defines and code.
4928 (x_per_char_metric, x_encode_char)
4929 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
4930 (x_redisplay_interface): Add new members.
4931
4932 * w32gui.h (Display): Add dummy typedef for consolidation.
4933 (XChar2b): Define alias for wchar_t for consolidation.
4934 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
4935
4936 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
2a6d0874 4937 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
03eb5fab
KS
4938 New macros for consolidation.
4939
fad49844 4940 * w32term.c: Remove consolidated defines and code.
03eb5fab
KS
4941 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
4942 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
4943 (w32_per_char_metric): Change font_type arg to int for RIF.
4944 (w32_encode_char): Return int according to RIF requirements.
4945 (w32_compute_glyph_string_overhangs): Adapt to RIF.
4946 (w32_get_glyph_overhangs): New function for RIF. Uses generic
4947 x_get_glyph_overhangs.
4948 (w32_redisplay_interface): Add new members.
4949
4950 * macgui.h (XChar2b): Move typedef here for consolidation.
4951 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
4952
4953 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
4954 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
4955 consolidation.
4956
4957 * macterm.c: Remove consolidated defines and code.
4958 (mac_per_char_metric): New function for RIF.
00c64fab 4959 (mac_encode_char): Adapt to new RIF requirements.
03eb5fab
KS
4960 (mac_compute_glyph_string_overhangs): Adapt for RIF.
4961 (x_redisplay_interface): Add new members.
4962
00c64fab
SM
49632003-03-15 Stefan Monnier <monnier@cs.yale.edu>
4964
4965 * keymap.c (Vmenu_events): New var.
4966 (syms_of_keymap): Initialize it.
4967 (where_is_internal): Check more carefully what is a menu event.
4968
225c7a07
RS
49692003-03-14 Richard M. Stallman <rms@gnu.org>
4970
4971 * lread.c (read1): After #!, exit loop on eof.
4972
cea9be54
JD
49732003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4974
9ea0e54d
JD
4975 * gtkutil.h: Add declaration for xg_frame_cleared.
4976
0cb35f4e
JD
4977 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
4978
cea9be54
JD
4979 * gtkutil.c (struct xg_last_sb_pos): New structure.
4980 (handle_fixed_child): New function.
4981 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
4982 and force a redraw on them.
4983 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
4984 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
4985 so we can avoid unneeded redraws.
4986 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
4987 and force a redraw on the scroll bar.
4988 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
4989 if xg_last_sb_pos shows the positions are up to date.
0cb35f4e 4990 (xg_frame_cleared): New function.
cea9be54 4991
20b853f3
KH
49922003-03-13 Kenichi Handa <handa@m17n.org>
4993
4994 * coding.c (Fdetect_coding_region): Fix docstring.
4995 (Fdetect_coding_string): Fix docstring.
4996
7a555aff
AS
49972003-03-13 Andreas Schwab <schwab@suse.de>
4998
25cc0080
AS
4999 * gtkutil.c: Add prototype for create_menus.
5000
30225431
AS
5001 * data.c (long_to_cons): Fix type of top.
5002
5003 * xselect.c (selection_data_to_lisp_data): Use int instead of
5004 long for an integer of size 4.
5005
7a555aff 5006 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
30225431 5007 (xg_tool_bar_help_callback): Likewise.
7a555aff 5008
a3e4741f
AS
50092003-03-12 Andreas Schwab <schwab@suse.de>
5010
5011 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
5012
9668be7c
KS
50132003-03-12 Kim F. Storm <storm@cua.dk>
5014
03eb5fab 5015 The following changes consolidate the fringe handling from
9668be7c 5016 xterm.c, w32term.c, and macterm.c into xdisp.c.
00a88f32 5017
9668be7c
KS
5018 * xdisp.c: Consolidate fringe handling code here.
5019 (left_bits, right_bits, continued_bits, continuation_bits)
5020 (ov_bits, zv_bits): Define fringe bitmaps.
5021 (fringe_bitmaps): New array holding fringe bitmaps.
5022 (draw_fringe_bitmap): Draw a specific bitmap; call display
5023 specific drawing routine via rif->draw_fringe_bitmap.
5024 (draw_row_fringe_bitmaps): Generic replacement for
5025 x_draw_row_fringe_bitmaps; all callers changed.
5026 (compute_fringe_widths): Generic replacement for
5027 x_compute_fringe_widths; all callers changed.
5028
5029 * dispextern.h (enum fringe_bitmap_type): Define here.
5030 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
5031 (fringe_bitmaps): Declare extern.
5032 (struct redisplay_interface): New member draw_fringe_bitmap.
5033 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
5034
5035 * xterm.c: Remove generic fringe code.
5036 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
5037 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
5038
5039 * w32term.c: Remove generic fringe code.
5040 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
5041 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
00a88f32 5042
9668be7c
KS
5043 * macterm.c: Remove generic fringe code.
5044 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
5045 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
5046
00a88f32
SM
50472003-03-11 Stefan Monnier <monnier@cs.yale.edu>
5048
5049 * print.c (Fprin1_to_string): Return unibyte string if possible.
5050
1d1de695
DK
50512003-03-09 David Kastrup <dak@gnu.org>
5052
5053 * process.c (read_process_output): We have allocated enough space
5054 for readmax and carryover, so actually use the alloted space.
5055
257f40f2
JD
50562003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5057
5058 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
5059 toolkit scrollbar click.
5060
5061 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
5062 for USE_GTK.
5063 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
5064 also.
5065 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
5066 scrollbar and control is pressed, call x_scroll_bar_handle_click.
00a88f32 5067
257f40f2
JD
5068 * gtkutil.h: Declare xg_get_scroll_id_for_window.
5069
5070 * gtkutil.c (xg_get_scroll_id_for_window): New function.
5071 (xg_tool_bar_item_expose_callback): New function.
5072 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
5073 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
5074 on the tool bar widget.
5075 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
5076 to expose on the tool bar item widgets.
5077
15213141
JD
50782003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5079
26b74a0b 5080 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
00a88f32 5081 struct image* when deciding to update (struct image* may have been
26b74a0b
JD
5082 deleted from the image cache).
5083
15213141
JD
5084 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
5085 the event isn't for a frame (i.e. for dialogs).
5086
20b853f3 50872003-03-07 Kenichi Handa <handa@m17n.org>
cb681b34
KH
5088
5089 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
5090 composition components reaches the limit, terminate composing.
5091 (COMPOSITION_OK): New macro.
00a88f32 5092 (detect_coding_iso2022): Use it if an escape sequence for
cb681b34
KH
5093 composition is found.
5094 (coding_restore_composition): Adjust the number of composition
5095 components if it is not sane.
5096
c9029fe5
JB
50972003-03-06 Juanma Barranquero <lektu@terra.es>
5098
5099 * w32term.h (struct w32_display_info): Add xrdb member to support
5100 passing resources via -xrm on Windows.
5101
5102 * w32term.c (w32_make_rdb): New function.
5103 (w32_term_init): Use it to initialize xrdb member of w32_display_info
5104 struct. Delete leftover code.
5105
5106 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
5107 for resources passed on the command line.
5108
5109 * w32reg.c (w32_get_rdb_resource): New function.
5110 (x_get_string_resource): Use it, so resources passed with -xrm
5111 supercede the ones in the registry.
5112
9d00001f
JD
51132003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5114
5115 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
5116 instead of x_top_window_to_frame.
5117
ca2417b9
JD
51182003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5119
5120 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
5121 when restarting Emacs.
5122
5b20caf0
RS
51232003-03-03 Richard M. Stallman <rms@gnu.org>
5124
5125 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
5126 to run kill-buffer-query-functions.
5127 (Qkill_buffer_query_functions): New var.
5128 (syms_of_buffer): Init and staticpro it.
5129
58e91b77
JD
51302003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5131
5132 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
5133
932357b4
KS
51342003-02-25 Kim F. Storm <storm@cua.dk>
5135
5136 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
5137 If centering point failed to make whole line visible and vscroll
5138 is non-zero, disable vscroll and try centering point again.
5139
5140 * lread.c (read1): Accept `single space' syntax like (? x).
5141
bb8db7e1
JD
51422003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5143
5144 * keyboard.c (cancel_hourglass_unwind): Surround with
5145 #ifdef HAVE_X_WINDOWS
5146
47d77aab
KH
51472003-02-25 Kenichi Handa <handa@m17n.org>
5148
5149 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
5150 process only when "subprocesses" is defined.
5151
6a097c0c
SM
51522003-02-24 Stefan Monnier <monnier@cs.yale.edu>
5153
5154 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
5155
0b063c27
JB
51562003-02-24 Juanma Barranquero <lektu@terra.es>
5157
d1135afc
JB
5158 * callint.c (fix_command): Declare as static void and move before
5159 Fcall_interactively.
5160
0b063c27
JB
5161 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
5162 (syms_of_xdisp): Don't initialize Qwhen.
5163
0af912f0
JD
51642003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5165
5166 * keyboard.c (cancel_hourglass_unwind): New function.
5167 (command_loop_1): Cancel hourglass with unwind-protect.
5168
120d0a23
RS
51692003-02-23 Richard M. Stallman <rms@gnu.org>
5170
5171 * callint.c (fix_command): New subroutine, from Fcall_interactively.
5172 Detect (when ... (region-beginning)) etc.
5173 (Fcall_interactively): Call fix_command.
5174 (Qif, Qwhen): New variables.
5175 (syms_of_callint): Init and staticpro them.
0b063c27 5176
120d0a23
RS
5177 * regex.c (print_partial_compiled_pattern): Output to stderr.
5178
4ece81a6
KG
51792003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
5180
5181 * dired.c (directory_files_internal): Don't expand directory.
5182 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
5183 instead. From Lars Hansen <larsh@math.ku.dk>.
5184
e52bd6b7
SM
51852003-02-22 Stefan Monnier <monnier@cs.yale.edu>
5186
5187 * fns.c (string_to_multibyte): Remove unused var i.
5188 (Flanginfo): Fix int/Lisp_Object mixup.
5189 (void_call2): New fun.
5190 (Fmap_char_table): Use it in place of call2.
5191
5192 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
5193
5194 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
5195
5196 * keymap.c (copy_keymap_1): Make it static.
5197
5198 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
5199
c33ef7c4
JB
52002003-02-22 David Ponce <david@dponce.com>
5201
5202 * lread.c (Fload): Don't check STRING_MULTIBYTE.
5203
16782258
JD
52042003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5205
5206 * process.h: Removed subtty field from struct Lisp_Process.
5207
5208 * process.c (create_process): Remove setting of subtty.
5209 (emacs_get_tty_pgrp): New function.
e52bd6b7
SM
5210 (Fprocess_running_child_p, process_send_signal):
5211 Call emacs_get_tty_pgrp instead of ioctl.
16782258
JD
5212 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
5213
3abeca61
KG
52142003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
5215
5216 * keymap.c (Fdefine_key): Doc fix.
5217
92a8ce63
JB
52182003-02-21 Juanma Barranquero <lektu@terra.es>
5219
5220 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
5221
5222 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
5223 POLLING_PROBLEM_IN_SELECT.
5224
5225 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
5226 Delete #undef of POLLING_PROBLEM_IN_SELECT.
5227
5228 * s/hpux10-20.h: New file.
5229
e52bd6b7
SM
5230 * process.c (wait_reading_process_input):
5231 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
92a8ce63 5232
20f1ef2e
KH
52332003-02-20 Kenichi Handa <handa@m17n.org>
5234
32d0a9dc
KH
5235 * fontset.c (check_fontset_name): If NAME is nil, return the
5236 default fontset.
5237 (override_font_info): New function.
e52bd6b7 5238 (Fset_fontset_font): Document that NAME nil means the default fontset.
32d0a9dc
KH
5239 (Ffontset_info): If FONTSET is not the default fontset, merge
5240 FONTSET onto the copy of the default fontset, and work on that
5241 copy. Document that NAME nil means the default fontset.
5242 (Ffontset_font): Document that NAME nil means the default fontset.
5243
20f1ef2e
KH
5244 * process.c (setup_process_coding_systems): If the process's
5245 in/out descriptor is -1, do nothing.
5246
77d1daf2
AS
52472003-02-19 Andreas Schwab <schwab@suse.de>
5248
e52bd6b7
SM
5249 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
5250 Add prototypes.
77d1daf2 5251
f9a45bb3
KH
52522003-02-19 Kenichi Handa <handa@m17n.org>
5253
5254 * xfaces.c (try_alternative_families): Try all scalable fonts if
5255 Vscalable_fonts_allowed is not Qt.
5256
72ecb43c
JD
52572003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5258
5259 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
5260
ee5be7c3
JD
52612003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5262
5263 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
5264 names.
5265
5266 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
e52bd6b7 5267 (sorted_font_list): Move allocation of struct font_name to
ee5be7c3
JD
5268 x_face_list_fonts.
5269 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
5270 (Fx_list_fonts): Set maxnames to -1 to get all font names.
5271
4cd519a7
KS
52722003-02-18 Kim F. Storm <storm@cua.dk>
5273
068f9882
KS
5274 * lread.c (read1): Fix last change.
5275 "`" is not always special. Allow "?" after a character constant.
4cd519a7 5276
7290a344
AC
52772003-02-18 Andrew Choi <akochoi@shaw.ca>
5278
5279 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
5280
1f7fa69b
AS
52812003-02-18 Andreas Schwab <schwab@suse.de>
5282
5283 * window.c (window_scroll_pixel_based): Move outside a
5284 multi-glyph character before setting new window start.
5285
5286 * xdisp.c (in_display_vector_p): New function.
5287 * dispextern.h (in_display_vector_p): Declare.
5288
23e21195
KS
52892003-02-18 Kim F. Storm <storm@cua.dk>
5290
5291 * lread.c (read1): Fix and relax read syntax.
5292 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
5293 Only recognize "," after dotted-pair dot if inside backquote.
5294 Never include "`" or "," (inside backquote) in a symbol.
5295 Allow dotted-pair dot after a character constant.
5296 Allow "`" and "," (inside backquote) after a character constant.
92a8ce63 5297
f098b121
JD
52982003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5299
5300 * gtkutil.c (xg_tool_bar_expose_callback): New function.
5301 (xg_create_tool_bar): Force style of tool bar to be horizontal with
5302 icons. Set name of tool bar to emacs-toolbar.
5303 (update_frame_tool_bar): Connect expose event to
5304 xg_tool_bar_expose_callback.
5305
63020c46
RS
53062003-02-17 Richard M. Stallman <rms@gnu.org>
5307
5308 * keyboard.c (this_command_key_count_reset): New variable.
5309 Initiatize to 0 where this_command_key_count is set.
5310 (read_char): Save and restore this_command_key_count_reset
5311 around input method code.
5312 (read_char): If this_command_key_count_reset, echo reread commands.
5313 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
5314
fb4452cc
KH
53152003-02-17 Kenichi Handa <handa@m17n.org>
5316
5317 * fns.c (string_to_multibyte): Always return a multibyte string.
5318
bd11cc09
JR
53192003-02-16 Jason Rumney <jasonr@gnu.org>
5320
e52bd6b7
SM
5321 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
5322 Negative max_fonts parameter means list all.
bd11cc09 5323
4cdf4bde
DL
53242003-02-14 Dave Love <fx@gnu.org>
5325
5326 * fns.c (Flanginfo): Doc fix.
5327
023b93f6
KS
53282003-02-13 Kim F. Storm <storm@cua.dk>
5329
37cd4238
KS
5330 * lread.c (read_escape): Interpret \s as a SPACE character, except
5331 for \s-X in a character constant which still is the super modifier.
5332 (read1): Signal an `invalid read syntax' error if a character
5333 constant is immediately followed by a digit or symbol character.
5334
140a6b7e
KS
5335 * search.c (Fmatch_data): Doc fix. Explicitly state that
5336 match-data is undefined if last search failed.
5337
023b93f6
KS
5338 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
5339 All uses changed.
5340
7d5c86e5
JB
53412003-02-12 Juanma Barranquero <lektu@terra.es>
5342
5343 * eval.c (Fdefmacro): Fix typo.
5344
295fff2c
KS
53452003-02-12 Kim F. Storm <storm@cua.dk>
5346
5347 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
5348 macro is a string, convert meta modifiers in string when copying
5349 the string into a vector.
5350
60f3202d
KS
53512003-02-11 Kim F. Storm <storm@cua.dk>
5352
5353 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
5354
61cb0b53
KH
53552003-02-11 Kenichi Handa <handa@m17n.org>
5356
5357 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
5358
7392e23c
KS
53592003-02-10 Kim F. Storm <storm@cua.dk>
5360
5361 * process.c: Doc fixes.
5362 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
5363
ce4254bd
KH
53642003-02-10 Kenichi Handa <handa@m17n.org>
5365
9c7a329a
KH
5366 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
5367
ce4254bd
KH
5368 * process.c (QCfilter_multibyte): New variable.
5369 (setup_process_coding_systems): New function.
e52bd6b7
SM
5370 (Fset_process_buffer, Fset_process_filter):
5371 Call setup_process_coding_systems.
ce4254bd
KH
5372 (Fstart_process): Initialize the member `filter_multibyte' of
5373 struct Lisp_Process.
5374 (create_process): Call setup_process_coding_systems.
5375 (Fmake_network_process): New keyward `:filter-multibyte'.
5376 Initialize the member `filter_multibyte' of struct Lisp_Process.
5377 Call setup_process_coding_systems.
5378 (server_accept_connection): Call setup_process_coding_systems.
5379 (read_process_output): If the process has a filter, decide the
5380 multibyteness of a string to given to the filter by
5381 `filter_multibyte' member of the process. If the process doesn't
5382 have a filter and the result of conversion is unibyte, use
5383 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
5384 multibyte form.
5385 (Fset_process_coding_system): Call setup_process_coding_systems.
5386 (Fset_process_filter_multibyte): New function.
5387 (Fprocess_filter_multibyte_p): New function.
5388 (syms_of_process): Intern and staticpro QCfilter_multibyte.
5389 Defsubr Sset_process_filter_multibyte and
5390 Sprocess_filter_multibyte_p.
5391
5392 * process.h (struct Lisp_Process): New member filter_multibyte.
5393
5394 * lisp.h (setup_process_coding_systems): Add prototype.
5395
5396 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
5397 process, update coding systems for the process.
5398
b08d5f59
KH
53992003-02-09 Kenichi Handa <handa@m17n.org>
5400
5401 * fns.c (string_to_multibyte): New function.
5402 (Fstring_to_multibyte): New function.
5403 (syms_of_fns): Defsubr it.
5404
0dfd93c0
AS
54052003-02-08 Andreas Schwab <schwab@suse.de>
5406
5407 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
5408 instead of the substitution.
5409
7b76ca1c
JD
54102003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5411
5412 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
5413
5414 * xmenu.c (menu_position_func): Adjust menu popup position so that
5415 the menu is fully visible.
7b76ca1c 5416
2436a4e4
JD
54172003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5418
5419 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
e52bd6b7
SM
5420 (x_make_frame_invisible, x_wm_set_icon_position):
5421 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
2436a4e4
JD
5422
5423 * xfns.c (x_set_name, x_set_title): Ditto.
5424
37d1e680
RS
54252003-02-04 Richard M. Stallman <rms@gnu.org>
5426
5427 * keyboard.c (echo_now): Update before_command_echo_length.
5428 (Freset_this_command_lengths): Reset this_command_key_count etc.
5429 immediately rather than arranging to do it later.
5430 (before_command_key_count_1, before_command_echo_length_1)
5431 (before_command_restore_flag): Vars deleted.
5432 (add_command_key): Don't handle before_command_restore_flag.
5433 (read_char, record_menu_key): Don't update before_command_key_count or
5434 before_command_echo_length.
5435 (read_char): Don't handle before_command_restore_flag.
5436
5437 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
5438 in direct-output clauses if it wouldn't be called in the ordinary case.
5439
578846a3
KS
54402003-02-04 Kim F. Storm <storm@cua.dk>
5441
5442 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
5443
49853a4d
JD
54442003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5445
5446 * gtkutil.c (remove_from_container): Copying list is not needed.
5447 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
5448 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
5449 on list returned from gtk_container_get_children to avoid memory leak.
5450
8b53dc06
JR
54512003-02-01 Jason Rumney <jasonr@gnu.org>
5452
5d54d177
JR
5453 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
5454 local malloc.
5455 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
5456 definitions in xpm.h.
5457 (init_xpm_functions): New function.
5458 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
5459 (init_external_image_libraries): Try to load libXpm.dll.
5460
8b53dc06
JR
5461 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
5462 timestamp.
5463
b222e415
DL
54642003-01-31 Dave Love <fx@gnu.org>
5465
5466 * syntax.c (Fskip_chars_forward)
5467 (open-paren-in-column-0-is-defun-start): Doc fix.
5468
c60ee5e7
JB
54692003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
5470
5471 * fileio.c: Support // at start of name for Cygwin (just added proper
5472 preprocessor tests).
5473
5474 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
5475
5476 * Makefile.in: Use @EXEEXT@ for Cygwin.
5477
5478 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
5479
5480 * s/cygwin.h: Added for Cygwin port.
5481
53b37591
JB
54822003-01-31 Juanma Barranquero <lektu@terra.es>
5483
5484 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
5485 when including gif_lib.h.
fe929957
JB
5486 (init_gif_functions, init_tiff_functions): New functions.
5487 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
5488 Windows. Disable color table lookups. Call library functions
53b37591 5489 through pointers determined at runtime.
fe929957
JB
5490 (init_external_image_libraries): Try to load libungif.dll and
5491 libtiff.dll.
53b37591 5492
45415a8f
KH
54932003-01-31 Kenichi Handa <handa@m17n.org>
5494
5495 * xdisp.c (SKIP_GLYPHS): New macro.
e52bd6b7 5496 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
45415a8f 5497
a97e4138
JD
54982003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5499
e52bd6b7 5500 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
a97e4138 5501
6eed9bed
DL
55022003-01-30 Dave Love <fx@gnu.org>
5503
5504 * alloc.c (Vgc_elapsed, gcs_done): New variables.
5505 (Fgarbage_collect): Use them.
5506 (init_alloc, syms_of_alloc): Set them up.
5507
100dcd40
JB
55082003-01-30 Juanma Barranquero <lektu@terra.es>
5509
5510 * w32fns.c (init_external_image_libraries): Add missing operator.
5511
fbd852af
JR
55122003-01-29 Jason Rumney <jasonr@gnu.org>
5513
5514 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
5515 an alternative name for jpeg.dll.
5516
8a2d8020
KH
55172003-01-29 Kenichi Handa <handa@m17n.org>
5518
5519 * xdisp.c (set_cursor_from_row): Pay attention to string display
5520 properties.
5521
058c18c7
AC
55222003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
5523
5524 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
5525 <escape>.
5526 (keycode_to_xkeysym_table): Reformat and add more comments.
5527 (XTread_socket): Drop special case for backspace.
5528
385f11cf
AC
55292003-01-28 Andrew Choi <akochoi@shaw.ca>
5530
5531 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
5532 values in old-style RGB specs.
5533
c922a224
JB
55342003-01-27 Juanma Barranquero <lektu@terra.es>
5535
5536 * w32fns.c (init_external_image_libraries): Try alternate names for the
5537 jpeg dll.
5538
0a1d6de0
JD
55392003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5540
5541 * gtkutil.c (create_dialog, xg_separator_p)
5542 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
5543 before calling strcmp or strlen.
5544
a97e4138 55452003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1d1885fc
JD
5546
5547 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
5548 and handle image load failure.
5549
28908312
JR
55502003-01-26 Jason Rumney <jasonr@gnu.org>
5551
5552 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
5553 New functions.
5554 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
5555 Disable color table lookups. Call jpeg library functions
5556 through pointers determined at runtime.
5557 (init_external_image_libraries): Try to load jpeg.dll.
5558
84e47416
RS
55592003-01-25 Richard M. Stallman <rms@gnu.org>
5560
5561 * lisp.h: Declare format2 instead of format1.
5562
5563 * fileio.c (barf_or_query_if_file_exists):
5564 Call format2 instead of format1.
5565
5566 * editfns.c (format2): New function, replaces format1
5567 but takes exactly two Lisp Objects as format args.
5568
5569 * buffer.c (Fkill_buffer): Call format2 instead of format1.
5570
a97e4138 55712003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1fcfb866
JD
5572
5573 * xterm.h: Change to return value of x_dispatch_event to int.
5574
5575 * xterm.c (x_filter_event): New function.
5576 (event_handler_gdk, XTread_socket): Call x_filter_event.
5577 (x_dispatch_event): Change to return value of finish.
5578 (event_handler_gdk): Use return value from x_dispatch_event.
5579
5580 * xfns.c (x_window): Call create_frame_xic for GTK version to
5581 initialize input methods.
5582
5583 * gtkutil.h: Add (void) prototypes.
5584
5585 * gtkutil.c (create_menus): Remove code that puts the help menu to
5586 the right.
5587
54eefef1
JR
55882003-01-25 Jason Rumney <jasonr@gnu.org>
5589
5590 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
5591 [HAVE_PNG]: Sync with xfns.c version.
5592 (png_load): Adjust colors for Windows. Use Windows
5593 bitmaps. Disable color table lookups.
c262430d
JR
5594 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
5595 (init_png_functions): New function.
5596 (png_read_from_memory, png_load): Call png library functions
5597 through pointers determined at runtime.
5598 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
5599 (init_external_image_libraries): New function.
5600 (init_xfns): Call it.
54eefef1 5601
1a9e275b
AS
56022003-01-24 Andreas Schwab <schwab@suse.de>
5603
5604 * minibuf.c (Fminibuffer_message): Verify type of parameter.
5605
a97e4138 56062003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
81e302ef
JD
5607
5608 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
5609 of static initializer.
5610
422eec7e
DL
56112003-01-24 Dave Love <fx@gnu.org>
5612
5613 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
5614 architectures.
5615
5616 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
5617 Use __alignof__.
5618
2a026b04
KH
56192003-01-24 Kenichi Handa <handa@m17n.org>
5620
5621 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
e52bd6b7 5622 It it is nonzero, don't pretend that an invisible area doesn't exist.
2a026b04
KH
5623 (command_loop_1): Call adjust_point_for_property with proper
5624 second arg.
5625
a18bb28d
JR
56262003-01-22 Jason Rumney <jasonr@gnu.org>
5627
5628 Sync changes with xterm.c and xfns.c.
5629
5630 * w32term.c (x_draw_glyph_string_foreground)
5631 (x_draw_composite_glyph_string_foreground): Implement overstriking.
5632
5633 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
5634 phys_cursor's hpos is overwritten. This is still not completely
5635 correct, as it doesn't really make sense to use hpos at all to
5636 get the cursor glyph (as that is relative to the width of the
5637 characters on the line, which may have changed during the update).
5638
5639 * w32term.c (notice_overwritten_cursor): Handle the special case
5640 of the cursor being in the first blank non-text line at the
5641 end of a window.
5642
5643 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
5644 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
5645 Compute from the x position returned by x_draw_glyphs.
5646
5647 (x_display_and_set_cursor): Don't set phys_cursor_width here,
5648 except for NO_CURSOR and system caret, to make phys_cursor_width
5649 contain what its name suggests.
5650 (notice_overwritten_cursor): Consider the cursor image erased if
5651 the output area intersects the cursor image in y-direction.
5652
6a097c0c
SM
5653 * w32term.c (note_mode_line_or_margin_highlight): Rename from
5654 note_mode_line_highlight and extend.
a18bb28d
JR
5655
5656 * w32term.c (last_window): New variable.
5657 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
5658 (note_mouse_movement): Remove reimplemented code in #if 0.
5659
5660 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
5661 not update_mode_lines, and always set it to 1.
5662
ac6e47ef
JR
56632003-01-21 Jason Rumney <jasonr@gnu.org>
5664
5665 * w32fns.c (IDC_HAND): Define it if system headers don't.
5666
56672003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
5668
5669 * w32term.h (struct w32_output): New member hand_cursor.
5670 (WM_EMACS_SETCURSOR): New message definition.
5671
5672 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
5673 function w32_define_cursor.
5674 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
5675 position, change member name output_data.x to output_data.w32 and
5676 add function w32_define_cursor.
5677 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
5678 and change member name output_data.x to output_data.w32.
e52bd6b7
SM
5679 (w32_initialize_display_info):
5680 Setup dpyinfo->vertical_scroll_bar_cursor.
ac6e47ef
JR
5681
5682 * w32fns.c (Vx_hand_shape): New variable.
5683 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
5684 WM_EMACS_SETCURSOR.
5685 (x-create-frame): Setup Cursor types.
5686
ceb39a17
JB
56872003-01-21 David Ponce <david@dponce.com>
5688
ac6e47ef
JR
5689 * w32term.c (w32_encode_char): For DIM=1 charset, set
5690 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
5691 x_encode_char change by Kenichi Handa <handa@m17n.org> on
ceb39a17 5692 2002-09-30.)
ac6e47ef
JR
5693 (w32_draw_relief_rect): Declare all args.
5694 (w32_define_cursor): New.
5695
5696 * w32fns.c (w32_load_cursor): New function.
5697 (w32_init_class): Use it.
5698 (x_put_x_image): Declare all args.
5699
46cf0bed
JB
57002003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
5701
5702 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
5703
a97e4138 57042003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e8794476
JD
5705
5706 * gtkutil.c: Must include stdio.h before termhooks.h
5707
83fc9c63
DL
57082003-01-21 Dave Love <fx@gnu.org>
5709
5710 * alloc.c (Fgc_status): Print zombie list.
5711 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
5712 Fix assignment of zombies.
5713 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
5714 Don't take car of non-cons.
5715
5716 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
5717
5718 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
5719
fe04b8c8
JR
57202003-01-20 David Ponce <david@dponce.com>
5721
5722 * w32menu.c (digest_single_submenu): Declare all args.
5723
5724 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
5725 changes in xmenu.c:
5726
5727 (parse_single_submenu): Use individual keymap's prompt
5728 string as pane name, if there is one.
5729 (set_frame_menubar): Save menu_items_n_panes from each call to
5730 parse_single_submenu and use it when calling digest_single_submenu.
5731
539e69a9
ST
57322003-01-20 Steven Tamm <steventamm@mac.com>
5733
5734 * macterm.c (XTread_socket): Checks for valid, visible window
5735 before sending a scroll-wheel event.
5736
675d000f
RS
57372003-01-20 Richard M. Stallman <rms@gnu.org>
5738
5739 * xdisp.c (redisplay_window): If mini window's buffer is not
5740 a minibuffer, then redisplay it like other windows.
5741
a97e4138 57422003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22174d10
JD
5743
5744 * gtkutil.c (xg_create_frame_widgets): Check if there is an
5745 external tool bar before setting tool bar height.
5746
048addec
JD
57472003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5748
5749 * xterm.c (handle_one_xevent): Surround popup_activated
5750 with #ifdef:s for non-toolkit version.
5751
5752 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
5753 (gtkutil.o): New file.
5754 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
5755 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
5756
5757 * gtkutil.c: New file for GTK version.
5758
5759 * gtkutil.h: New file for GTK version.
5760
5761 * xterm.h: Add xt_or_gtk_widget.
5762 Include gtk files for USE_GTK.
5763 (struct x_output): Add toolbar_height.
5764 (struct x_output): Add GTK widgets and Gdk size_hints.
5765 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
5766 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
5767 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
5768
5769 * xterm.c: Include gtkutil.h for USE_GTK.
5770 Declare extern void free_frame_menubar for USE_GTK.
5771 (note_mouse_highlight): Check popup_activated for USE_GTK.
5772 (xt_action_hook): Don't compile if USE_GTK.
5773 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
5774 (xg_scroll_callback): New function.
5775 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
5776 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
5777 for USE_GTK.
5778 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
5779 xg_show_scroll_bar for USE_GTK.
5780 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
5781 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
5782 (event_handler_gdk): New function for USE_GTK.
5783 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
5784 (handle_one_xevent): Make sure widget is mapped before
5785 calling x_real_positions for USE_GTK.
5786 (XTread_socket): Add GTK event loop for USE_GTK.
5787 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
5788 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
5789 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
5790 (x_iconify_frame): Add code for USE_GTK.
5791 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
5792 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
5793 is in gtkutil.c.
5794 (x_term_init): Add initialization for GTK.
5795 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
5796
5797 * xmenu.c: Include gtkutil.h for USE_GTK.
5798 (Fx_popup_menu): Use current position if x and y is NIL.
6bdb309a
SM
5799 (single_menu_item, single_menu_item, Fx_popup_dialog):
5800 Check for USE_GTK.
048addec
JD
5801 (popup_widget_loop): New function for USE_GTK.
5802 (x_activate_menubar): Add code for USE_GTK.
5803 (popup_activate_callback, popup_deactivate_callback)
6bdb309a
SM
5804 (menu_highlight_callback, menubar_selection_callback):
5805 Add USE_GTK versions.
048addec
JD
5806 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
5807 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
5808 (free_frame_menubar): Only compile if not USE_GTK. GTK version
5809 is in gtkutil.c.
5810 (popup_selection_callback): New version for USE_GTK.
5811 (create_and_show_popup_menu): New fuction, one USE_GTK version and
6bdb309a 5812 one USE_X_TOOLKIT version.
048addec
JD
5813 (xmenu_show): Call create_and_show_popup_menu.
5814 (dialog_selection_callback): New version for USE_GTK.
5815 (create_and_show_dialog): New fuction, one USE_GTK version and
6bdb309a 5816 one USE_X_TOOLKIT version.
048addec
JD
5817 (xdialog_show): Call create_and_show_dialog.
5818
5819 * xfns.c: Include gtkutil for USE_GTK.
5820 (x_window_to_frame, x_any_window_to_frame)
5821 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
5822 (x_top_window_to_frame): Add code for USE_GTK.
5823 (x_set_background_color): Call xg_set_background_color for GTK.
5824 (x_set_menu_bar_lines): Check for USE_GTK.
5825 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
5826 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
5827 (x_window): Call xg_create_frame_widgets for USE_GTK.
5828 (Fx_create_frame): Check for USE_GTK
5829 (Fx_file_dialog): New implementation for USE_GTK.
5830
5831 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
5832 (update_menu_bar): Add check for USE_GTK.
5833 (update_tool_bar): Add check for USE_GTK and external tool bar.
5834 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
5835 (redisplay_internal): Add check for USE_GTK and popup_activated.
5836 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
5837 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
5838 (display_menu_bar): Add check for USE_GTK
5839
5840 * lisp.h: Declare Vx_resource_name extern.
5841
a64387ee 5842 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
048addec
JD
5843 for USE_GTK.
5844 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
5845
5846 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
5847 (FRAME_EXTERNAL_TOOL_BAR): New macro.
5848 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
5849
5850 * fileio.c (Fread_file_name): Add check for USE_GTK.
5851
6bdb309a
SM
5852 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
5853 Add check for USE_GTK.
048addec
JD
5854
5855 * config.in: Added HAVE_GTK
5856
5857 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
5858
58592003-01-18 Stefan Monnier <monnier@cs.yale.edu>
5860
5861 * charset.h (Funibyte_char_to_multibyte): Export.
5862
58632003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5864
5865 * xmenu.c (mouse_position_for_popup): New function.
5866 (Fx_popup_menu): Call mouse_position_for_popup for X and
5867 mouse_position_hook for others.
5868
58692003-01-17 Kim F. Storm <storm@cua.dk>
5870
5871 * editfns.c (Finsert): Mention `string-make-multibyte' and
5872 `string-as-multibyte' in doc string.
5873
58742003-01-17 Kenichi Handa <handa@m17n.org>
5875
5876 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
3c02a6f5 5877
048addec
JD
5878 * editfns.c (Fformat): Convert an unibyte char argument that is
5879 formatted by "%c" to multibyte if the total result must be a
5880 multibyte string.
cd7df9c0 5881
048addec 58822003-01-16 Kim F. Storm <storm@cua.dk>
cd7df9c0 5883
048addec
JD
5884 * process.c (set-process-filter): Document unibyte/multibyte-ness
5885 of string argument.
56210ecd 5886
048addec 58872003-01-16 Kenichi Handa <handa@m17n.org>
56210ecd 5888
048addec 5889 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
56210ecd 5890
048addec
JD
5891 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
5892 (re_search_2): Likewise.
6df8b9fe 5893
048addec 58942003-01-15 Kenichi Handa <handa@m17n.org>
6df8b9fe 5895
048addec
JD
5896 * xdisp.c (message_dolog): Fix bug of the case that *Message*
5897 buffer is unibyte.
292ddc31 5898
048addec 58992003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
292ddc31 5900
048addec 5901 * fns.c (Fsubstring): Clarify doc string.
292ddc31 5902
048addec
JD
5903 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
5904 (Fprevious_char_property_change)
5905 (Fnext_single_char_property_change)
5906 (Fprevious_single_char_property_change, Fnext_property_change)
5907 (Fnext_single_property_change, Fprevious_property_change)
5908 (Fprevious_single_property_change, Fadd_text_properties)
5909 (Fput_text_property, Fset_text_properties)
5910 (Fremove_text_properties, Fremove_list_of_text_properties)
5911 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
63e4e4c6 5912
048addec 59132003-01-14 Kim F. Storm <storm@cua.dk>
63e4e4c6 5914
048addec
JD
5915 * process.h (struct Lisp_Process): New member plist replaces old
5916 member private_vars. All uses changed.
63e4e4c6 5917
048addec 5918 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
6bdb309a 5919 (QCplist): Rename from QCvars. Change all uses.
048addec 5920 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
6bdb309a 5921 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
048addec 5922 (syms_of_process): Intern, staticpro, defsubr these.
6bdb309a 5923 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7ed16567 5924
048addec 59252003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7ed16567 5926
6bdb309a 5927 * m/delta.h: Remove (obsolete).
e833850f 5928
048addec 59292003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
e833850f 5930
048addec
JD
5931 * fileio.c (Fdelete_directory, Fdelete_file): Document the
5932 behaviour in front of symlinks.
5933 (Fdelete_file): Raise an error on directories.
817cb127 5934
048addec 59352003-01-13 Dave Love <fx@gnu.org>
817cb127 5936
048addec 5937 * fns.c (Freverse): Use QUIT.
3e8cf2ea 5938
048addec 59392003-01-13 Richard M. Stallman <rms@gnu.org>
3e8cf2ea 5940
048addec
JD
5941 * minibuf.c (minibuffer_completion_contents):
5942 Error if point is inside prompt.
3e8cf2ea 5943
048addec
JD
5944 * keyboard.c (command_loop_1): Don't redisplay directly
5945 if there's a post-command-hook.
3e8cf2ea 5946
048addec
JD
5947 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
5948 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
2c10f029 5949
048addec 59502003-01-12 Kim F. Storm <storm@cua.dk>
94e8ffca 5951
048addec 5952 * process.h (struct Lisp_Process): New member private_vars.
94e8ffca 5953
048addec
JD
5954 * process.c (QCvars): New variable.
5955 (syms_of_process): Intern and staticpro it.
5956 (Fset_process_contact): Removed function.
5957 (Fprocess_variable, Fset_process_variable): New functions.
5958 (syms_of_process): Defsubr them.
5959 (Fstart_process): Initialize private_vars plist to nil.
5960 (Fmake_network_process): New arg :vars to setup the private
5961 variables for new network process.
5962 (server_accept_connection): Copy server's private variables to
5963 client process.
2c10f029 5964
048addec
JD
5965 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
5966 crashes). Code rewritten and simplified. Now directly aligns the
5967 pointer and recalculates pure_bytes_used, rather than aligning the
5968 size and adjusting the pointer.
b8a76c6c 5969
048addec 59702003-01-11 Kim F. Storm <storm@cua.dk>
b8a76c6c 5971
048addec
JD
5972 * process.c (Fset_process_contact): New function.
5973 (syms_of_process): defsubr it.
5974 (make-network-process): Update doc.
3a8d0899 5975
048addec 59762003-01-10 Andreas Schwab <schwab@suse.de>
3a8d0899 5977
048addec
JD
5978 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
5979 Reported by Berthold Gunreben <b.gunreben@web.de>.
4abc7470 5980
048addec 59812003-01-10 Dave Love <fx@gnu.org>
4abc7470 5982
048addec 5983 * composite.c (syms_of_composite): Make composition_hash_table weak.
b809d662 5984
048addec 59852003-01-09 Kim F. Storm <storm@cua.dk>
b809d662 5986
048addec
JD
5987 * process.c (Fmake_network_process): Convert new port number
5988 to host byte order for `:service t' case. From Mario Lang.
bf338245 5989
048addec 59902003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
bf338245 5991
048addec
JD
5992 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
5993 instead of XtAppProcessEvent.
bf338245 5994
048addec
JD
5995 * xterm.c (handle_one_xevent): New function.
5996 (x_dispatch_event): New function.
5997 (XTread_socket): Call handle_one_xevent.
bf338245 5998
048addec 5999 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
e833850f 6000
048addec
JD
6001 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
6002 call XQueryPointer to get coordinates.
6003 (popup_get_selection): Do not set popup_activated_flag to zero,
6004 let popup_deactivate_callback do that. Needed for Motif.
6005 Call x_dispatch_event instead of XtDispatchEvent.
6006 (xmenu_show): Calculate root coordinate from frame top/left position.
c4af2bce 6007
048addec 60082003-01-08 Kim F. Storm <storm@cua.dk>
c4af2bce 6009
6bdb309a 6010 * process.c (server_accept_connection): Fix recording of new
048addec
JD
6011 connection's local address in :local property of contact info.
6012 (Fmake_network_process): Record local network address for new
6013 client processes in :local property of contact info.
6bdb309a 6014 (format-network-address): Add arg OMIT-PORT. Change callers.
00e3ab56 6015
048addec 60162003-01-07 Dave Love <fx@gnu.org>
00e3ab56 6017
048addec 6018 * Makefile.in (fns.o): Depend on coding.h.
f387e1fd 6019
048addec 60202003-01-07 Markus Rost <rost@math.ohio-state.edu>
f387e1fd 6021
048addec 6022 * minibuf.c (Fread_variable): Doc fix.
f387e1fd 6023
048addec
JD
6024 * eval.c (Fuser_variable_p): Doc change. For custom variables,
6025 use the same test as for custom-variable-p.
8c6d74c6 6026
048addec 60272003-01-05 Richard M. Stallman <rms@gnu.org>
e833850f 6028
048addec
JD
6029 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
6030 Count LAST_LINE_MISFIT in scroll margin for end of window.
6031 Move label too_near_end before setting SCROLL_MARGIN_POS.
6032 Set LAST_LINE_MISFIT before jumping there.
8c6d74c6 6033
048addec
JD
6034 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
6035 scroll_conservatively case. If scrolling that much doesn't change
6036 STARTP, move it down one line.
e833850f 6037
048addec
JD
6038 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
6039 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8c6d74c6 6040
048addec
JD
6041 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
6042 selected frame.
8c6d74c6 6043
048addec
JD
6044 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
6045 (syms_of_keymap): staticpro them.
6046 (Fapropos_internal): Initialize them and clear them out.
6047 Don't GCPRO them.
8c6d74c6 6048
048addec
JD
6049 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
6050 Doc fixes.
8c6d74c6 6051
048addec
JD
6052 * lisp.h: New misc type Lisp_Save_Value.
6053 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
6054 (XSAVE_VALUE): New macro.
6055 (struct Lisp_Save_Value): New data type.
6056 (union Lisp_Misc): Add u_save_value alternative.
6057 (make_save_value): Declared.
8c6d74c6 6058
048addec 6059 * alloc.c (make_save_value): New function.
8c6d74c6 6060
048addec
JD
6061 * xterm.c (x_catch_errors): Save dpy using make_save_value.
6062 (x_catch_errors_unwind): Call XSync.
8c6d74c6 6063
048addec 60642003-01-01 Richard M. Stallman <rms@gnu.org>
8c6d74c6 6065
048addec 6066 * window.c (window_scroll_pixel_based): Partially undo last change.
8c6d74c6 6067
048addec
JD
6068 * keyboard.c (command_loop_1): Call adjust_point_for_property
6069 in direct action cases for Qforward_char and Qbackward_char.
6070 Set already_adjusted so it won't be done twice.
8c6d74c6 6071
048addec 60722002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
8c6d74c6 6073
048addec
JD
6074 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
6075 type definition of size_t.
8c609cff 6076
048addec 60772003-01-02 Steven Tamm <steventamm@mac.com>
8c609cff 6078
048addec
JD
6079 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
6080 distinguish Carbon GUI builds from X11 builds on darwin.
b37113a1 6081
048addec 60822002-12-30 Steven Tamm <steventamm@mac.com>
b37113a1 6083
048addec
JD
6084 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
6085 to default to t.
fa634a5e 6086
048addec 60872002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
fa634a5e 6088
048addec 6089 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
ce0669d4 6090
048addec 60912002-12-28 Steven Tamm <steventamm@mac.com>
ce0669d4 6092
048addec
JD
6093 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
6094 allow building in a different directory than source. Uses some
6095 GNU Make extensions, but there is no other make on Mac OS X.
2308af15 6096
048addec 60972002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
2308af15 6098
048addec
JD
6099 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
6100 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
6101 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
6102 (Fstring_to_number): Mention the returned value in the doc strings.
2155ecf3 6103
048addec 61042002-12-23 Richard M. Stallman <rms@gnu.org>
2155ecf3 6105
048addec
JD
6106 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
6107 <scroll-down-aggressively>: Doc fix.
2155ecf3 6108
048addec
JD
6109 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
6110 string as pane name, if there is one.
6111 (set_frame_menubar): Save menu_items_n_panes from each call to
6112 parse_single_submenu and use it when calling digest_single_submenu.
2155ecf3 6113
048addec
JD
6114 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
6115 Don't try to make last line fully visible if it is past end of window.
61f1d295 6116
048addec 61172002-12-22 Steven Tamm <steventamm@mac.com>
61f1d295 6118
048addec
JD
6119 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
6120 (mac_menu_show): Add support for hierarchical popup menus.
6121 (add_menu_item): Remove indentation support.
6122 (fill_submenu, fill_menu): Create hierarchical menus
6123 instead of using indentation.
0b17a217 6124
048addec 61252002-12-22 Richard M. Stallman <rms@gnu.org>
0b17a217 6126
048addec
JD
6127 * xdisp.c (try_cursor_movement): Don't call try_window here.
6128 (redisplay_window): Never redisplay minibuffer when inactive.
0b17a217 6129
048addec 6130 * window.c (select_window_1): Undo 9/21 change.
402e4f8b 6131
048addec 61322002-12-22 Steven Tamm <steventamm@mac.com>
402e4f8b 6133
048addec
JD
6134 * macterm.c (XTread_socket): Call KeyTranslate for control and
6135 meta to deal correctly shifted non-alpha characters, like C-S-5
6136 being treated like C-%. Does not look for shift key to deal
6137 with masking off control-key with mac-reverse-ctrl-meta.
f02cac82 6138
048addec 61392002-12-21 Richard M. Stallman <rms@gnu.org>
f02cac82 6140
048addec
JD
6141 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
6142 If it is non-nil, run timers. Use an unwind-protect to requeue
6143 the events that were read ahead.
6144 (popup_get_selection_unwind): New subroutine.
6145 (popup_get_selection_queue): File-scope variable now holds that queue.
6146 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
6147 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
6148 Use an unwind-protect to pop down the dialog box.
6149 (xdialog_show_unwind): New subroutine implements that.
f02cac82 6150
048addec
JD
6151 * xdisp.c (row_containing_pos): Change exit test using last_y.
6152 (try_window_id): Abort if row_containing_pos returns null.
f02cac82 6153
048addec
JD
6154 * lread.c (load_error_handler): New function.
6155 (Fload): Handle errors in Fsubstitute_in_file_name.
6156 Don't expect Fsignal to return.
f02cac82 6157
048addec
JD
6158 * eval.c: Errors and throws work right with interrupt blocking.
6159 (struct catchtag): New elt interrupt_input_blocked.
6160 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
6161 (internal_catch, Fcondition_case, internal_condition_case)
6162 (internal_condition_case_1, internal_condition_case_2): Save it.
6163 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
f02cac82 6164
048addec 6165 * editfns.c (Fformat): Add parens.
f02cac82 6166
048addec
JD
6167 * dired.c (file_name_completion): Fix that change.
6168 Delete special quit-handling code; just use QUIT.
f02cac82 6169
048addec 61702002-12-21 Tak Ota <Takaaki.Ota@am.sony.com> (tiny change)
f02cac82 6171
048addec
JD
6172 * dired.c (file_name_completion): Close directory on error
6173 just as in directory_files_internal.
1a590729 6174
048addec 61752002-12-19 David Kastrup <David.Kastrup@t-online.de>
1a590729 6176
048addec
JD
6177 * window.c (Fset_window_configuration): Set old_point to correct
6178 value when new_current_buffer == current_buffer.
f02cac82 6179
048addec 61802002-12-17 Ben Key <bkey1@tampabay.rr.com>
2308af15 6181
048addec
JD
6182 Revisited my earlier fix for the following entry in etc/PROBLEMS:
6183 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
6184 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9785d95b 6185
048addec
JD
6186 These changes were in part based upon suggestions made by Peter
6187 'Luna' Runestig [peter@runestig.com].
9785d95b 6188
048addec
JD
6189 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
6190 g_b_init_get_token_information, g_b_init_lookup_account_sid,
6bdb309a 6191 g_b_init_get_sid_identifier_authority ): Add several static
048addec 6192 global variables.
9785d95b 6193
048addec
JD
6194 * w32.c (globals_of_w32): New function. Used to initialize those
6195 global variables that must always be initialized on startup even
6196 when the global variable initialized is non zero. Its primary
6197 purpose at this time is to set the global variables
6198 g_b_init_is_windows_9x, g_b_init_open_process_token,
6199 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
6200 g_b_init_get_sid_identifier_authority to 0 on startup.
6201 Called from main.
9785d95b 6202
048addec
JD
6203 * w32.c (is_windows_9x): Perform initialization only if
6204 g_b_init_is_windows_9x is equal to 0. On initialization set
6205 g_b_init_is_windows_9x equal to 1.
2308af15 6206
048addec
JD
6207 * w32.c (open_process_token): Perform initialization only if
6208 g_b_init_open_process_token is equal to 0. On initialization set
6209 g_b_init_open_process_token equal to 1.
2308af15 6210
048addec
JD
6211 * w32.c (get_token_information): Perform initialization only if
6212 g_b_init_get_token_information is equal to 0. On initialization
6213 set g_b_init_get_token_information equal to 1.
9785d95b 6214
048addec
JD
6215 * w32.c (lookup_account_sid): Perform initialization only if
6216 g_b_init_lookup_account_sid is equal to 0. On initialization
6217 set g_b_init_lookup_account_sid equal to 1.
9785d95b 6218
048addec
JD
6219 * w32.c (get_sid_identifier_authority): Perform initialization
6220 only if g_b_init_get_sid_identifier_authority is equal to 0.
6221 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
9785d95b 6222
048addec
JD
6223 * w32fns.c (globals_of_w32fns): New function. Used to initialize
6224 those global variables that must always be initialized on startup
6225 even when the global variable initialized is non zero.
6226 Its primary purpose at this time is to initialize the global variable
6227 track_mouse_event_fn.
9785d95b 6228
a64387ee 6229 * w32fns.c (w32_wnd_proc): Remove initialization of
048addec 6230 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
9785d95b 6231
048addec 6232 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
9785d95b 6233
a64387ee 6234 * w32menu.c (globals_of_w32menu): New function. Used to
048addec
JD
6235 initialize those global variables that must always be initialized
6236 on startup even when the global variable initialized is non zero.
6237 Its primary purpose at this time is to initialize the global
6238 variables get_menu_item_info and set_menu_item_info.
9785d95b 6239
048addec
JD
6240 * w32menu.c (initialize_frame_menubar): Remove initialization of
6241 get_menu_item_info and set_menu_item_info.
9785d95b 6242
048addec 6243 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
9785d95b 6244
048addec
JD
6245 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
6246 Declare them.
9785d95b 6247
048addec
JD
6248 * emacs.c (main): Call globals_of_w32 prior to calling
6249 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
6250 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
6251 is defined.
9785d95b 6252
048addec
JD
6253 * w32term.c (x_update_window_begin): Fix Windows API error
6254 detected by BoundsChecker. Test to determine if
6255 w32_system_caret_hwnd is NULL prior to attempting to use
6256 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
2308af15 6257
048addec
JD
6258 * w32term.c (x_update_window_end): Fix Windows API error
6259 detected by BoundsChecker. Test to determine if
6260 w32_system_caret_hwnd is NULL prior to attempting to use
6261 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
b6da19ef 6262
048addec 62632002-12-17 Kenichi Handa <handa@m17n.org>
b6da19ef 6264
048addec
JD
6265 * coding.c (coding_system_require_warning): New variable.
6266 (syms_of_coding): DEFVAR it.
b6da19ef 6267
048addec 6268 * coding.h (coding_system_require_warning): Extern it.
b6da19ef 6269
048addec
JD
6270 * fileio.c (choose_write_coding_system): Even if
6271 Vcoding_system_for_write is non-nil, if
6272 coding_system_require_warning is nonzero, call
6273 Vselect_safe_coding_system_function.
bfcf6dbe 6274
048addec 62752002-12-17 Markus Rost <rost@math.ohio-state.edu>
bfcf6dbe 6276
048addec
JD
6277 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
6278 (lisp): Add font-core.
2c568af5 6279
048addec 62802002-12-13 Stefan Monnier <monnier@cs.yale.edu>
2c568af5 6281
048addec
JD
6282 * textprop.c (text_read_only): New arg `propval'.
6283 (get_char_property_and_overlay): Remove unused var `next_overlay'.
6284 (verify_interval_modification): Use text_read_only's new arg.
b8c6225c 6285
048addec 62862002-12-13 Kenichi Handa <handa@m17n.org>
b8c6225c 6287
048addec 6288 * coding.c (Funencodable_char_position): Set pend correctly.
706ddb8f 6289
048addec 62902002-12-12 Jason Rumney <jasonr@gnu.org>
706ddb8f 6291
048addec
JD
6292 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
6293 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
6294 Be more careful about when help_events are generated.
96720f09 6295
048addec 62962002-12-12 Steven Tamm <steventamm@mac.com>
96720f09 6297
048addec
JD
6298 * macterm.c (mac_check_for_quit_char): Correctly set the
6299 modifiers of the event to 0.
6300 * mac.c (sys_select): Duplicate rfds before calling select to
6301 ensure that rfds survive the while loop.
e5ae1c49 6302
048addec 63032002-12-11 Kim F. Storm <storm@cua.dk>
e5ae1c49 6304
048addec
JD
6305 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
6306 row_containing_pos returned NULL.
2eb46b2d 6307
048addec 63082002-12-10 Steven Tamm <steventamm@mac.com>
2eb46b2d 6309
6bdb309a 6310 * mac.c (sys_read): Fix sys_read to not call select if IO is
048addec 6311 non-blocking.
6bdb309a 6312 (sys_select): Fix sys_select to not use a timeout larger than
048addec 6313 the one given.
b11f1d8a 6314
048addec 63152002-12-10 Juanma Barranquero <lektu@terra.es>
b11f1d8a 6316
048addec 6317 * editfns.c (Fformat): Use alloca, not _alloca.
d8528226 6318
048addec 63192002-12-09 Richard M. Stallman <rms@gnu.org>
d8528226 6320
048addec
JD
6321 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
6322 as the last thing.
a4ac5b17 6323
048addec 63242002-12-09 Dave Love <fx@gnu.org>
a4ac5b17 6325
048addec 6326 * s/sol2-8.h: Removed. (Not necessary.)
ac42d7b9 6327
048addec 63282002-12-09 Matthew Swift <swift@alum.mit.edu>
ac42d7b9 6329
048addec
JD
6330 * editfns.c (Fformat): Handle precision in string conversion
6331 specifiers like libc functions do (ie, print at most that many
6332 characters).
85cce843 6333
048addec 63342002-12-08 Richard M. Stallman <rms@gnu.org>
85cce843 6335
048addec
JD
6336 * xdisp.c (row_containing_pos): Check more carefully
6337 whether charpos is really in the row before returning it.
0d4d26a7 6338
048addec 63392002-12-07 Steven Tamm <steventamm@mac.com>
0d4d26a7 6340
048addec 6341 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
b11f1d8a 6342
048addec
JD
6343 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
6344 each stack frame. This may change as it could be time consuming.
0d4d26a7 6345
048addec
JD
6346 * macterm.c (mac_check_for_quit_char, quit_char_comp)
6347 (init_quit_char_handler, mac_determine_quit_char_modifiers)
6bdb309a 6348 (mac_initialize): Add code to check for pressing of quit_char
048addec 6349 in the OS event queue.
b11f1d8a 6350
048addec
JD
6351 * mac.c (sys_select): Call mac_check_for_quit_char every second
6352 while blocking on select.
0d4d26a7 6353
048addec
JD
6354 * mac.c (sys_read): Use sys_select to test for input first
6355 before calling read, to allow C-g to break.
9252f7bc 6356
048addec 63572002-12-07 Richard M. Stallman <rms@gnu.org>
9252f7bc 6358
048addec 6359 * minibuf.c (Fcompleting_read): Doc fix.
9252f7bc 6360
048addec 6361 * lread.c (syms_of_lread) <load-history>: Doc fix.
9252f7bc 6362
048addec 6363 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9252f7bc 6364
048addec
JD
6365 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
6366 autoload.
9252f7bc 6367
048addec 6368 * data.c (Fdefalias): Record in load-history redefining an autoload.
9252f7bc 6369
048addec 6370 * alloca.c: Undo ifdef change accidentally made on 12-04.
bfa261c0 6371
048addec 63722002-12-06 Francesco Potorti` <pot@gnu.org>
bfa261c0 6373
048addec 6374 * xfns.c (png_load): Avoid double gamma correction for PNG images.
c5992177 6375
048addec 63762002-12-04 Richard M. Stallman <rms@gnu.org>
c5992177 6377
048addec 6378 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 6379
048addec 6380 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 6381
048addec 6382 * alloca.c: Don't use #error.
02d588e2 6383
048addec 63842002-12-03 Dave Love <fx@gnu.org>
02d588e2 6385
048addec
JD
6386 * buffer.c (Qucs_set_table_for_input): New.
6387 (Fget_buffer_create): Use it.
6388 (Qset_buffer_major_mode_hook): Deleted.
6389 (Fset_buffer_major_mode): Revert previous change.
6390 (init_buffer_once): Intern ucs-set-table-for-input.
6391 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
6392 Add &Qucs_set_table_for_input.
451e2697 6393
048addec 63942002-12-03 Andreas Schwab <schwab@suse.de>
451e2697 6395
048addec
JD
6396 * callint.c (Fcall_interactively): Use next_event only if less
6397 than key_count.
72742a99 6398
048addec 63992002-12-02 Andrew Choi <akochoi@shaw.ca>
72742a99 6400
048addec
JD
6401 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
6402 names to 255 characters.
72742a99 6403
048addec
JD
6404 * macterm.c (XTread_socket): If all frames have been collapsed,
6405 expand the first one before handling drag-and-drop events.
72742a99 6406
048addec
JD
6407 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
6408 which is detected by autoconf.
40e6ff95 6409
048addec 64102002-12-01 Steven Tamm <steventamm@mac.com>
40e6ff95 6411
048addec
JD
6412 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
6413 offset in two hints table to allow prebinding to be redone and
6414 allow the executable to be stripped.
c02138c6 6415
048addec 64162002-11-29 Dave Love <fx@gnu.org>
c02138c6 6417
048addec
JD
6418 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
6419 already provided.
0e47bbf7 6420
048addec 64212002-11-29 Richard M. Stallman <rms@gnu.org>
0e47bbf7 6422
048addec
JD
6423 * xdisp.c (start_display): Check more intelligently for
6424 whether the line is continued.
6425 (move_it_vertically_backward): Clear it->continuation_lines_width.
44129dcb 6426
048addec 64272002-11-28 Dave Love <fx@gnu.org>
44129dcb 6428
048addec
JD
6429 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
6430 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
f707342d 6431
048addec 64322002-11-27 Steven Tamm <steventamm@mac.com>
f707342d 6433
048addec
JD
6434 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
6435 more descriptive error output from lread.c:Fload upon most require
6436 cycles during boostrapping.
1637fd2c 6437
048addec 64382002-11-27 Jason Rumney <jasonr@gnu.org>
1637fd2c 6439
048addec
JD
6440 * fileio.c (Finsert_file_contents): Give a more appropriate error
6441 for files bigger than 2Gb when off_t is 32 bit.
1637fd2c 6442
048addec
JD
6443 * dired.c (Ffile_attributes): Don't return negative file sizes for
6444 files bigger than 2Gb when off_t is 32 bit.
540c2788 6445
048addec 64462002-11-27 Dave Love <fx@gnu.org>
6b2fd6ea 6447
048addec 6448 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6b2fd6ea 6449
048addec
JD
6450 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
6451 Test GETPGRP_VOID instead.
6452 [BSD_TERMIOS]: Remove definitions (never used).
6b2fd6ea 6453
048addec
JD
6454 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
6455 Don't define.
6456 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
540c2788 6457
048addec 6458 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8cc03716 6459
048addec 64602002-11-25 Jason Rumney <jasonr@gnu.org>
8cc03716 6461
048addec
JD
6462 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
6463 supported.
4042a81a 6464
048addec 64652002-11-25 Dave Love <fx@gnu.org>
4042a81a 6466
048addec 6467 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
4042a81a 6468
048addec 6469 * Makefile.in (TEMACS_LDFLAGS): Update last change.
be4ee72f 6470
048addec 64712002-11-25 Andreas Schwab <schwab@suse.de>
be4ee72f 6472
048addec 6473 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
82122254 6474
048addec 64752002-11-24 Steven Tamm <steventamm@mac.com>
82122254 6476
048addec
JD
6477 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
6478 determine the size of pointers alloced in unexed space instead
6479 of using possibly invalid emacs_zone pointers. This fixes the
6480 binary incompatibility problems caused by updates to libSystem.B.
c1ee53bc 6481
048addec 64822002-11-24 Richard M. Stallman <rms@gnu.org>
c1ee53bc 6483
048addec 6484 * search.c (Fstring_match): Doc fix.
c1ee53bc 6485
048addec
JD
6486 * callint.c (Fcall_interactively): If a command fails because
6487 `*' detects a read-only buffer, but RECORD_FLAG is set,
6488 record it anyway if the args don't actually do tty input.
5598c32e 6489
048addec 64902002-11-22 Dave Love <fx@gnu.org>
5598c32e 6491
048addec 6492 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
5598c32e 6493
048addec
JD
6494 * keyboard.c (interrupt_signal): Provide forward declaration.
6495 (kbd_buffer_store_event): Don't declare interrupt_signal.
5598c32e 6496
048addec 6497 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
97b14e22 6498
048addec 64992002-11-21 Richard M. Stallman <rms@gnu.org>
97b14e22 6500
048addec
JD
6501 * eval.c (interactive_p): Skip any number of bytecode
6502 and special form frames, in any order.
516eea8e 6503
048addec 65042002-11-20 Jason Rumney <jasonr@gnu.org>
516eea8e 6505
048addec
JD
6506 * w32fns.c (convert_mono_to_color_image): New function.
6507 (xbm_load, xbm_load_image): Use it when foreground or background
6508 is explicitly set.
04dbfa08 6509
048addec 65102002-11-19 Dave Love <fx@gnu.org>
04dbfa08 6511
048addec 6512 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
b4aebae3 6513
048addec 65142002-11-18 Jason Rumney <jasonr@gnu.org>
b4aebae3 6515
048addec
JD
6516 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
6517 (XPutPixel): Swap blue and red.
6518 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
6519 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
6520 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
6521 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
1998560a 6522
048addec 65232002-11-18 Dave Love <fx@gnu.org>
d824beee 6524
048addec 6525 * m/orion105.h (HAVE_ALLOCA): Don't define.
d824beee 6526
048addec 6527 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
d824beee 6528
048addec 6529 * m/intel386.h: Don't include alloca.h or define alloca.
d824beee 6530
048addec
JD
6531 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
6532 malloc, realloc, calloc.
d824beee 6533
048addec
JD
6534 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
6535 (bcmp): Don't define.
d824beee 6536
048addec 6537 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
d824beee 6538
048addec 6539 * m/amdahl.h: Don't define LIB_STANDARD.
d824beee 6540
048addec 6541 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
d824beee 6542
048addec 6543 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
d824beee 6544
048addec
JD
6545 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
6546 Don't include alloca.h.
d824beee 6547
048addec 6548 * s/aix3-2.h (HAVE_FSYNC): Don't define.
1998560a 6549
048addec 6550 * regex.c (_GNU_SOURCE): Don't define.
1998560a 6551
048addec 6552 * process.c (_GNU_SOURCE): Don't define.
1998560a 6553
048addec 6554 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8704a6ab 6555
048addec 65562002-11-18 Markus Rost <rost@math.ohio-state.edu>
8704a6ab 6557
048addec 6558 * s/sol2-8.h: Include sol2-6.h.
6ae2cd57 6559
048addec 65602002-11-18 Miles Bader <miles@gnu.org>
6ae2cd57 6561
048addec
JD
6562 * dispextern.h (struct face): Add `overstrike' field.
6563 * xterm.c (x_draw_glyph_string_foreground)
6564 (x_draw_composite_glyph_string_foreground): Implement overstriking.
6565 * xfaces.c (load_face_font): Set `face->overstrike' based on
6566 result from choose_face_font.
6567 (best_matching_font, choose_face_font): Add `needs_overstrike'
6568 argument, and use it to return whether overstriking is desirable
6569 for this face/font combo.
6570 (set_font_frame_param: Pass new argument to choose_face_font.
6ae2cd57 6571
048addec 65722002-11-17 Ben Key <BKey1@tampabay.rr.com>
3582b6a3 6573
048addec
JD
6574 This change is my fix for the following entry in etc/PROBLEMS:
6575 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
6576 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
f60ae425 6577
048addec
JD
6578 * w32.c: Added wrapper functions around the win32 API functions
6579 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
6580 GetSidIdentifierAuthority. These wrapper functions serve two
6581 purposes:
6582 1. They ensure that the wrapped function can never be called
6583 when Emacs is running on an operating system on which they are
6584 not supported (Microsoft Windows 95 / 98 / ME).
6585 2. They call the wrapped functions via function pointers rather
6586 than calling them directly. This avoids taking advantage of the
6587 undocumented fact that although these functions are not supported
6588 in the 9x branch of Microsoft Windows, the functions do exist in
6589 the version of advapi32.dll that is found in the 9x branch of
6590 Microsoft Windows.
f60ae425 6591
6bdb309a 6592 * w32.c (init_user_info): Replace the calls to the win32 API
048addec
JD
6593 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
6594 and GetSidIdentifierAuthority with calls to the newly added
6595 wrapper functions.
f60ae425 6596
048addec
JD
6597 * w32.h: Added extern declarations for the following functions:
6598 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
6599 syms_of_w32menu, and void syms_of_fontset.
f60ae425 6600
6bdb309a 6601 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
048addec
JD
6602 function pointer track_mouse_event_fn in the handler for the
6603 WM_SETFOCUS message.
3582b6a3 6604
6bdb309a 6605 * w32menu.c (initialize_frame_menubar): Add code to
048addec
JD
6606 reinitialize the function pointers set_menu_item_info and
6607 get_menu_item_info.
f60ae425 6608
048addec 66092002-11-17 Ben Key <BKey1@tampabay.rr.com>
f60ae425 6610
048addec
JD
6611 * sound.c: Added a partial implementation of play-sound-internal
6612 for Microsoft Windows. Added various #ifdef / #else / #endif
6613 code blocks to separate the code that will compile under
6614 Microsoft Windows from the code that is specific to Gnu/Linux.
6615 Moved several blocks of code around to make this separation of code
6616 into Windows compatible and Gnu/Linux compatible code blocks easier.
f60ae425 6617
048addec 6618 * makefile.w32-in: Include sound.c and link with WinMM.lib.
a0f0878d 6619
048addec
JD
6620 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
6621 added support for play-sound-internal under Windows would be
6622 included in the build of Emacs.
517f42a0 6623
048addec 66242002-11-16 Jason Rumney <jasonr@gnu.org>
517f42a0 6625
048addec 6626 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
517f42a0 6627
048addec 6628 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
a0f0878d 6629
048addec 66302002-11-15 Stefan Monnier <monnier@cs.yale.edu>
a0f0878d 6631
048addec
JD
6632 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
6633 (adjust_point_for_property): Move out of display and invisible even if
6634 we were already inside before (in case a property was added while
6635 we weren't looking). Be more careful when handling invisible props.
6636 Skip invisible text as if it really wasn't there at all.
aab83f91 6637
048addec 66382002-11-15 Jason Rumney <jasonr@gnu.org>
aab83f91 6639
048addec
JD
6640 * w32term.c (x_draw_image_foreground)
6641 (w32_draw_image_foreground_1): Use standard copy and invert
6642 operations to draw images.
aab83f91 6643
048addec
JD
6644 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
6645 depth of 1.
6646 (xbm_read_bitmap_data): Invert bits as xbm is read in.
6647 (XPutPixel): Don't invert bits here.
a4478a76 6648
048addec 66492002-11-15 Jason Rumney <jasonr@gnu.org>
a4478a76 6650
048addec
JD
6651 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
6652 (w32_draw_image_foreground_1): Handle image masks.
6653 (x_draw_image_glyph_string): Don't BitBlt transparently.
a4478a76 6654
048addec
JD
6655 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
6656 (x_from_xcolors): Adjust RGB values for W32.
6657 (image_background, image_background_transparent)
6658 (postprocess_image, x_to_xcolors, x_disable_image)
6659 (x_build_heuristic_mask): Adapt for W32 and enable.
6660 (x_create_x_image_and_pixmap): Mark images with palettes as such.
6661 (xbm_load): Remove unused variable.
03670a65 6662
048addec 66632002-11-14 Richard M. Stallman <rms@gnu.org>
03670a65 6664
048addec 6665 * buffer.c (syms_of_buffer): Doc fix.
59daa29a 6666
048addec 66672002-11-14 Dave Love <fx@gnu.org>
59daa29a 6668
048addec 6669 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
59daa29a 6670
048addec
JD
6671 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
6672 * xmenu.c (unuse_menu_items, digest_single_submenu):
6673 * xfns.c (x_put_x_image):
6674 * xdisp.c (message2_nolog, set_message):
6675 * undo.c (record_point):
6676 * terminfo.c (tparam):
6677 * syntax.c (scan_sexps_forward):
6678 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
6679 * composite.c (update_compositions):
6680 * cm.c (calccost, cmgoto):
6681 * charset.c (c_string_width): Declare all args (per C99).
59daa29a 6682
048addec 6683 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
59daa29a 6684
048addec
JD
6685 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
6686 Don't declare.
59daa29a 6687
048addec 6688 * emacs.c (main) [!VMS]: Avoid third arg.
59daa29a 6689
048addec
JD
6690 * fns.c (Fcopy_sequence): Doc fix.
6691 (Fmap_char_table): Cast `call2'.
3947677c 6692
048addec
JD
66932002-11-14 Francesco Potorti` <pot@gnu.org>
6694
6695 * s/sol2-8.h: New file.
6696
66972002-11-14 Kim F. Storm <storm@cua.dk>
6698
6699 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
6700 dependency on `risky-local-variable' and the :propertize form.
6701
67022002-11-12 Stefan Monnier <monnier@cs.yale.edu>
6703
6704 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
6705
6706 * syntax.c (scan_sexps_forward): Undo last patch.
6707 Use a more obvious fix: check eob before updating the syntax table.
6708
67092002-11-09 Stefan Monnier <monnier@cs.yale.edu>
6710
6711 * syntax.c (scan_sexps_forward): Update syntax table before reading
6712 a char rather than after so we don't update the table past eob.
6713
67142002-11-09 Dave Love <fx@gnu.org>
6715
6716 * buffer.c (Fset_buffer_major_mode): Fix last change.
6717
6718 * regex.c (regexec): Fix pmatch declaration.
6719
6720 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
6721
6722 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
6723 to self-inserting characters.
6724 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
6725
6726 * coding.c (Vtranslation_table_for_input): New.
6727 (syms_of_coding): DEFVAR it.
6728
67292002-11-08 Juanma Barranquero <lektu@terra.es>
6730
6731 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
6732 window.
6733
67342002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6735
6bdb309a 6736 * process.c (Fformat_network_address): Remove unused locals p,
048addec
JD
6737 cp, and i.
6738
67392002-11-06 Dave Love <fx@gnu.org>
6740
6741 * buffer.c (Qset_buffer_major_mode_hook): New.
6742 (Fset_buffer_major_mode): Use it.
6743
67442002-11-06 Richard M. Stallman <rms@gnu.org>
6745
6746 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
6747 and stop_polling.
6748
6749 * process.c (wait_reading_process_input):
6750 Test POLLING_PROBLEM_IN_SELECT, not hpux.
6751 Avoid initialization for auto Lisp_Object var.
6752
6753 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
6754
6755 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
6756
67572002-11-05 Richard M. Stallman <rms@gnu.org>
6758
6759 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
6760
6761 * callint.c (Fcall_interactively): New local filter_specs.
6762 (Fcall_interactively): Check for progn as well as let.
6763 Add a gcpro.
6764 (Qprogn): New variable.
6765 (syms_of_callint): Staticpro and init Qprogn.
6766
67672002-11-04 John Paul Wallington <jpw@shootybangbang.com>
6768
6769 * lread.c (Feval_buffer): Doc fix.
6770
67712002-11-04 Dave Love <fx@gnu.org>
6772
6773 * keyboard.c (read_char): Always translate iff
6774 Vkeyboard_translate_table is a char table and c is valid.
6775
6776 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
6777 and fix C types.
6778
67792002-11-03 Stefan Monnier <monnier@cs.yale.edu>
6780
6781 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
6782
6783 * editfns.c (get_pos_property): Don't hardcode Qfield.
6784
6785 * keyboard.c (adjust_point_for_property): Handle `display' prop on
6786 overlays. Also handle `invisible' prop.
6787
67882002-11-02 Stefan Monnier <monnier@cs.yale.edu>
6789
6790 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
6791 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
6792
67932002-11-01 Andreas Schwab <schwab@suse.de>
6794
6795 * editfns.c (Fmessage): Revert last change to properly handle %%.
6796
67972002-11-01 Stefan Monnier <monnier@cs.yale.edu>
6798
6799 * xmenu.c (unuse_menu_items): New fun.
6800 (menu_items_inuse): New var.
6801 (syms_of_xmenu): Initialize it.
6802 (init_menu_items): Use it to detect re-entrance.
6803 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
6804 (Fx_popup_menu): Remove spurious XSETFRAME.
6805
6806 * editfns.c (find_field): Make an exception for nil fields.
6807
68082002-11-01 Dave Love <fx@gnu.org>
6809
6810 * m/gec63.h: Deleted.
6811
68122002-10-31 Dave Love <fx@gnu.org>
6813
6814 * xterm.c (XTread_socket): Fix last change.
6815 (xaw_scroll_callback): Cast call_data to long to avoid warning.
6816
68172002-10-31 Stefan Monnier <monnier@cs.yale.edu>
6818
6819 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
6820
68212002-10-30 Stefan Monnier <monnier@cs.yale.edu>
6822
6823 * editfns.c (overlays_around, get_pos_property): New funs.
6824 (find_field): Use them.
6825 Also be careful not to modify POS before its last use.
6826 (Fmessage): Don't Fformat if there's nothing to format.
6827
68282002-10-30 Dave Love <fx@gnu.org>
6829
6830 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
6831 [HAVE_PTY_H]; Include pty.h.
6832
6833 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
6834
6835 * xterm.c (Qeql): Declare.
6836 (Vx_keysym_table): New.
6837 (syms_of_xterm): Initialize it.
6838 (XTread_socket): Use it. Deal with ASCII keysyms.
6839 (XSetIMValues) [HAVE_X11R6]: Prototype.
6840
6841 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
6842 (lispy_kana_keys): Comment out.
6843 (make_lispy_event) [XK_kana_A]: Comment out.
6844 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
6845 Fix sprintf call.
6846
6847 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
6848 regexp.h change).
6849 (TERMINFO, LIBS_TERMCAP): Define.
6850
6851 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
6852 (bcmp): Define conditional on HAVE_BCMP.
6853 (NO_SIOCTL_H): Don't define.
6854 (TIOCSIGSEND): Don't make conditional on IRIX6.
6855
6856 * s/sol2-5.h: Don't include strings.h.
6857 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
6858
6859 * s/irix6-0.h (IRIX6): Don't define.
6860 (bcopy, bcmp, bzero): Don't undef.
6861
6862 * s/irix6-5.h: Don't include strings.h.
6863 (IRIX6): Don't define.
6864 (bcopy, bcmp, bzero): Don't undef.
6865
6866 * syntax.c (Fforward_comment): Doc fix.
6867
68682002-10-29 Kim F. Storm <storm@cua.dk>
6869
6870 * process.c (Fsignal_process): Allow PROCESS to be specified by
6871 name in addition to pid (as integer or string).
6872
68732002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
6874
6875 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
6876 environments.
6877
68782002-10-27 Kim F. Storm <storm@cua.dk>
6879
6880 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
6881
6882 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
6883
6884 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
6885
6886 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
6887
68882002-10-26 Richard M. Stallman <rms@gnu.org>
6889
6890 * editfns.c (Fformat): Detect invalid format letters for floats.
6891
68922002-10-25 Kenichi Handa <handa@m17n.org>
6893
6894 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
6895 (x_set_title): Likewise.
6896
68972002-10-25 Juanma Barranquero <lektu@terra.es>
6898
6899 * macgui.h:
6900 * w32gui.h: Remove definition of XColor.
6901
6902 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
6903
69042002-10-24 Kim F. Storm <storm@cua.dk>
6905
6906 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
6907 Callers changed (supply dummy arg).
6908
6909 * lisp.h (get_window_cursor_type): Update prototype.
6910
6911 * w32term.c (x_display_and_set_cursor): Get active_cursor from
6912 get_window_cursor_type to track system caret.
6913
69142002-10-24 Kim F. Storm <storm@cua.dk>
6915
6916 * process.c (Fformat_network_address): New function.
6917 (syms_of_process): Defsubr it.
6918 (list_processes_1): Use it to format :local/:remote address if
6919 service/host is not set; before emacs would crash in that case.
6920 (Fmake_network_process): Don't use Ffind_operation_coding_system
6921 to setup coding system if host or service is not set.
6922
69232002-10-23 Juanma Barranquero <lektu@terra.es>
6924
6925 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
6926
6927 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
6928 COLORREF.
6929
6930 * macgui.h:
6931 * w32gui.h: Add definition of XColor.
6932
6933 * macfns.c:
6934 * w32fns.c:
6935 * xfaces.c: Remove definition of XColor.
6936
69372002-10-22 Stefan Monnier <monnier@cs.yale.edu>
6938
6939 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
6940
6941 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
6942 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
6943 window if it is dedicated.
6944 (Fshrink_window): Add preserve_before as was done for enlarge_window.
6945 (Vspecial_display_function): Update docstring.
6946
6947 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
6948 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
6949 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
6950
69512002-10-21 Stefan Monnier <monnier@cs.yale.edu>
6952
6953 * casefiddle.c (casify_region): Don't treat a prefix char as part
6954 of a word when at the beginning.
6955
69562002-10-17 Juanma Barranquero <lektu@terra.es>
6957
6958 * lread.c (syms_of_lread): Fix typos.
6959
69602002-10-17 Dave Love <fx@gnu.org>
6961
6962 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
6963
69642002-10-16 Richard M. Stallman <rms@gnu.org>
6965
6966 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
6967
69682002-10-14 Juanma Barranquero <lektu@terra.es>
6969
6970 * w16select.c (syms_of_win16select): Fix docstring for
6971 `selection-coding-system'.
6972
6973 * w32select.c (syms_of_w32select): Likewise.
6974
69752002-10-14 Stefan Monnier <monnier@cs.yale.edu>
6976
6977 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
6978 a backslash-quoted char.
6979 (scan_lists, scan_sexps_forward): Pacify the compiler.
6980
69812002-10-13 Richard M. Stallman <rms@gnu.org>
6982
6983 * window.c (window_scroll): Set immediate_quit.
6984
6985 * print.c (print): When backquote form is the car of a list,
6986 output in old style. Use old_backquote_output to output all
6987 comma forms inside it in old style too.
6988
6989 * buffer.h (struct buffer): Move `undo_list' down below `name'.
6990
69912002-10-11 Markus Rost <rost@math.ohio-state.edu>
6992
6993 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
6994 batch mode).
6995
6996 * lread.c (Fload): Doc fix (load-suffixes).
6997
69982002-10-10 Steven Tamm <steventamm@mac.com>
6999
7000 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
7001 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
7002 Also switch the default to Qnil from Qt.
7003
70042002-10-08 Kenichi Handa <handa@m17n.org>
7005
7006 * coding.c (code_convert_region): When we need more GAP for
7007 conversion, pay attention to the case that coding->produced is not
7008 greater than coding->consumed.
7009
70102002-10-07 Richard M. Stallman <rms@gnu.org>
7011
7012 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
7013
70142002-10-06 Andrew Choi <akochoi@shaw.ca>
7015
7016 * macmenu.c (mac_menu_show): Add j to count menu items; match
7017 menu_item_selection to it to find selected item.
7018
70192002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7020
7021 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
7022 cases. The correct fix is to pass ReparentNotify to Xt.
7023 The shell widget interprets ConfigureNotify differently depending
7024 on if it has been reparented or not.
7025
70262002-10-05 Markus Rost <rost@math.ohio-state.edu>
7027
7028 * editfns.c (Fformat_time_string): Doc fix.
7029
70302002-10-05 John Paul Wallington <jpw@shootybangbang.com>
7031
7032 * fns.c (Flength): Doc fix.
7033
70342002-10-04 Stefan Monnier <monnier@cs.yale.edu>
7035
7036 * keyboard.c (keyremap): New struct.
7037 (read_key_sequence): Use it: globally replace keytran_foo with
7038 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
7039 keytran_next and fkey_next to just `next'.
7040
70412002-10-04 Steven Tamm <steventamm@mac.com>
7042
7043 * macterm.c (keycode_to_xkeysym_table): Change return to be
7044 treated like an X keysym.
7045
70462002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7047
7048 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
7049 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
7050 This is to also handle x/y changes that occur because of a resize.
7051
70522002-10-02 John Paul Wallington <jpw@shootybangbang.com>
7053
7054 * frame.c (Vdelete_frame_functions): New variable.
7055 (syms_of_frame): Initialize and defvar it.
7056 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
7057 it when frame's `tooltip' parameter is non-nil.
7058
7059 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
7060
7061 * w32fns.c (x_create_tip_frame): Likewise.
7062
7063 * macfns.c (x_create_tip_frame): Likewise.
7064
70652002-09-30 Kenichi Handa <handa@m17n.org>
7066
7067 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
7068 -1 before calling ccl_driver.
7069
7070 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
7071 Only when it is non-nil, handle composition sequence.
7072 (setup_coding_system) <0>: Don't force composition handling.
7073
7074 * Makefile.in (lisp, shortlisp): Add utf-16.elc
7075
70762002-09-29 Richard M. Stallman <rms@gnu.org>
7077
7078 * search.c (Freplace_match): Adjust match data for the substitution
7079 just made in the buffer.
7080
7081 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
7082 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
7083
70842002-09-27 Richard M. Stallman <rms@gnu.org>
7085
7086 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
7087 (read_char): Use them. Do all exits thru the end of the function.
7088
70892002-09-27 Kenichi Handa <handa@etl.go.jp>
7090
7091 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
7092 is nil.
7093
70942002-09-26 Richard M. Stallman <rms@gnu.org>
7095
7096 * regex.h (__restrict_arr): Don't define if already defined.
7097
7098 * coding.c (run_pre_post_conversion_on_str):
7099 Save and restore Vdeactivate_mark.
7100
71012002-09-26 John Paul Wallington <jpw@shootybangbang.com>
7102
7103 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
7104
71052002-09-26 Kenichi Handa <handa@etl.go.jp>
7106
7107 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
7108 nonzero, try face's family at first. Otherwise try FAMILY at first.
7109 (choose_face_font): If C is a single byte char or latin-1, call
7110 try_font_list with PREFER_FACE_FAMILY 1.
7111
71122002-09-21 Richard M. Stallman <rms@gnu.org>
7113
7114 * window.c (select_window_1): Don't select frame.
7115 Set frame's selected window only when frame itself is selected.
7116 (Fselect_window): Doc fix.
7117
71182002-09-18 Kim F. Storm <storm@cua.dk>
7119
7120 * process.c (make-network-process): Doc fix (there is no
7121 network-server-log-function hook).
7122
71232002-09-18 Richard M. Stallman <rms@gnu.org>
7124
7125 * print.c (print): Clear out the unused parts of Vprint_number_table.
7126 (syms_of_print): Doc fix for `print-number-table'.
7127
7128 * unexelf.c (unexec): Undo previous change.
7129
71302002-09-17 Andreas Schwab <schwab@suse.de>
7131
7132 * m/alpha.h [LINUX]: Don't define DATA_START.
7133
71342002-09-16 Dave Love <fx@gnu.org>
7135
7136 * unexelf.c (unexec): Deal with .got, reinstating change from
7137 25-08-1999.
7138
71392002-09-13 Richard M. Stallman <rms@gnu.org>
7140
7141 * s/sol2-6.h (UNEXEC): Comment out definition.
7142
7143 * unexsol.c (unexec): Don't downcase first letter of error msg.
7144
7145 * xfaces.c (Fcolor_supported_p): Just one arg is required.
7146
71472002-09-12 Markus Rost <rost@math.ohio-state.edu>
7148
7149 * unexsol.c: Include buffer.h, charset.h, coding.h.
7150
71512002-09-11 Richard M. Stallman <rms@gnu.org>
7152
7153 * unexsol.c: Don't use report_file_error; do it by hand
7154 using dlerror.
7155
7156 * process.c (wait_reading_process_input, both versions):
7157 Before calling turn_on_atimers, call stop_polling.
7158
7159 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
7160
7161 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
7162 we go to too_near_end, call clear_glyph_matrix.
7163 (redisplay_window): After make_cursor_line_fully_visible,
7164 call clear_glyph_matrix and bypass `goto done'.
7165
7166 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
7167 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
7168
71692002-09-10 Richard M. Stallman <rms@gnu.org>
7170
7171 * fileio.c (Fdo_auto_save): Catch error making directory.
7172 Only call push_message if we need to.
7173 At the same time, make an unwind-protect to pop it.
7174 Rename local message_p to old_message_p.
7175 (do_auto_save_make_dir, do_auto_save_eh): New functions.
7176 (do_auto_save_unwind): Don't call pop_message.
7177
7178 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
7179
7180 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
7181
7182 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
7183
7184 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
7185
71862002-09-10 Stefan Monnier <monnier@cs.yale.edu>
7187
7188 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
7189 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
7190 (re_match_2_internal): Be more careful with infinite loops.
7191
71922002-09-10 Kim F. Storm <storm@cua.dk>
7193
7194 * macros.c (end_kbd_macro): New function.
7195 (Fend_kbd_macro): Use it.
7196
7197 * macros.h (end_kbd_macro): Declare extern.
7198
7199 * keyboard.c (Fdiscard_input): If defining keyboard macro,
7200 end and save it instead of discarding it.
7201
72022002-09-09 Markus Rost <rost@math.ohio-state.edu>
7203
7204 * s/sol2-6.h: Fix typo. Add comment.
7205
72062002-09-09 Richard M. Stallman <rms@gnu.org>
7207
7208 * regex.c (regnum_t): Use signed int, not unsigned int.
7209
7210 * s/sol2-6.h: New file.
7211
7212 * s/sol2-5.h (UNEXEC): Definition deleted.
7213
72142002-09-08 Kim F. Storm <storm@cua.dk>
7215
7216 * macros.c (executing_macro_index): Change type to EMACS_INT.
7217 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
7218
7219 * macros.h (executing_macro_index): Change type to EMACS_INT.
7220
72212002-09-06 Richard M. Stallman <rms@gnu.org>
7222
7223 * casetab.c (set_case_table): Make canon table point to eqv table.
7224
72252002-09-06 Juanma Barranquero <lektu@terra.es>
7226
7227 * coding.c (syms_of_coding): Fix spacing.
7228
7229 * composite.c (Fcompose_region_internal)
7230 (Fcompose_string_internal): Likewise.
7231
7232 * data.c (Flsh): Likewise.
7233
7234 * fontset.c (Fset_fontset_font): Likewise.
7235
7236 * macfns.c (Fx_server_max_request_size): Likewise.
7237
7238 * w16select.c (syms_of_win16select): Likewise.
7239
7240 * w32select.c (syms_of_w32select): Likewise.
7241
7242 * xselect.c (syms_of_xselect): Likewise.
7243
72442002-09-05 Richard M. Stallman <rms@gnu.org>
7245
7246 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
7247 call EXTEND_RANGE_TABLE and return a proper value.
7248 (set_image_of_range): Don't call set_image_of_range_1
7249 if no TRANSLATE or if range includes all of Latin-1.
7250 Only call it for the Latin-1 part of the range.
7251 For other cases, make two separate ranges,
7252 one for the original specified characters and one for
7253 their case-conversions.
7254
72552002-09-04 Richard M. Stallman <rms@gnu.org>
7256
7257 * s/sol2-5.h (UNEXEC): Use unexsol.o.
7258
7259 * window.c (displayed_window_lines): Correct for one-off bug
7260 in HEIGHT on non-window displays.
7261
7262 * regex.c (set_image_of_range_1): New function.
7263 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
7264 Return a value to indicate running out of memory.
7265 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
7266 (extend_range_table_work_area): New subroutine.
7267 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
7268 Different calling conventions, and used from set_image_of_range{,_1}.
7269 (IMMEDIATE_QUIT_CHECK): Definitions moved.
7270
72712002-09-04 Juanma Barranquero <lektu@terra.es>
7272
7273 * makefile.w32-in: All dependencies updated.
7274
72752002-09-01 Richard M. Stallman <rms@gnu.org>
7276
7277 * unexsol.c: New file.
7278
7279 * xfns.c (Qbox): Declare external, don't define.
7280
7281 * xdisp.c (redisplay_window) <force-start case>:
7282 If point is on semi-visible last line, reposition
7283 it at previous line.
7284
7285 * alloc.c (display_malloc_warning): Use display-warning.
7286 (malloc_warning_1): Function deleted.
7287
7288 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
7289
7290 * lread.c (read1): Handle #! by skipping the line.
7291
72922002-08-31 Richard M. Stallman <rms@gnu.org>
7293
7294 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
7295 Don't include LDFLAGS.
7296 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
7297
72982002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
7299
7300 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
7301 member of x_display_info unless we compile for some window system.
7302
73032002-08-31 Kim F. Storm <storm@cua.dk>
7304
7305 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
7306 (get_window_cursor_type): Don't use them.
7307 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
7308
73092002-08-30 Kenichi Handa <handa@etl.go.jp>
7310
7311 * xdisp.c (get_next_display_element): Fix previous change.
7312
73132002-08-30 Andrew Choi <akochoi@shaw.ca>
7314
7315 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
7316 (expose_window): Use it to fix the display of overlapping
7317 rows (merge code from xterm.c).
7318
7319 * macfns.c (Qbox): Add extern declaration.
7320
73212002-08-30 Juanma Barranquero <lektu@terra.es>
7322
7323 * w32fns.c (Qbox): Make extern.
7324 (syms_of_w32fns): Remove initialization of Qbox.
7325
73262002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
7327
7328 * xfns.c (Fx_open_connection): Fix error message.
7329
73302002-08-30 Kim F. Storm <storm@cua.dk>
7331
7332 The following changes consolidates the handling of the cursor
7333 type in xdisp.c, moving duplicate code and functionality from
7334 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
7335
7336 * frame.h (enum text_cursor_kinds): Consolidated here.
7337 Added DEFAULT_CURSOR value.
7338 (struct frame) <desired_cursor, cursor_width>
7339 <blink_off_cursor, blink_off_cursor_width>: New fields.
7340 Consolidated from output_x, output_w32 and output_mac structs.
7341 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
7342 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
7343
7344 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
7345 Variables consolidated here.
7346 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
7347 (Vcursor_in_non_selected_windows): Renamed from
7348 cursor_in_non_selected_windows and changed to Lisp_Object.
7349 (syms_of_xdisp): Define and staticpro new and moved variables.
7350 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
7351 consolidated here. Recognize Qhollow setting.
7352 (set_frame_cursor_types): New function to set frame cursor types
7353 based on the frame parameters.
7354 (get_window_cursor_type): New function to calculate new cursor
7355 type and width for the specified window. Based on duplicated
7356 code consolidated here.
7357 Enhancements: cursor-in-non-selected-windows may be a cursor type,
7358 check buffer-local alternate-cursor-type and blink-cursor-alist
7359 before using built-in blink off methods.
7360
7361 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
7362
7363 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
7364 (get_specified_cursor_type, get_window_cursor_type)
7365 (set_frame_cursor_types): Added prototypes.
7366
7367 * macfns.c (x_specified_cursor_type): Removed.
7368 (x_set_cursor_type): Use set_frame_cursor_types.
7369 (Qbar, Qbox): Removed.
7370 (syms_of_macfns): Don't intern or staticpro them.
7371
7372 * macterm.c (x_specified_cursor_type): Remove prototype.
7373 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
7374 (x_display_and_set_cursor): Use get_window_cursor_type.
7375 Remove unused local variables cursor_non_selected, active_cursor.
7376 Redraw cursor if hbar cursor width changes.
7377 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
7378
7379 * macterm.h (enum text_cursor_kinds): Removed.
7380 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
7381 <blink_off_cursor, blink_off_cursor_width>: Members removed.
7382 (FRAME_DESIRED_CURSOR): Macro removed.
7383
7384 * w32fns.c (Vblink_cursor_alist): Removed.
7385 (Qbar, Qhbar, Qbox, Qhollow): Removed.
7386 (syms_of_w32fns): Don't intern, staticpro, or define them.
7387 (x_specified_cursor_type): Removed.
7388 (x_set_cursor_type): Use set_frame_cursor_types.
7389
7390 * w32term.c (x_specified_cursor_type): Remove prototype.
7391 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
7392 (x_display_and_set_cursor): Use get_window_cursor_type.
7393 Remove unused local variables cursor_off_state.
7394 Redraw cursor if hbar cursor width changes.
7395 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
7396
7397 * w32term.h (enum text_cursor_kinds): Removed.
7398 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
7399 <blink_off_cursor, blink_off_cursor_width>: Members removed.
7400 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
7401 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
7402 (struct w32_display_info) <x_highlight_frame>: Renamed member from
7403 w32_highlight_frame.
7404
7405 * xfns.c (Vblink_cursor_alist): Removed.
7406 (Qbar, Qhbar, Qbox, Qhollow): Removed.
7407 (syms_of_xfns): Don't intern, staticpro, or define them.
7408 (x_specified_cursor_type): Removed.
7409 (x_set_cursor_type): Use set_frame_cursor_types.
7410
7411 * xterm.c (x_specified_cursor_type): Remove prototype.
7412 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
7413 (x_display_and_set_cursor): Use get_window_cursor_type.
7414 Remove unused local variables cursor_off_state.
7415 Redraw cursor if hbar cursor width changes.
7416
7417 * xterm.h (enum text_cursor_kinds): Removed.
7418 (struct output_x) <current_cursor, desired_cursor, cursor_width>
7419 <blink_off_cursor, blink_off_cursor_width>: Members removed.
7420 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
7421 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
7422 (x_specified_cursor_type): Remove prototype.
7423
74242002-08-28 Richard M. Stallman <rms@gnu.org>
7425
7426 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
7427 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
7428 (Vblink_cursor_alist): New variable.
7429 (syms_of_w32fns): Initialize and defvar it.
7430 (x_specified_cursor_type): Recognize Qbox for filled box.
7431 Exceptions are hollow boxes.
7432 (Qbox, Qhollow): New variables.
7433 (syms_of_w32fns): Initialize and staticpro them.
7434
7435 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
7436 New macros.
7437 (struct w32_output): New fields blink_off_cursor,
7438 blink_off_cursor_width.
7439 (FRAME_CURSOR_WIDTH): New macro.
7440
7441 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
7442 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
7443
7444 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
7445 for bar cursor.
7446
7447 * w32term.c (expose_overlaps): New function.
7448 (expose_window): Use it to fix the display of overlapping rows.
7449
74502002-08-28 Simon Josefsson <jas@extundo.com>
7451
7452 * xfns.c (Fx_open_connection): Improve help when X connection
7453 fails, xhost is insecure and xauth is better.
7454
74552002-08-28 Juanma Barranquero <lektu@terra.es>
7456
7457 * makefile.w32-in: Add missing dependencies on w32term.h and
7458 composite.h.
7459
7460 * emacs.c (USAGE1): Add missing newline.
7461
74622002-08-27 Andrew Choi <akochoi@shaw.ca>
7463
7464 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
7465
74662002-08-27 Richard M. Stallman <rms@gnu.org>
7467
7468 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
7469 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
7470 (Vblink_cursor_alist): New variable.
7471 (syms_of_xfns): Initialize and defvar it.
7472 (x_specified_cursor_type): Recognize Qbox for filled box.
7473 Exceptions are hollow boxes.
7474 (Qbox, Qhollow): New variables.
7475 (syms_of_xfns): Initialize and staticpro them.
7476
7477 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
7478 New macros.
7479 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
7480
7481 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
7482 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
7483
7484 * emacs.c (main): Handle --script.
7485 (USAGE1): Mention --script.
7486 (standard_args): Define sort order for --script.
7487
74882002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
7489
7490 * xdisp.c (redisplay_updating_p): Variable removed.
7491 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
7492 New variables.
7493 (init_iterator): Don't free realized faces if
7494 inhibit_free_realized_faces is set.
7495 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
7496 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
7497 initialize Qinhibit_free_realized_faces.
7498
7499 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
7500 when iterator is adding glyphs to a glyph matrix.
7501
75022002-08-27 Kenichi Handa <handa@etl.go.jp>
7503
7504 * xdisp.c (get_next_display_element): In unibyte case, don't use
7505 octal form for such eight-bit characters that can be converted to
7506 multibyte char.
7507
75082002-08-26 Kim F. Storm <storm@cua.dk>
7509
7510 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize foreground
7511 and background colors. From Joe Buehler (tiny change).
7512
75132002-08-26 Miles Bader <miles@gnu.org>
7514
7515 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
7516
75172002-08-25 Andrew Choi <akochoi@shaw.ca>
7518
7519 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
7520 defined instead of MAC_OSX.
7521
7522 * s/darwin.h (select): Define select to sys_select only if
7523 HAVE_CARBON is defined.
7524 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
7525 (DONT_REOPEN_PTY): #def it.
7526
7527 * macterm.c (XTread_socket): Remove code to call
7528 SendEventToEventTarget for keys with command modifiers when
7529 mac_command_key_is_meta is nil.
7530
75312002-08-24 Andreas Schwab <schwab@suse.de>
7532
7533 * eval.c (Fdefvar): Fix last change.
7534
75352002-08-23 Richard M. Stallman <rms@gnu.org>
7536
7537 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
7538 Record variables in load history as (defvar . VAR).
7539 (Fdefvar): Don't record in load history if no initial value.
7540 (Qdefvar): New variable.
7541 (syms_of_eval): Init and staticpro it.
7542
7543 * lread.c (syms_of_lread): Doc fix.
7544 (build_load_history): Use Fmember to see if a definition
7545 is already in the Vload_history element.
7546
7547 * process.c (Fstart_process): Remove /: from program name.
7548
7549 * emacs.c (decode_env_path): Don't add /: if file name handler
7550 has a `safe-magic' property.
7551
7552 * callproc.c (Fcall_process): Remove /: from program name.
7553
75542002-08-23 Stefan Monnier <monnier@cs.yale.edu>
7555
7556 * regex.c (PATFETCH): Remove the translating fetch.
7557 (PATFETCH_RAW): Rename to PATFETCH.
7558 (set_image_of_range): New fun.
7559 (SET_RANGE_TABLE_WORK_AREA): Use it.
7560 (regex_compile): Don't translate the pattern chars so eagerly.
7561 Only do it when inserting an `exactn' bytecode or when handling
7562 a char-range.
7563 (mutually_exclusive_p): Avoid empty statement.
7564
75652002-08-22 Kim F. Storm <storm@cua.dk>
7566
7567 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
7568 end up on a partially visible line; this reverts a specific part
7569 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
7570 display error which has been reported several times now.
7571 However it introduces the problem that changes was supposed to fix.
7572 See my comments in the source if you want to debug this further.
7573
75742002-08-20 Kenichi Handa <handa@etl.go.jp>
7575
7576 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
7577
75782002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
7579
7580 * msdos.c (croak): Add `void' to definition.
7581
7582 * sysdep.c [MSDOS] (request_sigio, unrequest_sigio):
7583 Don't define them, they are defined in msdos.c.
7584
7585 * mem-limits.h [MSDOS]: Declare etext.
7586
7587 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
7588 `const' since CORRECT_DIR_SEPS modifies its target.
7589
75902002-08-19 Kim F. Storm <storm@cua.dk>
7591
7592 * keyboard.c (Fclear_this_command_keys): Added optional arg
7593 KEEP-RECORD to avoid clearing lossage when we just want to clear
7594 the current key sequence (kmacro needs this).
7595
75962002-08-19 Kenichi Handa <handa@localhost>
7597
7598 * composite.c (run_composition_function): Call FUNC if it is fboundp.
7599
7600 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
7601 cons, return Qnil.
7602
76032002-08-17 Richard M. Stallman <rms@gnu.org>
7604
7605 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
7606
7607 * sysdep.c [!VMS]: Include sys/files.h.
7608
7609 * editfns.c (save_restriction_restore): Defend from unchained marker.
7610
7611 * buffer.c (overlays_at): Handle extending vec uniformly.
7612 (overlays_in): Handle extending vec from length 0 as in overlays_at.
7613
76142002-08-15 Andrew Choi <akochoi@shaw.ca>
7615
7616 * mac.c (init_mac_osx_environment): New function.
7617
7618 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
7619
76202002-08-14 Kim F. Storm <storm@cua.dk>
7621
7622 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
7623 executing macro before appending to it (when used from Lisp).
7624 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
7625 which is called prior to each iteration of macro (for kmacro.el).
7626 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
7627
7628 * lisp.h (Fexecute_kbd_macro): Update prototype.
7629
7630 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
7631
76322002-08-14 Kenichi Handa <handa@etl.go.jp>
7633
7634 * xselect.c (QUTF8_STRING): New variable.
7635 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
7636 (x_atom_to_symbol): Likewise.
7637 (x_get_local_selection): New argument local_request. If it is
7638 nonzero, call handler_fn with the second arg nil.
7639 (x_handle_selection_request): Call x_get_local_selection with
7640 local_request 0.
7641 (lisp_data_to_selection_data): Don't encode the string here.
7642 (Fx_get_selection_internal): Call x_get_local_selection with
7643 local_request 1.
7644 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
7645
7646 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
7647
7648 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
7649
76502002-08-13 Richard M. Stallman <rms@gnu.org>
7651
7652 * minibuf.c (Fminibufferp): New function.
7653 (syms_of_minibuf): Defsubr it.
7654 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
7655
76562002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
7657
7658 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
7659
76602002-08-12 Richard M. Stallman <rms@gnu.org>
7661
7662 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
7663 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
7664 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
7665 already.
7666
7667 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
7668
76692002-08-11 Andrew Choi <akochoi@shaw.ca>
7670
7671 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
7672 (Vmac_pass_command_to_system): New variable.
7673 (Vmac_pass_control_to_system): New variable.
7674 (do_mouse_moved): Check wp with is_emacs_window.
7675 (XTread_socket): Check window_ptr with is_emacs_window.
7676 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
7677 events back to Mac Toolbox for processing, depending on values of
7678 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
7679 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
7680 Vmac_pass_control_to_system.
7681
76822002-08-10 Kenichi Handa <handa@etl.go.jp>
7683
7684 * coding.c (unencodable_char_position): New function.
7685 (Funencodable_char_position): New function.
7686 (syms_of_coding): Defsubr Funencodable_char_position.
7687
76882002-08-10 Andrew Choi <akochoi@shaw.ca>
7689
7690 * mac.c (sys_select) [MAC_OSX]: New function.
7691
7692 * macterm.c (MakeMeTheFrontProcess): New function.
7693 (mac_initialize): Call MakeMeTheFrontProcess.
7694
7695 * s/darwin.h: Define select to sys_select.
7696
76972002-08-09 Richard M. Stallman <rms@gnu.org>
7698
7699 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
7700
77012002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
7702
7703 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
7704 end of the buffer.
7705
77062002-08-08 Ken Raeburn <raeburn@mit.edu>
7707
7708 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
7709
7710 * puresize.h (BASE_PURESIZE): Increase to 910000.
7711
77122002-08-08 Kenichi Handa <handa@etl.go.jp>
7713
7714 * coding.c (Ffind_operation_coding_system): For write-region, if
7715 VISIT is a filename, make it the target.
7716
77172002-08-07 Richard M. Stallman <rms@gnu.org>
7718
7719 * alloc.c (mark_object): Detect long lists for debugging.
7720 (mark_object_loop_halt): New variable.
7721
7722 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
7723
7724 * data.c (Fmake_variable_frame_local): Doc fix.
7725
77262002-08-01 David Ponce <david@dponce.com>
7727
7728 * w32menu.c (local_heap, local_alloc, local_free): New macros.
7729 (malloc_widget_value, free_widget_value)
7730 (w32_free_submenu_strings): Use them.
7731
7732 (push_submenu_start, push_submenu_end, push_left_right_boundary)
7733 (push_menu_pane, push_menu_item, single_keymap_panes)
7734 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
7735 (single_submenu, set_frame_menubar)
7736 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
7737
7738 (Fx_popup_menu): Don't show pop up menu until preceding one is
7739 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
7740
7741 * w32menu.c: Changes adapted from xmenu.c
7742 (set_frame_menubar): First parse all submenus,
7743 then make widget_value trees from them.
7744 Don't allocate any widget_value objects
7745 until we are done with the parsing.
7746 (parse_single_submenu): New function.
7747 (digest_single_submenu): New function.
7748 (single_submenu): Function deleted, replaced by those two.
7749
77502002-08-04 Andrew Choi <akochoi@shaw.ca>
7751
7752 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
7753 returns a valid window pointer before proceeding for keyDown and
7754 autoKey events.
7755
77562002-08-03 Andrew Choi <akochoi@shaw.ca>
7757
7758 * macterm.c (USE_CARBON_EVENTS): New macro.
7759 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
7760 (x_iconify_frame): Call CollapseWindow.
7761 (Vmac_reverse_ctrl_meta): New variable.
7762 (Vmac_wheel_button_is_mouse_2): New variable.
7763 (init_mac_drag_n_drop): New function.
7764 (mac_do_receive_drag): New function.
7765 (mac_handle_service_event): New function.
7766 (init_service_handler): New function.
7767 (mac_to_emacs_modifiers): New function.
7768 (mac_event_to_emacs_modifiers): New function.
7769 (mac_get_mouse_btn): New function.
7770 (mac_convert_event_ref): New function.
7771 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
7772 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
7773 mac_get_mouse_btn.
7774 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
7775
7776 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
7777 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
7778 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
7779 TOOL_BAR_EVENT for MAC_OS as well.
7780 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
7781 as for WINDOWS_NT.
7782 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
7783
7784 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
7785
77862002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
7787
7788 * xdisp.c (forward_to_next_line_start): Fix a condition that
7789 lead to a newline being skipped.
7790
77912002-08-02 Andrew Choi <akochoi@shaw.ca>
7792
7793 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
7794
77952002-08-01 Richard M. Stallman <rms@gnu.org>
7796
7797 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
7798
77992002-07-31 Andrew Choi <akochoi@shaw.ca>
7800
7801 * macfns.c: #undef init_process before #define-ing it.
7802
7803 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
7804 HAVE_CARBON is defined.
7805
78062002-07-31 Richard M. Stallman <rms@gnu.org>
7807
7808 * xmenu.c (set_frame_menubar): First parse all submenus,
7809 then make widget_value trees from them.
7810 Don't allocate any widget_value objects
7811 until we are done with the parsing.
7812 (parse_single_submenu): New function.
7813 (digest_single_submenu): New function.
7814 (single_submenu): Function deleted, replaced by those two.
7815
78162002-07-30 Juanma Barranquero <lektu@terra.es>
7817
7818 * w32proc.c (syms_of_ntproc): Fix docstring of
7819 `w32-get-true-file-attributes'.
7820
78212002-07-28 Richard M. Stallman <rms@gnu.org>
7822
7823 * s/hpux8.h (HPUX8): Define this before including hpux.h.
7824 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
7825
7826 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
7827
7828 * keyboard.c (make_lispy_event):
7829 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
7830 Explicitly clear up_modifier in event->modifiers.
7831
78322002-07-27 Richard M. Stallman <rms@gnu.org>
7833
7834 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
7835
7836 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
7837 for bar cursor.
7838
78392002-07-26 Kenichi Handa <handa@etl.go.jp>
7840
7841 * coding.c (detect_coding_iso2022): While checking a byte sequence
7842 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
7843 it in the normal loop.
7844
78452002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
7846
7847 * xterm.c (expose_overlaps): New function.
7848 (expose_window): Use it to fix the display of overlapping rows.
7849
7850 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
7851
78522002-07-23 Ken Raeburn <raeburn@gnu.org>
7853
7854 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
7855 since it only depends on XUINT.
7856
7857 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
7858 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
7859 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
7860 Macros deleted.
3947677c 7861
77d1daf2
AS
7862 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
7863 its value over other approaches.
7864 * sysdep.c (start_of_data): Don't define the function if a macro
7865 form has been defined.
8a8e19a3 7866
048addec
JD
78672002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
7868
7869 * xdisp.c (redisplay_updating_p): New variable.
7870 (init_iterator): Don't free realized faces when
7871 redisplay_updating_p is set.
7872 (redisplay_internal): Set redisplay_updating_p while updating
7873 the display.
7874
78752002-07-23 Richard M. Stallman <rms@gnu.org>
7876
7877 * editfns.c (Fmessage): Treat "" like nil.
7878
78792002-07-23 Kenichi Handa <handa@etl.go.jp>
7880
7881 * xdisp.c (face_before_or_after_it_pos):
7882 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
7883
78842002-07-22 Juanma Barranquero <lektu@terra.es>
7885
7886 * callproc.c (init_callproc) [DOS_NT]:
7887 Initialize Vshared_game_score_directory to nil.
7888 (syms_of_callproc) [DOS_NT]: Likewise.
7889
78902002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
7891
7892 * xdisp.c (display_line): Replace an abort with xassert.
7893
78942002-07-21 Richard M. Stallman <rms@gnu.org>
7895
7896 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
7897 and END_UNCHANGED when setting buffer_unchanged_p.
7898 Use current_matrix_up_to_date_p to decide whether to use
7899 try_cursor_movement.
7900
7901 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
7902
7903 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
7904
7905 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
7906 Set to nil if dir does not exist.
7907 (syms_of_callproc): Init unconditionally and simply.
7908
7909 * buffer.c (Fbuffer_list): Doc fix.
7910
79112002-07-21 Ken Raeburn <raeburn@gnu.org>
7912
7913 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
7914
7915 * buffer.c (mmap_realloc): When shrinking, make sure number of
7916 pages to unmap is rounded towards zero.
7917
7918 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
7919 (XSETINT): Deleted.
7920
7921 * m/att3b.h (XINT): Don't define.
7922 (VALBITS, VALMASK, XTYPE): Deleted.
7923 (DATA_SEG_BITS): Define.
7924 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
7925 ARRAY_MARK_FLAG): Deleted.
7926 (DATA_SEG_BITS): Define.
7927 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
7928 (DATA_SEG_BITS): Define.
7929
79302002-07-20 Richard M. Stallman <rms@gnu.org>
7931
7932 * print.c (print_error_message): New args CONTEXT and CALLER.
7933 Calls changed.
7934
7935 * lisp.h (print_error_message): Declare new args.
7936
7937 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
7938 and CONTEXT to print_error_message, don't print them here.
7939 For a Quit, don't use Vsignaling_function.
7940 Call message_log_maybe_newline.
7941
7942 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
7943
79442002-07-20 Kim F. Storm <storm@cua.dk>
7945
7946 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
7947
79482002-07-19 Ken Raeburn <raeburn@gnu.org>
7949
7950 * bytecode.c (struct byte_stack): Pointers into byte string now
7951 point to const.
7952 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
7953 const.
7954 * charset.h (BCOPY_SHORT): Source pointer now points to const.
7955 * coding.c (encode_eol, detect_coding, detect_eol):
7956 (decode_coding, encode_coding, detect_coding_system):
7957 Source strings now treated as const.
7958 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
7959 modify Lisp string contents.
7960 * coding.h (decode_coding, encode_coding, detect_coding,
7961 detect_eol): Declarations updated.
7962 * composite.c (compose_chars_in_text): Treat Lisp string contents
7963 as const.
7964 * dispnew.c (safe_bcopy): Source pointer now points to const.
7965 * lisp.h (STRING_COPYIN): New macro.
7966 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
7967 (internal_with_output_to_temp_buffer): Declarations updated.
7968 * print.c (temp_output_buffer_setup):
7969 (internal_with_output_to_temp_buffer): Buffer name argument is now
7970 pointer to const.
7971 * sound.c (struct sound_device): Function pointer field "write"
7972 buffer argument now points to const.
7973 (vox_write): Buffer argument points to const.
7974 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
7975 contents as const.
7976 * sysdep.c (emacs_write): Buffer pointer now const.
7977 * term.c (encode_terminal_code): Buffer pointer now const.
7978 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
7979 (x_face_list_fonts, x_update_menu_appearance):
7980 (hash_string_case_insensitive): Treat Lisp string contents as const.
7981
79822002-07-19 Juanma Barranquero <lektu@terra.es>
7983
7984 * fileio.c (Ffile_name_as_directory): Fix argument name in docstring.
7985 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
7986
7987 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
7988
7989 * fileio.c (syms_of_fileio): Likewise.
7990
79912002-07-18 Richard M. Stallman <rms@gnu.org>
7992
7993 * data.c (Fdefalias): Doc fix.
7994
79952002-07-17 Dave Love <fx@gnu.org>
7996
7997 * intervals.h (text_property_stickiness): Use P_.
7998
7999 * ccl.c: Remove `emacs' conditionals.
8000 (ccl_backtrace_table): Fix size spec.
8001 (ccl_driver): Fix type errors.
8002
80032002-07-16 Ken Raeburn <raeburn@gnu.org>
8004
8005 * alloc.c (xstrdup, make_string, make_unibyte_string)
8006 (make_multibyte_string, build_string): String pointer args now
8007 point to const.
8008 * charset.c (find_charset_in_text, c_string_width):
8009 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
8010 * fileio.c (report_file_error):
8011 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
8012 (count_combining_before, count_combining_after, insert_1_both):
8013 (insert, insert_and_inherit, insert_string):
8014 (insert_before_markers, insert_before_markers_and_inherit):
8015 * lread.c (intern, oblookup, hash_string):
8016 * minibuf.c (temp_echo_area_glyphs):
8017 * search.c (fast_c_string_match_ignore_case):
8018 * sysdep.c (emacs_open, set_file_times):
8019 * xfaces.c (xstricmp):
8020 * xdisp.c (store_frame_title, string_char_and_length):
8021 (message_dolog, message2, message2_nolog, set_message): Likewise.
8022 (set_message_1): Cast message string argument to const pointer.
8023 * editfns.c (general_insert_function): Insertion function now
8024 takes pointer to const for input data.
8025 * charset.h (find_charset_in_text, c_string_width):
8026 (parse_str_as_multibyte): Declarations updated.
8027 * dispextern.h (xstricmp): Declaration updated.
8028 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
8029 (count_size_as_multibyte, count_combining_before):
8030 (count_combining_after, insert_1, insert_1_both, message_dolog):
8031 (insert, insert_and_inherit, insert_before_markers)
8032 (insert_before_markers_and_inherit, set_message, message2):
8033 (message2_dolog, build_string, make_string, make_unibyte_string):
8034 (make_multibyte_string, intern, oblookup, report_file_error):
8035 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
8036 (emacs_open, xstrdup): Declarations updated.
8037 * systime.h (set_file_times): Declaration updated.
8038
8039 * charset.c (find_charset_in_text, lisp_string_width): Use const
8040 for pointer to lisp string data.
8041 * charset.h (FETCH_STRING_CHAR_ADVANCE):
8042 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
8043 * coding.c (Ffind_coding_systems_region_interval):
8044 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
8045 (Fmake_directory_internal, Fdelete_directory):
8046 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
8047 * fontset.c (font_family_registry, fs_query_fontset):
8048 (list_fontsets):
8049 * frame.c (Fframe_parameter):
8050 * keyboard.c (cmd_error_internal):
8051 * keymap.c (Fdescribe_buffer_bindings):
8052 * lread.c (complete_filename_p, openp):
8053 * minibuf.c (Fminibuffer_complete_word):
8054 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
8055 (face_before_or_after_it_pos, next_element_from_string):
8056 (get_overlay_arrow_glyph_row, display_mode_element):
8057 (decode_mode_spec_coding):
8058 * xterm.c (same_x_server): Likewise.
8059
8060 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
8061 settings of non-existent fields.
8062
8063 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
8064 copy a lisp value.
8065
8066 * lread.c (Fintern_soft): Use string macros instead of
8067 Lisp_String fields.
8068 * keyboard.c (echo_char, parse_modifiers_uncached):
8069 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
8070 * textprop.c (validate_interval_range, interval_of): Likewise.
8071
8072 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
8073
8074 * charset.h (FETCH_STRING_CHAR_ADVANCE)
8075 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
8076 XSTRING()->size_byte.
8077
8078 * lisp.h (SDATA, SREF): Produce rvalue.
8079 (SSET): New macro.
8080 * alloc.c (make_event_array): Use SSET for storing into a string.
8081 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
8082 a string.
8083 * casefiddle.c (casify_object): Use SSET.
8084 * charset.h (FETCH_STRING_CHAR_ADVANCE)
8085 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
8086 address of string contents.
8087 * data.c (Faref): Use SDATA.
8088 (Faset): Use SDATA, SSET.
8089 * dired.c (directory_files_internal): Use SSET.
8090 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
8091 (Fread_file_name): Use SREF, SSET.
8092 * fns.c (concat): Use SSET.
8093 (concat, Fdelete): Use SDATA.
8094 * insdel.c (insert_from_string_1): Use SDATA.
8095 * keyboard.c (Fevent_convert_list): Use SREF.
8096 * lread.c (Fload): Use SDATA, SSET.
8097 * macfns.c (validate_x_resource_name): Use SSET.
8098 * process.c (status_message): Use SSET.
8099 * search.c (wordify): Use SDATA.
8100 (Freplace_match): Use SREF.
8101 * w32fns.c (validate_x_resource_name): Use SSET.
8102 * xfns.c (validate_x_resource_name): Use SSET.
8103 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
8104
81052002-07-16 Richard M. Stallman <rms@gnu.org>
8106
8107 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
8108
8109 * xdisp.c (reconsider_clip_changes):
8110 Don't test prevent_redisplay_optimizations_p.
8111 (redisplay_internal): Test prevent_redisplay_optimizations_p
8112 along with clip_changed in some cases.
8113 (try_window_id): Likewise.
8114 (redisplay_window): New local var buffer_unchanged_p.
8115
8116 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
8117
8118 * process.c (create_process): Test USG_SUBTTY_WORKS.
8119 (process_send_signal): Clean up handling of GID.
8120 Detect errors in ioctls meant to set GID.
8121
8122 * window.c (temp_output_buffer_show):
8123 Don't set prevent_redisplay_optimizations_p.
8124
81252002-07-15 Juanma Barranquero <lektu@terra.es>
8126
8127 * eval.c (Fdefvaralias): Add docstring argument.
8128
81292002-07-15 Ken Raeburn <raeburn@gnu.org>
8130
8131 * lisp.h (STRING_INTERVALS): Produce rvalue.
8132 (STRING_SET_INTERVALS): New macro.
8133 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
8134 * fns.c (Fstring_as_multibyte): Likewise.
8135 * intervals.c (balance_possible_root_interval, delete_interval)
8136 (create_root_interval, copy_intervals_to_string): Likewise.
8137 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
8138 instead of 0.
8139
81402002-07-14 Ken Raeburn <raeburn@gnu.org>
8141
8142 * lisp.h (STRING_SET_CHARS): New macro.
8143 (SCHARS, SBYTES): Produce rvalues.
8144 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
8145 * fns.c (concat): Likewise.
8146 * lread.c (read_vector): Likewise.
8147
8148 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
8149 (STRING_SET_UNIBYTE): New macro.
8150 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
8151 length of -1) changed to use STRING_SET_UNIBYTE.
8152 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
8153 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
8154 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
8155 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
8156 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
8157 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
8158 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
8159 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
8160 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
8161 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
8162 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
8163 STRING_BYTES or indirection changed to SCHARS, SBYTES,
8164 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
8165 unchanged for now.
8166
81672002-07-13 Kim F. Storm <storm@cua.dk>
8168
8169 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
8170
81712002-07-12 Richard M. Stallman <rms@gnu.org>
8172
8173 * fileio.c (Fwrite_region): Doc fix.
8174
8175 * print.c (print_error_message): Don't handle Vsignaling_function here.
8176
8177 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
8178 (command_loop_1): Avoid certain actions after memory-full error.
8179
8180 * eval.c (Fsignal): Don't call cancel_hourglass.
8181 For a memory-full error, don't call Vsignal_hook_function
8182 and don't set Vsignaling_function.
8183
8184 * process.c (process_send_signal): Add abort call.
8185
81862002-07-11 Markus Rost <rost@math.ohio-state.edu>
8187
8188 * keymap.c (Fkey_binding): Fix typo.
8189
81902002-07-11 Richard M. Stallman <rms@gnu.org>
8191
8192 * alloc.c (Vmemory_full): New variable.
8193 (Vmemory_signal_data): Renamed from memory_signal_data.
8194 Uses changed.
8195 (syms_of_alloc): Defvar them.
8196 (memory_full, buffer_memory_full): Set Vmemory_full.
8197
8198 * lisp.h (Vmemory_full): Add declaration.
8199 (current_column, indented_beyond_p): Change declaration.
8200
8201 * indent.c (last_known_column): Declare as double, not float.
8202 (current_column, current_column_1, string_display_width)
8203 (position_indentation): Return `double'.
8204 (indented_beyond_p): Arg `column' is `double'. Callers changed.
8205
8206 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
8207 (back_to_previous_visible_line_start)
8208 (reseat_at_next_visible_line_start, next_element_from_buffer):
8209 Use `double', not `float', when calling indented_beyond_p.
8210
8211 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
8212
8213 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
8214
82152002-07-11 Juanma Barranquero <lektu@terra.es>
8216
8217 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
8218 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
8219 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
8220 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
8221 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
8222 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
8223
82242002-07-10 Juanma Barranquero <lektu@terra.es>
8225
8226 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE. All callers
8227 changed.
8228
82292002-07-09 Stefan Monnier <monnier@cs.yale.edu>
8230
8231 * data.c (Fdefalias): Add an optional `docstring' argument.
8232 (set_internal, Fsetq_default): Use XCAR/XCDR.
8233
8234 * composite.c (HASH_VALUE, HASH_KEY):
8235 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
8236
82372002-07-09 Kenichi Handa <handa@etl.go.jp>
8238
8239 * callproc.c (Fcall_process): Fix previous change.
8240
82412002-07-07 Stefan Monnier <monnier@cs.yale.edu>
8242
8243 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
8244 Add support for hash-tables.
8245 (Ftry_completion): Return t even if the string appears multiple times.
8246
8247 * fns.c (Fnconc): Use XCDR.
8248 (Fprovide): Use CONSP and XCDR.
8249 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
8250 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
8251 (Fmake_hash_table): Accept `:size nil'.
8252 (Fmakehash): Delete: moved to subr.el.
8253 (syms_of_fns): Don't defsubr makehash.
8254
8255 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
8256 (HASH_TABLE_SIZE): Move from fns.c.
8257
82582002-07-07 Richard M. Stallman <rms@gnu.org>
8259
8260 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
8261 Instead just return 0 when there is something to be done.
8262 (try_scrolling): If make_cursor_line_fully_visible returns 0,
8263 retry scrolling as if cursor were off the bottom.
8264 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
8265 return CURSOR_MOVEMENT_MUST_SCROLL.
8266 (redisplay_window): If make_cursor_line_fully_visible returns 0,
8267 go to try_to_scroll.
8268
8269 * buffer.c (Fbuffer_local_value): Store current value into its binding
8270 so we get the up-to-date value for the binding that is loaded.
8271
8272 * eval.c (Fdefmacro): Doc fix.
8273
82742002-07-05 Dave Love <fx@gnu.org>
8275
8276 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
8277 correctly.
8278
8279 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
8280 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
8281 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
8282 CCL_LookupCharConstTbl.
8283 (syms_of_ccl): Defvar translation-hash-table-vector.
8284
82852002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8286
8287 * xdisp.c: Remove unused variable `face'.
8288
82892002-07-04 Juanma Barranquero <lektu@terra.es>
8290
8291 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
8292 obsolescence information.
8293
82942002-07-03 Andrew Choi <akochoi@shaw.ca>
8295
8296 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
8297 pattern. Search cache first.
8298 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
8299 for Japanese font.
8300 (XLoadQueryFont): Use it.
8301
83022002-07-02 Richard M. Stallman <rms@gnu.org>
8303
8304 * keymap.c (Fdefine_key): Doc fix.
8305
8306 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
8307
83082002-07-02 Juanma Barranquero <lektu@terra.es>
8309
8310 * keymap.c (syms_of_keymap): Fix typo.
8311
83122002-07-01 Andrew Choi <akochoi@shaw.ca>
8313
8314 * s/darwin.h: Define POSIX_SIGNALS.
8315
8316 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
8317 and FSRefMakePath to convert FSSpec returned with Apple Event to
8318 Posix pathname.
8319 (mac_initialize) [TARGET_API_MAC_CARBON]:
8320 Call init_required_apple_events and disable the `Quit' menu item
8321 provided automatically by the Carbon Toolbox.
8322
83232002-07-01 Dave Love <fx@gnu.org>
8324
8325 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
8326 for K&R.
8327
8328 * xterm.c: Fix prototype for K&R.
8329
8330 * term.c (costs_set): Declare static, non-initialized for pcc.
8331
83322002-07-01 Richard M. Stallman <rms@gnu.org>
8333
8334 * keyboard.c (timer_last_idleness_start_time): New variable.
8335 (timer_start_idle): Set that.
8336 (read_key_sequence): Use that to reset timer_idleness_start_time
8337 to previous value.
8338
8339 * window.c (Frecenter): With arg, set optional_new_start.
8340
8341 * xdisp.c (redisplay_internal): Make optional_new_start really work.
8342
8343 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
8344 buffer for completion.
8345
83462002-06-29 Ken Raeburn <raeburn@gnu.org>
8347
8348 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
8349
83502002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8351
8352 * keyboard.c (readable_filtered_events): New function that filters
8353 FOCUS_IN_EVENT depending on parameter.
8354 (readable_events): Calls readable_filtered_events, not filtering
8355 FOCUS_IN_EVENT.
8356 (get_filtered_input_pending): New function, filtering parameter passed
8357 to readable_filtered_events.
8358 (get_input_pending): Calls get_filtered_input_pending, not filtering
8359 FOCUS_IN_EVENT.
8360 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
8361 FOCUS_IN_EVENT.
8362
8363 * xterm.h (struct x_output): Add focus_state.
8364
8365 * xterm.c (x_focus_changed): New function.
8366 (x_detect_focus_change): New function.
8367 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
8368 EnterNotify and LeaveNotify to track X focus changes.
8369
83702002-06-28 Andreas Schwab <schwab@suse.de>
8371
8372 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
8373
83742002-06-27 Kim F. Storm <storm@cua.dk>
8375
8376 * xdisp.c: (mode_line_string_list, mode_line_string_face)
8377 (mode_line_string_face_prop): New variables.
8378 (store_mode_line_string): New function.
8379 (display_mode_element): Use store_mode_line_string to
8380 add mode-line string elements to mode_line_string_list
8381 when mode_line_string_list is non-nil.
8382 (Fformat_mode_line): Now returns propertized string by
8383 default. New arg NO-PROPS to ignore properties.
8384 (decode_mode_spec): Only add two dashes for %- in propertized
8385 mode-line string.
8386 (syms_of_xdisp): Init and staticpro mode_line_string_list.
8387
83882002-06-27 Stefan Monnier <monnier@cs.yale.edu>
8389
8390 * minibuf.c (minibuffer_completion_contents): Add return type.
8391
83922002-06-27 Juanma Barranquero <lektu@terra.es>
8393
8394 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
8395
83962002-06-26 Juanma Barranquero <lektu@terra.es>
8397
8398 * fileio.c (read_file_name_cleanup): Add missing return.
8399
84002002-06-26 Richard M. Stallman <rms@gnu.org>
8401
8402 * window.c (Frecenter): Don't set force_start flag.
8403
8404 * minibuf.c (do_completion, Fminibuffer_complete_word)
8405 (Fminibuffer_completion_help): Complete just the text before point.
8406 (minibuffer_completion_contents): New function.
8407
8408 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
8409
8410 * frame.c (frames_bury_buffer): Function deleted.
8411
84122002-06-25 Miles Bader <miles@gnu.org>
8413
8414 * callint.c (Fcall_interactively): When checking to see if doprnt hit
8415 the end of callint_message, allow for a terminating '\0'.
8416
84172002-06-24 Juanma Barranquero <lektu@terra.es>
8418
8419 * w32select.c: Include composite.h
8420
8421 * w16select.c: Likewise.
8422
84232002-06-24 Kenichi Handa <handa@etl.go.jp>
8424
8425 * callproc.c (Fcall_process): If code detection is necessary,
8426 call detect_coding directly here.
8427
8428 * coding.c (detect_eol): Preserve coding->cmp_data.
8429
8430 * w16select.c (Fw16_get_clipboard_data):
8431 * w32fns.c (w32_to_x_font):
8432 * w32select.c (Fw32_get_clipboard_data):
8433 * xselect.c (selection_data_to_lisp_data):
8434 * xterm.c (XTread_socket): Disable composition handling.
8435
84362002-06-24 Stefan Monnier <monnier@cs.yale.edu>
8437
8438 * print.c (temp_output_buffer_setup): Kill all local variables.
8439
84402002-06-22 Stefan Monnier <monnier@cs.yale.edu>
8441
8442 * lread.c (Fread): Remove redundant and imprecise declaration.
8443
8444 * xfns.c (check_x_display_info): Use check_x_frame.
8445
8446 * .gdbinit (xprintsym): Use the new `xname' field.
8447 (xsymbol): Use it.
8448
84492002-06-22 Jason Rumney <jasonr@gnu.org>
8450
8451 * w32fns.c (file_dialog_callback): New function.
8452 (Fx_file_dialog): Allow selecting directories as well as files.
8453
84542002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8455
8456 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
8457 OpenBSD. Add support for mipseb-*-netbsd* machines.
8458
84592002-06-17 Andrew Choi <akochoi@shaw.ca>
8460
8461 * macterm.c (mac_scroll_area): Set foreground and backcolor to
8462 black and white before scrolling. Restore frame background and
8463 foreground color after scrolling.
8464 (do_window_update): Call XClearWindow before calling expose_frame.
8465 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
8466 FRAME_FOREGROUND_PIXEL of frame.
8467
8468 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
8469 test Mac command key as <ALT> key.
8470
84712002-06-17 Stefan Monnier <monnier@cs.yale.edu>
8472
8473 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
8474
8475 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
8476 Lookup keys in function-key-map immediately so that key-translation-map
8477 can be applied earlier.
8478 Remove function_key_possible and key_translation_possible, replaced
8479 by checking `keytran_start < t'.
8480
8481 * .gdbinit (xsymbol): Use the new `xname' field.
8482
84832002-06-17 Andrew Choi <akochoi@shaw.ca>
8484
8485 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
8486 test Mac command key as <ALT> key.
8487
8488 * mac.c (do_applescript): Call initialize_applescript if necessary
8489 when first called. Dispose of result_desc only when there is no error.
8490 (Fdo_applescript): Use %d format specifier instead of %ld.
8491
84922002-06-16 Andrew Choi <akochoi@shaw.ca>
8493
8494 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
8495 of FrontWindow for cases keyDown and autoKey.
8496
8497 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
8498 Vdefault_fontset to Monaco with mac-roman coding.
8499
8500 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
8501 init_process before and after inclusion of Carbon/Carbon.h, resp.
8502
8503 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
8504 cursor_gc.
8505 (add_font_name_table_entry): New function.
8506 (init_font_name_table): Use add_font_name_table_entry; add italic,
8507 bold, and bold-italic entries for truetype fonts.
8508
8509 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
8510 for Mac too.
8511 (try_font_list) [MAC_OS]: If no font matches given registry, try
8512 fonts with any registry matching face_family.
8513 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
8514
8515 * s/darwin.h: If autoconf detects the Ncurses library, define
8516 LIBS_TERMCAP to -lncurses to use it.
8517
85182002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
8519
8520 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
8521
85222002-06-15 Richard M. Stallman <rms@gnu.org>
8523
8524 * window.c (Fset_window_configuration): Explicitly preserve
8525 the point value that new_current_buffer had at the start.
8526
85272002-06-14 Juanma Barranquero <lektu@terra.es>
8528
8529 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
8530 Fix typos.
8531
85322002-06-14 Kim F. Storm <storm@cua.dk>
8533
8534 * insdel.c (insert_1_both, insert_from_string_1)
8535 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
8536 insert happened in the end_unchanged region. Otherwise, the
8537 redisplay may be confused and duplicate the last line in the
8538 buffer [seen after save-buffer when require-final-newline==t].
8539
85402002-06-13 Jason Rumney <jasonr@gnu.org>
8541
8542 * w32.c (init_environment): Remove EMACSLOCKDIR.
8543 (stat): Swap _S_IFDIR and _S_IFREG.
8544
85452002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8546
8547 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
8548 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
8549 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
8550 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
8551 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
8552 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
8553 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
8554 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
8555 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
8556 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
8557 SELECTION_REQUEST_EVENT, selection_clear_event to
8558 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
8559 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
8560 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
8561 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
8562 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
8563 no_event to NO_EVENT.
8564
85652002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8566
8567 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
8568
85692002-06-12 Stefan Monnier <monnier@cs.yale.edu>
8570
8571 * intervals.c (textget): Don't forget to `return'.
8572 (lookup_char_property): Use XCAR/XCDR.
8573
85742002-06-12 Juanma Barranquero <lektu@terra.es>
8575
8576 * xdisp.c (Fformat_mode_line): Fix typo.
8577
85782002-06-12 Kim F. Storm <storm@cua.dk>
8579
8580 * xdisp.c (Fformat_mode_line): New function.
8581 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
8582 (store_frame_title_char, store_frame_title): Use unconditionally.
8583 (init_xdisp): Defsubr Fformat_mode_line.
8584 Initialize frame_title_buf etc. unconditionally.
8585
85862002-06-11 Stefan Monnier <monnier@cs.yale.edu>
8587
8588 * keyboard.c (read_key_sequence):
8589 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
8590 things through those maps after downcasing events.
8591 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
8592 applies after function-key-map.
8593 Make sure that keytran can be done in the middle in the sequence.
8594 Be careful not to throw away events past the one we downcase.
8595
8596 * lread.c (read_integer): Remove unused var `tem'.
8597 (read1): Fix int/Lisp_Object mixup.
8598
8599 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
8600
86012002-06-11 Richard M. Stallman <rms@gnu.org>
8602
8603 * keyboard.c (readable_events): Ignore any number of
8604 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
8605
86062002-06-09 Miles Bader <miles@gnu.org>
8607
8608 * xfaces.c (Ftty_supports_face_attributes_p): New function.
8609 (parse_rgb_list, tty_lookup_color): New functions.
8610 (tty_defined_color): Use `tty_lookup_color' to do all the work.
8611 (color_distance, Fcolor_distance): New functions.
8612 (TTY_SAME_COLOR_THRESHOLD): New macro.
8613 (Qtty_color_standard_values): New variable.
8614 (syms_of_xfaces): Initialize new vars & functions.
8615
86162002-06-08 Colin Walters <walters@verbum.org>
8617
8618 * textprop.c (Vchar_property_alias_alist): New variable.
8619 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
8620
8621 * intervals.c (lookup_char_property): New function for looking up
8622 overlay and text properties, created from textget.
8623 (textget): Use it.
8624
8625 * intervals.h (lookup_char_property): Declare.
8626 (Vchar_property_alias_alist): Declare.
8627
8628 * buffer.c (Foverlay_get): Use lookup_char_property.
8629
86302002-06-07 Sam Steingold <sds@gnu.org>
8631
8632 * xselect.c (lisp_data_to_selection_data): Fix last change:
8633 *data_ret is not a Lisp string, while unibyte_string is.
8634
86352002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
8636
8637 * xselect.c (lisp_data_to_selection_data): Fix last change:
8638 set size_ret.
8639
86402002-06-07 Andreas Schwab <schwab@suse.de>
8641
8642 * m/amdx86-64.h: New file.
8643
86442002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
8645
8646 * fns.c (Fstring_make_unibyte): Doc fix.
8647
8648 * xselect.c (lisp_data_to_selection_data): If the requested type
8649 is STRING, call string_make_unibyte to encode the selected text
8650 as a string.
8651
8652 * window.c (Fset_window_hscroll): Doc fix.
8653
86542002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8655
8656 * fileio.c (choose_write_coding_system):
8657 Call select-safe-coding-system properly.
8658
86592002-06-03 Richard M. Stallman <rms@gnu.org>
8660
8661 * xdisp.c (message_with_string): Error if STRING is not a string.
8662
8663 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
8664
8665 * fileio.c (choose_write_coding_system): Pass FILE arg to
8666 Vselect_safe_coding_system_function.
8667
86682002-06-03 Ken Raeburn <raeburn@gnu.org>
8669
8670 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
8671
86722002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
8673
8674 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
8675 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
8676 * keymap.c (describe_command): Likewise.
8677 * minibuf.c (read_minibuf): Likewise.
8678
8679 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
8680 Cast `current_column' return value to int.
8681 (back_to_previous_visible_line_start)
8682 (reseat_at_next_visible_line_start, next_element_from_buffer):
8683 Cast `indented_beyond_p' 3rd arg to float.
8684
8685 * indent.c (last_known_column): Now a float.
8686 (current_column_1, position_indentation, current_column)
8687 (string_display_width): Return float.
8688 (Fcurrent_column): Cast `current_column' return value to int.
8689 (Fcurrent_indentation): Cast `position_indentation' retval to int.
8690 (indented_beyond_p): Third arg now a float.
8691 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
8692
8693 * lisp.h (current_column): Now returns float.
8694 (indented_beyond_p): 3rd arg now a float.
8695
86962002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
8697
8698 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
8699 is Qcompound_text_with_extensions.
8700
8701 * xselect.c (lisp_data_to_selection_data): Always set selection
8702 type as string if x_encode_text returns streingp non-NULL.
8703
8704 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
8705
87062002-05-30 Richard M. Stallman <rms@gnu.org>
8707
8708 * window.c (Fset_window_configuration): Correct the handling
8709 of point in current buffer, to work with multiple windows.
8710
87112002-05-29 Colin Walters <walters@verbum.org>
8712
8713 * lread.c (Fread_from_string): Don't depend on order of evaluation
8714 for C function parameters.
8715
87162002-05-28 Richard M. Stallman <rms@gnu.org>
8717
8718 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
8719 way for blinked-off state and for a nonselected window.
8720
8721 * window.c (window_scroll_pixel_based): Don't call Fbolp;
8722 instead, see if the new start pos is at beginning of line.
8723
8724 * fileio.c (Fwrite_region): If START is a string, don't
8725 make any annotations.
8726
8727 * eval.c (syms_of_eval): Doc fix.
8728
87292002-05-28 Colin Walters <walters@debian.org>
8730
8731 * emacs.c (USAGE1): Add --no-splash.
8732 (standard_args): Ditto.
8733
87342002-05-28 Colin Walters <walters@gnu.org>
8735
8736 * lread.c (readchar_count): New variable.
8737 (readchar): Increment it.
8738 (unreadchar): Decrement it.
8739 (read_multibyte): Decrement it.
8740 (Vread_with_symbol_positions): New variable.
8741 (Vread_symbol_positions_list): New variable.
8742 (read_internal_start): New function, created from Fread and
8743 Fread_from_string. Handle Vread_symbol_positions_list and
8744 Vread_with_symbol_positions.
8745 (readevalloop, Fread, Fread_from_string): Use it.
8746 (read1): Use readchar_count to add symbol positions to
8747 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
8748 (syms_of_lread): DEFVAR_LISP and initialize them.
8749
8750 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
8751 (substitute_object_recurse, substitute_object_in_subtree)
8752 (substitute_in_interval): Prototype.
8753 (read_multibyte): Return c if it's less than zero.
8754
87552002-05-28 Kim F. Storm <storm@cua.dk>
8756
8757 * fileio.c (Fread_file_name_internal): Added brute-force
8758 speed up for using predicate file-directory-p.
8759
87602002-05-28 Kim F. Storm <storm@cua.dk>
8761
8762 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
8763 New variables.
8764 (syms_of_fileio): DEFVAR_LISP them.
8765 (read_file_name_cleanup): New unwind function.
8766 (Fread_file_name_internal): Only return completions satifying
8767 Vread_file_name_predicate. Temporarily unwind protect and rebind
8768 default-directory while checking completions against the predicate.
8769 (Fread_file_name): Added PREDICATE argument. Specbind it to
8770 Vread_file_name_predicate during completion.
8771 Call Vread_file_name_function to read the file name if non-nil.
8772
8773 * lisp.h (Fread_file_name): Now has 6 args.
8774
8775 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
8776 predicate for Fread_file_name when reading directory name.
8777 Supply Qnil for predicate in other calls to Fread_file_name.
8778
87792002-05-26 Miles Bader <miles@gnu.org>
8780
8781 * term.c (tty_capable_p): New function.
8782 * dispextern.h (tty_capable_p): New function declaration.
8783 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
8784 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
8785
87862002-05-23 Stefan Monnier <monnier@cs.yale.edu>
8787
8788 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
8789 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
8790 (Vwrite_region_annotate_functions): Docstring fix.
8791
87922002-05-23 Kim F. Storm <storm@cua.dk>
8793
8794 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
8795 phys_cursor's hpos is overwritten. This is still not completely
8796 correct, as it doesn't really make sense to use hpos at all to
8797 get the cursor glyph (as that is relative to the width of the
8798 characters on the line, which may have changed during the update).
8799
88002002-05-22 Jason Rumney <jasonr@gnu.org>
8801
8802 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
8803 Lisp_Object.
8804 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
8805 Use modified enumfont_t struct.
8806
8807 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
8808
8809 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
8810 Handle the `hbar' cursor type.
8811 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
8812
8813 * w32fns.c (Qhbar): New variable.
8814 (x_specified_cursor_type): Use it.
8815
88162002-05-21 Ken Raeburn <raeburn@gnu.org>
8817
8818 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
8819 now, when the address is needed.
8820
88212002-05-21 Colin Walters <walters@gnu.org>
8822
8823 * Makefile.in (shortlisp): Add font-core.el.
8824
88252002-05-20 Richard M. Stallman <rms@gnu.org>
8826
8827 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
8828
8829 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
8830 equivalent key bindings here.
8831
88322002-05-20 Ken Raeburn <raeburn@gnu.org>
8833
8834 Change symbol structure to contain a lisp object for the symbol
8835 name:
8836 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
8837 object field named "xname".
8838 (SYMBOL_NAME): New macro.
8839 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
8840 name field.
8841 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
8842 (mark_object, gc_sweep): Use symbol xname field and XSTRING
8843 instead of name field.
8844 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
8845 SYMBOL_NAME instead of XSYMBOL and name field.
8846 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
8847 instead of XSYMBOL and name field.
8848 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
8849 and SYMBOL_NAME instead of XSYMBOL and name field.
8850 * coding.c (Fread_coding_system, code_convert_region1)
8851 (code_convert_string1, code_convert_string_norecord)
8852 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
8853 XSYMBOL and name field.
8854 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
8855 (Fmake_variable_buffer_local, Fmake_local_variable)
8856 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
8857 of XSYMBOL and name field.
8858 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
8859 XSYMBOL and name field.
8860 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
8861 instead of XSYMBOL and name field.
8862 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
8863 XSYMBOL and name field.
8864 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
8865 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
8866 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
8867 instead of XSYMBOL and name field.
8868 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
8869 (parse_modifiers, apply_modifiers, Fevent_convert_list)
8870 (parse_solitary_modifier, Fexecute_extended_command):
8871 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
8872 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
8873 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
8874 of XSYMBOL and name field.
8875 (describe_command, describe_translation): Use SYMBOL_NAME and
8876 assignment instead of XSYMBOL and name field and XSETSTRING.
8877 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
8878 instead of XSYMBOL and name field.
8879 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
8880 name field and XSETSTRING.
8881 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
8882 of XSYMBOL and name field.
8883 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
8884 assignment instead of XSYMBOL and name field and XSETSTRING.
8885 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
8886 XSTRING instead of XSYMBOL and name field.
8887 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
8888 and XSTRING instead of XSYMBOL and name field.
8889 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
8890 and XSTRING instead of XSYMBOL and name field.
8891 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
8892 XSTRING instead of XSYMBOL and name field.
8893 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
8894 of XSYMBOL and name field.
8895 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
8896 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
8897
88982002-05-19 Ken Raeburn <raeburn@gnu.org>
8899
8900 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
8901 and XCDR real rvalues in most configurations.
8902
8903 * buffer.c (fix_overlays_in_range, fix_overlays_before):
8904 Don't take the address of the cdr part of a cons cell; instead, track
8905 the parent cell and call XSETCDR, or set the variable for the head
8906 of the list if we haven't started down the list yet.
8907
89082002-05-19 Richard M. Stallman <rms@gnu.org>
8909
8910 * doc.c (reread_doc_file): Don't ask for confirmation.
8911
89122002-05-18 Jason Rumney <jasonr@gnu.org>
8913
8914 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
8915 (xbm_load_image): Use it.
8916 (xbm_load): Ditto.
8917 (xbm_read_bitmap_data): Reverted to xfns.c version.
8918 From David Ponce <david@dponce.com>.
8919
89202002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
8921
8922 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
8923 2.02 and later.
8924
89252002-05-16 Juanma Barranquero <lektu@terra.es>
8926
8927 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
8928
89292002-05-15 Stefan Monnier <monnier@cs.yale.edu>
8930
8931 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
8932 meaningful test.
8933 (read_char_minibuf_menu_prompt): Fix typo.
8934
89352002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
8936
8937 * eval.c (Fcommandp): Doc fix.
8938
89392002-05-13 Stefan Monnier <monnier@cs.yale.edu>
8940
8941 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
8942 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
8943 (Fset_keymap_parent): Gcpro a bit more.
8944 (access_keymap): Gcpro around meta_map call and around the main loop.
8945 (get_keyelt): Gcpro when following indirect references.
8946 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
8947 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
8948 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
8949 Remove useless ad-hoc remap code.
8950
89512002-05-13 Richard M. Stallman <rms@gnu.org>
8952
8953 * search.c (search_buffer): Give up boyer moore search if inverse
8954 translation change charset_base.
8955
89562002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
8957
8958 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
8959 characters is carried over from the previous block of text, adjust
8960 coding->produced to account for the extra character.
8961
89622002-05-11 Andreas Schwab <schwab@suse.de>
8963
8964 * coding.c (intersection): Keep the elements of the returned list
8965 in the same order as in the first list.
8966
89672002-05-11 Kim F. Storm <storm@cua.dk>
8968
8969 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
8970 only update cmm_size if realloc actually succeeds.
8971 Testing with initial size of 2 elements revealed that using
8972 realloc on GNU/Linux would cause a random trap in xmalloc
8973 later on, so I rewrote the code to use malloc/bcopy/free instead
8974 of realloc.
8975
89762002-05-10 Jason Rumney <jasonr@gnu.org>
8977
8978 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
8979
89802002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
8981
8982 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
8983 parens, to ensure correct evaluation order.
8984
89852002-05-10 Kim F. Storm <storm@cua.dk>
8986
8987 * keymap.c (Vemulation_mode_map_alists): New variable.
8988 (syms_of_keymap): DEFVAR_LISP it.
8989 (current_minor_maps): Process keymap alists in that list before
8990 minor-mode-overriding-map-alist and minor-mode-map-alist.
8991
89922002-05-09 Richard M. Stallman <rms@gnu.org>
8993
8994 * search.c (Freplace_match): Doc fix.
8995
89962002-05-09 Kim F. Storm <storm@cua.dk>
8997
8998 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
8999 Enlarge cursor rectangle drawn around image with non-zero relief.
9000
9001 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
9002 Enlarge cursor rectangle drawn around image with non-zero relief.
9003
9004 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
9005 Enlarge cursor rectangle drawn around image with non-zero relief.
9006
90072002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
9008
9009 * xselect.c (lisp_data_to_selection_data): Don't set selection
9010 type if comes from the Lisp object's car. If the selection
9011 contains a pure ASCII text, always return QSTRING as its type.
9012
90132002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9014
9015 * mac.c (mac-cut-function): Doc fix.
9016
90172002-05-05 Richard M. Stallman <rms@gnu.org>
9018
9019 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
9020
90212002-05-04 Jason Rumney <jasonr@gnu.org>
9022
9023 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
9024 for event-click-count.
9025
9026 * process.c (init_process): Only add server subfeature if we can
9027 use non-blocking I/O.
9028
90292002-05-04 Andrew Choi <akochoi@shaw.ca>
9030
9031 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
9032 repeatedly.
9033
90342002-05-03 Jason Rumney <jasonr@gnu.org>
9035
9036 * process.c (Fmake_network_process): Only support server sockets
9037 when we can make them non-blocking.
9038
9039 * s/ms-w32.h (HAVE_SELECT): Define.
9040
9041 * w32.h (FILE_NDELAY): New flag.
9042
9043 * w32.c (sys_getpeername, fcntl): New functions.
9044 (_sys_read_ahead): Temporarily block on non-blocking sockets.
9045
9046 * w32proc.c: include sys/file.h.
9047
90482002-05-03 Colin Walters <walters@verbum.org>
9049
9050 * callproc.c (Vgame_score_directory): Renamed to
9051 Vshared_game_score_directory.
9052
90532002-04-30 Richard M. Stallman <rms@gnu.org>
9054
9055 * s/gnu.h [emacs]: Include stdio.h.
9056 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
9057
9058 * eval.c (do_autoload): Error if called while preparing to dump.
9059
9060 * fns.c (Frequire): Error if need to load while preparing to dump.
9061
90622002-04-28 Colin Walters <walters@verbum.org>
9063
9064 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
9065 Default to "~/.emacs.d/games".
9066
90672002-04-29 Stefan Monnier <monnier@cs.yale.edu>
9068
9069 * lread.c (openp): Change arg exec_only to predicate.
9070 (build_load_history): Use XCAR/XCDR.
9071 (Flocate_file_internal): New fun.
9072 (syms_of_lread): Defsubr it.
9073 (Fload): Update call to openp.
9074
9075 * lisp.h (openp): Update prototype.
9076
9077 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
9078 * w32proc.c (sys_spawnve):
9079 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
9080 * w32.c (check_windows_init_file):
9081 * sound.c (Fplay_sound_internal):
9082 * process.c (Fstart_process):
9083 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
9084 * mac.c (run_mac_command):
9085 * emacs.c (init_cmdargs):
9086 * callproc.c (Fcall_process): Update call to openp.
9087
9088 * textprop.c (remove_properties): Don't use XCAR without CONSP.
9089
9090 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
9091
90922002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9093
9094 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
9095 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
9096
90972002-04-28 Richard M. Stallman <rms@gnu.org>
9098
9099 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
9100
9101 * eval.c (Fcommandp): New arg for_call_interactively.
9102 * lisp.h (Fcommandp): Declare new arg.
9103
91042002-04-28 Jason Rumney <jasonr@gnu.org>
9105
9106 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
9107
9108 * w32.c (stat, fstat): Use file index information to generate
9109 inodes for directories where available.
9110
91112002-04-26 Andrew Choi <akochoi@shaw.ca>
9112
9113 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
9114 [HAVE_CARBON]: Include Mac object files.
9115
9116 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
9117 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
9118 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
9119 MAC_OSX, and MAC_OS instead of macintosh.
9120
9121 * editfns.c [MAC_OS8]: Include stdio.h.
9122
9123 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
9124
9125 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
9126 Apple Monaco.
9127
9128 * process.c: Declare QCfamily and QCfilter as extern.
9129 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
9130 calling select.
9131
9132 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
9133
9134 * tparam.c [MAC_OSX]: Don't define BC and UP.
9135
9136 * config.in [HAVE_CARBON]: Add.
9137
9138 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
9139 Move here from mac/src and mac/inc.
9140
9141 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
9142
91432002-04-26 Gerd Moellmann <gerd@gnu.org>
9144
9145 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
9146 Compute phys_cursor_width from the x position returned
9147 by x_draw_glyhs, which is cheaper.
9148 (x_display_and_set_cursor): Compute the buffer-local value
9149 of `cursor-in-non-selected-windows' only when needed.
9150
91512002-04-25 Gerd Moellmann <gerd@gnu.org>
9152
9153 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
9154 cursor on a stretch glyph has a width that depends on
9155 x_stretch_cursor_p.
9156
91572002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9158
9159 * abbrev.c (abbrev-start-location): Doc fix.
9160
9161 * indent.c (Fvertical_motion): Fix last change.
9162
91632002-04-25 Gerd Moellmann <gerd@gnu.org>
9164
9165 * indent.c (Fvertical_motion): Move to the start of the line
9166 containing PT before moving up or down.
9167
91682002-04-24 Gerd Moellmann <gerd@gnu.org>
9169
9170 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
9171 case of writing a whole row, more or less analogous to the case of
9172 writing only parts of a row.
9173
9174 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
9175 0 for NO_CURSOR.
9176
9177 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
9178
91792002-04-23 Colin Walters <walters@verbum.org>
9180
9181 * buffer.c (syms_of_buffer): Doc fix.
9182
91832002-04-23 Gerd Moellmann <gerd@gnu.org>
9184
9185 * xterm.c (notice_overwritten_cursor): Handle the special case
9186 of the cursor being in the first blank non-text line at the
9187 end of a window.
9188
9189 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
9190 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
9191 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
9192 bar cursors only, to make phys_cursor_width contain what its name
9193 suggests.
9194 (notice_overwritten_cursor): Consider the cursor image erased if
9195 the output area intersects the cursor image in y-direction.
9196
91972002-04-23 Simon Marshall <simon@gnu.org>
9198
9199 * xfns.c (x_set_mouse_color): Change default for cross_cursor
9200 to XC_hand2.
9201
92022002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9203
9204 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
9205
92062002-04-22 Kim F. Storm <storm@cua.dk>
9207
9208 * textprop.c (remove_properties): Fixed trap for malformed plist.
9209
92102002-04-22 Richard M. Stallman <rms@gnu.org>
9211
9212 * cmds.c (Fend_of_line): Handle intangible text in mid line.
9213
9214 * window.c (make_window): Initialize height_fixed_p,
9215 last_cursor_off_p, and p->cursor_off_p slots.
9216
92172002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9218
9219 * fns.c (use-dialog-box): Doc fix.
9220
92212002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9222
9223 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
9224 variables `row', `i' and `area'.
9225 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
9226 toolkit library.
9227
92282002-04-19 Stefan Monnier <monnier@cs.yale.edu>
9229
9230 * xfaces.c (clear_font_table): Don't free the default font of
9231 a frame even if it's on another display.
9232 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
9233 that could be Qt.
9234
92352002-04-19 Juanma Barranquero <lektu@terra.es>
9236
9237 * indent.c (Fmove_to_column): Remove unused local variable
9238 `next_boundary_byte'.
9239 (current_column_1): Likewise.
9240
92412002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
9242
9243 * msdos.c (Qhbar): New variable.
9244 (syms_of_msdos): Intern and staticpro it.
9245 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
9246 cursor type.
9247
92482002-04-19 Dave Lambert <dlambert@acm.org>
9249
9250 Theses change implement an underscore-like (`hbar') cursor.
9251
9252 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
9253
9254 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
9255 Handle the `hbar' cursor type.
9256 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
9257
9258 * xfns.c (Qhbar): New variable.
9259 (syms_of_xfns): Intern and staticpro it.
9260 (x_specified_cursor_type): Handle `hbar' cursor.
9261
9262 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
9263 not defined.
9264
92652002-04-18 Richard M. Stallman <rms@gnu.org>
9266
9267 * textprop.c (remove_properties): New arg LIST allows scanning
9268 either a list or a plist.
9269 (interval_has_some_properties_list): New function, like
9270 interval_has_some_properties using list instead of plist.
9271 All callers changed.
9272 (Fremove_list_of_text_properties): New function.
9273 (syms_of_textprop): Defsubr it.
9274
92752002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
9276
9277 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
9278
92792002-04-17 Juanma Barranquero <lektu@terra.es>
9280
9281 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
9282
92832002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
9284
9285 * window.c (coordinates_in_window): Don't report on margin area
9286 if its width is zero.
9287
92882002-04-16 Jason Rumney <jasonr@gnu.org>
9289
9290 * w32fns.c (Fx_file_dialog): Decode file name before using.
9291
9292 * w32term.c (construct_drag_n_drop): Likewise.
9293
92942002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
9295
9296 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
9297 store load-history in pure space.
9298
9299 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
9300
93012002-04-16 Stefan Monnier <monnier@cs.yale.edu>
9302
9303 * xterm.c (Qlatin_1, Qutf_8): New vars.
9304 (syms_of_xterm): Initialize them.
9305 (XTread_socket): Eliminate incorrect optimization that tried to avoid
9306 decoding the output of X*LookupString.
9307 Always use latin-1 to decode the output of XLookupString.
9308 Try Xutf8LookupString if XmbLookupString failed.
9309
9310 * region-cache.c (new_region_cache): Use BEG.
9311
93122002-04-16 Gerd Moellmann <gerd@gnu.org>
9313
9314 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
9315 configuration files.
9316 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
9317 returns 0.
9318
93192002-04-15 Andreas Schwab <schwab@suse.de>
9320
9321 * config.in: Regenerated using autoheader.
9322
9323 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
9324 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
9325 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
9326 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
9327 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
9328 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
9329 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
9330 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
9331 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
9332 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
9333 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
9334 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
9335 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
9336 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
9337 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
9338 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
9339 STACK_DIRECTION, now set by autoconf.
9340
93412002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9342
9343 * dispnew.c (marginal_area_string): Sort arguments.
9344
9345 * dispextern.h (marginal_area_string): Add prototype.
9346
93472002-04-13 Richard M. Stallman <rms@gnu.org>
9348
9349 * fileio.c (Finsert_file_contents):
9350 Don't call temp_output_buffer_setup--do just part, by hand.
9351
9352 * coding.c (run_pre_post_conversion_on_str):
9353 Don't call temp_output_buffer_setup--do just part, by hand.
9354
9355 * keyboard.c (command_loop_1): Don't call start_hourglass
9356 or cancel_hourglass when executing a macro.
9357
9358 * marker.c (count_markers): New function.
9359
9360 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
9361 grow without limit. Move recently used elements to the front.
9362
93632002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
9364
9365 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
9366
93672002-04-12 Gerd Moellmann <gerd@gnu.org>
9368
9369 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
9370 rows marginal areas.
9371 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
9372 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
9373
9374 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
9375
93762002-04-12 Dave Love <fx@gnu.org>
9377
9378 * dispnew.c (marginal_area_string): New.
9379
9380 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
9381 (Qleft_margin, Qright_margin): Declare.
9382 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
9383
9384 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
9385 note_mode_line_highlight and extended.
9386
9387 * keyboard.c (Qleft_margin, Qright_margin): Declare.
9388 (make_lispy_event): Deal with mouse events in margins.
9389
93902002-04-12 Stefan Monnier <monnier@cs.yale.edu>
9391
9392 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
9393
9394 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
9395 than deactivating the mark if tmm is set to `lambda'.
9396 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
9397 Use a single event for HELP_EVENT.
9398 (Fexecute_extended_command): Save last_point_position.
9399
94002002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9401
9402 * lisp.h (Fpropertize): Add prototype.
9403
9404 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
9405
94062002-04-10 Colin Walters <walters@verbum.org>
9407
9408 * config.in: Add HAVE_SHARED_GAME_DIR.
9409
9410 * callproc.c: (Vgame_score_directory): New variable.
9411 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
9412
94132002-04-10 Richard M. Stallman <rms@gnu.org>
9414
9415 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
9416
94172002-04-09 Stefan Monnier <monnier@cs.yale.edu>
9418
9419 * minibuf.c (read_minibuf): Use empty_string.
9420 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
9421 Short-circuit the search as soon as it "failed".
9422 (Fall_completions): Allow lambda forms and lists of strings for alist.
9423 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
9424 when require_match is nil.
9425 (Ftest_completion): Rename from `test_completion' and export to elisp.
9426 Call the predicate also when alist is a list.
9427 Obey Vcompletion_regexp_list.
9428 (do_completion, Fminibuffer_complete_and_exit): Use it.
9429 (Fassoc_string): Rename from `assoc_for_completion'.
9430 Allow list of strings as well and export to elisp.
9431
94322002-04-08 Stefan Monnier <monnier@cs.yale.edu>
9433
9434 * puresize.h (BASE_PURESIZE): Increase to 900KB.
9435
94362002-04-08 Juanma Barranquero <lektu@terra.es>
9437
9438 * w32.c (sys_accept): Don't hide variable `s'.
9439
94402002-04-05 Gerd Moellmann <gerd@gnu.org>
9441
9442 * callint.c (Fcall_interactively): Use INTEGERP instead of
9443 NUMBERP for checking Vhistory_length.
9444
94452002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9446
9447 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
9448 Doc fix to reflect it.
9449
94502002-04-04 Richard M. Stallman <rms@gnu.org>
9451
9452 * xdisp.c (display_mode_element): New arg RISKY.
9453 Disregard text props found or specified within a variable
9454 that isn't marked risky-local-variable.
9455 (Qrisky_local_variable): New variable.
9456 (syms_of_xdisp): Init and staticpro it.
9457
94582002-04-04 Stefan Monnier <monnier@cs.yale.edu>
9459
9460 * undo.c (record_point): New fun.
9461 (record_delete, record_insert): Use it.
9462
94632002-04-03 Juanma Barranquero <lektu@terra.es>
9464
9465 * doc.c (Fdocumentation): Add missing parentheses.
9466 (Fdocumentation_property): Likewise.
9467
94682002-04-03 Stefan Monnier <monnier@cs.yale.edu>
9469
9470 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
9471 data is 0, just return nil.
9472
94732002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
9474
9475 * msdos.c (syms_of_msdos): Fix last change with
9476 mouse_autoselect_window.
9477
94782002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9479
9480 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
9481 mouse_autoselect_window.
9482
94832002-04-02 Stefan Monnier <monnier@cs.yale.edu>
9484
9485 * keyboard.c (make_lispy_event): Handle unknown keysyms together
9486 with system-specific keysyms. Use it also for unknown function keys.
9487
9488 * doc.c (reread_doc_file): Return whether reload was attempted.
9489 (Fdocumentation, Fdocumentation_property): Don't try to reload
9490 if the doc is 0 and only ask once.
9491
9492 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
9493
94942002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
9495
9496 * keyboard.c (read_char): If the event was Qselect_window,
9497 restore timer_idleness_start_time to its previous value.
9498
9499 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
9500
95012002-04-01 Stefan Monnier <monnier@cs.yale.edu>
9502
9503 * region-cache.c (new_region_cache): Use BEG.
9504
9505 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
9506 Use BEG and BEG_BYTE.
9507
9508 * doc.c (get_doc_string): Return nil if the location is wrong.
9509 (reread_doc_file): New fun.
9510 (Fdocumentation, Fdocumentation_property):
9511 Call it if get_doc_string fails.
9512 (Fsnarf_documentation): Make it work for a dumped Emacs.
9513
9514 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
9515 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
9516
9517 * charset.c (Fstring): Allow 0 arguments.
9518
9519 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
9520
9521 * process.c (DATAGRAM_CONN_P, list_processes_1)
9522 (Fprocess_datagram_address, Fset_process_datagram_address)
9523 (Fset_network_process_options, server_accept_connection):
9524 Fix some int/Lisp_Object confusions (thank you union types).
9525
95262002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9527
9528 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
9529
9530 * w32term.c: Likewise.
9531 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
9532
9533 * keyboard.c (Qselect_window): New symbol.
9534 (head_table): Use it.
9535 (keys_of_keyboard): Bound select-window event to handle-select-window.
9536 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
9537
9538 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
9539 (last_window): New variable.
9540 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
9541 (note_mouse_movement): Remove reimplemented code in #if 0.
9542 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
9543 Emacs windows.
9544
9545 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
9546
95472002-03-31 Gerd Moellmann <gerd@gnu.org>
9548
9549 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
9550 Callers changed.
9551
95522002-03-30 Richard M. Stallman <rms@gnu.org>
9553
9554 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
9555 loop whenever it stops making progress.
9556
9557 * widget.c (set_frame_size): Don't call change_frame_size.
9558
95592002-03-30 Gerd Moellmann <gerd@gnu.org>
9560
9561 * dispnew.c (direct_output_for_insert):
9562 Call mark_window_display_accurate.
9563
95642002-03-29 Jason Rumney <jasonr@gnu.org>
9565
9566 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
9567
95682002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
9569
9570 * Makefile.in (lread.o): Depend on coding.h.
9571
9572 * lread.c (openp, Fload): Encode the file name before passing it
9573 to `stat', `access', and `emacs_open'.
9574 (openp): GCPRO the encoded file name. Don't recompute Lisp
9575 strings unnecessarily.
9576
95772002-03-29 Kim F. Storm <storm@cua.dk>
9578
9579 * fns.c (Flax_plist_put): Doc fix.
9580
95812002-03-28 Miles Bader <miles@gnu.org>
9582
9583 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
9584
95852002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9586
9587 * process.c (set-network-process-options): Add usage.
9588 (make-network-process): Doc fix.
9589
95902002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
9591
9592 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
9593
95942002-03-26 Richard M. Stallman <rms@gnu.org>
9595
9596 * fns.c (Fsubstring_no_properties): New function.
9597 (Flax_plist_get, Flax_plist_put): New functions.
9598 (syms_of_fns): defsubr them.
9599
9600 * xdisp.c (update_menu_bar): Test only update_mode_lines;
9601 don't test or alter w->update_mode_line.
9602
9603 * window.c (Fdisplay_buffer): Doc fix.
9604
96052002-03-24 Richard M. Stallman <rms@gnu.org>
9606
9607 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
9608
96092002-03-24 Gerd Moellmann <gerd@gnu.org>
9610
9611 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
9612 (Fdefmacro): Handle `(declare ...)'.
9613 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
9614 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
9615
96162002-03-24 Jason Rumney <jasonr@gnu.org>
9617
9618 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
9619 (xbm_file_p): Add prototypes.
9620 (xbm_format, xbm_image_p): Sync with xfns.c.
9621 (reflect_byte): New function.
9622 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
9623 (xbm_load_image): Create bitmaps with a depth of 1.
9624 (init_xfns): Enable XBM images.
9625
96262002-03-23 Jason Rumney <jasonr@gnu.org>
9627
9628 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
9629 correctly. Do not pass up_modifier to keyboard buffer.
9630
9631 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
9632
96332002-03-22 Stefan Monnier <monnier@cs.yale.edu>
9634
9635 * Makefile.in (bootstrapclean): New target.
9636 (bootstrap-temacs, bootstrap-doc): Remove.
9637 (bootstrap-emacs): Use a bog-standard `temacs'.
9638 Don't bother to build a DOC file.
9639
9640 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
9641
9642 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
9643 in temacs even if !CANNOT_DUMP.
9644 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
9645
9646 * alloc.c (check_pure_size): Only output a warning.
9647
96482002-03-22 Jason Rumney <jasonr@gnu.org>
9649
9650 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
9651 supported.
9652
9653 * w32term.c (zv_bits): Declare as short, for word alignment.
9654 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
9655 (syms_of_w32term): Define x-use-underline-position-properties.
9656
9657 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
9658 (clear_image_cache): Block input, fix logic, clear matrices in
9659 all frames that share this cache.
9660
96612002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
9662
9663 * emacs.c (main): Update the Copyright year in the blurb printed
9664 by "emacs --version".
9665
9666 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
9667
9668 * xterm.c (XTread_socket): If XK_ISO_Lock and
9669 XK_ISO_Last_Group_Lock are defined, handle keysyms between
9670 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
9671
96722002-03-21 Kim F. Storm <storm@cua.dk>
9673
9674 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
9675 menu-bar bindings in keymap and local-map properties _are_ used.
9676 But try keymap property first in accordance with 2002-01-03 patch.
9677 Added comment describing why this is not always reliable.
9678 (tool_bar_items): Ditto for tool-bar.
9679
96802002-03-21 Jason Rumney <jasonr@gnu.org>
9681
9682 * w32fns.c (x_clear_image_1): Disable color table code.
9683
96842002-03-21 Kim F. Storm <storm@cua.dk>
9685
9686 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
9687 removed the wrong version of the DEFUN macro; fixed it.
9688
9689 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
9690 Fmember rather than Fmemq).
9691 (Fprovide): Check that subfeatures is a list.
9692
9693 * process.c (QCfeature, QCdatagram): Removed variables.
9694 (QCtype, Qdatagram): New variables.
9695 (network_process_featurep): Removed function.
9696 (Fmake_network_process): Removed :feature check.
9697 Use :type 'datagram instead of :datagram t to create a datagram
9698 socket. This allows us to add other connection types (e.g. raw
9699 sockets) later in a consistent manner.
9700 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
9701 supported subfeatures for feature make-network-process.
9702 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
9703 Intern and staticpro QCtype and Qdatagram.
9704 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
9705
9706 * xfns.c: (QCtype): Remove duplicate declaration and
9707 initialization (is now declared in process.c).
9708
9709 * w32fns.c: (QCtype): Remove duplicate declaration and
9710 initialization (is now declared in process.c).
9711
97122002-03-21 Richard M. Stallman <rms@gnu.org>
9713
9714 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
9715 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
9716 when jumping to `fail' to avoid undoing reg changes in the
9717 last iteration of the loop.
9718 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
9719
9720 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
9721 Depend on process.h.
9722
97232002-03-20 Jason Rumney <jasonr@gnu.org>
9724
9725 Most of the following changes are still conditional on HAVE_IMAGES
9726 which is not set by default on Windows.
9727
9728 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
9729
9730 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
9731 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
9732 (four_corners_best, x_clear_image_1, x_clear_image)
9733 (x_alloc_image_color, postprocess_image)
9734 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
9735 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
9736 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
9737
9738 * w32gui.h (struct XImage): Define.
9739
9740 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
9741 extract mouse co-ordinates.
9742
97432002-03-20 Jason Rumney <jasonr@gnu.org>
9744
9745 * w32.c (init_winsock): Dynamically load new server and UDP
9746 socket functions.
9747 (socket_to_fd): New function.
9748 (sys_socket): Use it.
9749 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
9750 (sys_recvfrom, sys_sendto): New wrapper functions.
9751
9752 * process.c (QCfamily, QCfilter): Remove duplicate declaration
9753 and initialization.
9754
9755 * makefile.w32-in (LIBS): Remove $(WSOCK32).
9756
97572002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
9758
9759 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
9760 Don't use "sun" as a variable, it's a predefined constant on Sun
9761 machines.
9762
97632002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9764
9765 * bytecode.c (Fbyte_code): Revert last change.
9766
97672002-03-19 Kim F. Storm <storm@cua.dk>
9768
9769 * makefile.w32-in (LIBS): Add $(WSOCK32).
9770 From David Ponce <dponce@voila.fr>.
9771
97722002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9773
9774 * process.c (wait_reading_process_input): Move variables `pname'
9775 and `pnamelen' down where they are used.
9776
9777 * bytecode.c (Fbyte_code): Discard unused computed value to
9778 prevent gcc warning.
9779
9780 * lisp.h (Fplist_member): Add prototype.
9781
97822002-03-18 Kim F. Storm <storm@cua.dk>
9783
9784 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
9785 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
9786
9787 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
9788 Remove explicit GNU_LINUX settings for datagram support.
9789
97902002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9791
9792 * process.c (Fmake_network_process): Remove unused variable `sa'.
9793 Doc fix. Add usage:.
9794 (set_socket_options): Remove unused variables `optnum' and `opttype'.
9795
97962002-03-17 Richard M. Stallman <rms@gnu.org>
9797
9798 * xdisp.c (cursor_type_changed): New variable.
9799 (redisplay_internal): Redisplay all windows if cursor_type_changed.
9800 Clear it when clearing windows_or_buffers_changed.
9801 (try_cursor_movement, redisplay_window, try_window_id)
9802 (try_window_reusing_current_matrix): Test cursor_type_changed
9803 along with windows_or_buffers_changed.
9804
9805 * window.h (cursor_type_changed): New variable.
9806
9807 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
9808 not update_mode_lines, and always set it to 1.
9809
9810 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
9811 if no frames needed redrawing.
9812
98132002-03-17 Kim F. Storm <storm@cua.dk>
9814
9815 The following changes add support for network server processes,
9816 datagram connections, and local (unix) sockets.
9817
9818 * process.h (struct Lisp_Process): New member log.
9819 Doc fix: Member command used to indicate stopped network process.
9820 Doc fix: Member childp contains plist for network process.
9821 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
9822
9823 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
9824 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
9825 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
9826 New variables.
9827 (NETCONN1_P): New macro.
9828 (DATAGRAM_SOCKETS): New conditional symbol.
9829 (datagram_address): New array.
9830 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
9831 (status_message): Use concat3.
9832 (Fprocess_status): Add `listen' status to doc string. Return `stop'
9833 for a stopped network process.
9834 (Fset_process_buffer): Update contact plist for network process.
9835 (Fset_process_filter): Ditto. Don't enable input for stopped
9836 network processes. Server must listen, even if filter is t.
9837 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
9838 New functions.
9839 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
9840 (Fprocess_contact): Added KEY argument. Handle datagrams.
9841 (list_processes_1): Optionally show only processes with the query
9842 on exit flag set. Dynamically adjust column widths. Omit tty
9843 column if not needed. Report stopped network processes.
9844 Identify server and datagram network processes.
9845 (Flist_processes): New optional arg `query-only'.
9846 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
9847 (conv_lisp_to_sockaddr, set_socket_options)
9848 (network_process_featurep, unwind_request_sigio): New helper functions.
9849 (Fprocess_datagram_address, Fset_process_datagram_address):
9850 (Fset_network_process_options): New lisp functions.
9851 (Fopen_network_stream): Removed. Now defined in simple.el.
9852 (Fmake_network_process): New lisp function. Code is based on previous
9853 Fopen_network_stream, but heavily reworked with new property list based
9854 argument list, support for datagrams, server processes, and local
9855 sockets in addition to old client-only functionality.
9856 (server_accept_connection): New function.
9857 (wait_reading_process_input): Use it to handle incoming connects.
9858 Do not enable input on a new connection if process is stopped.
9859 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
9860 (send_process): Handle datagram sockets.
9861 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
9862 network process is indicated by setting command field to t .
9863 (Fprocess_send_eof): No-op if datagram connection.
9864 (Fstatus_notify): Don't read input for a stream server socket or a
9865 stopped network process.
9866 (init_process): Initialize datagram_address array.
9867 (syms_of_process): Intern and staticpro new variables, defsubr new
9868 functions.
9869
98702002-03-16 Jason Rumney <jasonr@gnu.org>
9871
9872 * w32fns.c (w32_to_all_x_charsets): Return correct type in
9873 startup case.
9874
98752002-03-16 Richard M. Stallman <rms@gnu.org>
9876
9877 * xdisp.c (redisplay_internal, redisplay_windows):
9878 Use list_of_error to call internal_condition_case_1.
9879 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
9880 so as to catch all errors with no possibility of debugger redisplay.
9881 (list_of_error): New variable.
9882 (syms_of_xdisp): Init and staticpro it.
9883
9884 * print.c (print_object): Delete `\ ' from printed rep of frame.
9885
98862002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
9887
9888 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
9889 until its implementation is fixed.
9890
98912002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9892
9893 * xfns.c (png_load): Remove unused variable `gamma_str'.
9894
98952002-03-14 Richard M. Stallman <rms@gnu.org>
9896
9897 * xfns.c (x_real_positions): Handle failure in XQueryTree.
9898
98992002-03-14 Miles Bader <miles@gnu.org>
9900
9901 * intervals.c (adjust_for_invis_intang): New function.
9902 (set_point_both): Use `adjust_for_invis_intang' to do most of the
9903 work for dealing with invisible+intangible regions. Do so before
9904 and after both forward and backward movements, to handle both
9905 front-sticky and rear-sticky cases.
9906 * textprop.c (text_property_stickiness): Function moved here from
9907 `editfns.c'.
9908 * intervals.h (text_property_stickiness): New declaration.
9909 * editfns.c (char_property_eq): Function removed.
9910 (text_property_stickiness): Function moved to `textprop.c'.
9911
99122002-03-13 Jason Rumney <jasonr@gnu.org>
9913
9914 * config.in: Add STRFTIME_NO_POSIX2.
9915
9916 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
9917 and %OX when underlying strftime does not.
9918
99192002-03-13 Stefan Monnier <monnier@cs.yale.edu>
9920
9921 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
9922 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
9923 line) to avoid annoying flicker.
9924 (xm_scroll_callback): Get rid of the now unnecessary kludge.
9925 (XTread_socket): Mark it static.
9926
9927 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
9928
99292002-03-13 Kim F. Storm <storm@cua.dk>
9930
9931 * puresize.h (BASE_PURESIZE): Increase to 775000.
9932
99332002-03-12 Juanma Barranquero <lektu@terra.es>
9934
9935 * editfns.c (syms_of_editfns): Fix typo.
9936
99372002-03-12 Gerd Moellmann <gerd@gnu.org>
9938
9939 * xsmfns.c: Include stdio.h because termhooks.h needs it.
9940 Include termopt.h for interrupt_input.
9941
99422002-03-11 Andreas Schwab <schwab@suse.de>
9943
9944 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
9945
99462002-03-11 Gerd Moellmann <gerd@gnu.org>
9947
9948 * xterm.c (note_mouse_movement): Put code for
9949 x_autoselect_window_p in #if 0.
9950
9951 * lread.c (Fload): Don't assume that message_with_string uses the
9952 string it is given like a C string.
9953
99542002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9955
9956 * xterm.h (x_session_check_input, x_session_initialize): Declared.
9957
9958 * xterm.c: (XTread_socket): Add call to x_session_check_input and
9959 x_session_have_connection.
9960 (x_initialize): Add call to x_session_initialize.
9961
9962 * termhooks.h (enum event_kind): Add save_session_event.
9963
9964 * keyboard.c: Add Emacs event save_session_event.
9965
9966 * emacs.c (main): Add call to syms_of_xsmfns.
9967
9968 * lisp.h: Declare syms_of_xsmfns as extern.
9969
9970 * config.in: Add HAVE_X_SM.
9971
9972 * Makefile.in (LIBXT): Add -lSM -lICE
9973 if HAVE_X_SM and not USE_X_TOOLKIT.
9974 (XOBJ): New file xsmfns.c added.
9975
9976 * xsmfns.c: New file for X session management.
9977
99782002-03-09 Jason Rumney <jasonr@gnu.org>
9979
9980 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
9981 read-only when setting modified time.
9982
99832002-03-08 Gerd Moellmann <gerd@gnu.org>
9984
9985 * xdisp.c (move_it_vertically_backward): At the end of the function,
9986 when moving forward by lines, treat terminal frames specially.
9987
9988 * keyboard.c (echo_char): Make sure to add a separator between
9989 keys even if echo_dash hasn't been called.
9990
9991 * xdisp.c: Use new string macros.
9992 (update_echo_area): Pass number of bytes to message3 instead of
9993 number of chars.
9994 (set_message_1): Don't access a string's size_byte directly.
9995 (decode_mode_spec_coding): Use number of bytes of eoltype string
9996 instead number of chars.
9997
9998 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
9999
100002002-03-08 Juanma Barranquero <lektu@terra.es>
10001
10002 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
10003 24-bit.
10004
100052002-03-06 Jason Rumney <jasonr@gnu.org>
10006
10007 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
10008
100092002-03-06 Gerd Moellmann <gerd@gnu.org>
10010
10011 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
10012 (cancel_echoing, echo_length, echo_truncate): Changed to
10013 work with new kboard definition.
10014 (echo_now): Use message3_nolog instead of message2_nolog.
10015
10016 * alloc.c (mark_kboards): Mark echo_string.
10017
10018 * keyboard.h (ECHOBUFSIZE): Removed.
10019 (struct kboard): Member echoptr removed, member echobuf renamed
10020 to echo_string.
10021
10022 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
10023 message3 instead of message2 to display the message using STRING's
10024 text properties.
10025
100262002-03-05 Andreas Schwab <schwab@suse.de>
10027
10028 * xdisp.c (hscroll_margin): Change to EMACS_INT.
10029
100302002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
10031
10032 * frame.c (default-frame-alist): Explain that setting it doesn't
10033 affect existing frames.
10034
100352002-03-05 Stefan Monnier <monnier@cs.yale.edu>
10036
10037 * indent.c (skip_invisible): Fix my brain fart.
10038
10039 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
10040
100412002-03-04 Stefan Monnier <monnier@cs.yale.edu>
10042
10043 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
10044 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
10045 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
10046 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
10047 and variables to use EMACS_INT instead of just int.
10048
10049 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
10050
100512002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
10052
10053 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
10054 environment, pass it down with corrected value.
10055
100562002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10057
10058 * lread.c (read_filtered_event): Do not call start_hourglass
10059 before returning.
10060
100612002-03-04 Juanma Barranquero <lektu@terra.es>
10062
10063 * w32term.c (x_display_and_set_cursor): Fix typo.
10064
100652002-03-03 Richard M. Stallman <rms@gnu.org>
10066
10067 * fileio.c (Fmake_temp_name): Doc fix.
10068
100692002-03-03 Gary Wong <gtw@gnu.org>
10070
10071 * termcap.c [!emacs]: Replace ospeed for building standalone
10072 libtermcap, for binary compatibility.
10073
10074 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
10075
100762002-03-03 Richard M. Stallman <rms@gnu.org>
10077
10078 * xrdb.c (file_p): Rename arg `path' to `filename'.
10079
10080 * abbrev.c (Fexpand_abbrev): Increment plist as use count
10081 only if it is an integer.
10082
10083 * xfns.c (png_load): Set screen_gamma based on f->gamma.
10084 If png_get_sRGB gives an answer, call png_set_gamma
10085 using the default image gamma value.
10086
10087 * lread.c (read1): When reading from a file, default string to
10088 multibyte only if it has some multibyte characters.
10089
10090 * print.c (print_object): Output multibyte chars 128...255
10091 using \x even if ! print_escape_multibyte.
10092
10093 * xdisp.c (display_mode_element): Move the places where
10094 bytepos, charpos, this, and lisp_string are set.
10095 Use lisp_string to set bytepos.
10096
10097 * xdisp.c (redisplay_internal):
10098 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
10099
10100 * xdisp.c (display_mode_element): Merge properties specified with
10101 :propertize onto those that come with the string.
10102
101032002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
10104
10105 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
10106 automatic-hscrolling. Users changed.
10107 <hscroll-margin>: Renamed from automatic-hscroll-margin.
10108 Users changed.
10109 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
10110
101112002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
10112
10113 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
10114
101152002-03-02 Kim F. Storm <storm@cua.dk>
10116
10117 * window.c (Fminibuffer_selected_window): New function.
10118 (syms_of_window): Defsubr it.
10119
101202002-03-01 Kim F. Storm <storm@cua.dk>
10121
10122 * window.h (struct window): New member phys_cursor_width.
10123
10124 * window.c (make_window, replace_window): Init phys_cursor_width.
10125
10126 * xterm.c (x_display_and_set_cursor): Blink box cursor using
10127 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
10128
10129 * w32term.c (x_display_and_set_cursor): Blink box cursor using
10130 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
10131
10132 * lisp.h (GCPRO6): New macro.
10133
10134 * process.c (Fopen_network_stream): Use GCPRO6.
10135
101362002-03-01 Kim F. Storm <storm@cua.dk>
10137
10138 * process.c (Qconnect, Qfailed): New variables.
10139 (syms_of_process): Intern and staticpro them.
10140 (Fprocess_status): Document connect and failed return values.
10141 [NON_BLOCKING_CONNECT]: New conditional.
10142 (connect_wait_mask, num_pending_connects): New variables.
10143 (status_message): Convert Qfailed status.
10144 (Fopen_network_stream): Added support for non-blocking connect.
10145 New optional args: filter, sentinel, non_blocking. Doc updated.
10146 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
10147 (deactivate_process): Handle pending non-blocking connect.
10148 (wait_reading_process_input): Poll for status of non-blocking
10149 connects. Exec sentinel directly when connect succeeds.
10150 (status_notify): Don't read process output if not yet connected.
10151
101522002-02-28 Kim F. Storm <storm@cua.dk>
10153
10154 * window.c: (minibuf_selected_window): Renamed from
10155 Vminibuf_selected_window. Users changed.
10156 (syms_of_window): Staticpro it.
10157
101582002-02-26 Kim F. Storm <storm@cua.dk>
10159
10160 The following changes add a new Vminibuf_selected_window variable
10161 which is similar to Vminibuf_scroll_window, but which is only set
10162 on entry to the minibuffer (from a non-minibuffer window):
10163
10164 * window.c: (Vminibuf_selected_window): New variable.
10165 (struct save_window_data): New member minibuf_selected_window.
10166 (Fset_window_configuration): Restore Vminibuf_selected_window.
10167 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
10168 Set minibuf_scroll_window member to nil if minibuf_level is 0.
10169 (compare_window_configurations): Compare minibuf_selected_window.
10170
10171 * window.h: (Vminibuf_selected_window): Declare extern.
10172
10173 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
10174 entry to minibuffer or on entry from a non-minibuffer window.
10175
10176 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
10177 Vminibuf_selected_window instead of Vminibuf_scroll_window.
10178
10179 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
10180 instead of Vminibuf_scroll_window when deciding in which window
10181 the region should be highlighted. Consequently, the region remains
10182 highlighteded even when a completion buffer is also displayed.
10183
101842002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
10185
10186 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
10187
10188 * xselect.c (Qcompound_text_with_extensions): Renamed from
10189 Qcompound_text_no_extensions.
10190 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
10191
101922002-02-26 Juanma Barranquero <lektu@terra.es>
10193
10194 * w32proc.c (syms_of_ntproc): Doc fix.
10195
101962002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10197
10198 * intervals.h: Include "dispextern.h" unconditionally.
10199
102002002-02-24 Jason Rumney <jasonr@gnu.org>
10201
10202 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
10203 and disp-table.elc.
10204 (lisp): Add emacs-lisp/backquote.elc.
10205
102062002-02-24 Kim F. Storm <storm@cua.dk>
10207
10208 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
10209 The validation of the event type was too strict as it didn't
10210 allow string events; buffer names are used in bindings for
10211 menu-bar-select-buffer (see `menu-bar-update-buffers').
10212
102132002-02-23 Kim F. Storm <storm@cua.dk>
10214
10215 The following changes rework my patch of 2002-02-06 which
10216 added command remapping by entering the commands directly into
10217 the keymaps. Now, command remapping uses an explicit `remap'
10218 prefix in the keymaps, i.e. [remap COMMAND].
10219
10220 * keymap.c (Qremap, remap_command_vector): New variables.
10221 (is_command_symbol): Removed function.
10222 (Fdefine_key): No longer accept a symbol for KEY.
10223 Added validation of [remap COMMAND] argument for KEY.
10224 The DEF is no longer required to be a symbol when remapping a command.
10225 (Fremap_command): New function to remap command through keymaps.
10226 (Flookup_key): Perform command remapping initiated by
10227 Fremap_command directly for speed.
10228 (Fkey_binding): Use Fremap_command for command remapping.
10229 (where_is_internal): Handle new command remapping representation.
10230 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
10231 staticpro them. Defsubr Fremap_command.
10232
10233 * keymap.h (Fremap_command): Declare extern.
10234 (is_command_symbol): Remove extern.
10235
10236 * keyboard.c (command_loop_1): Use Fremap_command for command
10237 remapping; now try command remapping for all symbols.
10238
102392002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
10240
10241 * coding.h (run_pre_post_conversion_on_str): Add prototype.
10242
102432002-02-23 Jason Rumney <jasonr@gnu.org>
10244
10245 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
10246 on the string before encoding it.
10247 (Fw32_get_clipboard_data): Run post-read-conversion on the string
10248 after decoding it.
10249
10250 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
10251
102522002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10253
10254 * w32term.c (enter_timestamp): Remove unused static variable to
10255 prevent warning.
10256
10257 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
10258
102592002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
10260
10261 * w16select.c (Fw16_get_clipboard_data): Fix last change.
10262
10263 * xselect.c (selection_data_to_lisp_data): Fix last change.
10264
102652002-02-22 Jason Rumney <jasonr@gnu.org>
10266
10267 * w32term.h (struct w32_output): New member menu_command_in_progress.
10268
10269 * w32menu.c (menubar_selection_callback): Free the menu and
10270 clear the menu_command_in_progress flag.
10271
10272 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
10273 (menu_free_timer): New variable.
10274 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
10275 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
10276 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
10277 menu command is in progress.
10278 <WM_COMMAND>: Set the menu_command_in_progress flag.
10279 Kill any menu_free_timer that is running.
10280
10281 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
10282 Call ExtTextOutA rather than ExtTextOut.
10283
102842002-02-22 Eli Zaretskii <eliz@gnu.org>
10285
10286 * puresize.h (BASE_PURESIZE): Increase to 755000.
10287
102882002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
10289
10290 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
10291 on the string before encoding it.
10292 (Fw16_get_clipboard_data): Run post-read-conversion on the string
10293 after decoding it.
10294
102952002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
10296
10297 Support for ICCCM Extended Segments in X selections:
10298
10299 * xselect.c <Qcompound_text_no_extensions>: New variable.
10300 (syms_of_xselect): Intern and staticpro it.
10301 (selection_data_to_lisp_data): Run post-read-conversion on decoded
10302 selection text.
10303 (lisp_data_to_selection_data): If next-selection-coding-system is
10304 compound-text-no-extensions, set the type of selection to be
10305 compound-text.
10306
10307 * xterm.h (x_encode_text): Update prototype.
10308
10309 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
10310 callers changed. If SELECTIONP is non-zero, run the
10311 pre-write-conversion function before encoding the selection text.
10312
103132002-02-21 Kim F. Storm <storm@cua.dk>
10314
10315 * frame.c (syms_of_frame): Change mouse-highlight default to t.
10316
10317 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
10318 Correct composing of language-change event.
10319
103202002-02-20 Kim F. Storm <storm@cua.dk>
10321
10322 * keyboard.c (menu_bar_items): Don't include keymap or local-map
10323 bindings at PT when building menu (the menu is not updated often
10324 enough for this to work reliable).
10325 (tool_bar_items): Likewise.
10326 (current_active_maps): Removed unused (and buggy) function.
10327
103282002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10329
10330 * xfns.c (gif_load): Use correct width and height for GIF images.
10331
103322002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
10333
10334 * floatfns.c (Fatan): Accept an optional second arg and call
10335 atan2 if passed 2 args.
10336
103372002-02-18 Jason Rumney <jasonr@gnu.org>
10338
10339 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
10340
103412002-02-17 Jason Rumney <jasonr@gnu.org>
10342
10343 * w32term.c (x_autoselect_window_p): New variable.
10344 (syms_of_w32term): DEFVAR_BOOL and initialize it.
10345 (note_mouse_movement): Use it.
10346
10347 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
10348
10349 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
10350
10351 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
10352 New variables.
10353 (syms_of_w32fns): Intern and staticpro them.
10354 (x_frame_parms) <"fullscreen">: New parameter.
10355 (x_fullscreen_move, x_set_fullscreen): New functions.
10356 (x_set_frame_parameters): Support Qfullscreen.
10357 (x_real_positions): Save x/y_pixels_diff frame params.
10358 (x_figure_window_size): Support full-screen frames.
10359 (Fx_create_frame): Default the fullscreen parameter.
10360
10361 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
10362 (x_fullscreen_adjust): New functions.
10363 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
10364 fullscreen. Call x_check_fullscreen_move, and set the
10365 want_fullscreen member of output_data.w32
10366 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
10367
10368 * w32term.h: New enum for FULLSCREEN_* constants.
10369 (struct w32_output): New members want_fullscreen, x_pixels_diff,
10370 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
10371 (x-fullscreen-adjust): New prototype.
10372
103732002-02-17 Kim F. Storm <storm@cua.dk>
10374
10375 * frame.c: (Vmouse_highlight): New variable.
10376 (syms_of_frame): DEFVAR_LISP it.
10377
10378 * frame.h: (Vmouse_highlight): Declare extern.
8a8e19a3 10379
048addec 10380 * xterm.h (struct x_display_info): Add mouse_face_hidden.
8a8e19a3 10381
048addec
JD
10382 * xterm.c (disable_mouse_highlight): Removed variable.
10383 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
10384 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
10385 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
10386 and on after keyboard input.
10387 (x_term_init): Initialize mouse_face_hidden.
8a8e19a3 10388
048addec 10389 * msdos.h (struct display_info): Add mouse_face_hidden.
8a8e19a3 10390
048addec
JD
10391 * msdos.c (disable_mouse_highlight): Removed variable.
10392 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
10393 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
10394 (internal_terminal_init): Initialize mouse_face_hidden.
10395 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
10396 and on after keyboard input.
4f1b1854 10397
048addec 10398 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
4f1b1854 10399
048addec
JD
10400 * w32term.c (disable_mouse_highlight): Removed variable.
10401 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
10402 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
10403 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
10404 and on after keyboard input.
10405 (w32_initialize_display_info): Initialize mouse_face_hidden.
4f1b1854 10406
048addec 104072002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
4f1b1854 10408
048addec
JD
10409 * msdos.c (last_mouse_window): New variable.
10410 (dos_rawgetc): Fix last change--if the mouse is in the same window
10411 as recorded in last_mouse_window, don't select this window.
5cb6905d 10412
048addec 10413 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
5cb6905d 10414
048addec
JD
10415 * msdos.c (x_autoselect_window_p): New variable.
10416 (syms_of_msdos): Defvar it.
10417 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
10418 which the last mouse movement occured, unless it is already selected.
437dfb9f 10419
048addec
JD
10420 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
10421 New variables.
10422 (syms_of_xdisp): DEVFAR them.
10423 (hscroll_window_tree): Use automatic_hscroll_margin and
10424 Vautomatic_hscroll_step to compute the amount of window scrolling.
437dfb9f 10425
048addec 104262002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9f696a00 10427
048addec
JD
10428 * xterm.c (x-autoselect-window): New variable.
10429 (note_mouse_movement): Use it.
9f696a00 10430
048addec 10431 * keyboard.c: Do not include "systime.h" twice.
d57966d7 10432
048addec 104332002-02-15 Andreas Schwab <schwab@suse.de>
d57966d7 10434
048addec 10435 * puresize.h (BASE_PURESIZE): Increase to 9/5.
d57966d7 10436
048addec 10437 * alloc.c (NSTATICS): Increase to 1280.
74779f52 10438
048addec 104392002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
74779f52 10440
048addec 10441 * alloc.c (NSTATICS): Bump to 1026.
a474d59c 10442
048addec
JD
10443 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
10444 (Vx_super_keysym): New variables.
10445 (syms_of_xterm): DEFVAR_LISP them.
10446 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
10447 variables to determine which keys to use for the various modifiers.
a474d59c 10448
048addec 104492002-02-13 Kim F. Storm <storm@cua.dk>
fbb70ad9 10450
048addec
JD
10451 * window.c: (Vmode_line_in_non_selected_windows): Removed.
10452 (mode_line_in_non_selected_windows): New variable.
10453 (syms_of_window): DEFVAR_BOOL it.
fbb70ad9 10454
048addec
JD
10455 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
10456 Use mode_line_in_non_selected_windows.
10457 (mode_line_in_non_selected_windows): Declare extern.
10458 (Vmode_line_in_non_selected_windows): Removed extern.
2d10309f 10459
048addec 104602002-02-13 Richard M. Stallman <rms@gnu.org>
2d10309f 10461
048addec
JD
10462 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
10463 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
10464 (Fclear_this_command_keys): Doc fixes.
2d10309f 10465
048addec
JD
10466 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
10467 (update_face_from_frame_parameter): Increment face_change_count
10468 and windows_or_buffers_changed to force redisplay using changed faces.
7f2cddf3 10469
048addec
JD
10470 * xdisp.c (QCpropertize): New variable.
10471 (mode_line_proptrans_alist): New variable.
10472 (display_mode_element): New arg PROPS; all calls changed.
10473 Implement this, for strings.
10474 Handle literal output of strings by sharing the
10475 main-line code for strings, using local var `literal'.
10476 Handle :propertize feature.
10477 (syms_of_xdisp): Initialze and staticpro QCpropertize and
10478 mode_line_proptrans_alist.
0b1e6b54 10479
048addec 104802002-02-11 Kim F. Storm <storm@cua.dk>
7f2cddf3 10481
048addec
JD
10482 * window.c: (Vmode_line_in_non_selected_windows): New variable.
10483 (syms_of_window): DEFVAR_LISP it.
7f2cddf3 10484
048addec
JD
10485 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
10486 (CURRENT_MODE_LINE_FACE_ID): Use it.
10487 (Vmode_line_in_non_selected_windows): Declare extern.
e17144de 10488
048addec
JD
10489 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
10490 to get mode line face.
e17144de 10491
048addec 104922002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 10493
048addec
JD
10494 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
10495 variables; cus-start.el doesn't need them anymore.
44368f8f 10496
048addec 104972002-02-09 Kim F. Storm <storm@cua.dk>
f884b6f4 10498
048addec
JD
10499 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
10500 reduction. This fixes a display problem where stray newlines were
10501 inserted in the window (corrected by C-l). Clarified code (IMHO).
6637c996 10502
048addec 105032002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 10504
048addec 10505 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
6637c996 10506
048addec 10507 * xdisp.c (display_mode_lines): Fix last change.
453c5510 10508
048addec 105092002-02-09 Jason Rumney <jasonr@gnu.org>
453c5510 10510
048addec
JD
10511 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
10512 match each other.
10513 (w32_load_system_font): Prevent Cleartype fonts from loading.
10514 (Fx_show_tip): Ensure tip frames are above other topmost windows.
d1d070e3 10515
048addec 105162002-02-09 Kim F. Storm <storm@cua.dk>
d1d070e3 10517
048addec
JD
10518 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
10519 (CURRENT_MODE_LINE_HEIGHT): Use it.
10520 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 10521
048addec
JD
10522 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
10523 (pos_visible_p, handle_face_prop): Likewise.
10524 (display_mode_lines): Likewise, but for the real selected window.
10525 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 10526
048addec
JD
10527 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
10528 in non-selected windows.
10529 (realize_basic_faces): Realize it.
10530 (syms_of_term): Intern and staticpro it.
308dd672 10531
048addec 105322002-02-08 Kim F. Storm <storm@cua.dk>
edde72f6 10533
048addec
JD
10534 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
10535 Changed mail addresses to emacs-devel@gnu.org.
308dd672 10536
048addec 105372002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
3c1e6b46 10538
048addec
JD
10539 * fileio.c (Fsubstitute_in_file_name): If the file name includes
10540 ~user, and there's no such user, don't discard everything before ~user.
03950b5b 10541
048addec 10542 * floatfns.c (Fround): Doc fix.
3c1e6b46 10543
048addec 105442002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c1e11810 10545
048addec 10546 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
c1e11810 10547
048addec 105482002-02-07 Stefan Monnier <monnier@cs.yale.edu>
1996baee 10549
048addec 10550 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
1996baee 10551
048addec 105522002-02-07 Kim F. Storm <storm@cua.dk>
0065bb74 10553
048addec
JD
10554 * keymap.c (where_is_internal): Only check whether definition is
10555 remapped if it fulfills is_command_symbol.
0065bb74 10556
048addec 105572002-02-07 Andreas Schwab <schwab@suse.de>
0065bb74 10558
048addec 10559 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
b5cb6072 10560
048addec 10561 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
b5cb6072 10562
048addec 105632002-02-06 Kim F. Storm <storm@cua.dk>
15fff01d 10564
048addec
JD
10565 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
10566 defining command remapping. Doc updated.
10567 (Flookup_key): Remap command through keymap if KEY is a symbol.
10568 (is_command_symbol): New function.
10569 (Fkey_binding): Use it. New optional argument NO-REMAP.
10570 Doc updated. Callers changed. Perform command remapping via
10571 recursive call unless that arg is non-nil.
10572 (where_is_internal): New argument no_remap. Callers changed.
10573 Call recursively to find original key bindings for a remapped
10574 comand unless that arg is non-nil.
10575 (Fwhere_is_internal): New optional argument NO-REMAP.
10576 Doc updated. Callers changed. Pass arg to where_is_internal.
0065bb74 10577
048addec
JD
10578 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
10579 (is_command_symbol): Added prototype.
0d8466cc 10580
048addec
JD
10581 * keyboard.c (Vthis_original_command): New variable.
10582 (syms_of_keyboard): DEFVAR_LISP it.
10583 (command_loop_1): Set it, and perform command remapping.
15fff01d 10584
048addec 105852002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2fae9111 10586
048addec 10587 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
2d6c1fc0 10588
048addec 105892002-02-06 Jason Rumney <jasonr@gnu.org>
07025a55 10590
048addec 10591 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
07025a55 10592
048addec 105932002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
07025a55 10594
048addec 10595 * charset.c (get_charset_id): Use if-else instead of ?:.
3a232704 10596
048addec 105972002-02-06 Richard M. Stallman <rms@gnu.org>
539e92ad 10598
048addec 10599 * filelock.c (S_ISLNK): Define if not defined.
3a232704 10600
048addec 106012002-02-03 Richard M. Stallman <rms@gnu.org>
0cb8bb48 10602
048addec 10603 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
539e92ad 10604
048addec
JD
10605 * lread.c (read1): Redesign strategy for force_multibyte and
10606 force_singlebyte. Now is_multibyte records whether read_buffer
10607 is multibyte. Encountering any multibyte character makes it so.
4e02881b 10608
048addec 106092002-02-02 Stefan Monnier <monnier@cs.yale.edu>
4e02881b 10610
048addec
JD
10611 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
10612 with the same sequence, map that sequence to f10 rather than f0.
1ab964d7 10613
048addec 106142002-02-03 Andreas Schwab <schwab@suse.de>
1ab964d7 10615
048addec
JD
10616 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
10617 latter never being defined on GNU/Linux.
749f499f 10618
048addec 106192002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
749f499f 10620
048addec
JD
10621 * xfaces.c (realize_default_face): Don't set the weight and slant of
10622 the default face to Qnormal, unless these attributes are unspecified.
b5d9aaba 10623
048addec 106242002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3a232704 10625
048addec
JD
10626 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
10627 Call cancel_hourglass unconditionally.
d0fd26dd 10628
048addec
JD
10629 * eval.c (Fsignal): Remove duplicated declaration of
10630 the variable `display_hourglass_p'.
b4c45162 10631
048addec 106322002-01-31 Richard M. Stallman <rms@gnu.org>
d0fd26dd 10633
048addec 10634 * editfns.c (region_limit): Nicer error message.
c95eaa61 10635
048addec
JD
10636 * coding.c (decode_composition_emacs_mule):
10637 Give up if NCOMPONENT gets too large to index `component'.
c95eaa61 10638
048addec
JD
10639 * callint.c (check_mark): New arg to specify clearer error message.
10640 Callers changed.
c95eaa61 10641
048addec 106422002-01-27 Richard M. Stallman <rms@gnu.org>
c95eaa61 10643
048addec 10644 * minibuf.c (Fcompleting_read): Doc fix.
c95eaa61 10645
048addec 106462002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c95eaa61 10647
048addec
JD
10648 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
10649 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
10650 Fix doc-strings.
c95eaa61 10651
048addec 106522002-01-26 Richard M. Stallman <rms@gnu.org>
c95eaa61 10653
048addec 10654 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
c95eaa61 10655
048addec
JD
10656 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
10657 and scroll_up_aggressively.
c95eaa61 10658
048addec 106592002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
31877e0a 10660
048addec 10661 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
31877e0a 10662
048addec 106632002-01-25 Stefan Monnier <monnier@cs.yale.edu>
e2c3786a 10664
048addec
JD
10665 * textprop.c (Fnext_property_change, Fnext_single_property_change)
10666 (Fprevious_property_change, Fprevious_single_property_change):
10667 Stay within the narrowed-buffer boundaries.
e2c3786a 10668
048addec 106692002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
c513fc03 10670
048addec
JD
10671 * term.c (Ftty_display_color_cells): New function.
10672 (syms_of_term): Defsubr it.
10673 (Ftty_display_color_cells, Ftty_display_color_p): Change the
10674 argument name to DISPLAY. Doc fix.
bf794306 10675
048addec
JD
10676 * dispextern.h: Add prototype for set_tty_color_mode and
10677 tty_setup_colors.
bf794306 10678
048addec 106792002-01-24 Jason Rumney <jasonr@gnu.org>
bf794306 10680
048addec
JD
10681 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
10682 If region left to draw is not what was expected, mark the frame as
10683 garbaged.
62582985 10684
048addec
JD
10685 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
10686 Combine the regions returned by BeginPaint and GetUpdateRect.
c513fc03 10687
048addec 106882002-01-23 Jason Rumney <jasonr@gnu.org>
3509a04c 10689
048addec
JD
10690 * w32term.c (x_update_window_begin): Only hide caret if
10691 w32_use_visible_system_caret is set.
10692 (x_update_window_end): Only show caret if
10693 w32_use_visible_system_caret is set.
10694 (syms_of_w32term): Handle SystemParametersInfo call failing.
3509a04c 10695
048addec 10696 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
3509a04c 10697
048addec 106982002-01-22 Richard M. Stallman <rms@gnu.org>
3509a04c 10699
048addec
JD
10700 * unexelf.c (unexec): Define n so as to cause compilation error
10701 for the code where people have often written n instead of nn.
1e9a6186 10702
048addec 10703 * .gdbinit (hookpost-run): Defined.
1e9a6186 10704
048addec 107052002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e4e34e31 10706
048addec 10707 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
e4e34e31 10708
048addec 107092002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4521d1fc 10710
048addec
JD
10711 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
10712 if fullscreen is being set.
7c75be36 10713
048addec 107142002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4521d1fc 10715
048addec
JD
10716 * minibuf.c (Fminibuffer_contents)
10717 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
10718 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
4521d1fc 10719
048addec 107202002-01-21 Richard M. Stallman <rms@gnu.org>
4521d1fc 10721
048addec 10722 * window.c (check_frame_size): Fix minimum height calculation.
93dec019 10723
048addec 107242002-01-20 Ken Raeburn <raeburn@gnu.org>
93dec019 10725
048addec
JD
10726 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
10727 height before comparison.
10728 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
905cc05a 10729
048addec 107302002-01-20 Jason Rumney <jasonr@gnu.org>
2ed06289 10731
048addec
JD
10732 * w32term.c (w32_system_caret_width): Remove.
10733 (w32_use_visible_system_caret): New user flag.
10734 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
10735 Windows reports a screen reader running.
10736 (x_update_window_begin): Hide the system caret.
10737 (x_update_window_end): Show the system caret.
10738 (x_display_and_set_cursor): Don't draw a cursor when
10739 w32_use_visible_system_caret is set. Do not adjust width.
0e79d667 10740
048addec
JD
10741 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
10742 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
10743 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
10744 the user requests it. Use system default width when creating.
10745 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
0e79d667 10746
048addec
JD
10747 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
10748 New window messages.
905cc05a 10749
048addec 107502002-01-20 Richard M. Stallman <rms@gnu.org>
82a7ab23 10751
048addec 10752 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
d75bec6a 10753
048addec 107542002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
52dcb476 10755
048addec 10756 * doprnt.c (doprnt1): Fix typos in error call.
82a7ab23 10757
048addec 107582002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
82a7ab23 10759
048addec 10760 * unexelf.c (unexec) [__sgi]: Support the .got sections.
82a7ab23 10761
048addec 107622002-01-20 Jason Rumney <jasonr@gnu.org>
4d0fa4f3 10763
048addec
JD
10764 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
10765 that Windows returns. If a double check fails, try to guess how
10766 ExtTextOut is going to act.
4d0fa4f3 10767
048addec
JD
10768 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
10769 in place of stricmp.
10770 (w32_list_synthesized_fonts): Removed.
10771 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
10772 (struct enumfont_t): New element; list.
10773 (enum_font_cb2): List all style and charset variations of a font.
10774 (Fw32_select_font): New optional argument; include_proportional.
10775 Exclude vertical fonts. Exclude proportional fonts unless
10776 include_proportional is non-nil.
10777 (w32_enable_synthesized_fonts): Change to a boolean.
10778 (Fw32_send_sys_command): Doc fix.
493faf20 10779
048addec 107802002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
493faf20 10781
048addec
JD
10782 * dispnew.c (update_frame): Move the variable `tem' to the block
10783 where it is used.
4971e491 10784
048addec 107852002-01-19 Jason Rumney <jasonr@gnu.org>
4971e491 10786
048addec
JD
10787 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
10788 call to face-set-after-frame-default.
4971e491 10789
048addec 107902002-01-18 Richard M. Stallman <rms@gnu.org>
d911a0fa 10791
048addec
JD
10792 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
10793 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
d911a0fa 10794
048addec 107952002-01-17 Richard M. Stallman <rms@gnu.org>
d911a0fa 10796
048addec
JD
10797 * window.c (enlarge_window): When exceeding size of parent,
10798 directly delete all the siblings instead of trying to resize it.
201c831a 10799
048addec 108002002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
201c831a 10801
048addec 10802 * term.c (set_tty_color_mode): Remove unused variable `tem'.
201c831a 10803
048addec 108042002-01-16 Henrik Enberg <henrik@enberg.org>
34e39c95 10805
048addec 10806 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
34e39c95 10807
048addec 108082002-01-16 Kim F. Storm <storm@cua.dk>
d77fbc16 10809
048addec
JD
10810 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
10811 is invisible. This can happen if cursor is on top line of a
10812 window, and we switch to a buffer with a header line.
d77fbc16 10813
048addec 10814 * w32term.c (x_erase_phys_cursor): Ditto.
61e3b944 10815
048addec 108162002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
61e3b944 10817
048addec
JD
10818 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
10819 `dont_resize' only when used.
61e3b944 10820
048addec 10821 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
70da46c3 10822
048addec 108232002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
70da46c3 10824
048addec
JD
10825 * xdisp.c (display_mode_element): When computing charpos, depend
10826 on multibyteness of elt, not the text in field.
8af01033 10827
048addec 108282002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8af01033 10829
048addec
JD
10830 * buffer.c (Fkill_all_local_variables):
10831 Increment `update_mode_lines' only once.
7363986a 10832
048addec 108332002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7363986a 10834
048addec
JD
10835 * lisp.h (adjust_after_replace_noundo)
10836 (Fupdate_coding_systems_internal): Add prototypes.
d9e6c4b1 10837
048addec 10838 * sound.c (Fplay_sound): Initialize header_size also for :data case.
d20fc48a 10839
048addec 108402002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
d9e6c4b1 10841
048addec
JD
10842 Support for the --color command-line argument and tty-color-mode
10843 frame parameter:
f1a85b89 10844
048addec
JD
10845 * term.c (tty_default_color_capabilities, tty_setup_colors)
10846 (set_tty_color_mode): New functions.
10847 (term_init): Call tty_default_color_capabilities.
10848 (Qtty_color_mode_alist): New variable.
10849 (syms_of_term): Intern and staticpro it.
f1a85b89 10850
048addec
JD
10851 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
10852 frames.
10853 (do_switch_frame): For termcap frames, switch the tty
10854 color mode as specified by the frame's parameters.
10855 (Qtty_color_mode): New variable.
10856 (syms_of_frame): Intern and staticpro it.
3a62677f 10857
048addec
JD
10858 * emacs.c (USAGE2): Add the --color option.
10859 (standard_args): Ditto.
72244db2 10860
048addec
JD
108612002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10862
10863 * xterm.h (struct x_output): New members want_fullscreen,
10864 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
10865 y_pixels_outer_diff.
10866 New enum for FULLSCREEN_* constants.
10867 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
10868 is NULL.
10869 (x_fullscreen_adjust): Add prototype.
3a62677f 10870
048addec
JD
10871 * emacs.c (USAGE2): Add the new full-screen arguments.
10872 (standard_args): Ditto.
3a62677f 10873
048addec
JD
10874 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
10875 New variables.
10876 (syms_of_xfns): Intern and staticpro them.
10877 (x_frame_parms) <"fullscreen">: New parameter.
10878 (x_fullscreen_move, x_set_fullscreen): New functions.
10879 (x_set_frame_parameters): Support for Qfullscreen.
10880 (x_real_positions): More accurate computation of the frame position.
10881 (x_figure_window_size): Support full-screen frames.
10882 (Fx_create_frame): Default the fullscreen parameter.
3a62677f 10883
048addec
JD
10884 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
10885 (XTread_socket) <Expose>: Call x_check_fullscreen.
10886 <ConfigureNotify>: Don't resize to fullscreen.
10887 Call x_check_fullscreen_move, and set the want_fullscreen member of
10888 output_data.x.
3a62677f 10889
048addec 108902002-01-13 Jason Rumney <jasonr@gnu.org>
9d113d9d 10891
048addec
JD
10892 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
10893 for mice with more than 3 buttons.
b8523839 10894
048addec
JD
10895 * w32term.c (parse_button): New parameter xbutton. Callers changed.
10896 (w32_read_socket): Handle new "XBUTTON" messages.
9464dea4 10897
048addec
JD
10898 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
10899 (syms_of_w32fns): DEFVAR_BOOL it.
10900 (w32_wnd_proc): Handle new "XBUTTON" messages.
9d113d9d 10901
048addec 109022002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
70ec1377 10903
048addec 10904 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
70ec1377 10905
048addec 109062002-01-13 Andreas Schwab <schwab@suse.de>
92f7dd37 10907
048addec 10908 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
92f7dd37 10909
048addec 109102002-01-12 Andreas Schwab <schwab@suse.de>
c93674bb 10911
048addec
JD
10912 * .gdbinit (xbuffer): Remove address operator since data is now a
10913 pointer.
c93674bb 10914
048addec 109152002-01-11 Richard M. Stallman <rms@gnu.org>
59b59892 10916
048addec 10917 * insdel.c (adjust_after_replace_noundo): New function.
59b59892 10918
048addec 10919 * coding.c (code_convert_region): Don't copy old text if undo disabled.
c6ea2775 10920
048addec 109212002-01-09 Jason Rumney <jasonr@gnu.org>
c6ea2775 10922
048addec
JD
10923 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
10924 when checking for multiple frames.
91175673 10925
048addec 109262002-01-08 Richard M. Stallman <rms@gnu.org>
91175673 10927
048addec
JD
10928 * window.c (delete_window): Rewrite the code for changing the
10929 selected window to handle the case where WINDOW is not a leaf.
91175673 10930
048addec 109312002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
e0fead5d 10932
048addec
JD
10933 * process.c (send_process): Set src_multibyte to 1 after the call
10934 top setup_coding_system, not before the call.
e0fead5d 10935
048addec 109362002-01-07 Jason Rumney <jasonr@gnu.org>
e0fead5d 10937
048addec
JD
10938 * xmenu.c (set_frame_menubar, xmenu_show):
10939 (xdialog_show): Initialize wv->help to Qnil.
c186cdb3 10940
048addec
JD
10941 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
10942 (w32_dialog_show): Initialize wv->help to Qnil.
c186cdb3 10943
048addec 109442002-01-06 Jason Rumney <jasonr@gnu.org>
c186cdb3 10945
048addec 10946 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
c186cdb3 10947
048addec 10948 * w32menu.c (w32_menu_display_help): Revert last change.
58cfce98 10949
048addec 10950 * xmenu.c (menu_highlight_callback): Revert last change.
58cfce98 10951
048addec 109522002-01-06 Andreas Schwab <schwab@suse.de>
62854fe2 10953
048addec
JD
10954 * insdel.c (make_gap_larger): Make sure buffer size does not
10955 overflow range of int.
62854fe2 10956
048addec 109572002-01-05 Jason Rumney <jasonr@gnu.org>
656f46bb 10958
048addec
JD
10959 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
10960 OVERLAPS_P.
656f46bb 10961
048addec 10962 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
656f46bb 10963
048addec
JD
10964 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
10965 to the left or to the right of the pointer, put it against
10966 the left screen edge.
10967 (x_frame_parms): Add missing braces around initializer.
036e218d 10968
048addec
JD
10969 * w32term.c (x_setup_relief_colors): Don't compute an image's
10970 background color if it doesn't have a Pixmap.
10971 (notice_overwritten_cursor): Don't depend on
10972 output_cursor and updated_area. Compare pixel coordinates with
10973 window's cursor pixel coordinates.
10974 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
10975 Call notice_overwritten_cursor with new arg list.
10976 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
10977 unconditionally.
10978 (x_draw_image_relief): Use predefined macro instead of
10979 constant when the value of `tool_bar_button_relief' is negative.
036e218d 10980
048addec 10981 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
7ddb2c16 10982
048addec 109832002-01-04 Richard M. Stallman <rms@gnu.org>
7ddb2c16 10984
048addec 10985 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
ace9b298 10986
048addec 109872002-01-03 Richard M. Stallman <rms@gnu.org>
90647b07 10988
048addec
JD
10989 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
10990 (Fkey_binding): Try the `keymap' property map first.
10991 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
10992 minor mode bindings.
90647b07 10993
048addec 109942002-01-03 Kim F. Storm <storm@cua.dk>
ace9b298 10995
048addec 10996 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
ace9b298 10997
048addec 109982002-01-02 Richard M. Stallman <rms@gnu.org>
ace9b298 10999
048addec
JD
11000 * keyboard.c (read_key_sequence): Handle the keymap property
11001 before minor mode maps.
9fbc32aa 11002
048addec
JD
11003 * editfns.c (Fformat): Update thissize from field_width
11004 based on the actual width, in the string case.
036e218d 11005
048addec 110062002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fbc32aa 11007
048addec
JD
11008 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
11009 when used as truth value to prevent gcc warnings.
9fbc32aa 11010
048addec
JD
11011 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
11012 * w32proc.c: Include <config.h>.
9fbc32aa 11013
048addec 110142002-01-01 Andreas Schwab <schwab@suse.de>
9fbc32aa 11015
048addec
JD
11016 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
11017 not EMACS_INT, to make them compatible with DEFVAR_INT.
11018 * lisp.h (max_specpdl_size): Adjust declaration.
9fbc32aa 11019
048addec 110202002-01-01 Richard M. Stallman <rms@gnu.org>
9fbc32aa 11021
048addec
JD
11022 * print.c (print_object): Test print_escape_nonascii only for
11023 unibyte strings.
11024 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
11025 when outputting to a multibyte buffer.
9fbc32aa 11026
048addec 110272001-12-29 Richard M. Stallman <rms@gnu.org>
9fbc32aa 11028
048addec
JD
11029 * print.c (print_object): In multibyte string, use hex escapes.
11030 Use octal only for unibyte strings.
11031 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
0142178a 11032
048addec
JD
11033 * lread.c (read_escape): New arg BYTEREP for reporting whether
11034 escape forces unibyte or multibyte.
11035 (read1): When reading a string, take note of that info.
0142178a 11036
048addec 110372001-12-29 Ken Raeburn <raeburn@gnu.org>
d4824a5d 11038
048addec
JD
11039 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
11040 comparison to test lisp value returned by Fget.
d4824a5d 11041
048addec 110422001-12-29 Richard M. Stallman <rms@gnu.org>
b1356234 11043
048addec 11044 * lisp.h (max_specpdl_size): Add declaration.
b1356234 11045
048addec 11046 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
3ce081f5 11047
048addec
JD
11048 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
11049 Handle modifier bits. Correct typo in error message.
99e380ee 11050
048addec 110512001-12-28 Richard M. Stallman <rms@gnu.org>
3ce081f5 11052
048addec
JD
11053 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
11054 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
11055 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
11056 Update calls to Fdefine_abbrev.
11057 (write_abbrev): Update for changed data format.
11058 Don't list "system" abbrevs.
11059 (Fexpand_abbrev): Update use count with new data format.
11060 (describe_abbrev): Update for changed data format.
11061 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
66458f32 11062
048addec 11063 * config.in (HAVE_MBSINIT): Add #undef.
66458f32 11064
048addec 11065 * strftime.c (mbsinit): Define as no-op if not available.
66458f32 11066
048addec
JD
11067 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
11068 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
59a86c99 11069
048addec
JD
11070 * keymap.c (Flookup_key): Error message if key has wrong data type.
11071 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
11072 (exclude_key): New variable.
59a86c99 11073
048addec 110742001-12-28 Gerd Moellmann <gerd@gnu.org>
eb77a5f4 11075
048addec
JD
11076 * xterm.c (x_setup_relief_colors): Don't compute an image's
11077 background color if it doesn't have a Pixmap.
eb77a5f4 11078
048addec
JD
11079 * xterm.c (notice_overwritten_cursor): Don't depend on
11080 output_cursor and updated_area. Compare pixel coordinates with
11081 window's cursor pixel coordinates.
11082 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
11083 Call notice_overwritten_cursor with new arg list.
11084 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
11085 unconditionally.
eb77a5f4 11086
048addec
JD
11087 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
11088 height of the cursor line to the amount to scroll.
eb77a5f4 11089
048addec 110902001-12-27 Richard M. Stallman <rms@gnu.org>
bb313871 11091
048addec
JD
11092 * intervals.c (set_point_both): The position after an invisible,
11093 intangible character is not an acceptable stopping point.
bb313871 11094
048addec 110952001-12-27 Ken Raeburn <raeburn@gnu.org>
55b43a63 11096
048addec
JD
11097 * window.c (enlarge_window): In new preserve_before code, convert
11098 CURBEG from lisp object to integer before doing arithmetic.
6052529b 11099
048addec 111002001-12-27 Richard M. Stallman <rms@gnu.org>
3ce081f5 11101
048addec 11102 * bytecode.c (Fbyte_code): Undo previous change.
3ce081f5 11103
048addec 111042001-12-26 Kim F. Storm <storm@cua.dk>
3ce081f5 11105
048addec
JD
11106 * keyboard.c (record_char): Ignore duplicate help-echo events only
11107 separated by mouse-movement. When tracking mouse, only record
11108 first and last mouse-movement event in same window.
11109 Don't record mouse-movement events in keyboard macros.
3ce081f5 11110
048addec 111112001-12-25 Richard M. Stallman <rms@gnu.org>
55b43a63 11112
048addec
JD
11113 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
11114 (Fenlarge_window): New arg PRESERVE_BEFORE.
111ed14e 11115
048addec
JD
11116 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
11117 instead of Fstring_as_unibyte.
9fabb2f5 11118
048addec 111192001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fabb2f5 11120
048addec 11121 The following changes remove mocklisp support:
9fabb2f5 11122
048addec 11123 * mocklisp.h, mocklisp.c: Files removed.
111ed14e 11124
048addec
JD
11125 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
11126 `Qmocklisp' and `Qmocklisp_arguments'.
11127 Remove prototype of syms_of_mocklisp.
2fa0eedf 11128
048addec 11129 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
d1420435 11130
048addec
JD
11131 * callint.c: Do not include mocklisp.h.
11132 (Fcall_interactively): Do not test for mocklisp case.
2fa0eedf 11133
048addec
JD
11134 * eval.c: Remove variables `Qmocklisp_arguments',
11135 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
11136 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
11137 Do not test for mocklisp case.
11138 (Fwhile): Remove unused variable `tem'.
11139 (syms_of_eval): Remove variable `moclisp-arguments'.
ebcbef4e 11140
048addec 11141 * data.c (wrong_type_argument): Remove mocklisp case.
5c131048 11142
048addec 11143 * doc.c (Fdocumentation): Remove mocklisp case.
5c131048 11144
048addec 11145 * emacs.c (main): Do not call syms_of_mocklisp.
5c131048 11146
048addec 111472001-12-21 Richard M. Stallman <rms@gnu.org>
96d276c3 11148
048addec
JD
11149 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
11150 to the left or to the right of the pointer, put it against
11151 the left screen edge.
6108b49c 11152
048addec 111532001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
96d276c3 11154
048addec
JD
11155 * Makefile.in (distclean): Remove .gdbinit if we are building
11156 outside the source tree.
5eea19a4 11157
048addec 111582001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
5eea19a4 11159
048addec 11160 * w32.c (emacs_root_dir): New function.
5eea19a4 11161
048addec 11162 * msdos.c (emacs_root_dir): New function.
5eea19a4 11163
048addec
JD
11164 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
11165 of the current drive as the fallback for default_directory.
438e57dd 11166
048addec
JD
11167 * dired.c (file_name_completion): Run the elements of
11168 completion-ignored-extensions through ENCODE_FILE.
438e57dd 11169
048addec
JD
11170 * lisp.h (scmp): Remove prototype, since it's now a static
11171 function private to dired.c.
c88e5347 11172
048addec 111732001-12-18 Richard M. Stallman <rms@gnu.org>
c88e5347 11174
048addec
JD
11175 * dired.c (scmp): Function moved from minibuf.c.
11176 Delete multibyte handling--used only on encoded strings.
59ce1461 11177
048addec 11178 * minibuf.c (scmp): Function moved to dired.c.
59ce1461 11179
048addec 11180 * fns.c (merge): Add QUIT call.
59ce1461 11181
048addec 111822001-12-18 Dave Love <fx@gnu.org>
8727d588 11183
048addec
JD
11184 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
11185 language/georgian.el.
8727d588 11186
048addec 111872001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
cc63037e 11188
048addec
JD
11189 * Makefile.in (lisp, shortlisp): Synchronize with changes to
11190 lisp/Makefile.in:DONTCOMPILE.
cc63037e 11191
048addec 111922001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
cc63037e 11193
048addec
JD
11194 * xdisp.c (window_box_height): Do not return negative values.
11195 From Gerd Moellmann <gerd@gnu.org>.
cc63037e 11196
048addec 11197 * keyboard.c (head_table): Add missing braces around initializer.
cc63037e 11198
048addec 11199 * term.c (keys): Likewise.
deece6f5 11200
048addec 11201 * xfns.c (x_frame_parms, visual_classes): Likewise.
deece6f5 11202
048addec 112032001-12-17 Sam Steingold <sds@gnu.org>
1b944d9c 11204
048addec
JD
11205 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
11206 patch (COMPOSING_P, not COMPOSING).
28ff4293 11207
048addec 112082001-12-17 Richard M. Stallman <rms@gnu.org>
a395ef6a 11209
048addec 11210 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
a395ef6a 11211
048addec
JD
11212 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
11213 before calling decode_coding.
9b46de40 11214
048addec 11215 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
9b46de40 11216
048addec
JD
11217 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
11218 instead of only for COMPOSITION_DISABLED.
9b46de40 11219
048addec 112202001-12-16 Richard M. Stallman <rms@gnu.org>
aff37336 11221
048addec 11222 * alloc.c (pure_alloc): After overflow, allocate just a small block.
aff37336 11223
048addec 11224 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
b9937f07 11225
048addec
JD
11226 * buffer.h (struct buffer): New field `display_error_modiff'.
11227 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
b9937f07 11228
048addec 11229 * window.c (Frecenter): Clear display_error_modiff field.
2cd23960 11230
048addec
JD
11231 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
11232 Call redisplay_window, but not if display_error_modiff field says no.
11233 (redisplay_window_error): New function.
11234 (displayed_buffer): New variable.
11235 (redisplay_internal, redisplay_windows): Call the new functions
11236 instead of redisplay_window directly.
2cd23960 11237
048addec 112382001-12-15 Richard M. Stallman <rms@gnu.org>
2cd23960 11239
048addec 11240 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
2cd23960 11241
048addec 112422001-12-14 Andrew Innes <andrewi@gnu.org>
a4184c1c 11243
048addec
JD
11244 * makefile.w32-in (EMACSLOADPATH): Define.
11245 ($(EMACS)): Run `list-load-path-shadows' after dumping emacs.
11246 (bootstrap-temacs): Remove dependency on bootstrap-clean.
a4184c1c 11247
048addec 112482001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
f6fa0866 11249
048addec
JD
11250 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
11251 parameter have a numeric value all the time.
f6fa0866 11252
048addec 11253 * w32fns.c (x_report_frame_params): Likewise.
f4ca4b00 11254
048addec 112552001-12-12 Richard M. Stallman <rms@gnu.org>
f4ca4b00 11256
048addec 11257 * fileio.c (Fwrite_region): Doc fix.
f4e25f94 11258
048addec
JD
11259 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
11260 (redisplay_internal): Call clear_image_cache only for window terminals.
f4e25f94 11261
048addec 112622001-12-12 Gerd Moellmann <gerd@gnu.org>
91c153e2 11263
048addec
JD
11264 * xdisp.c (move_it_vertically_backward): Change heuristic
11265 for the case that we didn't move far enough initially.
91c153e2 11266
048addec
JD
11267 * window.c (Frecenter): Simplify computation in the case of window
11268 system frames and ARG < 0; use window_box_height.
65b7d3e7 11269
048addec 112702001-12-11 Richard M. Stallman <rms@gnu.org>
65b7d3e7 11271
048addec
JD
11272 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
11273 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
6b5f6311 11274
048addec 112752001-12-11 Andrew Innes <andrewi@gnu.org>
6b5f6311 11276
048addec
JD
11277 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
11278 arg is negative.
be676094 11279
048addec 112802001-12-11 Richard M. Stallman <rms@gnu.org>
be676094 11281
048addec
JD
11282 * m/hp800.h: Split the __hpux conditional into the parts
11283 that are right for GNU/Linux too and the parts that are not.
11284 Use the former if GNU_LINUX.
11285 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
032a857d 11286
048addec 11287 * s/gnu-linux.h (GNU_LINUX): Defined.
032a857d 11288
048addec 112892001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
032a857d 11290
048addec
JD
11291 * macros.c, msdos.c, w16select.c: Change doc-string comments to
11292 `new style' [w/`doc:' keyword].
032a857d 11293
048addec 112942001-12-10 Jason Rumney <jasonr@gnu.org>
b6270150 11295
048addec
JD
11296 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
11297 before using.
b6270150 11298
048addec 112992001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
792e5cbd 11300
048addec
JD
11301 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
11302 keyword].
98cbb9fa 11303
048addec 113042001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
98cbb9fa 11305
048addec 11306 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
98cbb9fa 11307
048addec 11308 * s/hpux10.h (srand48): Don't undefine.
98cbb9fa 11309
048addec 113102001-12-09 Jason Rumney <jasonr@gnu.org>
792e5cbd 11311
048addec
JD
11312 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
11313 Add comment to explain where the struct came from.
11314 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
11315 (add_menu_item): Process pop-up menus first to avoid memory leak.
11316 (add_menu_item, w32_menu_display_help): Use `help' field as
11317 Lisp_Object.
11318 (w32_free_submenu_strings): Only free owner-drawn strings.
fa336b91 11319
048addec 113202001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
fa336b91 11321
048addec 11322 * COPYING: Moved back.
fa336b91 11323
048addec
JD
11324 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
11325 Add parentheses around && within ||.
077907d4 11326
048addec 11327 * indent.c (compute_motion): Likewise.
aa2af83a 11328
048addec 11329 * intervals.c (merge_properties_sticky): Likewise.
60a653f1 11330
048addec
JD
11331 * coding.c (setup_coding_system, shrink_encoding_region)
11332 (Fdecode_sjis_char): Likewise.
60a653f1 11333
048addec 113342001-12-07 Andreas Schwab <schwab@suse.de>
60a653f1 11335
048addec
JD
11336 * xdisp.c (display_mode_element): Don't read past end of string if
11337 it ends with '%'.
60a653f1 11338
048addec
JD
11339 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
11340 can hold.
60a653f1 11341
048addec
JD
11342 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
11343 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
11344 type changed to Lisp_Object.
11345 (syms_of_data): DEFVAR_LISP them.
60a653f1 11346
048addec 113472001-12-07 Richard M. Stallman <rms@gnu.org>
60a653f1 11348
048addec
JD
11349 * callproc.c (init_callproc): Set Vdata_directory based on the source
11350 location whenever Emacs was run uninstalled.
60a653f1 11351
048addec 113522001-12-06 Paul Eggert <eggert@twinsun.com>
60a653f1 11353
048addec
JD
11354 * config.in (HAVE_WORKING_VFORK): New #undefs.
11355 * process.c (create_process):
11356 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
11357 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
11358 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
11359 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
11360 * m/intel386.h (HAVE_VFORK): Likewise.
11361 * m/mips-siemens.h (HAVE_VFORK): Likewise.
11362 * m/mips.h (HAVE_VFORK): Likewise.
11363 * s/freebsd.h (vfork): Remove #define.
11364 * s/lynxos.h (HAVE_VFORK): Remove #undef.
11365 * s/usg5-4-2.h: Fix comment about vfork.
60a653f1 11366
048addec 113672001-12-06 Richard M. Stallman <rms@gnu.org>
60a653f1 11368
048addec
JD
11369 * s/hpux10.h (random): Add undef.
11370 (HAVE_RANDOM): Define it just once.
60a653f1 11371
048addec 113722001-12-06 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11373
048addec 11374 * eval.c: Undo last change: the standard syntax is not wanted.
60a653f1 11375
048addec 113762001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 11377
048addec
JD
11378 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
11379 scroll bars of the frame before deleting the frame itself. If the
11380 frame has a widget, delete the frame with XtDestroyWidget, and do
11381 not call XDestroyWindow before that.
60a653f1 11382
048addec 113832001-12-06 Kim F. Storm <storm@cua.dk>
60a653f1 11384
048addec 11385 * xfns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 11386
048addec 11387 * w32fns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 11388
048addec 113892001-12-05 Andrew Innes <andrewi@gnu.org>
60a653f1 11390
048addec
JD
11391 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
11392 excessively large.
60a653f1 11393
048addec
JD
11394 * insdel.c (make_gap_larger): New function.
11395 (make_gap_smaller): New function.
11396 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
11397 Call make_gap_smaller if arg is negative.
60a653f1 11398
048addec 113992001-12-04 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11400
048addec
JD
11401 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
11402 Pass a dummy argument when calling interrupt_signal.
11403 (parse_menu_item): Mark disabled items before checking for empty def.
11404 (read_char_minibuf_menu_prompt): Make safety more visible.
11405 (read_key_sequence): Add a `first_unbound' variable.
11406 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
11407 unbound prefix as soon as we can detect it.
60a653f1 11408
048addec
JD
11409 * doc.c (Fsnarf_documentation): Add prototype.
11410 (get_doc_string): Handle negative arguments.
11411 (Fdocumentation): Use AREF and ASIZE.
11412 Move the calls to get_doc_string to a single place.
11413 Don't confuse an interactive-spec for a docstring reference.
11414 (Fdocumentation_property): Take advantage of the fact that
11415 get_doc_string now ignores the sign of the docstring position.
60a653f1 11416
048addec 11417 * eval.c: Use standard syntax for usage in docstrings.
60a653f1 11418
048addec 114192001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11420
a64387ee 11421 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
60a653f1 11422
048addec 114232001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11424
048addec
JD
11425 * xterm.c (x_draw_image_relief): Use predefined macro instead of
11426 constant when the value of `tool_bar_button_relief' is negative.
60a653f1 11427
048addec 114282001-12-02 Richard M. Stallman <rms@gnu.org>
60a653f1 11429
048addec
JD
11430 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
11431 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
60a653f1 11432
048addec 11433 * fileio.c (read_non_regular): Delete Fsignal call.
60a653f1 11434
048addec 114352001-12-01 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11436
048addec 11437 * lisp.h (run_hook_list_with_args): Undo last change.
60a653f1 11438
048addec 114392001-12-01 Gerd Moellmann <gerd@gnu.org>
60a653f1 11440
048addec 11441 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
60a653f1 11442
048addec 114432001-12-01 Jason Rumney <jasonr@gnu.org>
60a653f1 11444
048addec 11445 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
60a653f1 11446
048addec
JD
11447 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
11448 [!WM_MOUSELEAVE]: Define.
60a653f1 11449
048addec
JD
11450 * w32menu.c (current_popup_menu, get_menu_item_info):
11451 (set_menu_item_info): New vars.
11452 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
11453 (w32_menu_show): Set current_popup_menu.
11454 (add_menu_item): Allocate new strings for owner-drawn menu items
11455 and help strings.
11456 Use owner-draw for disabled menu items again.
11457 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
11458 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
60a653f1 11459
048addec
JD
11460 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
11461 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
11462 <WM_EXITMENULOOP>: Free menu strings.
11463 <WM_MOUSELEAVE>: Stop tracking mouse.
11464 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
60a653f1 11465
048addec
JD
11466 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
11467 and mouse face.
60a653f1 11468
048addec 114692001-12-01 Kim F. Storm <storm@cua.dk>
60a653f1 11470
048addec
JD
11471 The following changes add left-fringe and right-fringe
11472 frame parameters to adjust fringe widths, or remove one or
11473 both fringes.
60a653f1 11474
048addec
JD
11475 * frame.h (struct frame): Remove trunc_area_pixel_width and
11476 trunc_area_cols fields.
11477 (Qleft_fringe, Qright_fringe): Declare.
11478 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
60a653f1 11479
048addec
JD
11480 * frame.c (Qleft_fringe, Qright_fringe): New vars.
11481 (syms_of_frame): Initialize them.
60a653f1 11482
048addec
JD
11483 * window.c (coordinates_in_window): Handle separate left and right
11484 fringe widths.
60a653f1 11485
048addec
JD
11486 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
11487 and fringe_cols fields.
11488 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
11489 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
11490 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
11491 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
11492 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
11493 (x_compute_fringe_widths): Add prototype.
60a653f1 11494
048addec
JD
11495 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
11496 fill fringe evenly with small dashes.
11497 (x_draw_fringe_bitmap): Clear background if necessary. Align and
11498 clip the new ZV bitmap to avoid jitter between rows.
11499 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
11500 background. Don't draw fringe bitmaps if fringe width is zero.
11501 (x_compute_fringe_widths): New function.
11502 (x_new_font, x_set_window_size_1): Use it.
60a653f1 11503
048addec
JD
11504 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
11505 (x_set_frame_parameters): Process `font' parameter before other
11506 parameters as fringe widths depend on it.
11507 (x_set_fringe_width): New function.
11508 (x_figure_window_size): Use x_compute_fringe_widths.
11509 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
11510 parameters.
60a653f1 11511
048addec
JD
11512 * widget.c (set_frame_size): Use x_compute_fringe_widths.
11513 (EmacsFrameSetCharSize): Ditto.
60a653f1 11514
048addec
JD
11515 * w32term.h: Merged changes from xterm.h.
11516 * w32term.c: Merged changes from xterm.c.
11517 * w32fns.c: Merged changes from xfns.c.
60a653f1 11518
048addec 115192001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11520
048addec 11521 * COPYING: Removed.
60a653f1 11522
048addec 115232001-11-29 Dave Love <fx@gnu.org>
60a653f1 11524
048addec
JD
11525 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
11526 extra extra slot.
11527 (detect_coding_mask): Fix call of detect_coding_iso2022.
60a653f1 11528
048addec 115292001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11530
048addec
JD
11531 * fileio.c (file-name-coding-system)
11532 (default-file-name-coding-system): Doc fix (links to referenced
11533 variables added).
60a653f1 11534
048addec 115352001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11536
048addec
JD
11537 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
11538 Add dummy uses of gcproN variables.
60a653f1 11539
048addec
JD
11540 * category.c (describe_category, describe_category_1)
11541 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
11542 (syms_of_category): Don't defsubr Sdescribe_categories.
60a653f1 11543
048addec 115442001-11-28 Richard M. Stallman <rms@gnu.org>
60a653f1 11545
048addec 11546 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
60a653f1 11547
048addec
JD
11548 * Makefile.in (lispdir): New variable, referring to build dir.
11549 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
60a653f1 11550
048addec 115512001-11-28 Andrew Innes <andrewi@gnu.org>
60a653f1 11552
048addec
JD
11553 * w32menu.c (w32_menu_display_help): Actually add the new argument
11554 OWNER.
60a653f1 11555
048addec 115562001-11-28 Jason Rumney <jasonr@gnu.org>
60a653f1 11557
048addec
JD
11558 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
11559 menu items. From David Ponce <dponce@wanadoo.fr>.
11560 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
11561 conditionally.
11562 (w32_menu_display_help): New argument OWNER. Rewritten to store a
11563 help event in the owner frame's keyboard buffer.
60a653f1 11564
048addec
JD
11565 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
11566 (Fx_show_tip): Don't subtract last width from row width.
11567
11568 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
11569 (w32_read_socket): Use EQ to compare frames.
60a653f1 11570
048addec 115712001-11-28 Gerd Moellmann <gerd@gnu.org>
60a653f1 11572
048addec
JD
11573 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
11574 OVERLAPS_P.
60a653f1 11575
048addec 115762001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11577
048addec
JD
11578 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
11579 `gcpro3' and `gcpro4'.
60a653f1 11580
048addec 11581 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
60a653f1 11582
048addec 115832001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11584
048addec 11585 * ccl.c: Use AREF and ASIZE.
60a653f1 11586
048addec 115872001-11-27 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11588
048addec
JD
11589 * lisp.h (run_hook_list_with_args): Remove.
11590 (LIST_END_P): Fix call to wrong_type_argument.
11591 (make_fixnum_or_float): Use EMACS_INT rather than int.
60a653f1 11592
048addec 115932001-11-26 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11594
048addec
JD
11595 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
11596 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
60a653f1 11597
048addec
JD
11598 * eval.c: Use AREF and ASIZE.
11599 (Ffetch_bytecode): Add the file name to the error message.
60a653f1 11600
048addec
JD
11601 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
11602 which match the end of the file-name.
11603 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
11604 is not a valid env var, but leave it as is instead.
60a653f1 11605
048addec
JD
11606 * keymap.c (access_keymap): Handle t bindings like nil bindings.
11607 Make nil bindings in char-tables transparent.
11608 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
60a653f1 11609
048addec 116102001-11-26 Richard M. Stallman <rms@gnu.org>
60a653f1 11611
048addec
JD
11612 * textprop.c (set_text_properties_1): Allow START, END in either order.
11613 Do nothing if range is empty.
60a653f1 11614
048addec 11615 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
60a653f1 11616
048addec
JD
11617 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
11618 (clean): Not here.
60a653f1 11619
048addec 116202001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11621
048addec
JD
11622 * textprop.c (set_text_properties_1): Clearly mark that the
11623 interval should not be empty.
60a653f1 11624
048addec
JD
11625 * intervals.c (graft_intervals_into_buffer):
11626 Don't call set_text_properties_1 on an empty interval.
60a653f1 11627
048addec 116282001-11-25 Richard M. Stallman <rms@gnu.org>
60a653f1 11629
048addec 11630 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
60a653f1 11631
048addec
JD
11632 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
11633 don't lose the data in it.
60a653f1 11634
048addec 116352001-11-25 Juanma Barranquero <lektu@terra.es>
60a653f1 11636
048addec 11637 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
60a653f1 11638
048addec 11639 * buffer.c (Fkill_buffer): Use Frun_hooks, not Vrun_hooks.
60a653f1 11640
048addec 11641 * print.c (temp_output_buffer_setup): Use Frun_hooks, not Vrun_hooks.
60a653f1 11642
048addec 116432001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11644
048addec 11645 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
60a653f1 11646
048addec 116472001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 11648
048addec
JD
11649 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
11650 Niemitalo <kon@iki.fi>.
60a653f1 11651
048addec 116522001-11-25 Jason Rumney <jasonr@gnu.org>
60a653f1 11653
048addec 11654 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
60a653f1 11655
048addec
JD
11656 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
11657 (Fx_show_tip): Block input during frame creation.
11658 (Fx_show_tip, Fx_hide_tip): Enable.
60a653f1 11659
048addec 116602001-11-24 Richard M. Stallman <rms@gnu.org>
60a653f1 11661
048addec
JD
11662 * lread.c (Fload): Detect recursive load error for more than 3
11663 nestings of the same file.
11664 (Vrecursive_load_depth_limit): Variable deleted.
11665 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
60a653f1 11666
048addec 116672001-11-24 Jason Rumney <jasonr@gnu.org>
60a653f1 11668
048addec
JD
11669 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
11670 mouse position if either left or top is not specified.
60a653f1 11671
048addec
JD
11672 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
11673 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
11674 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
11675 (my_create_tip_window): Assign tip_window.
11676 (x_create_tip_frame): Use same defaults as X.
11677 (compute_tip_xy): Remove unused variable. Use full screen width.
11678 (Fx_show_tip): Do not double height. Call ShowWindow directly.
60a653f1 11679
048addec
JD
11680 * w32term.c (x_after_update_window_line): Doc fix.
11681 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
11682 frames.
11683 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
60a653f1 11684
048addec
JD
11685 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
11686 for all Windowed systems.
60a653f1 11687
048addec 116882001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 11689
048addec
JD
11690 * msdos.c (IT_clear_screen): If the frame's faces are not yet
11691 realized, use the initial screen colors to clear the screen.
60a653f1 11692
048addec 116932001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11694
048addec
JD
11695 * textprop.c (Fset_text_properties): Remove unused variables
11696 `unchanged', `prev_changed', `s' and `len'.
60a653f1 11697
048addec
JD
11698 * search.c (Freplace_match): Remove unused variable `inslen'.
11699
11700 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
11701
117022001-11-22 Jason Rumney <jasonr@gnu.org>
11703
11704 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
11705 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
11706 (my_create_tip_window): New function.
11707 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
11708 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
11709
117102001-11-20 Jason Rumney <jasonr@gnu.org>
11711
11712 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
11713 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
11714
11715 * w32fns.c (Vw32_system_coding_system): Remove.
11716 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
11717
117182001-11-19 Stefan Monnier <monnier@cs.yale.edu>
11719
11720 * fileio.c (Fwrite_region): Move choose_write_coding_system to
11721 after build_annotations.
11722
11723 * syntax.c (describe_syntax): Add dummy arg.
11724 (describe_syntax_1): Update call to describe_vector.
11725
11726 * category.c (describe_category): Add dummy arg.
11727 (describe_category_1): Update call to describe_vector.
11728
11729 * keymap.c (Fdescribe_vector): Add `describer' parameter.
11730 (describe_command, describe_translation): Add dummy second param.
11731 (describe_map): Call elt_describer with two arguments.
11732 (describe_vector_princ): Add `fun' parameter.
11733 Call it instead of the hardcoded `princ'.
11734 (describe_vector): Add arg `args'.
11735 Pass it as a new second argument to elt_describer.
60a653f1 11736
048addec 11737 * keymap.h (describe_vector): Update prototype.
60a653f1 11738
048addec
JD
11739 * frame.c: Don't include keymap.h any more.
11740 (keys_of_frame): Remove.
60a653f1 11741
048addec 11742 * lisp.h (keys_of_frame): Remove declaration.
60a653f1 11743
048addec 11744 * emacs.c (main): Don't call `keys_of_frame' any more.
60a653f1 11745
048addec 117462001-11-14 Andreas Schwab <schwab@suse.de>
60a653f1 11747
048addec
JD
11748 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
11749 if defined, 0 otherwise.
11750 (MAP_FAILED): Define if not defined and use it to test mmap failure.
11751 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
60a653f1 11752
048addec 117532001-11-19 Richard M. Stallman <rms@gnu.org>
60a653f1 11754
048addec 11755 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
60a653f1 11756
048addec 117572001-11-18 Jason Rumney <jasonr@gnu.org>
60a653f1 11758
048addec
JD
11759 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
11760 (x_draw_bar_cursor): If the background color of the glyph under
11761 the cursor equals the frame's cursor color, use the glyph's
11762 foreground color for drawing the bar cursor.
11763 (x_after_update_window_line): Clear internal border in different
11764 circumstances.
11765 (w32_set_vertical_scroll_bar): Check for width and height > 0.
11766 (w32_draw_relief_rect): Correct relief by 1 pixel.
11767 (x_set_glyph_string_background_width):
11768 Set extends_to_end_of_line_p if the row's fill_line_p is set and
11769 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
11770 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
11771 if cursor_in_non_selected_windows is false.
11772 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
11773 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
11774 Notice if cursor gets overwritten.
11775 (notice_overwritten_cursor): Renamed from
11776 note_overwritten_text_cursor. Rewritten to take glyph widths
11777 into account, and to take X positions as parameters.
11778 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
11779 around call to x_draw_glyphs.
11780 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
11781 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
11782 color to use for image glyph reliefs.
11783 (x_draw_image_relief): Accept zero tool_bar_button_relief.
11784 (glyph_rect): Remove unused variable `area'.
60a653f1 11785
048addec
JD
11786 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
11787 some items.
11788 (x_set_internal_border_width): Set frame garbaged when window
11789 doesn't exist yet.
11790 (Fx_create_frame): Accept zero tool_bar_button_relief.
11791 (x_clear_image_1, four_corners_best, image_background)
11792 (image_background_transparent): New functions.
11793 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
11794 (gs_format): Add `:background' entry.
11795 (lookup_image): Set IMG's background color if specified.
11796 (pbm_load, xbm_load_image, png_load): Set IMG's background field
11797 when appropriate.
11798 (x_clear_image_1): Reset `background_valid' and
11799 `background_transparent_valid' fields.
11800 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
11801 calculating it here. Set IMG's background_transparent field.
11802 (enum xpm_keyword_index): Add XPM_BACKGROUND.
11803 (enum png_keyword_index): Add PNG_BACKGROUND.
11804 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
11805 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
11806 (enum gif_keyword_index): Add GIF_BACKGROUND.
11807 (enum gs_keyword_index): Add GS_BACKGROUND.
11808 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
11809 Pre-calculate image background color where necessary.
11810 (x_create_x_image_and_pixmap, xbm_load, gs_load):
11811 Use display info's n_cbits entry for screen depth.
11812 (Fx_show_tip): Remove unused variables `buffer', `top',
11813 `left', `max_width' and `max_height'.
60a653f1 11814
048addec 11815 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
60a653f1 11816
048addec 118172001-11-18 Gerd Moellmann <gerd@gnu.org>
60a653f1 11818
048addec 11819 * puresize.h (BASE_PURESIZE): Increase to 750000.
60a653f1 11820
048addec 118212001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11822
048addec 11823 * frame.c (Fframe_live_p): Doc fix.
60a653f1 11824
048addec 118252001-11-18 Richard M. Stallman <rms@gnu.org>
60a653f1 11826
048addec
JD
11827 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
11828 (message_dolog_marker3): New static variables hold three markers.
11829 (syms_of_xdisp): Initialize and staticpro them.
11830 (message_dolog): Use message_dolog_marker1..3 instead of
11831 allocating markers each time. Unchain them when done.
60a653f1 11832
048addec 118332001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 11834
048addec 11835 * doc.c (Fsnarf_documentation): Doc fix.
60a653f1 11836
048addec 118372001-11-17 Andreas Schwab <schwab@suse.de>
60a653f1 11838
048addec 11839 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
60a653f1 11840
048addec 118412001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 11842
048addec 11843 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
60a653f1 11844
048addec 118452001-11-17 Jason Rumney <jasonr@gnu.org>
60a653f1 11846
048addec 11847 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
60a653f1 11848
048addec 118492001-11-17 Gerd Moellmann <gerd@gnu.org>
60a653f1 11850
048addec
JD
11851 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
11852 with invalid position.
60a653f1 11853
048addec 118542001-11-16 Richard M. Stallman <rms@gnu.org>
60a653f1 11855
048addec 11856 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
60a653f1 11857
048addec
JD
11858 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
11859 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
11860 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
60a653f1 11861
048addec 11862 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
60a653f1 11863
048addec 118642001-11-16 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11865
048addec
JD
11866 * fileio.c (build_annotations): Split off the tail.
11867 (build_annotations_2): New fun. Extracted from build_annotations.
11868 (Fwrite_region): Split the call to build_annotations into two
11869 calls to build_annotations and build_annotations_2.
077907d4 11870
048addec 118712001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
1756e2fb 11872
048addec
JD
11873 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
11874 clear_waiting_for_input with argument.
1756e2fb 11875
048addec 11876 * xterm.h (x_update_cursor): Remove duplicated prototype.
06e8f738 11877
048addec 11878 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
06e8f738 11879
048addec 11880 * xterm.c (waiting_for_input): Remove unnecessary declaration.
fa336b91 11881
048addec 11882 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
fa336b91 11883
048addec 118842001-11-16 Stefan Monnier <monnier@cs.yale.edu>
fa336b91 11885
048addec
JD
11886 * fileio.c (choose_write_coding_system): New fun, extracted
11887 from Fwrite_region.
11888 (Fwrite_region): Use it.
fa336b91 11889
048addec
JD
11890 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
11891 (funcall_lambda, run_hook_with_args): Make static and add prototype.
11892 (ml_apply, find_handler_clause): Add prototype.
fa336b91 11893
048addec 118942001-11-16 Eli Zaretskii <eliz@gnu.org>
fa336b91 11895
048addec 11896 * config.in: Add #undef HAVE_COFF_H.
fa336b91 11897
048addec
JD
11898 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
11899 Required for ISC 4.1.
fa336b91 11900
048addec 119012001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
fa336b91 11902
048addec
JD
11903 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
11904 Andrew Wiseman <a.wiseman@btclick.com>.
fa336b91 11905
048addec 119062001-11-16 Kim F. Storm <storm@cua.dk>
fa336b91 11907
048addec
JD
11908 The following changes are made to clean up the various internal
11909 references to the fringes to actually use the term `fringe' for
11910 them. Previously, they were called `flags areas', `bitmap areas',
11911 `left/right side of windows', or implicitly as `flags' or
11912 `bitmaps':
fa336b91 11913
048addec
JD
11914 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
11915 Comments fixed. Use renamed symbols.
06e8f738 11916
048addec 11917 * dispnew.c: Comment fix. Use renamed symbols.
06e8f738 11918
048addec
JD
11919 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
11920 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
11921 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
9ce647f4 11922
048addec 11923 * msdos.c: Comment fix.
9ce647f4 11924
048addec 11925 * w32fns.c: Use renamed symbols.
9b784ab8 11926
048addec
JD
11927 * w32term.c: Comment fixes. Use renamed symbols.
11928 (fringe_bitmap_type): Renamed from bitmap_type.
11929 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
11930 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
11931 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
9f7e52b4 11932
048addec
JD
11933 * w32term.h: Comment fixes. Use renamed symbols.
11934 (fringes_extra): Renamed from flags_areas_extra.
11935 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
11936 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
11937 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
11938 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
11939 (FRAME_X_LEFT_FRINGE_WIDTH):
11940 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
11941 (FRAME_X_RIGHT_FRINGE_WIDTH):
11942 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
9f7e52b4 11943
048addec 11944 * widget.c: Use renamed symbols.
9f7e52b4 11945
048addec
JD
11946 * window.c: Comment fixes. Use renamed symbols.
11947 (coordinates-in-window-p): Doc fix.
fa336b91 11948
048addec 11949 * xdisp.c: Comment fixes. Use renamed symbols.
34e5d0af 11950
048addec 11951 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
9b784ab8 11952
048addec 11953 * xfns.c: Use renamed symbols.
89512fcd 11954
048addec
JD
11955 * xterm.c: Comment fixes. Use renamed symbols.
11956 (fringe_bitmap_type): Renamed from bitmap_type.
11957 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
11958 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
11959 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
89512fcd 11960
048addec
JD
11961 * xterm.h: Comment fixes. Use renamed symbols.
11962 (fringes_extra): Renamed from flags_areas_extra.
11963 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
11964 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
11965 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
11966 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
11967 (FRAME_X_LEFT_FRINGE_WIDTH):
11968 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
11969 (FRAME_X_RIGHT_FRINGE_WIDTH):
11970 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
11971
119722001-11-15 Jason Rumney <jasonr@gnu.org>
11973
11974 * w32menu.c (add-menu-item): Make help_echo and radio buttons
11975 work for most menu items. From David Ponce
11976 <david.ponce@wanadoo.fr>.
11977
119782001-11-15 Gerd Moellmann <gerd@gnu.org>
11979
11980 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
11981 Some x_set_* function expect to be called even if old and new
11982 value are equal.
11983
11984 * xdisp.c (build_desired_tool_bar_string): Accept zero
11985 tool_bar_button_relief.
11986
11987 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
11988
11989 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
11990
11991 * xterm.c (x_draw_bar_cursor): If the background color of the
11992 glyph under the cursor equals the frame's cursor color, use
11993 the glyph's foreground color for drawing the bar cursor.
11994
11995 * dispnew.c (direct_output_forward_char): Fix character/byte
11996 position comparison.
7d18891d 11997
048addec 119982001-11-15 Miles Bader <miles@gnu.org>
d2936d21 11999
048addec
JD
12000 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
12001 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
12002 Update arguments to find_field.
12003 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
12004 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
12005 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
12006 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
7d18891d 12007
048addec 120082001-11-14 Richard M. Stallman <rms@gnu.org>
7d18891d 12009
048addec 12010 * editfns.c (Fpropertize): Allow call with 1 arg.
7d18891d 12011
048addec
JD
12012 * dispextern.h (image_background, image_background_transparent):
12013 Conditionalize on HAVE_X_WINDOWS.
7d18891d 12014
048addec 120152001-11-13 Richard M. Stallman <rms@gnu.org>
7d18891d 12016
048addec 12017 * print.c (Fprin1_to_string): Doc fix.
7d18891d 12018
048addec 12019 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
7d18891d 12020
048addec 12021 * floatfns.c (Fceiling, Ffloor): Doc fixes.
7d18891d 12022
048addec 12023 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
7d18891d 12024
048addec 12025 * fileio.c (Ffile_accessible_directory_p): Doc fix.
7d18891d 12026
048addec 12027 * eval.c (syms_of_eval): Doc fix.
7d18891d 12028
048addec 12029 * coding.c (syms_of_coding): Doc fix.
7d18891d 12030
048addec 12031 * doc.c (Fsnarf_documentation): Doc fix.
7d18891d 12032
048addec 12033 * dispnew.c (syms_of_display): Doc fix.
9474c847 12034
048addec 12035 * category.c (Fget_unused_category): Doc fix.
9474c847 12036
048addec 12037 * buffer.c (syms_of_buffer): Doc fixes.
e3059a5d 12038
048addec 120392001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
e3059a5d 12040
048addec 12041 * print.c (prin1, print): Doc fix.
e3059a5d 12042
048addec 120432001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
b3700ae7 12044
048addec
JD
12045 * fontset.h: Remove declarations of variables
12046 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
b3700ae7 12047
048addec
JD
12048 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
12049 `Vclip_large_size_font'.
eae936e2 12050
048addec 120512001-11-13 Jason Rumney <jasonr@gnu.org>
4bb962be 12052
048addec 12053 * w32fns.c: Doc fix.
ddb67bdc 12054
048addec 120552001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3467c402 12056
048addec 12057 * xfaces.c (Fface_attributes_as_vector): Doc fix.
3467c402 12058
048addec 12059 * fns.c: Doc fix.
6e1b91d7 12060
048addec 12061 * emacs.c: Doc fix.
1c1d3d69 12062
048addec 12063 * coding.c: Doc fix.
1c1d3d69 12064
048addec
JD
12065 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
12066 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
12067 `new style' [w/`doc:' keyword].
b6f4c7ba 12068
048addec 120692001-11-12 Richard M. Stallman <rms@gnu.org>
b6f4c7ba 12070
048addec
JD
12071 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
12072 LeaveNotify events. Only FocusIn and FocusOut do that now.
12073 (x_display_and_set_cursor): Do display hollow cursors in active
12074 minibuffer windows when they are not selected.
b6f4c7ba 12075
048addec 120762001-11-12 Jason Rumney <jasonr@gnu.org>
a89f435d 12077
048addec
JD
12078 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
12079 * w32term.c: Change doc-string comments to `new style'.
12080 [w/`doc:' keyword]. Doc fixes.
a89f435d 12081
048addec
JD
12082 * w32fns.c: Don't define max.
12083 (Fx_open_connection): Only execute once.
a4cd0cd7 12084
048addec 120852001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
eafb659a 12086
048addec
JD
12087 * ccl.c: Change macros to use do-while block instead of if-else.
12088 Use braces to follow GNU Coding Standards.
eafb659a 12089
048addec 120902001-11-11 Richard M. Stallman <rms@gnu.org>
a4cd0cd7 12091
048addec 12092 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
a4cd0cd7 12093
048addec 12094 * lread.c (read_escape): Use end_of_file_error for reporting eof.
a4cd0cd7 12095
048addec
JD
12096 * insdel.c (replace_range): Use adjust_markers_for_replace
12097 instead of adjust_markers_for_delete and adjust_markers_for_insert.
a4cd0cd7 12098
048addec 12099 * intervals.h: Declare set_text_properties and set_text_properties_1.
a4cd0cd7 12100
048addec
JD
12101 * textprop.c (set_text_properties_1): New subroutine
12102 broken out of set_text_properties.
12103 (set_text_properties): Use set_text_properties_1.
91823618 12104
048addec
JD
12105 * intervals.c (graft_intervals_into_buffer):
12106 Use set_text_properties_1 to clear out properties.
91823618 12107
048addec
JD
12108 * search.c (Freplace_match): Use replace_range to insert
12109 and delete. Don't request property inheritance from
12110 surrounding text.
86928dfb 12111
048addec 121122001-11-10 Jason Rumney <jasonr@gnu.org>
86928dfb 12113
048addec
JD
12114 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
12115 vertical fonts. Allow them if face name is explicitly specified.
12116 Do not give up if we find a font that cannot be converted to an xlfd.
40ef1eda 12117
048addec 121182001-11-10 Gerd Moellmann <gerd@gnu.org>
ab8469eb 12119
048addec
JD
12120 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
12121 instead of malloc/free.
a78e0303 12122
048addec 121232001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
40ef1eda 12124
048addec
JD
12125 * xfaces.c (merge_face_vectors): Use braces to follow GNU
12126 Coding Standards.
12127 (Finternal_set_lisp_face_attribute): Likewise.
fabf4a91 12128
048addec 12129 * buffer.c (Fbury_buffer): Likewise.
0c99b139 12130
048addec 12131 * indent.c (current_column_1): Remove unused variable `prev_col'.
0c99b139 12132
048addec
JD
12133 * coding.c (encode_coding): Use precomputed value of `src'.
12134 (encode_coding): Remove unused variable `src_end'.
12135 (code_convert_region): Remove unused variables `count'.
830ddd77 12136
048addec 121372001-11-07 Jason Rumney <jasonr@gnu.org>
830ddd77 12138
048addec
JD
12139 * w32term.c (x_display_and_set_cursor): Do not move system caret
12140 if cursor_glyph is NULL.
55c6d645 12141
048addec 121422001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
55c6d645 12143
048addec 12144 * keymap.c (access_keymap): Fix compilation error.
5de38842 12145
048addec 121462001-11-07 Miles Bader <miles@gnu.org>
7a4564a4 12147
048addec 12148 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
5de38842 12149
048addec 121502001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4fa23df5 12151
048addec
JD
12152 * intervals.c (graft_intervals_into_buffer):
12153 Remove #ifdef'd-out code.
12154 (graft_intervals_into_buffer): Remove unused variable `middle'.
4fa23df5 12155
048addec
JD
12156 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
12157 code (eval-current-buffer).
12158 Change doc-string comments to `new style' [w/`doc:' keyword].
7a6a97d7 12159
048addec 121602001-11-06 Richard M. Stallman <rms@gnu.org>
c191d13c 12161
048addec 12162 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
7a6a97d7 12163
048addec 121642001-11-06 Stefan Monnier <monnier@cs.yale.edu>
44dc78e0 12165
048addec 12166 * lread.c (read1): Fix behavior with nested backquoting.
44dc78e0 12167
048addec
JD
12168 * keyboard.c (make_lispy_event): Check integerness and fix
12169 Lisp_Object/int mixup.
17893c65 12170
048addec 121712001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4d994a79 12172
048addec 12173 * fns.c (copy_hash_table): Remove unused variable `v'.
d5360cc7 12174
048addec
JD
12175 * fontset.c (fontset_font_pattern): Remove unused variable
12176 `family_registry'.
d5360cc7 12177
048addec 12178 * indent.c (current_column_1): Remove unused variable `prev_col'.
d5360cc7 12179
048addec 121802001-11-05 Richard M. Stallman <rms@gnu.org>
96238a5a 12181
048addec 12182 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
96238a5a 12183
048addec
JD
12184 * buffer.c (Fkill_buffer): Don't delete auto save file
12185 if buffer is modified.
d9d54213 12186
048addec 121872001-11-05 Andrew Innes <andrewi@gnu.org>
d9d54213 12188
048addec
JD
12189 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
12190 CHECK_NUMBER_CDR.
b116830b 12191
048addec 121922001-11-05 Richard M. Stallman <rms@gnu.org>
b116830b 12193
048addec 12194 * unexelf.c (unexec): Minor changes; clean up comments.
3297e2a1 12195
048addec 121962001-11-05 Sam Steingold <sds@gnu.org>
3297e2a1 12197
048addec 12198 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
6fb8339c 12199
048addec 122002001-11-05 Andreas Schwab <schwab@suse.de>
6fb8339c 12201
048addec 12202 * sound.c (sound_perror): Save errno from being clobbered.
7dd73b78 12203
048addec 122042001-11-05 Dale Hagglund <rdh@yottayotta.com>
7dd73b78 12205
048addec
JD
12206 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
12207 the program image directly.
982f6c7e 12208
048addec 122092001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d31053f9 12210
048addec 12211 * buffer.h (Fbuffer_local_value): Add prototype.
d31053f9 12212
048addec 122132001-11-04 Richard M. Stallman <rms@gnu.org>
d31053f9 12214
048addec
JD
12215 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
12216 and CHECK_BUFFER.
d31053f9 12217
048addec
JD
12218 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
12219 (record_char): Likewise.
d31053f9 12220
048addec
JD
12221 * keyboard.c (make_lispy_event): Don't insist a drag event must
12222 move to a different buffer position. Instead, check for moving at
12223 least double_click_fuzz.
982f6c7e 12224
048addec 12225 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
830047fd 12226
048addec 12227 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
b116830b 12228
048addec
JD
12229 * indent.c (current_column_1, Fmove_to_column): Separate the code
12230 for display-table glyphs from the code for buffer text, to fix
12231 bugs in the former.
830047fd 12232
048addec 122332001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
b116830b 12234
048addec
JD
12235 * buffer.c (Fbuffer_local_value): New function.
12236 (syms_of_buffer): Defsubr it.
2df5238c 12237
048addec
JD
12238 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
12239 value of `cursor-in-non-selected-windows'.
4e397688 12240
048addec
JD
12241 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
12242 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
12243 (syms_of_xdisp): Initialize it.
48b0f3ae 12244
048addec 122452001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2df5238c 12246
048addec 12247 * xfns.c (Fx_create_frame): Doc fix.
3ecaf7e5 12248
048addec
JD
12249 * coding.c: Change doc-string comments to `new style' [w/`doc:'
12250 keyword].
3ecaf7e5 12251
048addec
JD
12252 * eval.c (top_level_value, top_level_set): Remove commented and
12253 #ifdef'd-out code.
12254 (Fdefvar): Fix usage in doc-string.
3ecaf7e5 12255
048addec 122562001-11-03 Richard M. Stallman <rms@gnu.org>
3ecaf7e5 12257
048addec 12258 * xfns.c: Include unistd.h, if it exists.
8db2e33b 12259
048addec 12260 * editfns.c: Move the include of ctype.h after unistd.h.
8db2e33b 12261
048addec 12262 * gmalloc.c: Test BROKEN_PROTOTYPES.
aed29b97 12263
048addec 122642001-11-03 Ken Raeburn <raeburn@gnu.org>
aed29b97 12265
048addec
JD
12266 * lisp.h (CHECK_STRING_CAR): New macro.
12267 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
12268 treating XCAR and XCDR as lvalues.
12269 (openp): Use CHECK_STRING_CAR.
12270 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
aed29b97 12271
048addec 122722001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
6cb16f95 12273
048addec
JD
12274 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
12275 (SIGMASKTYPE): Define.
1b1acc13 12276
048addec 12277 * syssignal.h (sigunblock): Don't define if already defined.
020f9b38 12278
048addec 122792001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
020f9b38 12280
048addec
JD
12281 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
12282 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
12283 Fix typos in comments.
6cb16f95 12284
048addec
JD
12285 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
12286 and #ifdef'd-out code.
12287 Fix and reindent comments.
6cb16f95 12288
048addec 12289 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
6cb16f95 12290
048addec
JD
12291 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
12292 argument `i' in macros.
6cb16f95 12293
048addec
JD
12294 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
12295 `i' in macros.
7e9d3c2f 12296
048addec
JD
12297 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
12298 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
12299 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
12300 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
12301 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
12302 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
12303 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
12304 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
12305 in macros.
7e9d3c2f 12306
048addec
JD
12307 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
12308 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
12309 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
12310 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
12311 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
12312 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
12313 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
12314 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
12315 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
12316 (remove unused second argument).
7e9d3c2f 12317
048addec 123182001-11-02 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 12319
048addec
JD
12320 * syntax.c (describe_syntax): New wrapper.
12321 (Finternal_describe_syntax_value): Rename from describe_syntax.
12322 Don't insert space at front and \n at the end.
12323 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
e6bff182 12324
048addec
JD
12325 * regex.c (re_wctype): Try to fix some warnings.
12326 (regcomp, regexec): Don't forget the __restrict.
9ba48103 12327
048addec 123282001-11-02 Richard M. Stallman <rms@gnu.org>
9ba48103 12329
048addec 12330 * textprop.c (Fget_char_property): Doc fix.
9ba48103 12331
048addec 123322001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9ba48103 12333
048addec 12334 * process.c (Fstart_process): Add usage to doc-string.
c22e59e1 12335
048addec 12336 * data.c (Fsetq_default): Ditto.
c22e59e1 12337
048addec 12338 * callint.c (Finteractive): Ditto.
9271ed2c 12339
048addec 123402001-11-01 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 12341
048addec
JD
12342 * macros.c: Don't include keymap.h any more.
12343
123442001-11-01 Richard M. Stallman <rms@gnu.org>
12345
12346 * data.c (Fmake_local_variable): Doc fix.
12347
12348 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
12349 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
e6bff182 12350
048addec 12351 * keymap.c (Fdescribe_buffer_bindings): Print character property
9271ed2c
RS
12352 bindings along with or instead of the buffer local map.
12353 Make the overriding maps override what they should.
12354
f00691a3 123552001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8b8bd9c6
PJ
12356
12357 * window.c (grow_mini_window): Fix typo in comment.
12358
27188d11
GM
123592001-11-01 Gerd Moellmann <gerd@gnu.org>
12360
7b49b9d2
GM
12361 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
12362 (XTset_vertical_scroll_bar): Likewise.
12363
43f7c3ea
GM
12364 * xfns.c (x_build_heuristic_mask): Use four_corners_best
12365 instead of IMAGE_BACKGROUND.
c22e59e1 12366
b350c2e5
GM
12367 * xfns.c (four_corners_best): Reindent.
12368
c22e59e1 12369 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
27188d11
GM
12370 Handle :box so that it is possible to specify sexprs.
12371
bf00d461
EZ
123722001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
12373
12374 * s/hpux11.h: New file.
12375
f00691a3 123762001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e10df59 12377
2b209b97
PJ
12378 * emacs.c (USAGE1): Show command line option --no-window-system
12379 instead of --no-windows in usage.
12380 (standard_args): Rename --no-windows to --no-window-system.
12381 (bug_reporting_address): Follow Emacs coding conventions.
12382
9dbc9081
PJ
12383 * eval.c (Fcommandp): Doc fix.
12384 Change doc-string comments to `new style' [w/`doc:' keyword].
12385
4e10df59
PJ
12386 * frame.c (Fframe_live_p): Doc fix.
12387
12388 * buffer.c (selective-display-ellipses): Doc fix.
12389
dd387b25
GM
123902001-10-31 Gerd Moellmann <gerd@gnu.org>
12391
fe957e65
GM
12392 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
12393
dd387b25
GM
12394 * xfaces.c (realize_x_face): If C is not a single-byte character,
12395 set the face's colors_copied_bitwise_p instead of the defaulted_p
12396 members which have a different meaning.
12397 (free_face_colors): Do nothing for a face whose colors have been
12398 copied bitwise.
12399
c22e59e1 12400 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
dd387b25 12401
f00691a3 124022001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2e1280f8 12403
687784e8
PJ
12404 * marker.c, mocklisp.c: Change doc-string comments to `new style'
12405 [w/`doc:' keyword].
2e1280f8 12406
b9d9a9b9
GM
124072001-10-31 Gerd Moellmann <gerd@gnu.org>
12408
12409 * fns.c (require_unwind): Return Lisp_Object.
12410
f00691a3 124112001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
48400103 12412
fa1361cb
PJ
12413 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
12414 (last-input-char): Revert doc-string to be the same as the
12415 doc-string of `last-input-event'.
12416
6c465a15 12417 * xdisp.c: Fix typos in comments.
48400103 12418
eafa3196
GM
124192001-10-31 Gerd Moellmann <gerd@gnu.org>
12420
12421 * window.c (grow_mini_window): Handle case that the root
12422 window is already smaller than the nominal mininum height.
12423
747d3f2a
SM
124242001-10-30 Stefan Monnier <monnier@cs.yale.edu>
12425
bf9bb76f
SM
12426 * emacs.c (main): Don't call keys_of_macros any more.
12427
12428 * lisp.h (keys_of_macros): Remove.
12429
12430 * macros.c (keys_of_macros): Remove.
12431
747d3f2a
SM
12432 * xfaces.c (Fface_attribute_relative_p): Declare args.
12433
5e905a57
JR
124342001-10-30 Jason Rumney <jasonr@gnu.org>
12435
12436 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
12437 (enum_font_cb2): Ignore fonts with vertical orientation.
12438
3a426197
RS
124392001-10-30 Richard M. Stallman <rms@gnu.org>
12440
12441 * keyboard.c (Finput_pending_p): Doc fix.
12442
a742d646
GM
124432001-10-30 Gerd Moellmann <gerd@gnu.org>
12444
259cf6bc
GM
12445 * xterm.c (x_after_update_window_line): Don't run the code
12446 clearing in borders for rows whose visible height is 0.
12447
3f99f948
GM
12448 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
12449 resized_p flag is set. If not set, use the much less flickering
12450 method previously used.
12451
12452 * dispnew.c (change_frame_size_1): Set frame's resized_p.
12453
12454 * frame.h (struct frame) <resized_p>: New member.
12455
b4a3be43
GM
12456 * lread.c (to_multibyte): Ensure read_buffer is at least twice
12457 as large as the number of bytes to convert.
747d3f2a 12458
a742d646
GM
12459 * lread.c (to_multibyte): New function.
12460 (read1): Use it.
12461
cacbb9e9
EZ
124622001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
12463
12464 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
12465
99cb6b2f
GM
124662001-10-30 Gerd Moellmann <gerd@gnu.org>
12467
327f42ee 12468 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
747d3f2a
SM
12469 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
12470 if the row's fill_line_p is set and drawing the last glyph with
12471 DRAW_IMAGE_{RAISED,SUNKEN}.
327f42ee 12472
99cb6b2f
GM
12473 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
12474
8e8223e2
SM
124752001-10-29 Stefan Monnier <monnier@cs.yale.edu>
12476
12477 * xmenu.c: Include coding.h and charset.h.
12478 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
12479 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
12480 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
12481 Explicitly set wv->help. Use `TRUE' rather than `True'.
12482 (menu_help_callback): Use empty_string.
12483
12484 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
12485 (Fx_popup_dialog): Explicitly init f.
12486 (w32_menu_display_help): Use empty_string.
12487
4d083a8f
RS
124882001-10-29 Richard M. Stallman <rms@gnu.org>
12489
b2304472
RS
12490 * fns.c (Frequire): Detect recursive try to require the same
12491 feature 3 or more levels deep, and get error.
12492 (require_unwind): New subroutine.
12493 (require_nesting_list): New variable.
12494 (syms_of_fns): Init and staticpro it.
12495
4d083a8f
RS
12496 * print.c (print_object): Clarify indication of insertion type.
12497
2fe41216
EZ
124982001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
12499
90480000
EZ
12500 * coding.c (syms_of_coding): Document that locale-coding-system is
12501 used for decoding input on X.
12502
2fe41216
EZ
12503 * window.c (Fscroll_left, Fscroll_right): Doc fix.
12504
f00691a3 125052001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
74e79967
PJ
12506
12507 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
12508 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
12509
60ebcfe8
GM
125102001-10-29 Gerd Moellmann <gerd@gnu.org>
12511
9a7bdceb
GM
12512 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
12513 use NO_CURSOR if cursor_in_non_selected_windows is false.
12514
3f08fcd2
GM
12515 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
12516 the slant attribute if FRAME is t.
12517
0ccfdad2
GM
12518 * xfns.c (x_set_internal_border_width): Set frame garbaged
12519 when X window doesn't exist yet.
12520
ef253080
GM
12521 * xterm.c (x_after_update_window_line): Clear internal border
12522 in different circumstances.
b116830b 12523
60ebcfe8
GM
12524 * xterm.c (XTread_socket) <KeyPress>: Don't use
12525 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
12526 <handa@etl.go.jp>.
12527
73d25f9c
EZ
125282001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
12529
12530 * m/ibms390.h: New file. From Adam Thornton
12531 <athornton@sinenomine.net>.
12532
cac1daf0
GM
125332001-10-28 Gerd Moellmann <gerd@gnu.org>
12534
053b3256 12535 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
b116830b 12536
cac1daf0
GM
12537 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
12538 a loop counter.
12539
f00691a3 125402001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13b1a09c 12541
186486eb
PJ
12542 * emacs.c: Use argv[0] instead of emacs when -t was specified.
12543
4707d2d0
PJ
12544 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
12545 keyword].
12546 Fix typos in comments.
b116830b 12547
d883731c
PJ
12548 * emacs.c (bug_reporting_address): New function.
12549 Use it when displaying usage message.
12550
04012254
PJ
12551 * minibuf.c (read_minibuf): Remove unused external declaration of
12552 variable `Qread_only'.
12553
13b1a09c
PJ
12554 * keymap.c (access_keymap): Remove unused variable `charset'.
12555
5bbf4378
MB
125562001-10-28 Miles Bader <miles@gnu.org>
12557
12558 * xfaces.c (merge_face_heights): Handle TO being relative as well.
12559 Remove #ifdef'd-out code.
12560 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
12561 (syms_of_xfaces): Initialize them.
12562
1ce1e4ee
JR
125632001-10-27 Jason Rumney <jasonr@gnu.org>
12564
12565 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
12566 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
12567 position using the system caret.
12568
12569 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
12570 (w32_system_caret_height, w32_system_caret_x)
12571 (w32_system_caret_y): New variables for tracking system caret.
12572 (w32_initialize): Initialize them.
c2d53558 12573 (x_display_and_set_cursor): Make system caret follow the active cursor.
1ce1e4ee 12574
c2d53558
SM
12575 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
12576 New messages types.
1ce1e4ee
JR
12577
12578 * w32term.c (note_mouse_highlight): Clear old help_echo.
12579
f00691a3 125802001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e30ce42 12581
bb4600a4
PJ
12582 * xterm.c: Fix typo in a comment.
12583
7db35a48
PJ
12584 * emacs.c: Fix typos in comments.
12585 Remove unnecessary spaces.
12586 Change doc-string comments to `new style' [w/`doc:' keyword].
12587 (USAGE2): Fix typos in usage string.
12588
a7248e4f
PJ
12589 * xterm.c: Fix typo in a comment.
12590
4e30ce42
PJ
12591 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
12592 emacs.c.
12593
62725a92
GM
125942001-10-27 Gerd Moellmann <gerd@gnu.org>
12595
798dbe1f 12596 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
c2d53558 12597 instead of 1/2 line_height in the heuristic for skipping
798dbe1f
GM
12598 farther backward when target_y was not reached.
12599
62725a92
GM
12600 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
12601 Display errno only if non-zero.
12602 (sound_warning): New function.
12603 (vox_configure): Don't treat failing to set sample rate as error.
12604 (various places): Improve error messages.
12605
d4e34d24
EZ
126062001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
12607
944e6f60
EZ
12608 * fileio.c (Faccess_file): Run the argument filename through
12609 Fexpand_file_name, before using it.
12610
d4e34d24
EZ
12611 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
12612 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
12613
38d2af0c
GM
126142001-10-26 Gerd Moellmann <gerd@gnu.org>
12615
da80a8d5
GM
12616 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
12617
38d2af0c
GM
12618 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
12619 Fix clearing in the case of scroll bars on the right.
c2d53558 12620
45de4a6f 126212001-10-26 Juanma Barranquero <lektu@terra.es>
56f508dd
EZ
12622
12623 * w32gui.h (XImage): Add a dummy typedef.
12624
fbd5ceb2
GM
126252001-10-26 Gerd Moellmann <gerd@gnu.org>
12626
c2d53558 12627 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
fbd5ceb2 12628
b23236fb
EZ
126292001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
12630
12631 * frame.c (Fframe_parameter): Fix last change.
12632
5d991fc4
EZ
12633 * fileio.c: Revert last change (which removed old commented-out
12634 version of expand-file-name). Add a comment that explains why
12635 this old version should not be removed.
12636
879eadc3
GM
126372001-10-25 Gerd Moellmann <gerd@gnu.org>
12638
75700ff2
GM
12639 * frame.c (Fframe_parameter): Fix a bug whereby some
12640 ``artificial'' frame parameters, like `minibuffer' were not
12641 obtained by calling Fframe_parameters.
12642
dfe92a6a
GM
12643 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
12644 cursor differently.
12645
879eadc3
GM
12646 * xdisp.c (move_it_vertically_backward): Compute line height
12647 differently. Add heuristic to try to be more compatible to 20.x.
12648
e1010ebe
SM
126492001-10-25 Stefan Monnier <monnier@cs.yale.edu>
12650
d73a471b
SM
12651 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
12652
d6da5a06
GM
12653 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
12654 boolean.
e1010ebe 12655
f66bd220
MB
126562001-10-25 Miles Bader <miles@gnu.org>
12657
12658 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
12659 BG is a pointer to a structure, not a structure.
12660 (gif_format, png_format): Add missing commas.
12661
d436d538
RS
126622001-10-24 Richard M. Stallman <rms@gnu.org>
12663
12664 * xfaces.c (Fface_attributes_as_vector): New function.
c2d53558 12665 (syms_of_xfaces): Defsubr it.
d436d538 12666
f00691a3 126672001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
075c507b
PJ
12668
12669 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
12670 variable `area'.
12671
f00691a3 126722001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d492b584 12673
c2d53558 12674 * search.c (scan_newline): Remove unused variable `selective_display'.
d492b584 12675
e2a57b34
MB
126762001-10-25 Miles Bader <miles@gnu.org>
12677
12678 * dispextern.h (struct image): Add `background',
12679 `background_valid', and `background_transparent' fields.
12680 (image_background, image_background_transparent): New declarations.
12681 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
12682 * xfns.c (image_background, image_background_transparent)
12683 (four_corners_best): New functions.
c2d53558 12684 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
e2a57b34
MB
12685 (gs_format): Add `:background' entry.
12686 (lookup_image): Set IMG's background color if specified.
12687 (pbm_load, xbm_load_image, png_load): Set IMG's background field
12688 when appropriate.
12689 (x_clear_image_1): Reset `background_valid' and
12690 `background_transparent_valid' fields.
12691 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
12692 calculating it here. Set IMG's background_transparent field.
12693 (enum xpm_keyword_index): Add XPM_BACKGROUND.
12694 (enum png_keyword_index): Add PNG_BACKGROUND.
12695 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
12696 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
12697 (enum gif_keyword_index): Add GIF_BACKGROUND.
12698 (enum gs_keyword_index): Add GS_BACKGROUND.
c2d53558 12699 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
e2a57b34
MB
12700 Pre-calculate image background color where necessary.
12701 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
12702 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
12703 color to use for image glyph reliefs.
12704
b547b6e8
GM
127052001-10-24 Gerd Moellmann <gerd@gnu.org>
12706
d9e3b8c6
GM
12707 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
12708 in full-width rows.
c2d53558 12709
b547b6e8
GM
12710 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
12711 Fix clearing of area not covered by scroll bar.
12712
f00691a3 127132001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2beb36f9
PJ
12714
12715 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
12716 and `real_start'.
c2d53558 12717 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
2beb36f9
PJ
12718 (glyph_rect): Remove unused variable `area'.
12719
76cb5e06
GM
127202001-10-24 Gerd Moellmann <gerd@gnu.org>
12721
bdbdebff 12722 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
c2d53558
SM
12723
12724 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
12725 (row_containing_pos): Take additional argument DY.
12726 Treat rows ending in middle of char differently.
62e33982
GM
12727 (display_line): Handle tabs on window systems differently.
12728
12729 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
12730 with additional argument.
12731
12732 * dispextern.h (row_containing_pos): Adjust prototype.
12733
76cb5e06
GM
12734 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
12735 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
12736 (try_window_id, try_window_reusing_current_matrix)
12737 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
6c465a15 12738 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
76cb5e06 12739
f00691a3 127402001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
996fee11 12741
c9e60620
PJ
12742 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
12743 gnuemacs).
12744 (HAVE_BOXES): Fix typo in comment.
12745 (push_menu_pane): Fix typo in comment.
12746
3b552d56
PJ
12747 * xdisp.c: (display_prop_string_p): Remove unused local declaration
12748 of `Qwhen'.
12749 (single_display_prop_string_p): Remove unused local declarations
12750 of `Qwhen' and `Qmargin'.
12751 (string_buffer_position): Remove unused variable `around'.
12752 (store_frame_title): Remove unused variable `width'.
12753
15c565ac
PJ
12754 * window.c: Don't define max.
12755 (coordinates_in_window): Remove unused variable `uy'.
12756
a8818eb9
PJ
12757 * widget.c: Don't define max.
12758
996fee11
PJ
12759 * process.c: Don't define max.
12760 (create_process): Remove unused variable `buffer'.
12761
496e1a5b
GM
127622001-10-23 Gerd Moellmann <gerd@gnu.org>
12763
c2d53558 12764 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
496e1a5b 12765
5905ae8b
EZ
127662001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
12767
12768 * xfaces.c (Finternal_set_lisp_face_attribute)
12769 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
12770 frame is on a windowed display.
12771
24db49fb
GM
127722001-10-23 Gerd Moellmann <gerd@gnu.org>
12773
c2d53558
SM
12774 * dispnew.c (sync_window_with_frame_matrix_rows):
12775 Fix handling of windows which aren't full-width, fix handling
c51488cd
GM
12776 of marginal areas.
12777
c2d53558 12778 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
24db49fb 12779
f0487f05
EZ
127802001-10-23 Andreas Schwab <schwab@suse.de>
12781
12782 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
12783 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
12784
f0a48a01
GM
127852001-10-23 Gerd Moellmann <gerd@gnu.org>
12786
c2d53558 12787 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
f0a48a01
GM
12788 REAL_END. Notice if cursor gets overwritten.
12789 (notice_overwritten_cursor): Take X positions as parameters.
12790 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
12791 around call to x_draw_glyphs.
12792
f00691a3 127932001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
a50a10a0 12794
fc11dff0
PJ
12795 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
12796 instead of C) and usage.
a50a10a0 12797
fc11dff0
PJ
12798 * editfns.c (char-to-string): Fix argument names (use CHAR instead
12799 of C) and usage.
a50a10a0
PJ
12800
12801 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
12802 `left', `max_width' and `max_height'.
12803
8738febd
GM
128042001-10-23 Gerd Moellmann <gerd@gnu.org>
12805
12806 * xdisp.c (display_line): For a tab continued to the next line,
12807 set row's ends_in_middle_of_char_p.
12808
653c329b
GM
128092001-10-22 Gerd Moellmann <gerd@gnu.org>
12810
12811 * xdisp.c (display_line): Fix computation of continuation lines
12812 width for TABs.
12813
f00691a3 128142001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
f958c5ac 12815
7ba51063
PJ
12816 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
12817 `Qlaplace'.
12818
f958c5ac
PJ
12819 * fileio.c: Remove unused code.
12820
eb360291
MB
128212001-10-22 Miles Bader <miles@gnu.org>
12822
12823 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
12824 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
12825 Remove `DOC_STRINGS_IN_COMMENTS' cases.
12826
98515cf0
JR
128272001-10-21 Jason Rumney <jasonr@gnu.org>
12828
12829 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
12830
93026d88
EZ
128312001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
12832
12833 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
12834 (Finsert_string): Avoid the multi-line string literals warning.
12835
c9a95b79
MB
128362001-10-22 Miles Bader <miles@gnu.org>
12837
12838 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
12839 (Fdocumentation): Don't use it.
12840 (syms_of_doc): Don't initialize it.
12841
12842 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
12843 * print.c (Fwith_output_to_temp_buffer): Likewise.
12844 * window.c (Fsave_window_excursion): Likewise.
c2d53558 12845 * editfns.c (Fsave_excursion, Fsave_current_buffer)
c9a95b79 12846 (Fsave_restriction): Likewise.
c2d53558
SM
12847 * eval.c (Frun_hooks, Frun_hook_with_args)
12848 (Frun_hook_with_args_until_failure)
12849 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
12850 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
12851 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
c9a95b79
MB
12852 (Funwind_protect, Fcondition_case): Likewise.
12853 * coding.c (Ffind_operation_coding_system): Likewise.
12854 * keyboard.c (Ftrack_mouse): Likewise.
12855
a3b10252
MB
128562001-10-21 Miles Bader <miles@gnu.org>
12857
c2d53558 12858 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
a3b10252
MB
12859 (Fmake_hash_table): Add usage: string to doc string.
12860 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
c2d53558 12861 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
a3b10252
MB
12862 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
12863 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
12864 (Fml_prefix_argument_loop): Likewise.
12865
f00691a3 128662001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c6f73eec 12867
c2d53558 12868 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
888ebd13 12869
c6f73eec
PJ
12870 * sysdep.c (init_sys_modes): Change doc-string comments to `new
12871 style' [w/`doc:' keyword].
12872
12873 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
12874 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
12875 comments to `new style' [w/`doc:' keyword].
12876
3cf3436e
JR
128772001-10-21 Jason Rumney <jasonr@gnu.org>
12878
12879 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
12880
c169b8f1
JR
12881 * w32term.c (remember_mouse_glyph): New function.
12882 (w32_mouse_position): Use it.
12883 (note_mouse_movement): If the mouse moved off the glyph, remember
12884 its new position.
c2d53558 12885
4fdd691b
JR
12886 * w32term.h (struct w32_output): Correct spelling of x_compatible.
12887 (w32_display_info): Add mouse_face_overlay.
12888
c169b8f1
JR
12889 * w32term.c (notice_overwritten_cursor): Renamed from
12890 note_overwritten_text_cursor. Rewritten to take glyph widths into
12891 account.
12892 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
12893 (fast_find_string_pos): New function.
12894 (fast_find_position): Return the correct vpos. Add parameter
12895 STOP. In the final row, stop before glyphs having STOP as object.
12896 Don't consider glyphs that are not from a buffer.
12897 (fast_find_position) [0]: Add a presumably more correct version
12898 for after 21.1.
12899 (expose_window_tree, expose_frame): Don't compute intersections here.
12900 (expose_window): Do it here instead.
12901 (expose_window_tree, expose_window, expose_line): Return 1 when
12902 overwriting mouse-face.
12903 (expose_window): If W is the window currently being updated, mark
12904 the frame garbaged.
12905 (expose_frame): If mouse-face was overwritten, redo it.
12906 (x_use_underline_position_properties): New variable.
12907 (syms_of_xterm): DEFVAR_BOOL it.
12908 (x_draw_glyph_string): Add comment to use it in future.
12909 (x_draw_glyph_string): Restore clipping after drawing box.
12910 Fix a computation of the underline position.
12911 (w32_get_glyph_string_clip_rect): Minor cleanup.
12912 (x_fill_stretch_glyph_string): Remove an assertion.
12913 (x_produce_glyphs): Don't convert multibyte characters
12914 to unibyte characters in unibyte buffers.
12915 (cursor_in_mouse_face_p): New function.
12916 (x_draw_stretch_glyph_string): Use it to choose a different GC
12917 when drawing a cursor within highlighted text. Don't draw
12918 background again if it has already been drawn.
12919 (x_draw_glyph_string_box): Don't draw a full-width
12920 box just because the glyph row's full_width_p flag is set.
12921 (x_draw_glyphs): Fix computation of rightmost x for
12922 full-width rows.
12923 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
12924 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
12925 change bottom shadow accordingly. Some cleanup.
12926 (x_update_window_end): Handle overwritten mouse face
12927 also for tool bar windows.
12928 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
12929 DRAW is DRAW_IMAGE_RAISED.
12930 (clear_mouse_face): Return 1 if text with mouse face was
2c568af5
SM
12931 actually redrawn. Make the function static.
12932 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
c169b8f1
JR
12933 optimize away highlighting if we pass over that same overlay again.
12934 (note_mouse_highlight): Call mouse_face_overlay_overlaps
12935 to detect a case where we have to highlight a different region
12936 despite not having left the currently highlighted region.
12937 Set mouse_face_overlay in the x_display_info. Avoid changing the
12938 mouse pointer shape when show_mouse_face has already done it, or
12939 there is no need. Handle mouse-face and help-echo in strings.
12940 (glyph_rect): New function.
12941 (w32_mouse_position): Use it to raise the threshold for mouse
12942 movement event generation.
12943 (w32_initialize_display_info): Initialize the x_display_info's
12944 mouse_face_overlay.
12945 (w32_set_vertical_scroll_bar): Don't clear a zero height
12946 or width area.
12947 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
12948 a widget to zero height.
12949
3cf3436e 12950 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
4fdd691b 12951 Protect unibyte strings created by replacing their multibyte
3cf3436e
JR
12952 equivalents in menu_items.
12953 (w32_menu_show): Don't overwrite an item's name with its key
12954 description in case the description is a multibyte string.
12955 (single_submenu): Some cleanup.
12956
12957 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
12958 (postprocess_image): New function.
12959 (lookup_image): Call it for all image types except PostScript.
12960 (x_kill_gs_process): Call postprocess_image.
12961 (tiff_error_handler, tiff_warning_handler): New functions.
12962 (tiff_load): Install them as handlers.
12963 (x_kill_gs_process): Recognize if someone has cleared the image
12964 cache under us.
12965 (valid_image_p): Protect better against invalid image
12966 specifications. Previous code could signal an error.
12967 (Fx_hide_tip, Fshow_tip): Doc fix.
12968 (Fv_max_tooltip_size): New variable.
12969 (syns_of_xfns): DEFVAR_LISP it.
12970 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
12971 window buffer to *tip* right after creating the frame. Set frame's
12972 window_width. Use a maximum tooltip size specified by
12973 Vx_max_tooltip_size, if that has valid contents.
12974 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
12975 Make sure the tooltip is completely visible.
12976 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
12977 (Fx_create_frame): Adjust the frame's height for presence
12978 of the tool bar before calling x_figure_window_size.
12979 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
12980 when the window gets smaller.
12981 (x_set_foreground_color): Set frame's cursor_pixel.
12982 (x_set_foreground_color, x_set_background_color): Cleaned up.
12983 (x_set_font): Handle case of x_new_fontset returning the same name
12984 as before, although there was a change in fontsets.
12985
386ca361
MB
129862001-10-21 Miles Bader <miles@gnu.org>
12987
c2d53558 12988 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
386ca361
MB
12989 (Flogxor): Add usage: string to doc string.
12990 * charset.c (Fstring): Likewise.
12991 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
12992 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
12993
f00691a3 129942001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14ff1ee0 12995
03be2694
PJ
12996 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
12997
12998 * alloc.c: Reindent DEFUNs with doc: keywords.
12999
13000 * abbrev.c (Finsert_abbrev_table_description): Reindent.
13001
14ff1ee0
PJ
13002 * frame.c: Change doc-string comments to `new style' [w/`doc:'
13003 keyword].
13004
2f147815 13005See ChangeLog.9 for earlier changes.
6922b018
KH
13006
13007;; Local Variables:
49b3bd82 13008;; coding: iso-2022-7bit
6922b018 13009;; End:
2a34a036 13010
2f147815 13011 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
2a34a036
GM
13012 Copying and distribution of this file, with or without modification,
13013 are permitted provided the copyright notice and this notice are preserved.
ab5796a9
MB
13014
13015;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4