(XOBJ): Consolidate into one list. Add fringe.o.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
a12d3d87
KS
12004-03-11 Kim F. Storm <storm@cua.dk>
2
3 * Makefile.in (XOBJ): Consolidate into one list. Add fringe.o.
4 Move gtkutil.o to new GTK_OBJ list.
5 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
6 (GTK_OBJ) [USE_GTK]: New declaration.
7 (obj): Add $(GTK_OBJ) to list.
8
5243c06a
ST
92004-03-11 Steven Tamm <steventamm@mac.com>
10 * image.c [MAC_OSX]: Include sys/stat.h
11
12 * macfns.c (syms_of_macfns): Remove definitions of things now
13 defined in image.c
14
c0f97789
KS
152004-03-11 Kim F. Storm <storm@cua.dk>
16
17 The following changes consolidates the identical/similar image
18 support code previously found in xfns.c, w32fns.c, and macfns.c
19 into a new file image.c.
20
21 * makefile.w32-in (OBJ1): Add image.o.
22 ($(BLD)/image.$(O)): Add dependencies.
23
24 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
25 (image.o): Add dependencies.
26
27 * image.c: New file with consolidated image support code.
28 (COLOR_TABLE_SUPPORT): New define to control whether
29 color table support is available (X only).
30 (Bitmap_Record): Common name for x_bitmap_record,
31 w32_bitmap_record, and mac_bitmap_record.
32 (XImagePtr): Common name for pointer to XImage or equivalent.
33 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
34 to XImagePtr on X+MAC, and to HDC on W32.
35 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
36 (NO_PIXMAP): Common name for "None" or equivalent.
37 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
38 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
39 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
40 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen): Define
41 with suitable equivalents on W32 and MAC for code sharing.
42 (XDrawLine): Define on MAC for code sharing.
43 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
44 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
45 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
46 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
47 (x_reference_bitmap, x_create_bitmap_from_data)
48 (x_create_bitmap_from_file, x_destroy_bitmap)
49 (x_destroy_all_bitmaps, x_create_bitmap_mask)
50 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
51 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
52 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
53 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
54 (define_image_type, lookup_image_type, valid_image_p)
55 (image_error, enum image_value_type, struct image_keyword)
56 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
57 (make_image, free_image, prepare_image_for_display, image_ascent)
58 (four_corners_best, image_background, image_background_transparent)
59 (x_clear_image_1, x_clear_image, x_alloc_image_color)
60 (make_image_cache, free_image_cache, clear_image_cache)
61 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
62 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
63 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
64 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
65 (init_image_func_pointer, image_load_quartz2d)
66 (struct ct_color, init_color_table, free_color_table)
67 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
68 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
69 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
70 (x_disable_image, x_build_heuristic_mask)
71 (XBM support, XPM support, PBM support, PNG support, JPEG support)
72 (TIFF support, GIF support, Ghostscript support): Consolidate image
73 code from xfns.c, w32fns.c, and macfns.c.
74 (syms_of_image): Consolidate image related symbol setup here.
75 (init_image): Consolidate image related initializations here.
76
77 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
78 and init_image. Remove call to init_xfns.
79
80 * macterm.h (struct mac_bitmap_record): Add file member. Not
81 currently used, but simplifies code sharing.
82
83 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
84 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
85 (x_reference_bitmap, x_create_bitmap_from_data)
86 (x_create_bitmap_from_file, x_destroy_bitmap)
87 (x_destroy_all_bitmaps, x_create_bitmap_mask)
88 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
89 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
90 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
91 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
92 (define_image_type, lookup_image_type, valid_image_p)
93 (image_error, enum image_value_type, struct image_keyword)
94 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
95 (make_image, free_image, prepare_image_for_display, image_ascent)
96 (four_corners_best, image_background, image_background_transparent)
97 (x_clear_image_1, x_clear_image, x_alloc_image_color)
98 (make_image_cache, free_image_cache, clear_image_cache)
99 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
100 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
101 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
102 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
103 (init_image_func_pointer, image_load_quartz2d)
104 (struct ct_color, init_color_table, free_color_table)
105 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
106 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
107 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
108 (x_disable_image, x_build_heuristic_mask)
109 (XBM support, XPM support, PBM support, PNG support, JPEG support)
110 (TIFF support, GIF support, Ghostscript support): Merge with image
111 code from xfns.c and macfns.c into image.c.
112 (syms_of_xfns): Move image related symbols to image.c.
113 (init_external_image_libraries, init_xfns): Remove; initialization
114 moved to init_image in image.c.
115
116 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
117 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
118 (x_reference_bitmap, x_create_bitmap_from_data)
119 (x_create_bitmap_from_file, x_destroy_bitmap)
120 (x_destroy_all_bitmaps, x_create_bitmap_mask)
121 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
122 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
123 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
124 (define_image_type, lookup_image_type, valid_image_p)
125 (image_error, enum image_value_type, struct image_keyword)
126 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
127 (make_image, free_image, prepare_image_for_display, image_ascent)
128 (four_corners_best, image_background, image_background_transparent)
129 (x_clear_image_1, x_clear_image, x_alloc_image_color)
130 (make_image_cache, free_image_cache, clear_image_cache)
131 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
132 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
133 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
134 (struct ct_color, init_color_table, free_color_table)
135 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
136 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
137 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
138 (x_disable_image, x_build_heuristic_mask)
139 (XBM support, XPM support, PBM support, PNG support, JPEG support)
140 (TIFF support, GIF support, Ghostscript support): Merge with image
141 code from xfns.c and macfns.c into image.c.
142 (syms_of_xfns): Move image related symbols to image.c.
143 (init_external_image_libraries, init_xfns): Remove; initialization
144 moved to init_image in image.c.
145
146 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
147 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
148 (x_reference_bitmap, x_create_bitmap_from_data)
149 (x_create_bitmap_from_file, x_destroy_bitmap)
150 (x_destroy_all_bitmaps, x_create_bitmap_mask)
151 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
152 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
153 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
154 (define_image_type, lookup_image_type, valid_image_p)
155 (image_error, enum image_value_type, struct image_keyword)
156 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
157 (make_image, free_image, prepare_image_for_display, image_ascent)
158 (four_corners_best, image_background, image_background_transparent)
159 (x_clear_image_1, x_clear_image, x_alloc_image_color)
160 (make_image_cache, free_image_cache, clear_image_cache)
161 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
162 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
163 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
164 (struct ct_color, init_color_table, free_color_table)
165 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
166 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
167 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
168 (x_disable_image, x_build_heuristic_mask)
169 (XBM support, XPM support, PBM support, PNG support, JPEG support)
170 (TIFF support, GIF support, Ghostscript support): Merge with
171 w32fns.c and macfns.c image code into image.c.
172 (syms_of_xfns): Move image related symbols to image.c.
173 (init_xfns): Remove; initialization moved to init_image in image.c.
174
175 * lisp.h (syms_of_image, init_image): Add protoypes.
176 (init_xfns): Remove prototype.
177
178 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
179 (x_reference_bitmap, x_create_bitmap_from_data)
180 (x_create_bitmap_from_file, x_destroy_bitmap)
181 (x_create_bitmap_mask): Move prototypes from dispextern.h.
182 (gamma_correct) [MAC_OS]: Add prototype.
183
184 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
185 (x_reference_bitmap, x_create_bitmap_from_data)
186 (x_create_bitmap_from_file, x_destroy_bitmap)
187 (x_create_bitmap_mask): Move prototypes to dispextern.h.
188
6eced09c
KH
1892004-03-09 Kenichi Handa <handa@etlken2>
190
191 * coding.c (decode_coding_emacs_mule): Handle insufficent source
192 correctly.
193
9a7e95f3
RS
1942004-03-04 Richard M. Stallman <rms@gnu.org>
195
04a6e76b
RS
196 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
197
9a7e95f3
RS
198 * window.c (Fdisplay_buffer): Doc fix.
199
200 * buffer.c (Fpop_to_buffer): Doc fix.
201
6c2488df
KS
2022004-03-03 Kim F. Storm <storm@cua.dk>
203
204 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
205
d8d95bc7
SM
2062004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
207
208 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
209
357589bf
RS
2102004-03-02 Richard M. Stallman <rms@gnu.org>
211
212 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
213
409949b5
KH
2142004-03-02 Kenichi Handa <handa@m17n.org>
215
216 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
217
d24bc50f
KS
2182004-03-02 Kim F. Storm <storm@cua.dk>
219
220 * window.h (struct window): New member overlay_arrow_bitmap.
221
222 * window.c (make_window): Initialize overlay_arrow_bitmap.
223
224 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
225 implement and integrate multiple overlay arrows with redisplay.
226 (syms_of_xdisp): DEFVAR_LISP and initialize it.
227 (last_arrow_position, last_arrow_string): Replace by properties.
228 (Qlast_arrow_position, Qlast_arrow_string)
229 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
230 (syms_of_xdisp): Intern and staticpro them.
231 (overlay_arrow_string_or_property, update_overlay_arrows)
232 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
233 (overlay_arrow_at_row): New functions for multiple overlay arrows.
234 (redisplay_internal): Use them instead of directly accessing
235 Voverlay_arrow_position etc. for multiple overlay arrows.
236 (mark_window_display_accurate): Use update_overlay_arrows.
237 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
238 (try_window_id): Use overlay_arrows_changed_p.
239 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
240 (display_line): Use overlay_arrow_at_row to check multiple
241 overlay arrows, and get relevant overlay-arrow-string and
d8d95bc7 242 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
d24bc50f
KS
243 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
244 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
245
246 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
247 (update_window_fringes): Remove unused code.
248
c1464661
JR
2492004-03-01 Jason Rumney <jasonr@gnu.org>
250
251 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
252
a64387ee
JB
2532004-03-01 Juanma Barranquero <lektu@terra.es>
254
255 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
256
257 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
258
334faa08
JD
2592004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
260
261 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
262 how many colors can be displayed.
263
bb62616f
KH
2642004-03-01 Kenichi Handa <handa@m17n.org>
265
266 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
267 correctly.
268
0fd16104
KS
2692004-02-28 Kim F. Storm <storm@cua.dk>
270
271 * dispnew.c (update_window): Update header line also if there are
272 no other changes in window (move code after set_cursor label).
273
274 * lisp.h (mark_window_display_accurate): Remove prototype.
275
276 * window.c (window_loop, Fforce_window_update): Force mode line
277 updates by setting prevent_redisplay_optimizations_p and
278 update_mode_lines.
279
b59dd9c8
JD
2802004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
281
d8d95bc7 282 * xfns.c (x_window): Fix indentation.
b59dd9c8
JD
283
284 * xterm.c (x_calc_absolute_position): Call x_real_positions
285 to get WM window sizes and use those to calculate position.
d8d95bc7 286 (x_set_offset): Remove code commented out.
b59dd9c8 287
a874691c
MB
2882004-02-28 Miles Bader <miles@gnu.org>
289
290 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
291
3e0c6482
KS
2922004-02-28 Kim F. Storm <storm@cua.dk>
293
294 * keyboard.c (kbd_buffer_store_event_hold): New function to store
295 an event into kbd fifo, but with special handling of quit event;
296 a quit event is saved for later, and further events are discarded
297 until the saved quit event has been processed.
298 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
299 (gen_help_event): Store help event in kbd fifo.
300 (NREAD_INPUT_EVENTS): Remove.
301 (read_avail_input): Adapt to new read_socket_hook interface.
302 Remove allocation and initialization of local input_event buffer,
303 as read_socket_hook stores events directly in fifo. Allocate and
304 initialize local hold_quit event to handle postponed quit event
305 (and store it if set by kbd_buffer_store_event_hold).
306
307 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
308 (gen_help_event): Fix prototype.
309
a64387ee 310 * macterm.c (XTread_socket): Remove bufp_r and
3e0c6482
KS
311 numcharsp args. Add hold_quit arg.
312 Rework to use just one, local, inev input_event. Store inev
313 directly in fifo using kbd_buffer_store_event_hold.
314
315 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
316 (read_input_waiting): Adapt to new read_socket_hook interface.
317 Remove allocation and initialization of local input_event buffer,
318 as read_socket_hook stores events directly in fifo. Allocate and
319 initialize local hold_quit event to handle postponed quit event
320 (and store it if set by kbd_buffer_store_event_hold).
321
a64387ee 322 * term.c (read_socket_hook): Fix arg list.
3e0c6482
KS
323
324 * termhooks.h (read_socket_hook): Fix prototype.
325
326 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
327 numcharsp args. Add hold_quit arg.
328 Rework to use just one, local, inev input_event. Store inev
329 directly in fifo using kbd_buffer_store_event_hold.
330
331 * w32inevt.h (w32_console_mouse_position): Fix prototype.
332
333 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
334 Add hold_quit arg. Rework to use just one, local, inev
335 input_event. Store inev directly in fifo using
336 kbd_buffer_store_event_hold. Update count in one place.
337 Postpone call to gen_help_event until inev is stored; use new
338 local do_help for this.
339 Remove local emacs_event in handing of ButtonPress event; just use
340 inev instead (so no reason to copy it later).
341
342 * xsmfns.c (x_session_check_input): Remove numchars arg.
343
d8d95bc7
SM
344 * xterm.c (x_focus_changed, x_detect_focus_change):
345 Remove numchars arg. Always store event into bufp arg.
346 Return nothing. Callers changed accordingly.
3e0c6482
KS
347 (glyph_rect): Simplify.
348 (STORE_KEYSYM_FOR_DEBUG): New macro.
349 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
350 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
351 (current_hold_quit) [USE_GTK]: Add.
352 (event_handler_gdk): Adapt to new handle_one_xevent.
353 (handle_one_xevent): Remove bufp_r and numcharsp args.
354 Add hold_quit arg. Rework to use just one, local, inev
355 input_event. Store inev directly in fifo using
356 kbd_buffer_store_event_hold. Update count in one place.
357 Postpone call to gen_help_event until inev is stored; use new
358 local do_help for this.
359 Simplify handling of keysyms (consolidate common code). Fix bug
360 where count was updated with nchars instead of nbytes.
361 Remove local emacs_event in handing of ButtonPress event; just use
362 inev instead (so no reason to copy it later).
363 Remove `out' label. Rename label `ret' to `done'; add various
364 `goto done' to clarify code flow in deeply nested blocks.
365 (x_dispatch_event): Simplify as handle_one_xevent now calls
366 kbd_buffer_store_event itself.
367 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
368 arg. Call handle_one_xevent with new arglist. Store event from
369 x_session_check_input in fifo.
370 [USE_GTK]: Setup current_hold_quit.
371 Decrement handling_signal before unblocking input.
372 (x_initialize) [USE_GTK]: Initialize current_count.
373
374 * xterm.h (x_session_check_input): Fix prototype.
375
e3564461 3762004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
a64387ee 377
d8d95bc7 378 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
a64387ee 379
e3564461
ST
380 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
381 macgui.h).
a64387ee 382
e3564461 383 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
a64387ee 384
e3564461
ST
385 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
386 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
387 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
388 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
389 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
390 (Bitmap): Remove typedef.
391 (Pixmap): Change int to GWorldPtr.
392
d8d95bc7 393 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
a64387ee 394
d8d95bc7
SM
395 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
396 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
397 New #define to extract 16-bit depth color components from unsigned
e3564461
ST
398 long representation.
399 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
400 colors used for masks.
401 (struct mac_display_info): Add color_p. Remove n_cbits.
a64387ee 402
e3564461
ST
403 * macfns.c: Include sys/types.h and sys/stat.h.
404 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
405 Include QuickTime/QuickTime.h.
406 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
407 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
408 functions defined in macterm.c.
409 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
410 (ZPixmap): New #define for compatibility with xfns.c.
411 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
412 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
d8d95bc7
SM
413 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
414 New functions.
e3564461 415 (four_corners_best, x_create_x_image_and_pixmap)
d8d95bc7
SM
416 (x_destroy_x_image, unwind_create_frame, x_disable_image)
417 (x_edge_detection, init_color_table, colors_in_color_table)
e3564461
ST
418 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
419 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
420 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
421 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
422 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
423 long mixup.
424 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
425 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
426 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
427 (x_set_cursor_type, Fxw_color_values, valid_image_p)
428 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
429 (x_alloc_image_color, clear_image_cache, lookup_image)
430 (x_find_image_file, xbm_read_bitmap_file_data)
431 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
432 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
433 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
434 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
435 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
d8d95bc7 436 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
e3564461
ST
437 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
438 #if 0.
439 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
440 #if 0. Free white_relief.gc and black_relief.gc.
d8d95bc7
SM
441 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
442 New functions (from xfns.c).
e3564461
ST
443 (Fx_create_frame): Record unwind_create_frame.
444 (Fxw_display_color_p): Use dpyinfo->color_p.
445 (Fx_display_grayscale_p, Fx_display_planes): Don't use
446 dpyinfo->n_cbits.
447 (Fx_display_color_cells): Use dpyinfo->n_planes;
448 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
449 (Qheuristic, cross_disabled_images, emboss_matrix)
450 (laplace_matrix): New variables (from xfns.c).
451 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
452 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
453 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
d8d95bc7
SM
454 (image_background_transparent): New function (from xfns.c).
455 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
456 (image_load_quicktime): Add declaration.
457 [MAC_OSX] (image_load_quartz2d): Likewise.
458 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
459 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
d8d95bc7 460 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
e3564461
ST
461 (xbm_load_image_from_file, x_laplace_read_row)
462 (x_laplace_write_row, pbm_read_file): Remove functions.
463 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
464 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
465 (colors_in_color_table): Sync with xfns.c (although not used).
466 (lookup_rgb_color): Don't lookup color table. Just do gamma
467 correction.
468 (COLOR_INTENSITY): New #define (from xfns.c).
d8d95bc7
SM
469 (x_disable_image): New function (from xfns.c).
470 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
471 (x_build_heuristic_mask): Sync with xfns.c.
472 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
473 (HAVE_PBM): Remove #ifdef.
474 (pbm_load): Sync with xfns.c. Set img->width and img->height
475 before IMAGE_BACKGROUND.
d8d95bc7 476 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
e3564461
ST
477 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
478 Don't enclose with #if HAVE_PNG.
479 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
d8d95bc7
SM
480 symbol _CGImageCreateWithPNGDataProvider is defined.
481 Otherwise use image_load_quicktime.
e3564461 482 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
d8d95bc7
SM
483 [HAVE_PNG] (png_load): Sync with xfns.c.
484 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
485 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
486 HAVE_JPEG.
487 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
488 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
489 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
490 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
491 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
492 (tiff_image_p, tiff_load): Don't enclose declarations with #if
493 HAVE_TIFF.
494 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
495 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
496 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
d8d95bc7
SM
497 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
498 New functions (from xfns.c).
e3564461 499 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
d8d95bc7 500 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
e3564461
ST
501 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
502 Don't enclose with #if HAVE_GIF.
503 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
504 animated gif. Otherwise use image_load_quicktime.
505 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
506 gif_DrawText to avoid conflict with QuickdrawText.h.
507 [HAVE_GIF] (gif_load): Sync with xfns.c.
508 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
509 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
510 Ghostscript is not supported yet).
511 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
512 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
513 cross_disabled_images (from xfns.c). Remove #if 0 for supported
514 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
515 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
516 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
d8d95bc7
SM
517 HAVE_PNG. Call EnterMovies to support animated gifs.
518 Call init_image_func_pointer to bind a symbol
e3564461 519 _CGImageCreateWithPNGDataProvider if it is defined.
a64387ee 520
d8d95bc7 521 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
e3564461
ST
522 (x_draw_bar_cursor): Sync declaration with xterm.c.
523 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
524 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
525 graphics).
526 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
527 (mac_draw_line_to_pixmap, XCreatePixmap)
528 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
d8d95bc7
SM
529 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
530 New functions.
531 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
532 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
533 Cast bits to char *.
e3564461
ST
534 (reflect_byte): New function (from w32fns.c).
535 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
536 due to byte alignment.
d8d95bc7
SM
537 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
538 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
e3564461
ST
539 (XSetForeground): Remove static (now used in macfns.c).
540 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
541 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
542 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
543 (x_draw_glyph_string_box, x_draw_image_foreground)
544 (x_draw_image_foreground_1, x_draw_image_glyph_string)
545 (x_draw_stretch_glyph_string, x_draw_glyph_string)
546 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
547 Sync with xterm.c.
548 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
549 than the xterm.c version when a strictly horizontal or vertical
550 line is drawn.
551 (XTset_terminal_window): Add static.
552 (x_make_frame_visible): Add UNBLOCK_INPUT.
553 (x_free_frame_resources): New funcion (from xterm.c).
554 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
555 occurs in tool bar area.
d8d95bc7
SM
556 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
557 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
e3564461
ST
558 Initialize image cache.
559 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
560 Enclose unused functions with #if 0.
561 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
562 (decode_mac_font_name): New function to apply code conversions
d8d95bc7 563 from a mac font name to an XLFD font name according to its script code.
e3564461 564 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
d8d95bc7 565 font name to a mac font name according to REGISTRY and ENCODING fields.
e3564461
ST
566 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
567 whose name starts with `.'.
568 (init_font_name_table): Use decode_mac_font_name. Add both
569 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
570 of a font is smJapanese.
571 (mac_do_list_fonts): New function to list fonts that match a given
572 pattern.
573 (x_list_fonts, XLoadQueryFont): Use it.
574 (XLoadQueryFont): Set rbearing field for each variable width
575 character to avoid needless redraw.
576 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
577
446f5f3d
KS
5782004-02-26 Kim F. Storm <storm@cua.dk>
579
af617d0f
KS
580 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
581 as read_socket_hook handler on X aborts if buffer is too small
582 and W32 handler doesn't always check buffer limit.
583
446f5f3d
KS
584 * xdisp.c (handle_single_display_prop): Handle left-fringe and
585 right-fringe similar to a display margin image. Specifically,
586 the characters having the fringe prop are no longer shown, and
587 we use IT_IMAGE/next_element_from_image with image_id = -1 to
588 do this. Set fringe bitmap face_id in it->face_id.
589 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
590 still realize it->face (i.e. the fringe bitmap face).
591
7d8a0b55
MB
5922004-02-25 Miles Bader <miles@gnu.org>
593
594 * xdisp.c (check_it): Check string/string_pos consistency.
595 (init_iterator): Initialize string-related fields properly.
596
5972004-02-11 Miles Bader <miles@gnu.org>
598
599 * xdisp.c (produce_image_glyph): Force negative descents to zero.
600
6012004-02-10 Miles Bader <miles@gnu.org>
602
603 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
604 BLOCK_INPUT can be nested, so it doesn't make much sense.
605
a64387ee 6062004-02-24 Michael Mauger <mmaug@yahoo.com>
ce35edd1
JR
607
608 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
609 (xbm_read_bitmap_data): Use unsigned char for image data.
610
92f5fba2
LT
6112004-02-23 Luc Teirlinck <teirllm@auburn.edu>
612
613 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
614
8565fb3d
JR
6152004-02-22 Jason Rumney <jasonr@gnu.org>
616
617 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
618 correctly over other bitmaps.
619
f8125c39
EZ
6202004-02-21 Eli Zaretskii <eliz@elta.co.il>
621
622 * emacs.c (USAGE1): Split into two halves.
623 (USAGE2): Second half of the old USAGE1.
d8d95bc7
SM
624 (USAGE3): Rename from USAGE2.
625 (USAGE4): Rename from USAGE3.
f8125c39 626
4effffca
EZ
6272004-02-21 Juri Linkov <juri@jurta.org>
628
629 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
630 Fix --multibyte. Move --help, --version to USAGE2. Add alias
631 --file. Fix -f, -l. Sort options. Untabify.
632 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
633
923c1e6f
LT
6342004-02-19 Luc Teirlinck <teirllm@auburn.edu>
635
636 * category.c (Fdefine_category, Fcategory_docstring)
637 (Fget_unused_category, Fset_category_table)
638 (Fcategory_set_mnemonics): Doc fixes.
639
b0e225fd
KS
6402004-02-20 Kim F. Storm <storm@cua.dk>
641
642 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
643 The following changes are relative to the 2004-01-21 revision.
644 (NREAD_INPUT_EVENTS): Define as max number of input events to read
645 in one call to read_socket_hook. Value is 8.
646 (read_avail_input): Separate and rework handling of read_socket_hook
647 and non-read_socket_hook cases. Use smaller input_event buffer
d8d95bc7
SM
648 in read_socket_hook case, and repeat if full buffer is read.
649 Use new local variable 'discard' to skip input after C-g.
b0e225fd
KS
650 In non-read_socket_hook case, just use a single input_event, and
651 call kbd_buffer_store_event on the fly for each character.
652
b15aa9f9
SM
6532004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
654
655 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
656 Remove unused `gu' alternative.
657
83c9aa95
AS
6582004-02-19 Andreas Schwab <schwab@suse.de>
659
660 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
661 warning.
662
cc808173
KS
6632004-02-18 Kim F. Storm <storm@cua.dk>
664
665 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
666 Fix last change.
667
ab90a54d
KS
6682004-02-17 Kim F. Storm <storm@cua.dk>
669
b26f249f
KS
670 * xdisp.c (fast_find_position): Fix return value of new version;
671 it was inverted compared to the 21.1 version.
672 (get_window_cursor_type): Don't look at glyph if NULL.
673 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
0bf7d005 674
ab90a54d
KS
675 * keyboard.c: Rework previous change; it didn't consider that the
676 buf array was allocated on the stack.
677 (prev_read): Remove variable.
678 (read_avail_input_buf): New static event buffer array.
b9568dfc 679 (in_read_avail_input): New static variable to handle re-entrancy.
ab90a54d 680 (read_avail_input): Change buf to pinter to read_avail_input_buf.
b9568dfc
KS
681 Use in_read_avail_input to handle re-entrance; when re-entered,
682 fully initialize and use tmp_buf array instead of read_avail_input_buf.
683 Do not initialize read_avail_input_buf in full here; instead assume it
ab90a54d
KS
684 is always cleared on entry. To ensure that, we clear (just) the
685 entries that were used before we return.
686 (init_keyboard): Initialize read_avail_input_buf here.
687
4e039f3f
EZ
6882004-02-16 Jesper Harder <harder@ifa.au.dk> (tiny change)
689
690 * cmds.c (Fend_of_line): Doc fix.
691
7b5368c1
EZ
6922004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
693
694 * keyboard.c (prev_read): New static variable.
695 (read_avail_input): Use it to zero out only those slots in buf[]
696 that were used last time we were called.
697
ca4bc494
EZ
6982004-02-16 Eli Zaretskii <eliz@elta.co.il>
699
700 * Makefile.in (obj): Move fringe.o from here...
701 (XOBJ, MAC_OBJ): ...to here.
702
159c348e
SE
7032004-02-16 Stephen Eglen <stephen@gnu.org>
704
705 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
706
d2f14999
SM
7072004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
708
b15aa9f9
SM
709 * data.c (Fbyteorder):
710 * fringe.c (Fdefine_fringe_bitmap):
711 * xdisp.c (handle_single_display_prop):
d2f14999
SM
712 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
713
8d50508a
JR
7142004-02-16 Jason Rumney <jasonr@gnu.org>
715
716 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
717
dd4497dc
ST
7182004-02-15 Steven Tamm <steventamm@mac.com>
719
720 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
721 controlling emulation of a three button mouse with option and
722 command keys.
723 (Qreverse, mac_get_enumlated_btn): Handle the emulation
b15aa9f9 724 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
dd4497dc 725
c9159cb3
KS
7262004-02-15 Kim F. Storm <storm@cua.dk>
727
2cc52658
KS
728 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
729
c9159cb3
KS
730 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
731 Perform byte-swapping.
732
12fde2dc
KS
7332004-02-14 Kim F. Storm <storm@cua.dk>
734
735 * dispextern.h (struct draw_fringe_bitmap_params): Change member
736 bits from char to short to facilitate wider bitmaps.
737 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
738 member.
739
740 * fringe.c (struct fringe_bitmap): Change member bits from char to
741 short to facilitate 16 bits wide bitmaps. Modify all standard
742 bitmaps accordingly.
743 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
744 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
745 (draw_fringe_bitmap): Ditto.
746 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
747 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
748 handle up to 16 bits wide bitmaps.
749 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
f21a7192 750 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
12fde2dc
KS
751
752 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
753 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
754 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
755
756 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
757 so it is no longer necessary to expand them here.
758
759 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
760
9d7271e8
KS
7612004-02-12 Kim F. Storm <storm@cua.dk>
762
763 * window.c (Fwindow_fringes): Doc fix.
764
706c1e4f
JD
7652004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
766
767 * xselect.c (x_get_foreign_selection): Add new optional parameter
768 time_stamp.
769 (Fx_get_selection_internal): Ditto, pass time_stamp to
770 x_get_foreign_selection.
771
772 * data.c (Fbyteorder): New function.
773
c2d12b5d
JD
7742004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
775
776 * atimer.c: Move include stdio.h to same place as in other files.
777
778 * region-cache.c: Ditto.
779
780 * sysdep.c: Ditto.
781
782 * xfaces.c: Ditto.
783
4c1947b9
SS
7842004-02-09 Sam Steingold <sds@gnu.org>
785
786 * w32term.c (w32_draw_fringe_bitmap): Fixed a typo in the last patch.
787
82722af3
KS
7882004-02-09 Kim F. Storm <storm@cua.dk>
789
790 * fringe.c: New file. Move original fringe related declarations
791 and code from dispextern.h and xdisp.c here.
792 Rework code to support user defined fringe bitmaps, redefining
793 standard bitmaps, ability to overlay user defined bitmap with
794 overlay arrow bitmap, and add faces to bitmaps.
795 (Voverflow_newline_into_fringe): Declare here.
796 (enum fringe_bitmap_align): New enum.
797 (..._bits): All bitmaps are now defined without bitswapping; that
798 is now done in init_fringe_once (if necessary).
799 (standard_bitmaps): New array with specifications for the
800 standard fringe bitmaps.
801 (fringe_faces): New array.
802 (valid_fringe_bitmap_id_p): New function.
803 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
804 (draw_fringe_bitmap): New function which draws fringe bitmap,
805 possibly overlaying bitmap with cursor in right fringe or the
806 overlay arrow in the left fringe.
807 (update_window_fringes): Do not handle overlay arrow here.
808 Compare and copy fringe bitmap faces.
809 (init_fringe_bitmap): New function.
810 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
811 define and destroy user defined fringe bitmaps.
812 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
813 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
814 (syms_of_fringe): New function. Defsubr new DEFUNs.
815 DEFVAR_LISP Voverflow_newline_into_fringe.
816 (init_fringe_once, init_fringe): New functions.
817 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
4c1947b9 818
82722af3
KS
819 * Makefile.in (obj): Add fringe.o.
820 (fringe.o): New dependencies.
821
822 * dispextern.h (FRINGE_ID_BITS): New definition for number of
823 bits allocated to hold a fringe number. Increase number of bits
824 from 4 to 8 to allow user defined fringe bitmaps.
825 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
826 left_user_fringe_face_id, right_user_fringe_bitmap,
827 right_user_fringe_face_id.
828 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
829 Move to new file fringe.c.
830 (MAX_FRINGE_BITMAPS): Define here.
831 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
832 and overlay_p. Change member which to int.
833 (struct redisplay_interface): New members define_fringe_bitmap
834 and destroy_fringe_bitmap.
835 (valid_fringe_bitmap_id_p): Add prototype.
836 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
837
838 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
839 arrows.
840 (update_frame): Do flush_display if force_flush_display_p to
841 ensure display (specifically fringes) are updated in a timely
842 manner when resizing the frame by dragging the mouse.
843 (update_window_line): Update row if overlay arrow changed.
844 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
845 or overlay arrow changed.
846
847 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
848 syms_of_fringe, and init_fringe.
849
850 * frame.h (struct frame): New member force_flush_display_p.
851
852 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
853 Add prototypes.
854
a3993cc8 855 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
a64387ee 856 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
a3993cc8
KS
857 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
858 Use cursor color for displaying cursor in fringe.
82722af3
KS
859 (x_redisplay_interface): Add null handlers for
860 define_fringe_bitmap and destroy_fringe_bitmap functions.
861
862 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
863 xterm.c to handle overlayed fringe bitmaps and to use cursor color
864 for displaying cursor in fringe.
865 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
866 specific functions to define and destroy fringe bitmaps in fringe_bmp.
867 (w32_redisplay_interface): Add them to redisplay_interface.
868 (w32_term_init): Call w32_init_fringe instead of explicitly
869 defining fringe bitmaps in fringe_bmp array.
870 (x_delete_display): Call w32_reset_fringes instead of explicitly
871 destroying fringe bitmaps in fringe_bmp array.
872
873 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
874 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
875 (continued_bits, continuation_bits, ov_bits, first_line_bits)
876 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
877 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
878 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
879 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
880 Move fringe handling vars and code to new file fringe.c.
881 (handle_display_prop): Handle left-fringe and right-fringe
882 display properties; store user fringe bitmaps in iterator.
883 (move_it_in_display_line_to): Handle cursor in fringe at eob.
884 (clear_garbaged_frames): Set force_flush_display_p if resized.
885 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
886 (display_line): Handle cursor in fringe at eob.
887 (display_line): Set row user fringe bitmaps from iterator.
888
889 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
890 Use cursor color for displaying cursor in fringe.
891 (x_redisplay_interface): Add null handlers for
892 define_fringe_bitmap and destroy_fringe_bitmap functions.
893
030400eb
JD
8942004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
895
896 * macfns.c (Fx_change_window_property): Make doc string and
897 parameters same as for X version.
898
899 * w32fns.c (Fx_change_window_property): Ditto.
900
3af55251
KS
9012004-02-07 Kim F. Storm <storm@cua.dk>
902
ec110e9e
KS
903 * xdisp.c (hscroll_window_tree): Position cursor near to right
904 margin in hscrolled window when jumping to end of line (rather
905 than centering cursor).
906
3af55251
KS
907 * process.c (wait_reading_process_input): Don't do adaptive read
908 buffering if waiting for a specific process.
909
b0c138ce
LT
9102004-02-05 Luc Teirlinck <teirllm@auburn.edu>
911
912 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
913 (Fread_minibuffer, Feval_minibuffer)
914 (Fread_string, Fread_no_blanks_input)
915 (Fcompleting_read): Doc fixes.
916 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
917 completion-regexp-list. Define Qcase_fold_search and staticpro it.
918 (read_minibuf): Fix initial comment.
919 (Ftry_completion, Fall_completions, Ftest_completion): Bind
920 case-fold-serach to the value of completion-ignore-case when
921 checking completion-regexp-list.
922 (Fdisplay_completion_list): Make it handle arguments that are
923 symbols. Doc fix.
924
9676f5ad 9252004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
64d1e373 926
9676f5ad 927 * xterm.h: Add declaration of free_frame_menubar.
64d1e373 928
9676f5ad
JD
929 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
930 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
b0c138ce 931 (Fx_change_window_property): Add declaration of parameters type and
9676f5ad 932 format. Remove unused variable cons.
5b698285
JD
933
934 * xselect.c: Include stdio,h.
935
fc1d15f6
KH
9362004-02-05 Kenichi Handa <handa@m17n.org>
937
ebaff4af
KH
938 * fns.c (Fset_char_table_range): Fix previous change.
939
fc1d15f6
KH
940 * buffer.c (Fset_buffer_multibyte): Fix docstring.
941
9676f5ad
JD
9422004-02-04 Luc Teirlinck <teirllm@auburn.edu>
943
944 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
945
da75761f
SM
9462004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
947
948 * keymap.c (Vmouse_events): Rename from Vmenu_events.
949 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
950
13c5d120
KH
9512004-02-04 Kenichi Handa <handa@m17n.org>
952
953 * fns.c (Fset_char_table_range): Handle charsets ascii,
954 eight-bit-control, and eight-bit-graphic correctly.
955
2883d842
JR
9562004-02-03 Jason Rumney <jasonr@gnu.org>
957
958 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
959
960 * w32fns.c (x_to_w32_font): Likewise.
961
69eff41f
JD
9622004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
963
964 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
965 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
966
967 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
968 ClientMessages.
969
970 * xselect.c: Include termhooks.h and X11/Xproto.h
971 (x_check_property_data, x_fill_property_data)
972 (x_property_data_to_lisp, mouse_position_for_drop)
973 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
da75761f 974 (Fx_send_client_event): Move here from xfns.c.
69eff41f
JD
975 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
976
da75761f 977 * xfns.c (x-send-client-message): Move to xselect.c
69eff41f
JD
978 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
979 OUTER_P.
980 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
981 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
982 if vector_ret_p is true.
983 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
69eff41f 984
dcdbbb5d
EZ
9852004-02-02 Eli Zaretskii <eliz@elta.co.il>
986
987 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
988 basename of FILE relative to it, not FILE itself.
989
09721b31
KH
9902004-02-02 Kenichi Handa <handa@m17n.org>
991
992 * coding.c (coding_restore_composition): Check invalid
993 composition data more rigidly.
994
eb996101
LT
9952004-01-30 Luc Teirlinck <teirllm@auburn.edu>
996
997 * fileio.c (Fread_file_name_internal): Correctly handle the case
998 where insert-default-directory is nil.
999 (Fread_file_name): Always return an empty string if the user exits
1000 with an empty minibuffer. Adapt the docstring accordingly.
1001 (syms_of_fileio): Adapt the docstring of insert-default-directory
1002 to the change in Fread_file_name.
1003
a0367d42
EZ
10042004-01-29 Eli Zaretskii <eliz@elta.co.il>
1005
1006 * alloca.c [!alloca]: Fix the prototype for xfree.
1007
13f52ed8
KH
10082004-01-29 Kenichi Handa <handa@m17n.org>
1009
1010 * fns.c (string_char_to_byte): Optimize for ASCII only string.
1011 (string_byte_to_char): Likewise.
1012
d57625a0
JR
10132004-01-28 Peter Runestig <peter@runestig.com>
1014
1015 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
1016
a64387ee 10172004-01-27 Steven Tamm <steventamm@mac.com>
911c78b4
ST
1018
1019 * unexmacosx.c (unexec_copy): Do not copy more than was
1020 requested to prevent overwriting during unexec.
1021
eb37b8fd
JD
10222004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1023
ce38070a
JD
1024 * process.c (sigchld_handler): Add comment about not calling malloc.
1025
eb37b8fd
JD
1026 * process.h: Add extern to synch_process_termsig.
1027
a64387ee 10282004-01-27 Steven Tamm <steventamm@mac.com>
21a3e657 1029
da75761f
SM
1030 * macterm.c (make_mac_frame, make_mac_terminal_frame):
1031 Move setting of scroll bars from make_mac_frame to
1032 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
21a3e657 1033
d62a265d
RS
10342004-01-26 Richard M. Stallman <rms@gnu.org>
1035
1036 * search.c (Freplace_match): Handle nonexistent
1037 back-references properly.
1038
10392004-01-03 Richard M. Stallman <rms@gnu.org>
1040
1041 * window.c (decode_any_window): New function.
1042 (Fwindow_height, Fwindow_width, Fwindow_edges)
1043 (Fwindow_pixel_edges, Fwindow_inside_edges)
1044 (Fwindow_inside_pixel_edges): Use decode_any_window.
1045
ff236419
JD
10462004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1047
1048 * process.h: synch_process_termsig new variable.
1049
1050 * callproc.c: Define synch_process_termsig.
1051 (Fcall_process): Initiate synch_process_termsig to zero and
1052 check if non-zero and get signal name after subprocess has ended.
1053
1054 * process.c (sigchld_handler): Set synch_process_termsig
1055 if terminated by a signal. synch_process_death setting removed.
1056
1057 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
1058
41b867ea
AS
10592004-01-26 Andreas Schwab <schwab@suse.de>
1060
1061 * print.c (print_preprocess): Declare size as EMACS_INT to not
1062 lose bits.
1063 (print_object): Likewise.
1064 * alloc.c (Fpurecopy): Likewise.
1065
a08084ff
LT
10662004-01-25 Luc Teirlinck <teirllm@auburn.edu>
1067
1068 * window.c (Fwindow_minibuffer_p): Doc fix.
1069
b19ac475
JY
10702004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
1071
1072 * editfns.c (Fformat): Make both passes accept the same set of flags.
1073
fe905025
KH
10742004-01-23 Kenichi Handa <handa@m17n.org>
1075
1076 * fns.c (Fmd5): If OBJECT is a buffer different from the current
1077 one, set buffer to OBJECT temporarily.
1078
438fc6c0
SM
10792004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
1080
455316e2
SM
1081 * keyboard.c (kbd_buffer_gcpro): Remove.
1082 (kbd_buffer_store_event, clear_event, Fdiscard_input)
1083 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
1084 Don't initialize and/or maintain the variable any more. It was made
1085 redundant by my commit of 2003-06-15.
1086
438fc6c0
SM
1087 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
1088
5335a4ee
JD
10892004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1090
1091 * lisp.h: Add undef DECL_ALIGN.
1092
dcdaeebc
SM
10932004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
1094
1095 * process.c (wait_reading_process_input) [SYNC_INPUT]:
1096 Check interrupt_input_pending explicitly.
1097
1098 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
1099
1100 * keyboard.c (handle_async_input): New fun,
1101 extracted from input_available_signal.
1102 (input_available_signal, reinvoke_input_signal): Use it.
1103
9076a823
SM
11042004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
1105
d7107586
SM
1106 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
1107
1108 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
1109 manipulation macros for when tags are in the lower bits.
1110 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
1111 (DECL_ALIGN): New macro.
1112 (DEFUN): Use it.
1113
1114 * lisp.h [ENABLE_CHECKING]: Don't force union type.
1115
1116 * s/darwin.h (__attribute__): Remove outdated workaround.
1117
1118 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
1119
1120 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
1121 Don't check range of malloc address.
1122 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
1123
9076a823
SM
1124 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
1125
1126 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
1127
ba029065
KH
11282004-01-19 Kenichi Handa <handa@m17n.org>
1129
1130 * fontset.c (fontset_font_pattern): Fix previous change.
1131
7af0e8d7
MB
11322004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
1133
1134 * xdisp.c (Voverflow_newline_into_fringe)
1135 (move_it_in_display_line_to, redisplay_internal)
1136 (update_window_fringes, redisplay_window, display_line, window):
1137 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
1138 that it compiles without a window-system.
1139 * dispnew.c (direct_output_for_insert, update_window): Likewise.
1140
77a9cf69
KS
11412004-01-16 Kim F. Storm <storm@cua.dk>
1142
1143 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
1144
a64387ee 1145 * buffer.c (init_buffer_once): Set buffer_defaults and
77a9cf69
KS
1146 buffer_local_flags for indicate_buffer_boundaries.
1147 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
1148 default- variable for it.
1149
1150 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
1151 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
d7107586 1152 New members exact_window_width_line_p and cursor_in_fringe_p for
77a9cf69
KS
1153 overflowing newlines into right fringe.
1154 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
1155 and indicate_bottom_line_p for buffer boundaries and scrolling.
1156 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
1157 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
1158 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
1159 and HOLLOW_SQUARE_BITMAP.
1160 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
1161 Add prototypes.
1162
1163 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
1164 instead of related indicator fields.
1165 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
1166 (direct_output_for_insert): Handle exact width lines like
1167 contined lines. Call update_window_fringes.
1168 (update_window): Call update_window_fringes.
1169 (scrolling_window): Don't skip desired rows with changed bitmaps.
1170 Check if fringe bitmaps changes when assigning scrolled rows.
1171
1172 * xdisp.c (Voverflow_newline_into_fringe): New variable.
1173 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
1174 (move_it_in_display_line_to): Overflow newline into fringe for
1175 rows that are exactly as wide as the window.
1176 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
1177 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
1178 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
1179 (fringe_bitmaps): Add new bitmaps.
1180 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
1181 Select proper bitmap for cursor in fringe when appropriate.
1182 Handle alignment of bitmap to top or bottom of row.
1183 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
1184 done by update_window_fringes.
1185 (update_window_fringes, draw_window_fringes): New functions.
1186 (redisplay_internal): Call update_window_fringes in case only
1187 cursor row is updated.
1188 (redisplay_window): Call update_window_fringes.
1189 Explicitly call draw_window_fringes if redisplay was done using
1190 the current matrix or the overlay arrow is in the window.
1191 (try_window_reusing_current_matrix): Mark scrolled rows for
1192 fringe update (to update buffer-boundaries / scrolling icons).
1193 (find_last_unchanged_at_beg_row): Handle exact width lines line
1194 continued lines.
1195 (display_line): Overflow newline into fringe for rows that are
1196 exactly as wide as the window. Don't append space for newline
d7107586 1197 in this case.
77a9cf69
KS
1198 (notice_overwritten_cursor): Explicitly clear cursor bitmap
1199 in fringe as if it had been overwritten.
1200 (erase_phys_cursor): Erase cursor bitmap in fringe.
d7107586 1201 (syms_of_xdisp): Mark show-trailing-whitespace and
77a9cf69
KS
1202 void-text-area-pointer as user options.
1203 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
d7107586 1204
77a9cf69
KS
1205 * xterm.c (x_update_window_end): Call draw_window_fringes.
1206 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
1207 in row instead of actually drawing fringe bitmaps.
1208 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
1209 (x_draw_window_cursor): Draw cursor in fringe.
1210
1211 * w32term.c (x_update_window_end): Call draw_window_fringes.
1212 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
1213 in row instead of actually drawing fringe bitmaps.
1214 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
1215 (w32_draw_window_cursor): Draw cursor in fringe.
1216
1217 * macterm.c (x_update_window_end): Call draw_window_fringes.
1218 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
1219 in row instead of actually drawing fringe bitmaps.
1220 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
1221 (mac_draw_window_cursor): Draw cursor in fringe.
1222
a633a954
JD
12232004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1224
1225 * xterm.c (handle_one_xevent): Don't handle characters that are part
1226 of an old style (XLookupString) compose sequence.
1227
80460525
KH
12282004-01-15 Kenichi Handa <handa@m17n.org>
1229
1230 * search.c (Freplace_match): Use make_multibyte_string or
1231 make_unibyte_string according to the buffer multibyteness.
1232
7fc34f85
SM
12332004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
1234
1235 * alloc.c (struct interval_block, struct string_block)
1236 (struct symbol_block, struct marker_block, live_string_p)
1237 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
1238 Better preserve alignment for objects in blocks.
1239 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
1240
1241 * lread.c (defvar_per_buffer): Remove dead declaration.
1242
1243 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
1244 space size.
1245
66070bd1
JD
12462004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1247
1248 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
1249 if a key press should pop down. Only pop down if a key is pressed
1250 outside the menu/dialog.
1251 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
1252 popup_get_selection.
1253 (create_and_show_dialog): Pass 1 for down_on_keypress to
1254 popup_get_selection.
1255
de7515d6
JD
12562004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1257
1258 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
1259 BLOCK/UNBLOCK_INPUT.
1260
160b1b50
JD
12612004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1262
1263 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
1264 specified.
1265
3a9f36e6
KH
12662004-01-08 Kenichi Handa <handa@m17n.org>
1267
1268 * editfns.c (Fformat): Fix '&' to '&&'.
1269
3803eb32
AS
12702004-01-08 Andreas Schwab <schwab@suse.de>
1271
1272 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
1273 size if PSEUDOVECTOR_FLAG is set.
1274
9da88f37
KH
12752004-01-07 Kenichi Handa <handa@m17n.org>
1276
74ac5074
KH
1277 * charset.c (Fdeclare_equiv_charset): Fix docstring.
1278
9da88f37
KH
1279 * fontset.c (fontset_ref_via_base): Fix previous change.
1280
05faee07
KS
12812004-01-07 Kim F. Storm <storm@cua.dk>
1282
1283 * process.c (read_process_output): Only activate adaptive
1284 buffering if we read less than 256 bytes at a time.
1285
634910c8
KS
12862004-01-06 Kim F. Storm <storm@cua.dk>
1287
1288 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
1289 object and image object. Return glyph width and height.
1290 (mode_line_string, marginal_area_string): Ditto.
1291
1292 * dispextern.h (buffer_posn_from_coords, mode_line_string)
1293 (marginal_area_string): Fix prototypes.
1294
1295 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
1296 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
1297 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
1298
1299 * keyboard.c (make_lispy_position): Use modified mode_line_string,
1300 buffer_posn_from_coords, and marginal_area_string functions to
1301 include both string object and image object in the lispy position.
1302 Also add actual glyph width and height to position.
1303 (read_key_sequence): Use real buffer position from mouse
1304 event to find keymap property even when click is in marginal area.
1305
1306 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
1307 mode_line_string and marginal_area_string functions to handle
1308 both string object and image object properties.
d7107586 1309
57951c2e
AS
13102004-01-06 Andreas Schwab <schwab@suse.de>
1311
1312 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
1313 character.
1314
181e6a61
AS
13152004-01-02 Andreas Schwab <schwab@suse.de>
1316
d7107586
SM
1317 * macterm.c (emacs_options, x_initialized, same_x_server):
1318 Remove unused (and duplicated) definitions.
181e6a61 1319
31e0fbdd
KS
13202004-01-02 Kim F. Storm <storm@cua.dk>
1321
1322 * process.h (struct Lisp_Process): New members for adaptive read
1323 buffering: adaptive_read_buffering, read_output_delay, and
1324 read_output_skip.
1325
1326 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
1327 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
1328 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
1329 (process_output_delay_count, process_output_skip): New vars.
1330 (Vprocess_adaptive_read_buffering): New variable.
1331 (make_process): Initialize adaptive read buffering members.
1332 (Fstart_process): Set adaptive_read_buffering member.
1333 (deactivate_process): Cleanup adaptive read buffering.
1334 (wait_reading_process_input): Temporarily omit delayed
1335 subprocesses from the set of file descriptors to read from;
1336 adjust the select timeout if we skipped any subprocesses.
1337 (read_process_output): Increase adaptive read buffering delay if
1338 we read less than a full buffer; reduce delay when we read a
1339 full buffer.
1340 (send_process): Simplify using local Lisp_Process var.
1341 Reset adaptive read buffering delay after write.
1342 (init_process): Initialize process_output_delay_count and
1343 process_output_skip.
1344 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
1345
68c6a789
JR
13462004-01-01 Jason Rumney <jasonr@gnu.org>
1347
d7107586 1348 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
68c6a789 1349
3f70fe82
LT
13502003-12-30 Luc Teirlinck <teirllm@auburn.edu>
1351
1352 * print.c (Ferror_message_string): Add hyperlink in the docstring
1353 to the definition of `signal' in the Elisp manual.
1354 * eval.c (Fsignal): Ditto.
1355
a64387ee 13562003-12-29 James Clark <jjc@jclark.com> (tiny change)
c2be49ed
EZ
1357
1358 * fns.c (internal_equal): Return t for two NaN arguments.
1359
7abd90ea
RS
13602003-12-29 Richard M. Stallman <rms@gnu.org>
1361
1362 * data.c (store_symval_forwarding): Handle setting
1363 default-fill-column, etc., by changing the value in
1364 buffers that use the default.
1365
1366 * minibuf.c (Fset_minibuffer_window): Doc fix.
1367
1368 * fileio.c (choose_write_coding_system): Ignore auto_saving
1369 if using the visited file for auto saves.
1370 (Fwrite_region): Don't update SAVE_MODIFF
1371 if auto-saving in visited file.
1372
3e7cfcdc
KH
13732003-12-29 Kenichi Handa <handa@m17n.org>
1374
1375 * dispextern.h (face_font_available_p): Extern it.
1376
1377 * fontset.c (Voverriding_fontspec_alist): New variable.
1378 (lookup_overriding_fontspec): New function.
d7107586 1379 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
3e7cfcdc
KH
1380 (fontset_font_pattern): Likewise.
1381 (regulalize_fontname): New function.
1382 (Fset_fontset_font): Call regulalize_fontname.
1383 (Fset_overriding_fontspec_internal): New function.
d7107586
SM
1384 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
1385 Defsubr Sset_overriding_fontspec_internal.
3e7cfcdc
KH
1386
1387 * xfaces.c (face_font_available_p): New function.
1388
7abd90ea
RS
13892003-12-28 Richard M. Stallman <rms@gnu.org>
1390
1391 * buffer.c (Fother_buffer): Don't crash if BUF is nil
1392 or if its name is nil.
1393
1394 * buffer.c (Fkill_buffer): Don't delete auto-save file
1395 if it's the same as the visited file.
1396
de1d1a40
LT
13972003-12-28 Luc Teirlinck <teirllm@auburn.edu>
1398
1399 * coding.c (Fcheck_coding_system): Doc fix.
1400
204fb75e
KS
14012003-12-28 Kim F. Storm <storm@cua.dk>
1402
1403 * Makefile.in (eval.o): Depend on dispextern.h.
1404
1405 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
1406 image glyph using image's ascent.
1407 (mode_line_string): Return image glyph as object clicked on.
1408 Adjust y0 for image glyph using image's ascent.
1409
1410 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
1411 (struct glyph): New members, ascent and descent. Used to save
1412 this glyph's ascent and descent, instead of having.
1413 (struct glyph): Declare member face_id using FACE_ID_BITS.
1414 (find_hot_spot): Add prototype.
1415
1416 * keyboard.c (Qimage): Remove extern (now in lisp.h).
1417 (QCmap): Declare extern.
1418 (make_lispy_position): When position is inside image hot-spot,
1419 use hot-spot element's id as posn element.
1420
1421 * lisp.h (IMAGEP): New macro to test for image object type.
1422 (Qimage): Declare extern.
1423
1424 * macfns.c (Qimage): Remove extern (now in lisp.h).
1425 (valid_image_p, parse_image_spec): Use IMAGEP macro.
1426
1427 * macterm.c (Qface, Qmouse_face): Remove unused externs.
1428
1429 * w32fns.c (Qimage): Remove extern (now in lisp.h).
1430 (valid_image_p, parse_image_spec): Use IMAGEP macro.
1431
1432 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
1433
1434 * w32term.c (Qface, Qmouse_face): Remove unused externs.
1435
1436 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
1437 pointer types.
1438 (Qrelative_width, Qalign_to): Remove unused variables.
1439 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
1440 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
1441 image maps.
d7107586 1442 (x_y_to_hpos_vpos): Return glyph relative coordinates through
204fb75e
KS
1443 new dx and dy args.
1444 Remove buffer_only_p arg (always 0). Simplify code accordingly.
1445 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
1446 than row's ascent and height, to get sensible height on tall rows.
1447 (build_desired_tool_bar_string): Remove Qimage extern.
1448 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
1449 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
1450 image glyph is alone on the last line.
1451 (append_glyph, append_composite_glyph, produce_image_glyph)
d7107586 1452 (append_stretch_glyph): Set glyph's ascent and descent.
204fb75e 1453 (on_hot_spot_p): New function to check if position is inside an
d7107586 1454 rectangular, circular, or polygon-shaped image hot-spot,
204fb75e
KS
1455 (find_hot_spot): New function to search for image hot-spot.
1456 (Flookup_image_map): New defun to search for image hot-spot.
1457 (define_frame_cursor1): New aux function to determine frame pointer.
1458 (note_mode_line_or_margin_highlight, note_mouse_highlight):
1459 Handle `pointer' text property and :pointer image property to
1460 control frame pointer shape. Detect image hot-spots for pointer
1461 and help_echo properties. Use define_frame_cursor1.
1462 (note_mouse_highlight): Use Vvoid_text_area_pointer.
1463 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
1464 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
1465
1466 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
1467
1468 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
1469 (Qimage): Remove extern (now in lisp.h).
1470 (valid_image_p, parse_image_spec): Use IMAGEP macro.
1471
1472 * xmenu.c (show_help_event): Remove unused code.
1473
1474 * xterm.c (Qface, Qmouse_face): Remove unused externs.
1475 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
1476 row's ascent and descent, to get a sensible height on tall rows.
1477
fc052137
LT
14782003-12-25 Luc Teirlinck <teirllm@auburn.edu>
1479
1480 * minibuf.c (Fcompleting_read): Undo previous change.
1481
a64387ee 14822003-12-25 Lars Hansen <larsh@math.ku.dk>
b9148500
LH
1483
1484 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
1485 Arguments GCPRO'ed in call to file name handler.
1486
56ffd194
TTN
14872003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
1488
1489 * termcap.c (tgetst1): Scan for "%pN"; if all
1490 N are continuous in [1,9], remove all "%pN".
1491
5202d23d
JD
14922003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1493
f26fab36
JD
1494 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
1495
5202d23d
JD
1496 * xfaces.c (lface_fully_specified_p): Take into account that
1497 MAC OS always have unspecified stipple.
1498
8babaa59
TTN
14992003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
1500
1501 * tparam.c (tparam1): Add handling for `%pN', which
1502 means use param N for the next substitution.
1503
2d176448
TTN
15042003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
1505
1506 * xfaces.c (Fcolor_gray_p): Fix omission bug:
1507 In case `frame' is nil, consult the selected frame.
1508 (Fcolor_supported_p): Likewise.
1509
adb0708c
LT
15102003-12-23 Luc Teirlinck <teirllm@auburn.edu>
1511
000eeb15
LT
1512 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
1513 Doc fixes.
0dc72b11
LT
1514
1515 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
1516 and an integer. Adapt the introductory comment accordingly.
adb0708c
LT
1517 (Fread_from_minibuffer): Delete code moved into read_minibuf.
1518 Doc fix.
1519 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
1520 read_minibuf.
1521 (Fcompleting_read): Delete code moved into read_minibuf.
d7107586 1522 (Ftest_completion): Make it handle obarrays and hash tables correctly.
adb0708c 1523
2e4d132b
KH
15242003-12-03 Kenichi Handa <handa@m17n.org>
1525
1526 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
1527 encoding sequence.
1528
3999c705
KH
15292003-12-01 Kenichi Handa <handa@m17n.org>
1530
1531 * composite.c (syms_of_composite): Don't make the compostion hash
1532 table week.
1533
d344ecbb
LT
15342003-11-30 Luc Teirlinck <teirllm@auburn.edu>
1535
1536 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
1537 * textprop.c (Fget_char_property_and_overlay): New function.
1538 (syms_of_textprop): Defsubr it.
1539
03d6484e
JD
15402003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1541
019b1f0e
JD
1542 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
1543 to compile on terminal configuration.
1544
03d6484e
JD
1545 * fileio.c (Fread_file_name): Check use_file_dialog also before
1546 calling Fx_file_dialog.
1547
1548 * fns.c: use_file_dialog: New variable.
1549 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
1550
442d3fd0
KS
15512003-11-29 Kim F. Storm <storm@cua.dk>
1552
1553 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
1554 (syms_of_msdos): Don't intern and staticpro them.
1555
0f6a07a8
KS
15562003-11-27 Kim F. Storm <storm@cua.dk>
1557
1558 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
1559 coordinates relative to glyph at posn. If glyph is an image,
1560 return that as object at posn. Callers changed.
1561 (mode_line_string, marginal_area_string): Calculate and return
1562 pixel coordinates relative to glyph. Callers changed.
1563
1564 * dispextern.h (buffer_posn_from_coords, mode_line_string)
1565 (marginal_area_string): Fix prototypes.
1566 (window_box_left_offset, window_box_right_offset): Add prototypes.
1567
1568 * frame.h (get_specified_cursor_type, get_window_cursor_type):
1569 Remove prototypes.
1570
1571 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
1572
1573 * keyboard.c (make_lispy_position): Add x and y coordinates
1574 relative to the current glyph as 7th element of position.
1575 If glyph is an image, return it in the object element.
1576 (read_key_sequence): Skip checks for keymap property in cases
1577 where POSN_STRING is not a string (e.g. an image).
1578
1579 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
1580 (Vshow_text_cursor_in_void): New variable.
1581 (glyph_to_pixel_coords): Don't use negative hpos.
1582 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
1583 (append_stretch_glyph): Change ascent arg to be actual value
1584 in pixels rather than ratio to height. Callers changed.
1585 (calc_pixel_width_or_height): New aux function, implementing
1586 pixel based artihmetic for glyph widths and heights.
1587 (produce_stretch_glyph): Use calc_pixel_width_or_height for
1588 :width, :height, :align-to, and :ascent, thus allowing these to
1589 be specified in pixels as well as multiples of characters.
1590 Don't produce stretch glyphs with zero width or height.
1591 (get_specified_cursor_type): Declare static.
1592 (get_window_cursor_type): Declare static. Add glyph arg to be
1593 able to know when cursor is on an image; always substitute
1594 hollow-box cursor for filled-box cursor on images, to avoid
1595 negative images and flicker when blinking the cursor.
1596 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
1597 (note_mode_line_or_margin_highlight): Use non-text cursor rather
1598 than vertical scroll-bar cursor in display margins.
1599 (note_mouse_highlight): Use non-text cursor rather than text
1600 cursor in fringes and over images in the text area.
1601 Use non-text cursor when mouse pointer is outside editable text,
1602 i.e. in the void after end-of-line or end-of-buffer; this was
1603 already done for W32, but is now standard for all systems --
1604 user can toggle show-text-cursor-in-void to get old behaviour.
1605 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
1606 Vdisplay_pixels_per_inch.
1607
00498bfc
AS
16082003-11-25 Andreas Schwab <schwab@suse.de>
1609
1610 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
1611 EMACS_INT to not lose bits.
1612 (Ffillarray): Don't set bits beyond the size of a bool vector.
1613
edaa824d
KS
16142003-11-25 Kim F. Storm <storm@cua.dk>
1615
1616 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
1617 define this defun on systems that cannot use stderr as lvalue.
1618
74d6f539
GM
16192003-11-24 Gerd Moellmann <gerd@gnu.org>
1620
1621 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
1622 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
1623 ld's default is incompatible with unexec.
1624
6a1ff3ba
KS
16252003-11-23 Kim F. Storm <storm@cua.dk>
1626
63dc7c6b
KS
1627 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
1628 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
1629 (Fforce_window_update): New defun.
1630 (syms_of_window): Defsubr it.
1631 (Fset_window_margins, Fset_window_fringes): Doc fix.
1632
6a1ff3ba
KS
1633 * print.c (Fredirect_debugging_output): New defun.
1634 (syms_of_print): Defsubr it.
1635
aef109b7
LT
16362003-11-22 Luc Teirlinck <teirllm@auburn.edu>
1637
1638 * fns.c (Fset_char_table_parent): Doc fix.
1639
6a1ff3ba 16402003-11-22 Kim F. Storm <storm@cua.dk>
63ccbe21
KS
1641
1642 * dispnew.c (buffer_posn_from_coords): Return actual row/column
1643 for glyph clicked on, rather than (unused) pixel positions.
1644 (mode_line_string, marginal_area_string): Change X and Y args to
1645 pointers for returning actual row/column for glyph clicked on.
1646 Simplify and optimize loops.
1647
aef109b7
LT
1648 * dispextern.h (mode_line_string, marginal_area_string):
1649 Update prototypes.
63ccbe21
KS
1650
1651 * keyboard.c (make_lispy_position): New function for generating
1652 mouse click positions from frame and pixel coordinates.
1653 Enhanced to return buffer position and actual row/column for
1654 events outside the text area using updated mode_line_string and
1655 marginal_area_string functions.
1656 Return left-fringe and right-fringe clicks as such, rather than
1657 clicks in text area.
1658 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
1659 pixel_to_glyph_coords, as we never use the results.
1660 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
1661 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
1662 Eliminate unused code in WHEEL_EVENT handling.
1663 (make_lispy_movement): Use make_lispy_position.
1664
1665 * window.c (coordinates_in_window): Remove redundant tests.
1666 Fix returned X pixel value for left-margin.
1667
1668 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
1669 mode_line_string and marginal_area_string parameters.
1670
a64387ee 16712003-11-22 Lars Hansen <larsh@math.ku.dk>
930a9995 1672
d7107586
SM
1673 * w32.c (struct the_group, getgrgid): Add.
1674 * mac.c (struct my_group, getgrgid): Add.
aef109b7 1675
3dbf3426
LT
16762003-11-21 Luc Teirlinck <teirllm@auburn.edu>
1677
1678 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
1679
cae8ddbb 16802003-11-21 Lars Hansen <larsh@math.ku.dk>
ded4064f 1681
d7107586
SM
1682 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
1683 include in call to file name handler. Optionally translate numeric
1684 UID and GID to strings. Update docstring.
1685 (directory_files_internal): Add parameter ID-FORMAT.
1686 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
1687 include in call to file name handler and call to
1688 directory_files_internal. Update Docstring.
1689 (Fdirectory_files): Add dummy parameter in call to
1690 directory_files_internal.
1691 * lisp.h (Qinteger): Add.
1692 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
1693 (Ffile_attributes): Add parameter.
1694 * data.c (Qinteger): Export.
cae8ddbb 1695
2550b848
LT
16962003-11-21 Luc Teirlinck <teirllm@auburn.edu>
1697
3dbf3426 1698 * fns.c (Freverse, Fnreverse): Doc fixes.
2550b848 1699
88380018
KS
17002003-11-19 Kim F. Storm <storm@cua.dk>
1701
1702 * xdisp.c (init_iterator): Initialize it->start to position
1703 before reseating (in case start position is invisible).
1704 (init_to_row_start): Set it->start to row-start.
1705 (redisplay_window): Accept optional_new_start if start position
1706 is invisible (in which case IT_CHARPOS overshoots PT).
1707 (display_line): Setup row->start from it->start (rather than
1708 it->current which is wrong if first char on line is invisible).
1709 When done, reseat it->start to it->current (= start of next row).
1710 (expose_area): Fix exposure of text area when first char (e.g. TAB)
1711 is only partially visible.
1712
1713 * dispextern.h (struct it): New member start.
1714
854c1a59
SM
17152003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
1716
455316e2
SM
1717 * alloc.c (make_float, Fcons): Clear the markbit at init time.
1718 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
1719 of block_index outside of the macro call.
1720 (Fgarbage_collect): Remove null code.
1721
1722 * m/amdx86-64.h: Don't redefine XPNTR.
1723
854c1a59
SM
1724 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
1725 of VALMASK.
1726
1727 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
1728 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
1729 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
1730
1731 * lisp.h (VALMASK): Only define for non-union type.
1732 (MARKBIT): Remove.
1733 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
1734 (XTYPE): Define unconditionally.
1735 (XSETTYPE): Remove one more remnant.
1736 (EQ): Define differently for the union and non-union cases.
1737 (INTMASK): New bit mask.
1738 (struct Lisp_Marker): Move down to prepare for upcoming patch.
1739 (GC_EQ): Delegate to EQ.
1740
1741 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
1742
a0c6ef2d
JD
17432003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1744
1745 * xterm.c (x_window_to_scroll_bar): Move check of display to
1746 where window_id is compared.
1747
859492c4
KS
17482003-11-17 Kim F. Storm <storm@cua.dk>
1749
1750 * dispextern.h (struct it): New member first_vpos.
1751
1752 * xdisp.c (start_display): Set it->first_vpos.
1753 (try_window_id): Use first_vpos to start display in first _text_
1754 line if no reusable lines at start of window with header line.
1755
810f2256
JD
17562003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1757
7c402969 1758 * w32fns.c (XPutPixel):
854c1a59
SM
1759 * w32bdf.c (w32_init_bdf_font):
1760 * sunfns.c (sel_read):
1761 * process.c (Fmake_network_process):
1762 * frame.c (store_frame_param):
1763 * fontset.c (Fset_fontset_font):
1764 * emacs.c (shut_down_emacs):
a64387ee 1765 * ccl.c (ccl_driver): Remove period at end of error message.
7c402969 1766
a32e9bfd
JD
1767 * config.in: Regenerate.
1768
810f2256
JD
1769 * xfns.c (x_window_to_frame, x_any_window_to_frame)
1770 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
1771 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
1772 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
1773 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
1774
1775 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
1776
1777 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
1778 (XTmouse_position, handle_one_xevent): Pass Display* to
1779 x_window_to_scroll_bar.
1780 (x_window_to_scroll_bar): Take a Display* argument.
1781 Check that display for frame is equal to Display* argument.
854c1a59 1782 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
810f2256
JD
1783 x_display_info_for_display instead. Use Display in xev instead
1784 of GDK_DISPLAY.
1785 (x_dispatch_event): Call x_display_info_for_display.
1786 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
1787 (x_connection_closed): Call xg_display_close for GTK.
1788 (x_term_init): Call xg_display_open for additional displays.
1789 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
1790 for GTK.
1791
1792 * xmenu.c (single_menu_item, mouse_position_for_popup)
1793 (x_activate_menubar): Formatting adjustments.
1794
1795 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
1796 adjustments.
1797
1798 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
1799 (xg_display_close, xg_create_default_cursor)
1800 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
1801 handling.
854c1a59
SM
1802 (xg_left_ptr_cursor): Remove.
1803 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
810f2256
JD
1804 cursor here.
1805 (xg_win_to_widget): Take Display* argument, call
1806 gdk_xid_table_lookup_for_display.
1807 (xg_create_frame_widgets, xg_get_file_name, create_menus)
1808 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
1809 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
1810 in FRAME_X_DISPLAY_INFO.
1811 (xg_get_scroll_id_for_window): Take Display* argument.
1812 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
854c1a59 1813 (xg_initialize): Remove xg_left_ptr_cursor.
810f2256
JD
1814
1815 * gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
1816 Display* argument also. Declare xg_display_open,
1817 xg_display_close, xg_create_default_cursor.
1818
0b03cc78
JD
18192003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1820
1821 * xterm.c (x_detect_focus_change): Do not change focus frame for
1822 Enter/LeaveNotify if the current focus frame has explicit focus.
1823
77e688fa
KS
18242003-11-14 Kim F. Storm <storm@cua.dk>
1825
1826 * dispnew.c (update_text_area): Fix redisplay error when hscroll
1827 is active and first glyph is only partially visible.
854c1a59 1828
dd429b03
KH
18292003-11-13 Kenichi Handa <handa@m17n.org>
1830
1831 * xdisp.c (select_frame_for_redisplay): New function.
1832 (redisplay_internal): Record also selected_frame for
1833 unwind_redisplay. Call select_frame_for_redisplay before
1834 redrawing each frame.
1835 (unwind_redisplay): Argument changed to a cons.
1836
6d9266f4
LT
18372003-11-12 Luc Teirlinck <teirllm@auburn.edu>
1838
1839 * fns.c (Fstring_to_multibyte): Doc fix.
1840
80060eb3
KH
18412003-11-11 Kenichi Handa <handa@m17n.org>
1842
1843 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
1844
74305183
JD
18452003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1846
1847 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
1848 program specified positions.
1849
cfda993e
JD
18502003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1851
1852 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
1853
df211069
KH
18542003-11-08 Kenichi Handa <handa@m17n.org>
1855
1856 * Makefile.in (lisp): Add kannada.el.
1857 (shortlisp): Likewise.
1858
4307d534
KH
18592003-11-07 Kenichi Handa <handa@m17n.org>
1860
854c1a59
SM
1861 * coding.c (coding_allocate_composition_data):
1862 Reset coding->composing to COMPOSITION_NO.
4307d534
KH
1863 (coding_restore_composition): Detect invalid composition data.
1864 Give Fstring and Fvector a Lispy integer, not C int.
1865
854c1a59
SM
18662003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
1867
1868 * floatfns.c (Flogb): Don't use VALMASK.
1869
1870 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
1871 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
1872
1873 * lisp.h (XINT): Move the cast to clarify what is going on.
1874 (GCTYPEMASK, XSETTYPE): Remove.
1875 (XGCTYPE): Make it an alias of XTYPE.
1876
d04103a1
JD
18772003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1878
1879 * xterm.c (x_term_init): Fix formatting.
1880
da18b5ac
JD
18812003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1882
1883 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
1884 and xg_did_tearoff.
1885
1886 * gtkutil.c: Remove variable xg_did_tearoff.
1887 (xg_have_tear_offs): New function.
1888 (tearoff_remove): Just decrease xg_detached_menus.
1889 (tearoff_activate): Increase xg_detached_menus and call
1890 tearoff_remove when tearoff is removed.
854c1a59 1891 (xg_keep_popup): Remove function.
da18b5ac
JD
1892 (create_menus): Give add_tearoff_p as argument to recursive
1893 call to create_menus.
1894 (xg_create_widget): Use variables instead of multiple
1895 strcmp. Tell create_menus to create tear off only for
1896 menu bar menus.
1897 (xg_update_menubar): Change title for a detached menu also.
1898 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
1899 of deep_p.
1900 (xg_initialize): Initialize xg_detached_menus, remove
1901 initialization of xg_did_tearoff.
1902
1903 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
1904 xg_have_tear_offs returns non-zero.
1905 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
1906 call to xg_keep_popup.
1907
64d4923e
AC
19082003-11-01 Andrew Choi <akochoi@shaw.ca>
1909
1910 * macterm.c (XTread_socket): Handle menubar selection and grow
1911 window only for mouseDown events.
854c1a59 1912
6cc8bc07
JD
19132003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1914
1915 * xterm.c (x_term_init): For GTK part, increase x_initialized
1916 to check for more than one display. Use error instead of return 0.
1917
043131c4
AC
19182003-10-31 Andrew Choi <akochoi@shaw.ca>
1919
854c1a59 1920 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
043131c4
AC
1921 (copy_dysymtab): Call it.
1922
bdda99a1
LT
19232003-10-31 Luc Teirlinck <teirllm@auburn.edu>
1924
1925 * eval.c (Fdefvaralias): Doc fix.
1926
800f42ff 19272003-10-26 Luc Teirlinck <teirllm@auburn.edu>
0d11571e
LT
1928
1929 * data.c (Fsetplist): Doc fix.
1930
ef35b389
LK
19312003-10-14 Lute Kamstra <lute@gnu.org>
1932
1933 * window.c (Fset_window_fringes): Clarify docstring.
07107abc 1934
ef35b389 19352003-10-14 Kim F. Storm <storm@cua.dk>
854c1a59 1936
07107abc
KS
1937 * window.c (Fset_window_margins): Simplify arg checking.
1938
f7005886
RS
19392003-10-13 Richard M. Stallman <rms@gnu.org>
1940
1941 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
1942 (print_partial_compiled_pattern): Replace assert with a printout.
1943 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
1944
1945 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
1946
1947 * window.c (Fset_window_margins): Allow only integers as args.
1948 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
1949 Doc fixes.
1950
9c0c2af5
LK
19512003-10-13 Lute Kamstra <lute@gnu.org>
1952
1953 * window.c (Fset_window_fringes): Elaborate docstring.
1954
3f080e4e
AC
19552003-10-12 Andrew Choi <akochoi@shaw.ca>
1956
854c1a59 1957 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
a4887377 1958
3f080e4e
AC
1959 * s/darwin.h (GC_MARK_STACK): Define.
1960
0aa513ed
JD
19612003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1962
1963 * window.c (shrink_windows): New function.
1964 (size_window): Call shrink_windows to calculate window sizes when
1965 shrinking frame with more than one window.
1966
6aa8858a
KS
19672003-10-12 Kim F. Storm <storm@cua.dk>
1968
1969 * xdisp.c (compute_fringe_widths): Doc fix.
1970
c2164d91
KH
19712003-10-08 Kenichi Handa <handa@m17n.org>
1972
854c1a59 1973 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
c2164d91 1974
f82ac129
KH
19752003-10-07 Kenichi Handa <handa@m17n.org>
1976
1977 * coding.c (Qcoding_system_define_form): New variable.
1978 (syms_of_coding): Intern and staticpro it.
1979 (Fcheck_coding_system): Try to autoload the definition of
1980 CODING-SYSTEM.
1981
9296c947
LT
19822003-10-05 Luc Teirlinck <teirllm@auburn.edu>
1983
1984 * fns.c (Frequire): Doc fix.
1985
c1f0671a
JD
19862003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1987
3d8c3826
JD
1988 * xfns.c (Fx_send_client_event): New function as a base for
1989 manipulating extended window manager hints.
6dc15d98 1990 (Fx_send_client_event): Remove unused variable s.
3d8c3826 1991
068ae0fd
JD
1992 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
1993 that function is removed.
1994
1995 * xterm.c (x_set_offset): Use move_offset_left/top instead of
1996 x/y_pixels_outer_diff.
1997 (x_check_expected_move): Calculate move_offset_left/top.
1998
1999 * xterm.h (struct x_output): New members: move_offset_top/left.
2000
854c1a59 2001 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
068ae0fd
JD
2002 call x_set_offset directly.
2003
2004 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
2005
96f09305
JD
2006 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
2007
2008 * xterm.c (x_delete_display): Free font names and font_encoder
2009 in dpyinfo->font_table.
2010
854c1a59
SM
2011 * xfns.c (Fx_close_connection): Only call XFreeFont here.
2012 Move xfree of font names to x_delete_display.
96f09305 2013
c1f0671a
JD
2014 * xterm.h (struct x_display_info): New member, wm_type.
2015 (struct x_output): New members, expected_top/left and
2016 check_expected_move.
2017
2018 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
2019 is received.
854c1a59
SM
2020 (handle_one_xevent): Rename x_check_expected_move from
2021 x_check_fullscreen_move.
c1f0671a
JD
2022 (x_set_offset): Only add WM decoration sizes to modified_top/left
2023 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
854c1a59 2024 (x_check_expected_move): Rename from x_check_fullscreen_move.
c1f0671a
JD
2025 Removed fullscreen specific code. Use check_expected_move,
2026 expected_left/top instead. Also, set wm_type.
2027 (x_term_init): Initialize wm_type to unknown.
2028
2029 * frame.c (x_fullscreen_move): Remove addition of WM decoration
2030 sizes to move_x/y.
2031
be2fdba9
KH
20322003-10-03 Kenichi Handa <handa@m17n.org>
2033
2034 * macterm.c (x_load_font): Clear all members of FONTP before start
2035 filling them.
2036
20372003-10-02 Kenichi Handa <handa@m17n.org>
2038
2039 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
2040 before calling find_ccl_program_func. Call find_ccl_program_func
2041 only when fontp->font_encoder is not NULL.
2042
2043 * xterm.c (x_load_font): Clear all members of FONTP before start
2044 filling them.
2045
26a6e439
JPW
20462003-10-03 John Paul Wallington <jpw@gnu.org>
2047
2048 * keymap.c (map_keymap): Don't abort when binding is a vector.
2049
0d4c2dc2
JR
20502003-10-02 Jason Rumney <jasonr@gnu.org>
2051
854c1a59
SM
2052 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
2053 Sync dependencies with Makefile.in.
a63cf46f
JR
2054 (alloca.o): Remove.
2055
0d4c2dc2
JR
2056 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
2057 filling them.
2058
2059 * w32bdf.c (w32_load_bdf_font): Likewise.
2060
ab8f7d5c
RS
20612003-09-30 Richard M. Stallman <rms@gnu.org>
2062
2063 * term.c (set_tty_color_mode): Calculate current_mode_spec
2064 regardless of value of VAL.
2065
854c1a59 2066 * intervals.c (graft_intervals_into_buffer):
ab8f7d5c
RS
2067 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
2068 Handle over_used when splitting UNDER.
2069
a64387ee 20702003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ab8f7d5c
RS
2071
2072 * regex.c (regex_compile): Free the stack when returning from function.
2073
3413f972
KH
20742003-09-28 Kenichi Handa <handa@m17n.org>
2075
2076 * fontset.c (Finternal_char_font): Change return value to
2077 cons (FONT-NAME . GLYPH-CODE).
2078
40409f05
EZ
20792003-09-28 Eli Zaretskii <eliz@elta.co.il>
2080
2081 * term.c (tty_setup_colors): Treat any negative argument as -1.
2082
f98ddc99
KH
20832003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
2084
2085 * process.c (send_process): Delete unused temp_buf.
2086
66c8f1a8
DL
20872003-09-26 Dave Love <fx@gnu.org>
2088
2089 * xterm.c (x_bitmap_mask): Declare.
2090
ca716c26
DL
20912003-09-25 Dave Love <fx@gnu.org>
2092
2093 * Makefile.in (fns.o): Depend on md5.h.
2094
fbe57420
KS
20952003-09-25 Kim F. Storm <storm@cua.dk>
2096
2097 * window.c (set_window_buffer): Fix redisplay problems when
2098 switching between buffers with different display margin widths.
2099
ef6ae4ff
KS
21002003-09-23 Kim F. Storm <storm@cua.dk>
2101
2102 * process.c (set_socket_option): Fix :bindtodevice option.
2103 (Fset_network_process_option): Update process contact list when
2104 setting option succeeds.
2105 (Fmake_network_process): Doc fix.
2106
68e03c1c
DL
21072003-09-23 Dave Love <fx@gnu.org>
2108
7146d1c1 2109 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
68e03c1c 2110
2f809aae
EZ
21112003-09-22 Eli Zaretskii <eliz@elta.co.il>
2112
2113 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
2114 color mode is an integer number (it could be -1).
2115
8fe7d8c8
RS
21162003-09-22 Richard M. Stallman <rms@gnu.org>
2117
2118 * intervals.c (graft_intervals_into_buffer): Correct the main loop
2119 in the case where OVER is longer than UNDER.
2120
2f71b5ea
MY
21212003-09-22 Masatake YAMATO <jet@gyve.org>
2122
7146d1c1 2123 * window.c (Fset_window_scroll_bars): Validate the value of
2f71b5ea 2124 `vertical_type'.
7146d1c1 2125
0c4da023
KS
21262003-09-21 Kim F. Storm <storm@cua.dk>
2127
2128 * frame.c (Vdefault_frame_scroll_bars): New variable.
2129 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
2130 (syms_of_frame): DEFVAR_LISP it, and initialize according to
2131 window-system default scroll bar position.
2132
b648413b
KS
2133 * window.c (Fwindow_scroll_bars): Doc fix.
2134
8f5b9e34
JD
21352003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2136
854c1a59 2137 * xterm.c (x_set_offset): Take window manager decorations into account.
8f5b9e34 2138
b0f23edf
RS
21392003-09-19 Richard M. Stallman <rms@gnu.org>
2140
2141 * atimer.h: Don't include lisp.h.
2142 (P_): Define it here (as well as elsewhere).
2143
2144 * print.c (Fprin1_to_string): Move the PRINTPREPARE
2145 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
2146
2147 * data.c (Fvariable_binding_locus): New function.
2148 (syms_of_data): defsubr it.
2149 (Flocal_variable_p): Delete duplicate call to indirect_variable.
2150
e1283999
DL
21512003-09-18 Dave Love <fx@gnu.org>
2152
ad5f3636
DL
2153 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
2154
e1283999
DL
2155 * process.c (Fnetwork_interface_info): Fix type error.
2156 (Fnetwork_interface_list): Doc fix.
2157 (read_process_output, read_process_output): Delete unused var.
2158
b8c7fd71
KS
21592003-09-17 Kim F. Storm <storm@cua.dk>
2160
2161 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
2162 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
2163 (Fnetwork_interface_info): Check that ifreq struct has required
2164 fields before accessing them; this requires that those fields are
2165 defined as macros, which may be too restrictive on some platforms,
2166 but it is better than failing on other platforms.
2167 (syms_of_process): Only defsubr above fns when included.
2168
11e0a411
DL
21692003-09-17 Dave Love <fx@gnu.org>
2170
2171 * unexalpha.c: Don't include varargs.h.
2172
e9c50801
KS
21732003-09-17 Kim F. Storm <storm@cua.dk>
2174
2175 * process.c (Fset_process_sentinel): Add sentinel to childp plist
2176 for network process.
2177 (socket_options): Add `:' prefix to option names. Add optbit field.
2178 (set_socket_option): Remove no_error arg and special handling of s < 0.
2179 Return 1<<optbit for known option, 0 for unknown.
2180 Do not interpret 0 as false for boolean option (only nil).
2181 Pass failed option and value to report_file_error.
7146d1c1 2182 (Fset_network_process_options): Replace by Fset_network_process_option.
e9c50801
KS
2183 (Fset_network_process_option): New function to set just one option.
2184 (Fmake_network_process): Allow :coding arg to be a cons.
2185 Allow :server arg to be an integer specifying backlog size.
2186 Remove :options arg, and allow options to be specified directly
2187 as :KEY, VALUE pairs. Parse these options before binding socket.
2188 As before, :reuseaddr t is default for a server process, but this
2189 can now be disabled by specifying :reuseaddr nil.
2190 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
2191 (init_process): Availability of network options is now checked with
2192 simpler syntax (featurep 'make-network-process :OPTION); use loop to
2193 setup features.
2194 (syms_of_process): Fix defsubr's for the replaced functions.
2195
a0fc3644
DL
21962003-09-16 Dave Love <fx@gnu.org>
2197
2198 * Makefile.in: Depend on coding.h.
2199
6df2a645
KS
22002003-09-14 Kim F. Storm <storm@cua.dk>
2201
2202 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
2203 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
2204 (syms_of_process): Defsubr them.
2205
2206 * config.in: Regenerate.
7146d1c1
SM
2207
22082003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
2209
2210 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
2211 * m/news-r6.h (XUNMARK): Remove.
2212 * m/mips.h (XUNMARK): Remove.
2213 * m/mips-siemens.h (XUNMARK): Remove.
2214 * m/iris4d.h (XUNMARK): Remove.
2215 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
2216
0930c1a1
SM
22172003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
2218
31003b9e
SM
2219 * lisp.h (VALBITS): Don't remove 1 for the markbit.
2220 (union Lisp_Object): Use unsigned int for types. Remove markbit.
2221 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
2222 (XTYPE): Use unsigned right-shift.
2223 (XMARKBIT, XMARK, XUNMARK): Remove.
2224
0930c1a1
SM
2225 * alloc.c (init_intervals, init_symbol, init_marker):
2226 Don't preallocate anything.
2227 (Fgarbage_collect, mark_object): Ignore the markbit.
2228
2229 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
2230
19bb0fcd 22312003-09-08 Lute Kamstra <lute@gnu.org>
5df034de
LK
2232
2233 * xdisp.c (pint2hrstr): New function.
2234 (decode_mode_spec): Add `%i' and `%I' specs.
2235 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
2236 for `mode-line-format'.
2237
03bb6a06
AS
22382003-09-07 Andreas Schwab <schwab@suse.de>
2239
2240 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
2241 avoid warning.
2242
2063d89c
EZ
22432003-09-07 Eli Zaretskii <eliz@elta.co.il>
2244
0930c1a1 2245 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
2063d89c 2246
ed159bbf
KS
22472003-09-03 Kim F. Storm <storm@cua.dk>
2248
2249 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
2250 change (superseded by 2002-08-30 change); the default blink-off
2251 cursor is now again "no cursor".
2252
fe64a394
JR
22532003-09-01 Jason Rumney <jasonr@gnu.org>
2254
2255 * makefile.w32-in (alloca.o): Remove.
2256 (coding.o): Depend on intervals.h
2257 (emacs.o, bytecode.o): Depend on window.h
2258
c0175e24
DL
22592003-09-01 Dave Love <fx@gnu.org>
2260
2261 * Makefile.in (alloca.o): Remove commands.
2262 (coding.o): Depend on intervals.h composite.h window.h.
2263 (emacs.o): Depend on window.h keyboard.h keymap.h.
2264 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
2265 (bytecode.o): Depend on window.h.
2266
a24d4cb2
JR
22672003-08-31 Jason Rumney <jasonr@gnu.org>
2268
4bc2315e
JR
2269 * w32term.c (w32_per_char_metric): Allow cached metrics to be
2270 returned even when font_type is unknown.
2271
a24d4cb2
JR
2272 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
2273
9d35adc7
JD
22742003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2275
2276 * xterm.c (x_term_init): Initialize new fields in x_display_info.
2277
2278 * xterm.h (struct x_display_info): Add red/green/blue_bits and
2279 *_offset.
2280
2281 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
2282 calculate pixel value.
2283
6f68b035
GM
22842003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
2285
0930c1a1
SM
2286 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
2287 Don't tell redisplay display is accurate when it's actually been
2288 paused for pending input.
6f68b035 2289
4828b4d7
RS
22902003-08-29 Richard M. Stallman <rms@gnu.org>
2291
2292 * dispnew.c (adjust_glyph_matrix): Call window_box
2293 whenever W is nonzero.
2294
2295 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
2296 (Fkill_local_variable, Fmake_variable_frame_local)
0930c1a1 2297 (Flocal_variable_p, Flocal_variable_if_set_p):
4828b4d7
RS
2298 Use indirect_variable to trace thru variable aliases.
2299
2300 * config.in: Updated.
2301
2302 * callint.c (Fcall_interactively): Save and restore
2303 Vthis_command, Vthis_original_command, real_this_command,
2304 and current_kboard->Vlast_command.
2305
2306 * abbrev.c (Fexpand_abbrev): Insert before deleting.
2307
e019878d
GM
23082003-08-29 Gerd Moellmann <gerd@gnu.org>
2309
2310 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
2311
85478bc6
KH
23122003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
2313
0930c1a1 2314 * coding.c (decode_coding_iso2022): Initialize local variable c2.
85478bc6
KH
2315 (decode_coding_sjis_big5): Likewise.
2316
07ce82d3
JR
23172003-08-27 Jason Rumney <jasonr@gnu.org>
2318
d3703de3
JR
2319 * w32.c (sys_pipe): Protect against file descriptor overflow.
2320
ee4a01d1
JR
2321 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
2322
07ce82d3
JR
2323 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
2324
a64387ee 23252003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
72d19c66
LK
2326
2327 * xfns.c (Vgtk_version_string): New variable.
2328 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
2329
5459e42a
EZ
23302003-08-24 Eli Zaretskii <eliz@elta.co.il>
2331
0930c1a1 2332 * term.c (term_init): Remove `const' from buffer_size's declaration.
3d8714e7 2333
5459e42a
EZ
2334 * Makefile.in (msdos.o): Depend on intervals.h.
2335
0930c1a1 2336 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
5459e42a 2337
231d6cfb
JD
23382003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2339
2340 * xterm.h (struct x_display_info): New fields: client_leader_window
2341 and Xatom_wm_client_leader.
2342
2343 * xterm.c (x_initialize): Move call to x_session_initialize to ...
2344 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
2345
2346 * xsmfns.c (create_client_leader_window): New function.
2347 (x_session_initialize): Call create_client_leader_window, take
2348 dpyinfo as argument.
2349
2350 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
2351
2352 * Makefile.in (xsmfns.o): Add more depenedencies.
2353
afa88464
DL
23542003-08-21 Dave Love <fx@gnu.org>
2355
2356 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
2357
f730033e
KH
23582003-08-21 Kenichi Handa <handa@m17n.org>
2359
2360 * term.c (term_init): Fix previous change; don't rely on the
2361 length of `buffer' if TERMINFO is defined.
2362
6dca786c
DL
23632003-08-20 Dave Love <fx@gnu.org>
2364
2365 * atimer.h: Include lisp.h.
2366
2367 * lisp.h (EMACS_LISP_H): New.
2368 (popup_activated_flag): Don't declare.
2369
2370 * alloca.c: Some merging with gnulib. Change logic and doc
2371 concerning (x)malloc/(x)free -- no longer Emacs-specific.
2372 [DO_BLOCK_INPUT]: Don't include lisp.h.
2373 (xmalloc, xfree): Declare.
2374 (malloc): Don't declare.
2375
0930c1a1 2376 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
6dca786c
DL
2377 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
2378 atimer.h, blockinput.h.
2379
2380 * alloc.c (lisp_align_malloc): Change type of `aligned'.
2381
2382 * alloca.s: Removed.
2383
3a06a6d9
RS
23842003-08-19 Gerd Moellmann <gerd@gnu.org>
2385
2386 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
2387 use -lncurses.
2388
2389 * term.c (term_init): Use a buffer of size 4096 for tgetent since
2390 FreeBSD returns something longer than 2044. Abort if the end of
2391 the buffer is overwritten.
2392
27eeee55
MB
23932003-08-19 Miles Bader <miles@gnu.org>
2394
2395 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
2396
2f297815
GM
23972003-08-19 Gerd Moellmann <gerd@gnu.org>
2398
f4446bbf
GM
2399 * alloc.c (lisp_align_malloc): Check for memory full when
2400 allocating ablocks, which also avoids freeing a pointer into an
2401 ablocks structure.
2402
2403 * puresize.h (BASE_PURESIZE): Increase to 1100000.
2404
0930c1a1 2405 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
2f297815 2406
0e7d7aae
RS
24072003-08-16 Richard M. Stallman <rms@gnu.org>
2408
2409 * editfns.c (Fencode_time): Doc fix.
2410
24112003-08-16 David Ponce <david@dponce.com>
2412
2413 * fileio.c (Fwrite_region): Fix conditional expression to issue
2414 the right message.
2415
24162003-08-16 Juri Linkov <juri@jurta.org> (tiny change)
2417
2418 * syntax.c (Fforward_word): Argument changed to optional.
0930c1a1 2419 Set default value to 1.
0e7d7aae 2420
5d551295
KH
24212003-08-15 Kenichi Handa <handa@m17n.org>
2422
2423 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
2424 what autoscaled.
2425 (best_matching_font): Once we find a better scalable font, set
2426 non_scalable_has_exact_height_p to 1.
2427 (try_font_list): Call try_alternative_families to try any family
2428 with the given registry.
2429
1661e56b
AS
24302003-08-09 Andreas Schwab <schwab@suse.de>
2431
f29181dc
AS
2432 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
2433
1661e56b
AS
2434 * print.c (print_string): Fix printing of multibyte string with
2435 nontrivial printcharfun.
2436
465aa50a
JD
24372003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2438
2439 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
2440
2441 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
2442
e430e5ba
KH
24432003-07-31 Kenichi Handa <handa@m17n.org>
2444
2445 * process.c (read_process_output): Return the actually read bytes
2446 instead of the result of decoding.
2447
97e7188e
KH
24482003-07-31 Kenichi Handa <handa@m17n.org>
2449
2450 * xterm.h (struct x_bitmap_record): New member have_mask.
2451
2452 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
2453 to 0.
2454 (x_create_bitmap_from_file): Likewise.
2455 (x_destroy_bitmap): Check have_mask member before freeing a mask.
2456 (x_destroy_all_bitmaps): Likewise.
2457 (x_create_bitmap_mask): Set have_mask member to 1.
2458
b53094d6
RS
24592003-07-30 Richard M. Stallman <rms@gnu.org>
2460
2461 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
2462
631f2082
JD
24632003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2464
2465 * gtkutil.c (xg_mark_data): Update calls to mark_object.
2466
c855f2ca
RS
24672003-07-29 Richard M. Stallman <rms@gnu.org>
2468
2469 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
2470 Conditionalize XIM code on HAVE_XIM.
2471
2472 * fns.c (Fclear_string): New function.
2473 (syms_of_fns): defsubr it.
2474
17e6d491
KH
24752003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
2476
0930c1a1 2477 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
17e6d491 2478
29ea8ae9
SM
24792003-07-22 Stefan Monnier <monnier@cs.yale.edu>
2480
2481 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
2482
2483 * buffer.c (delete_all_overlays): New function.
2484 * buffer.h (delete_all_overlays): Declare.
2485 * coding.c (run_pre_post_conversion_on_str):
2486 * print.c (temp_output_buffer_setup):
2487 * fileio.c (Finsert_file_contents):
2488 * minibuf.c (get_minibuffer): Use it.
2489
1dd7ccf2
AC
24902003-07-22 Andrew Choi <akochoi@shaw.ca>
2491
2492 * unexmacosx.c (unexec_regions_sort_compare):
2493 (unexec_regions_merge): New functions. Sort and merge unexec
2494 regions before dumping them.
2495
f57bd967
DL
24962003-07-22 Dave Love <fx@gnu.org>
2497
2498 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
2499
7cdee936
SM
25002003-07-21 Stefan Monnier <monnier@cs.yale.edu>
2501
2502 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
2503 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
2504 MARKBIT as the gcmarkbit for strings.
2505
e50886d3
RS
25062003-07-21 Richard M. Stallman <rms@gnu.org>
2507
2508 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
2509
29ea8ae9 2510 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
e50886d3
RS
2511 (syms_of_fns): Corresponding change.
2512
2513 * alloc.c (syms_of_alloc): Doc fixes.
2514
25152003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
2516
2517 * s/netbsd.h: Use -Wl syntax.
2518
fdc39b59
RS
25192003-07-17 Richard M. Stallman <rms@gnu.org>
2520
2521 * xterm.c (xim_initialize): Redo 6/24 change.
2522
9c53385f
SM
25232003-07-15 Stefan Monnier <monnier@cs.yale.edu>
2524
2525 * buffer.c (copy_overlays): Use EMACS_INT for positions.
2526 (Fswitch_to_buffer): Don't signal an error when switching to the same
2527 buffer in a dedicated window.
2528
2529 * alloc.c: Use bitmaps for cons, as was done for floats.
2530 (init_float, init_cons): Let the normal code allocate the first block.
2531 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
2532 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
2533 New macros.
2534 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
2535 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
2536 (live_cons_p): Check the pointer is not past the `conses' array.
2537 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
2538 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
2539 (survives_gc_p): Use CONS_MARKED_P and simplify.
2540 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
2541
dde13196
PE
25422003-07-13 Paul Eggert <eggert@twinsun.com>
2543
2544 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
2545 puts it into BSS instead, at least on Solaris 8 and 9.
2546 This is a valid optimization, and it may occur on other platforms,
2547 so Emacs should not assume that initializing a static variable to
2548 zero puts it into data.
2549 * alloc.c (pure, staticvec):
2550 Initialize these arrays to nonzero, so that they're not
2551 put into BSS by that optimization.
2552
a801bc34
SM
25532003-07-13 Stefan Monnier <monnier@cs.yale.edu>
2554
2555 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
2556 (lisp_align_malloc): Use posix_memalign is available.
2557 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
2558 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
2559 for consistency. Update users.
2560
0c8b2afa
RS
25612003-07-13 Richard M. Stallman <rms@gnu.org>
2562
2563 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
2564
668c2ab0
JB
25652003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
2566
2567 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
2568 and use the Gtk+ function gtk_window_icon_from_file if available.
2569
2570 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
2571 handle mask of bitmaps.
2572 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
2573 mask property.
2574 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
2575
2576 * xterm.h (xg_set_icon): New function.
2577
800bebe3
RS
25782003-07-12 Paul Eggert <eggert@twinsun.com>
2579
2580 * unexelf.c (unexec): Consider a section to precede the .bss
2581 section if its addresses overlap that of .bss.
2582
69e38995
RS
25832003-07-12 Richard M. Stallman <rms@gnu.org>
2584
2585 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
2586
2587 * config.in (HAVE_CRTIN): Add #undef.
2588 (INLINE): Really inline only if OPTIMIZE is defined.
2589
2590 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
2591 END_FILES_1.
2592 (START_FILES_1, END_FILES_1): New macros (conditional).
a801bc34 2593 (LD_SWITCH_SYSTEM_TEMACS): Define.
69e38995
RS
2594
2595 * s/openbsd.h: Don't include bsd4-3.h.
a801bc34
SM
2596 (TERMINFO): Define.
2597 (LIBS_TERMCAP): Define.
2598 (LD_SWITCH_SYSTEM): Define (two definitions).
69e38995
RS
2599
2600 * xfns.c: Include libpng/png.h instead of png.h.
2601
f1d0c238
AS
26022003-07-11 Andreas Schwab <schwab@suse.de>
2603
2604 * buffer.c (modify_overlay): Update prototype.
2605 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
2606 Likewise.
2607
5f6bf5fe
SM
26082003-07-09 Stefan Monnier <monnier@cs.yale.edu>
2609
2610 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
2611 (struct interval): Move to intervals.h.
2612 (struct Lisp_Marker): Use EMACS_INT for position info.
2613 (forward_point): Remove prototype of defunct function.
2614 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
2615 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
2616 (syms_of_textprop, set_text_properties): Remove prototypes that are
2617 already in intervals.h.
2618
2619 * intervals.h (struct interval): Move from lisp.h.
2620 Use EMACS_INT for position and size info.
2621
2622 * coding.c: Include intervals.h for Fset_text_properties.
2623
2624 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
2625 position and length information.
2626
2765b457
SM
26272003-07-09 Stefan Monnier <monnier@cs.yale.edu>
2628
2629 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
2630 position and length information.
2631
2410d73a
SM
26322003-07-09 Stefan Monnier <monnier@cs.yale.edu>
2633
2634 Change overlays_after and overlays_before so the overlays themselves
2635 are linked into lists, rather than using cons cells. After all each
2636 Lisp_Misc already occupies 5 words, so we can add a `next' field to
2637 Lisp_Overlay for free and save up one cons cell per overlay (not
2638 to mention one indirection when traversing the list of overlay).
2639
2640 * lisp.h (struct Lisp_Overlay): New field `next'.
2641
2642 * buffer.h (struct buffer): Change overlays_before and overlays_after
2643 from Lisp lists of overlays to pointers to overlays.
2644
2645 * buffer.c (overlay_strings, recenter_overlay_lists):
2646 Fix typo in eassert in last commit.
2647 (unchain_overlay): New function.
2648 (add_overlay_mod_hooklist): Use AREF.
2649 (copy_overlays, reset_buffer, overlays_at, overlays_in)
2650 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
2651 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
2652 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
2653 (report_overlay_modification, evaporate_overlays, init_buffer_once):
2654 Adjust to new type of overlays_(before|after).
2655
2656 * alloc.c (mark_object): Mark the new `next' field of overlays.
2657 (mark_buffer): Manually mark the overlays_(after|before) fields.
2658
2659 * coding.c (run_pre_post_conversion_on_str):
2660 * editfns.c (overlays_around):
2661 * xdisp.c (load_overlay_strings):
2662 * fileio.c (Finsert_file_contents):
2663 * indent.c (current_column):
2664 * insdel.c (signal_before_change, signal_after_change):
2665 * intervals.c (set_point_both):
2666 * print.c (temp_output_buffer_setup): Use new type for
2667 overlays_(before|after).
2668
04812929
SM
26692003-07-08 Stefan Monnier <monnier@cs.yale.edu>
2670
2671 * buffer.c (report_overlay_modification): Don't run hooks while
2672 traversing the list of overlays.
2673
2674 * buffer.h (struct buffer): Use an int for overlay_center.
2675 (overlays_at, evaporate_overlays, recenter_overlay_lists)
2676 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
2677
2678 * buffer.c (reset_buffer, recenter_overlay_lists)
2679 (adjust_overlays_for_insert, adjust_overlays_for_delete)
2680 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
2681 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
2682 (overlays_at, evaporate_overlays, recenter_overlay_lists)
2683 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
2684
2685 * xdisp.c (fast_find_position): Remove unused var.
2686
2687 * cmds.c (Qexpand_abbrev): New sym.
2688 (syms_of_cmds): Initialize it.
2689 (internal_self_insert): Use it to call expand-abbrev.
2690
2e7ecf15
KS
26912003-07-09 Kim F. Storm <storm@cua.dk>
2692
2693 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if emacs
2694 was configured with --without-xim.
42f81f64 2695 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
2e7ecf15 2696
c6de56a0
RS
26972003-07-07 Richard M. Stallman <rms@gnu.org>
2698
2699 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
2700
2701 * alloc.c (Fgarbage_collect): Doc fix.
2702
b93fb365
KH
27032003-07-07 Nozomu Ando <nand@mac.com> (tiny change)
2704
2705 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
2706
bfe1a3f7
SM
27072003-07-06 Stefan Monnier <monnier@cs.yale.edu>
2708
04812929
SM
2709 * minibuf.c (read_minibuf): UNGCPRO before returning.
2710 (Ftry_completion, Fall_completions): Doc fix.
2711
bfe1a3f7
SM
2712 * alloc.c (live_float_p): Check that p is not past the `floats' array,
2713 now that `floats' is not the last element of the struct any more.
2714
ee79d1aa
JR
27152003-07-06 Jason Rumney <jasonr@gnu.org>
2716
2717 * w32term.h (ClipboardSequence_Proc): New type.
2718
2719 * w32fns.c (clipboard_sequence_fn): New variable.
2720 (globals_of_w32fns): Initialize it.
2721
2722 * w32select.c (last_clipboard_sequence_number): New variable.
2723 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
2724 number if possible.
2725
49723c04
SM
27262003-07-06 Stefan Monnier <monnier@cs.yale.edu>
2727
4698665f
SM
2728 * m/amdx86-64.h (MARKBIT):
2729 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
2730 MARKBIT and ARRAY_MARK_FLAG any more.
2731
2732 * m/hp800.h (XSETMARKBIT):
2733 * m/sr2k.h (XSETMARKBIT):
2734 * lisp.h (XSETMARKBIT): Remove unused macro.
2735
49723c04
SM
2736 * lisp.h (mark_object): Change prototype.
2737
2738 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
2739 (last_marked): Change accordingly.
2740 (mark_interval, mark_maybe_object, mark_maybe_pointer)
2741 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
2742 (mark_buffer): Update calls to mark_object.
2743
2744 * bytecode.c (mark_byte_stack):
2745 * fns.c (sweep_weak_table):
2746 * keyboard.c (mark_kboards): Update calls to mark_object.
2747
1d660eca
JR
27482003-07-06 Jason Rumney <jasonr@gnu.org>
2749
2750 * alloc.c (struct ablock): Only include padding when there is some.
2751
618b5ae4
SM
27522003-07-04 Stefan Monnier <monnier@cs.yale.edu>
2753
2754 * alloc.c (ALIGN): Add casts to simplify usage.
2755 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
2756 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
2757 (struct ablock, struct ablocks): New types.
2758 (free_ablock): New global var.
2759 (lisp_align_malloc, lisp_align_free): New functions.
2760 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
2761 (struct float_block): Reorder and add gcmarkbits.
2762 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
2763 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
2764 (init_float, make_float): Use lisp_align_malloc.
2765 (free_float, live_float_p): Don't use `type' any more.
2766 (make_float): Use FLOAT_UNMARK to access to mark bit.
2767 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
2768 Use FLOAT_MARKED_P to access the mark bit.
2769 (pure_alloc): Simplify use of ALIGN.
2770 (mark_object): Use FLOAT_MARK to access the mark bit.
2771 (gc_sweep): Use new macros to access the float's mark bit.
2772 (init_alloc_once): Init free_ablock.
2773
2774 * lisp.h (struct Lisp_Float): Remove unused field `type'.
2775
3ef06d12
SM
27762003-06-27 Stefan Monnier <monnier@cs.yale.edu>
2777
2778 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
2779 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
2780 (allocate_buffer): Move.
2781 (string_bytes): Don't mask markbit of `size_byte'.
2782 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
2783 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
2784 Use the `size' field of buffers (rather than the `name' field) for
2785 the mark bit, as is done for all other vectorlike objects.
2786 Use the new macros to access the mark bit of vectorlike objects.
2787
e81043aa
RS
27882003-06-26 Richard M. Stallman <rms@gnu.org>
2789
2790 * puresize.h (BASE_PURESIZE): Increment base size.
2791
2792 * xdisp.c (fast_find_position): Enable Gerd's new definition.
2793
2794 * xterm.c (xim_initialize): Undo previous change.
2795
2d0834cc
SM
27962003-06-26 Stefan Monnier <monnier@cs.yale.edu>
2797
2798 * alloc.c (survives_gc_p): Simplify.
2799
2800 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
2801
2802 * window.c (Fset_window_dedicated_p): Simplify.
2803 (display_buffer_1): Don't raise the win from which minibuf was entered.
2804 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
2805 (Fminibuffer_selected_window): Simplify.
2806
2807 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
2808
2809 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
2810 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
2811
2812 * insdel.c (check_markers, adjust_markers_for_delete)
2813 (adjust_markers_for_insert, adjust_markers_for_replace)
2814 (prepare_to_modify_buffer, RESTORE_VALUE):
2815 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
2816 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
2817 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
2818 * alloc.c (Fmake_marker, free_marker, gc_sweep):
2819 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
2820 * editfns.c (save_excursion_restore, transpose_markers):
2821 * window.c (delete_window):
2822 * xdisp.c (message_dolog): Update for new types.
2823
d54ae3d8
JD
28242003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2825
a5f696ac
JD
2826 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
2827 (realize_default_face): Use default_face_done_p for the force_p
2d0834cc 2828 argument to set_lface_from_font_name. Set default_face_done_p to one.
a5f696ac
JD
2829
2830 * frame.c (make_frame): Initialize default_face_done_p.
2831
2832 * frame.h (struct frame): Add default_face_done_p.
2833
d54ae3d8
JD
2834 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
2835 will be defined.
2836
2336fe58
SM
28372003-06-25 Stefan Monnier <monnier@cs.yale.edu>
2838
2839 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
2840 Initialize the new field `gcmarkbit'.
2841 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
2842 (mark_interval_tree): Don't mark the tree separately from the nodes.
2843 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
2844 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
2845 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
2846
2847 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
2848 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
2849 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
2850 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
2851 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
2852
bcea31c2
DL
28532003-06-24 Dave Love <fx@gnu.org>
2854
2855 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
2856
2857 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
2858 from gnulib.
2859
2601f59e
RS
28602003-06-21 Richard M. Stallman <rms@gnu.org>
2861
2862 * fileio.c (Fwrite_region): Alternate messages
2863 for append and partial write.
2864
2865 * keyboard.c (read_key_sequence): When converting upcase fn key to
2866 downcase, update fkey and keytran so `backspace' gets translated.
2867
2868 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
2869
2870 * process.c (wait_reading_process_input): Don't signal SIGIO
2871 in batch mode.
2872
b5d2c621
KH
28732003-06-17 Kenichi Handa <handa@m17n.org>
2874
2875 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
2876 composite.h.
2877
2878 * xselect.c: Don't include charset.h, coding.h, composite.h.
2879 (Qforeign_selection): New variable.
2880 (syms_of_xselect): Intern and static it.
2881 (selection_data_to_lisp_data): Return a unibyte string made from
2882 data with `foreign-selection' text property.
2883
6793bc63
SM
28842003-06-15 Stefan Monnier <monnier@cs.yale.edu>
2885
2886 * termhooks.h (EVENT_INIT): New macro.
2887
2888 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
2889
2890 * alloc.c (mark_kboards): Move to keyboard.c.
2891
2892 * keyboard.c (record_asynch_buffer_change, read_avail_input):
2893 * xterm.c (x_dispatch_event):
2894 * xmenu.c (find_and_call_menu_selection):
2895 * xdisp.c (handle_tool_bar_click):
2896 * w32menu.c (menubar_selection_callback):
2897 * sysdep.c (kbd_input_ast, read_input_waiting):
2898 * msdos.c (dos_rawgetc):
2899 * macterm.c (mac_check_for_quit_char):
2900 * macmenu.c (menubar_selection_callback):
2901 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
2902 data to kbd_buffer_store_event.
2903
b3ea810c
KS
29042003-06-15 Kim F. Storm <storm@cua.dk>
2905
2906 * xdisp.c (x_fix_overlapping_area): Always use area relative X
6793bc63 2907 to fix redisplay problem with tall characters (such as \e,AC\e(B).
b3ea810c 2908
b8f75eda
KG
29092003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
2910
2911 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
2912
ba92ce48
KH
29132003-06-12 Kenichi Handa <handa@m17n.org>
2914
2915 * fileio.c (Fwrite_region): Save and restore restriction.
2916
b80263be
DL
29172003-06-12 Dave Love <fx@gnu.org>
2918
2919 * alloca.c (alloca): Declare arg as size_t.
2920
6793bc63
SM
2921 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
2922 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
b80263be 2923
b23c0a83
DL
29242003-06-11 Dave Love <fx@gnu.org>
2925
2926 * search.c (shrink_regexp_cache): Use xrealloc.
2927 (syms_of_search): Use xmalloc.
2928
700e47c2
KS
29292003-06-10 Kim F. Storm <storm@cua.dk>
2930
2931 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
2932 Adjust phys_cursor.x to be relative to window box, rather than
2933 text area before checking -- to ensure cursor is redrawn when
2934 exposing window.
2935 Note: This also fixes a similar (older) bug if display margins
2936 are present.
2937
f11aa0b2
KH
29382003-06-06 Kenichi Handa <handa@m17n.org>
2939
2940 * coding.c (encoding_buffer_size): If coding->type is
2941 coding_type_ccl, double magnification on CRLF encoding.
2942
3d143690
JR
29432003-06-06 Jason Rumney <jasonr@gnu.org>
2944
2945 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
2946 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
2947
2948 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
2949 Mac too.
2950
f16205ca
DL
29512003-06-05 Dave Love <fx@gnu.org>
2952
b23c0a83
DL
2953 * strftime.c: Merge changes from gnulib.
2954
f16205ca
DL
2955 * mktime.c (__mktime_internal): Merge changes from gnulib
2956 involving year 69 and dst2.
2957
2958 Changes to merge with gnulib version and be consistent with the
2959 autoconf test:
2960
6793bc63
SM
2961 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
2962 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
f16205ca
DL
2963 [HAVE_LOCALE_H]: Include locale.h.
2964 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
2965
9b87a0bc
KS
29662003-06-05 Kim F. Storm <storm@cua.dk>
2967
2968 * window.c (coordinates_in_window): Convert X and Y to window
2969 relative coordinates inside mode-line and header-line parts.
2970 Convert X and Y to margin area relative coordinates inside left
2971 and right display margin parts.
2972
5a8a15ec
JR
29732003-06-05 Jason Rumney <jasonr@gnu.org>
2974
2975 * w32fns.c (add_system_logical_colors_to_map): New function.
2976 (Fx_open_connection): Use it.
2977
01ed8ff1
SM
29782003-06-04 Stefan Monnier <monnier@cs.yale.edu>
2979
2980 * process.c (allocate_pty): Revert part of the previous patch.
2981 (Faccept_process_output): Simplify.
2982
b427b65d
JR
29832003-06-04 Jason Rumney <jasonr@gnu.org>
2984
2985 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
2986
2987 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
2988 (lispy_mouse_wheel_names): Remove.
2989 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
2990 Always define drag_and_drop_syms.
2991
2992 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
2993 WHEEL_EVENT events.
2994
914a8c47
SM
29952003-06-03 Stefan Monnier <monnier@cs.yale.edu>
2996
01ed8ff1
SM
2997 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
2998
914a8c47
SM
2999 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
3000
adcb132c
JD
30012003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3002
3003 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
3004 menu item label.
3005
be781fa7
RS
30062003-06-03 Richard M. Stallman <rms@gnu.org>
3007
3008 * window.c (Fwindow_edges): Doc fix.
3009 (Fwindow_pixel_edges, Fwindow_inside_edges)
3010 (Fwindow_inside_pixel_edges): New functions.
3011 (syms_of_window): defsubr them.
3012
3013 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
3014 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
3015
914a8c47
SM
30162003-06-02 Stefan Monnier <monnier@cs.yale.edu>
3017
3018 * dispnew.c (Fsit_for): Don't lie about the number of args.
3019
5b07197a
DL
30202003-06-02 Dave Love <fx@gnu.org>
3021
3022 * callproc.c: Use HAVE_FCNTL_H, not USG5.
3023 (syms_of_callproc) <process-environment>: Doc fix.
3024
3025 * doc.c: Use HAVE_FCNTL_H, not USG5.
3026
3027 * xfaces.c (font_rescale_ratio): Fix for K&R.
3028
3029 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
3030
3031 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
3032
3033 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
3034
3035 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
3036 (xg_create_frame_widgets): Use ENCODE_UTF_8.
3037
d7107586 3038 * xterm.c (Qutf_8): Move to coding.c
5b07197a
DL
3039
3040 * xmenu.c (ENCODE_MENU_STRING): New.
3041 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
3042 Use it.
3043
3044 * coding.h (ENCODE_UTF_8): New.
3045 (Qutf_8): Declare.
3046
3047 * coding.c (Qutf_8): New.
3048 (syms_of_coding): Intern it.
3049
3050 * fns.c: Doc fixes.
3051
7335b336
KH
30522003-06-02 Kenichi Handa <handa@m17n.org>
3053
3054 * buffer.c (Fset_buffer_multibyte): Fix previous change.
3055
914a8c47
SM
30562003-06-01 Stefan Monnier <monnier@cs.yale.edu>
3057
3058 * lread.c (openp): Make sure STR is a string.
3059
9862c135
JR
30602003-06-01 David Ponce <david@dponce.com>
3061
3062 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
3063 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
3064
3065 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
3066 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
3067 (discard_mouse_events): Discard WHEEL_EVENT events too.
3068 (lispy_wheel_names, wheel_syms): New.
3069 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
3070 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
3071 defined.
914a8c47 3072 (make_lispy_event): Add WHEEL_EVENT handler.
9862c135
JR
3073
3074 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
3075 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
3076 WHEEL_EVENT events.
3077
f984e73e
JPW
30782003-05-31 John Paul Wallington <jpw@gnu.org>
3079
3080 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
3081 timer are in lisp/emacs-lisp.
3082
1efcd78f
KH
30832003-05-31 Kenichi Handa <handa@m17n.org>
3084
458c8af4
KH
3085 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
3086 region when a buffer is changed to unibyte.
3087
1efcd78f
KH
3088 * charset.h (VALID_LEADING_CODE_P): New macro.
3089 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
3090
778e2804
KH
3091 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
3092 is nonzero, accept multibyte form of eight-bit-control chars.
3093 (decode_composition_emacs_mule): Likewise.
3094 (decode_coding_emacs_mule): Likewise.
3095 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
3096 multibyte form of eight-bit-control chars.
3097
3098 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
3099 (Finsert_file_contents): If coding-system-for-read is bound to
3100 Qauto_save_coding, use the coding system emacs-mule with special
3101 setting for recovering a file.
3102 (choose_write_coding_system): On auto saving, use the coding
3103 system emacs-mule with special setting for auto saving.
3104 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
3105
034060e4
KH
31062003-05-30 Kenichi Handa <handa@m17n.org>
3107
3108 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
3109 properly before calling ccl_driver.
3110
778e2804 3111 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
034060e4
KH
3112
3113 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
3114 nonzero.
3115 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
3116 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
3117
595f5aa5
GM
31182003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
3119
3120 * xfaces.c (realize_default_face): Do not abort if lface is
3121 non-existent - reverts change from 2003-05-19.
3122
103e0180
KH
31232003-05-29 Kenichi Handa <handa@m17n.org>
3124
3125 * coding.c (decode_coding_iso2022): Pay attention to the byte
3126 sequence of CTEXT extended segment, and retain those bytes as is.
3127
31282003-05-28 Kenichi Handa <handa@m17n.org>
3129
3130 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
3131 of CODING_REPLACEMENT_CHARACTER.
3132 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
3133 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
3134 check this flag on encoding.
3135 (encode_coding_sjis_big5): Check
3136 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
3137 (Fset_terminal_coding_system_internal): Set
3138 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
3139 instead of setting CODING_FLAG_ISO_SAFE flag in
3140 terminal_coding.flags.
3141
3142 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
3143 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
3144 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
3145
ff6a3bfb 31462003-05-28 Richard M. Stallman <rms@gnu.org>
45f266dc 3147
ff6a3bfb
RS
3148 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
3149
3150 * eval.c (unbind_to): Move init of this_binding to separate statement.
45f266dc 3151
1963c428
KS
31522003-05-28 Kim F. Storm <storm@cua.dk>
3153
3154 * xdisp.c (expose_window): Fix error in calculation of
3155 window relative coordinates of area to redisplay.
3156
2b5d4601
JR
31572003-05-27 Jason Rumney <jasonr@gnu.org>
3158
3159 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
3160
1c64a4a2
JB
31612003-05-27 David Ponce <david@dponce.com>
3162
3163 Handle W32 mouse wheel events as mouse click events, like in X.
3164
3165 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
3166 MOUSE_WHEEL_EVENT anymore.
3167
3168 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
3169 Scrolling down/up the mouse wheel is respectively mapped to mouse
3170 button 4 and 5.
3171 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
3172 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
3173 WM_MOUSEWHEEL events.
3174
2d031b89
AS
31752003-05-27 Andreas Schwab <schwab@suse.de>
3176
20464fdf
AS
3177 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
3178
2d031b89
AS
3179 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
3180 partially visible line.
3181
3182 * alloc.c (Fgarbage_collect): Fix last change.
3183
97bc76d4
JPW
31842003-05-26 John Paul Wallington <jpw@gnu.org>
3185
3186 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
3187
56613f06
SM
31882003-05-25 Stefan Monnier <monnier@cs.yale.edu>
3189
3190 * window.c (Fset_window_buffer): Add type of `keep_margins'.
3191 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
3192
3193 * window.h (window_box_text_cols): Declare.
3194
3195 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
3196 (x_draw_vertical_border): Remove unused var `f'.
3197
3198 * xfaces.c (build_scalable_font_name): Remove `unused var
3199 pixel_size' warning.
3200
3201 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
3202
3203 * unexelf.c (unexec): Remove `unused var n' warning.
3204
3205 * strftime.c (my_strftime_localtime_r): Remove `defined but
3206 unused' warning.
3207
3208 * process.c (allocate_pty): Remove `unused var stb' and
3209 `cp might be used uninitialized' warnings.
3210
3211 * dispnew.c (mode_line_string): Remove unused var `f'.
3212
3213 * coding.c (find_safe_codings): Remove unused var `i'.
3214
3215 * bytecode.c (Fbyte_code): Remove `unused val' warning.
3216
3217 * buffer.c (Fkill_buffer): Remove unused var `list'.
3218
3219 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
3220
93421a1f
JD
32212003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3222
3223 * frame.c (make_frame): Condition want_fullscreen with
3224 HAVE_WINDOW_SYSTEM.
3225
c4b8aebc
JB
32262003-05-25 Juanma Barranquero <lektu@terra.es>
3227
3228 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
3229 (Fwindow_scroll_bars): Fix typo in docstring.
3230
0416870b
KS
32312003-05-24 Kim F. Storm <storm@cua.dk>
3232
3233 The following changes serve several purposes:
3234
3235 1) Swap the position of fringes and display margins in windows, i.e.
3236 the fringes are now displayed between the margins and the text area
3237 (by default).
3238
3239 2) Allow fringe and scroll bar parameters to be set per-buffer and
3240 per-window (like display margins). Such settings are now stored
3241 in window configurations, preserved when frames are resized, and
9018a88e 3242 copied when windows are split vertically or horizontally.
0416870b
KS
3243 Several bugs related to display margins have been fixed.
3244
3245 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
9018a88e 3246
0416870b
KS
3247 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
3248 rather than FRAME_WIDTH (FRAME_FONT (f)).
3249
3250 5) Introduce a consistent naming of variables, members and macros
3251 depending on whether their value is measured in pixels or in
3252 canonical columns/lines. Pixel dimensions are named *_width and
3253 *_height, while canonical columns/lines are named *_cols and
3254 *_lines. Pixel positions are named *_x and *_y, while column/line
3255 positions are named *_col and *_line.
3256
3257 6) Consolidate more of the X, W32, and MAC gui code by moving
3258 common data into struct frame, and generalize it for the non-gui
3259 case by using suitable defaults.
3260
3261 7) Cleanup and consolidate the macros controlling frame and window
3262 layout into frame.h and window.h, and generalize the use of the
3263 various window_box_* functions (enhanced to handle the new fringe
3264 position and the per-window fringe and scroll bar settings).
3265
3266 * frame.h (struct frame): Rename members height to text_lines,
3267 width to text_cols, window_height to total_lines, window_width to
3268 total_cols, new_height to new_text_lines, new_width to
3269 new_text_cols. All uses changed.
3270 (struct frame): New members which consolidate common members of
3271 x_output, w32_output, and mac_output structures: left_pos,
3272 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
3273 win_gravity, size_hint_flags, border_width, internal_border_width,
3274 line_height, fringe_cols, left_fringe_width, right_fringe_width,
3275 want_fullscreen. All uses changed.
3276 (struct frame): New member column_width contaning the canonical
3277 column width, analogue to line_height. All uses changed.
3278 (struct frame): Rename members scroll_bar_pixel_width to
3279 config_scroll_bar_width, and scroll_bar_cols to
3280 config_scroll_bar_cols. All uses changed.
3281 (struct frame): New member scroll_bar_actual_width which
3282 consolidates and renames the vertical_scroll_bar_extra member of
3283 x_output, w32_output, and mac_output structures. All uses changed.
3284 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
3285 from x/w32/macterm.h files. All uses changed. Also change code
3286 which referred to f->output_data...->pixel_height.
3287 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
3288 from x/w32/macterm.h files. All uses changed. Also change code
3289 which referred to f->output_data...->pixel_width.
3290 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
3291 Also change code which referred to f->height.
3292 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
3293 Also change code which referred to f->width.
3294 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
3295 to update new_text_lines and new_text_cols members directly.
3296 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
3297 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
3298 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
3299 FRAME_SCROLL_BAR_COLS. All uses changed.
3300 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
3301 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
3302 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
3303 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
3304 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
3305 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
3306 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
3307 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
3308 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
3309 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
3310 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
3311 return line_height member (it now has proper value also for
3312 non-window frames).
3313 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
3314 return new column_width member (rather than the default font width).
3315 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
3316 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
3317 from x/w32/macterm.h files. Unconditionally return corresponding
3318 member of frame structure (they now have proper values also for
3319 non-window frames).
3320 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
3321 Calculate return value from left and right widths.
3322 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
3323 internal_border_width member (has proper value for non-window frame).
3324 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
3325 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
3326 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
3327 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
3328 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
3329 consolidated from xterm.h, macterm.h, and w32term.h.
3330 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
3331 consolidated from xterm.h, macterm.h, and w32term.h.
3332 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
3333 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
3334 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
3335 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
3336 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
3337 consolidated from x/mac/w32term.h.
3338 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
3339 consolidated from x/mac/w32term.h.
3340 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
3341 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
3342 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
3343 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
3344
3345 * window.h (struct window): Rename members left to left_col,
3346 top to top_line, height to total_lines, width to total_cols,
3347 left_margin_width to left_margin_cols, right_margin_width to
3348 right_margin_cols, orig_height to orig_total_lines, orig_top to
3349 orig_top_line. All uses changed.
3350 (struct window): New members left_fringe_width, right_fringe_width,
3351 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
3352 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
3353 New macros primarily used to simplify other macros.
3354 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
3355 referred to XINT (w->width).
3356 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
3357 referred to XINT (w->height).
3358 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
3359 referred to XINT (w->width) * canon_x_unit.
3360 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
3361 referred to XINT (w->height) * canon_y_unit.
3362 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
3363 referred to XINT (w->left).
3364 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
3365 all uses and code that referred to XINT (w->left) + XINT (w->width).
3366 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
3367 referred to XINT (w->top).
3368 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
3369 referred to XINT (w->top) + XINT (w->height).
3370 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
3371 referred to XINT (w->left) * canon_x_unit.
3372 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
3373 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
3374 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
3375 referred to XINT (w->top) * canon_y_unit.
3376 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
3377 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
3378 (WINDOW_LEFTMOST_P): New macro.
3379 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
3380 All uses changed.
3381 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
3382 All uses changed.
3383 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
3384 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
3385 Do not exclude left fringe width.
3386 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
3387 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
3388 Do not exclude fringe widths.
3389 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
3390 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
3391 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
3392 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
3393 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
3394 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
3395 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
3396 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
3397 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
3398 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
3399 New macros. Change code which referenced corresponding
3400 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
3401 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
3402 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
3403 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
3404 allow per-window scroll-bar settings.
3405 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
3406 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
3407 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
3408 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
3409 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
3410 FRAME_SCROLL_BAR_WIDTH.
3411 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
9018a88e 3412 (WINDOW_SCROLL_BAR_AREA_X): New macros.
0416870b
KS
3413 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
3414 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
3415 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
3416 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
3417 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
3418 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
3419 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
3420 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
3421 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
3422 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
3423 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
3424 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
3425 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
3426 (window_from_coordinates): Update prototype.
3427 (Fset_window_buffer): Update EXFUN.
3428 (set_window_buffer): Update prototype.
9018a88e 3429
0416870b 3430 * dispextern.h (struct glyph_matrix): Rename members window_left_x
9018a88e 3431 to window_left_col, window_top_y to window_top_line. All uses
0416870b
KS
3432 changed.
3433 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
3434 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
3435 internal_border_width is now set to 0 for non-window frames.
3436 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
3437 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
3438 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
3439 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
3440 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
3441 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
3442 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
3443 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
3444 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
9018a88e 3445 Move to window.h and renamed [see window.h changes].
0416870b
KS
3446 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
3447 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
9018a88e
SM
3448 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
3449 Use WINDOW_TOTAL_LINES.
0416870b
KS
3450 (frame_update_line_height): Remove prototype.
3451
3452 * buffer.h (struct buffer): Rename members measured in columns:
3453 left_margin_width to left_margin_cols, right_margin_width to
3454 right_margin_cols. All uses changed.
3455 New members left_fringe_width, right_fringe_width,
3456 fringes_outside_margins for per-buffer fringe settings.
3457 New members scroll_bar_width and vertical_scroll_bar_type for
3458 per-buffer scroll bar settings.
3459
3460 * buffer.c (init_buffer_once): Set buffer_defaults and
3461 buffer_local_flags for new buffer-local variables
3462 left_fringe_width, right_fringe_width, fringes_outside_margins,
3463 scroll_bar_width, and vertical_scroll_bar_type.
3464 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
3465 default-* variables for them.
3466
3467 * dispnew.c: Make (many) trivial substitutions for renamed and
3468 new macros in dispextern.h, frame.h and window.h.
3469 (mode_line_string): No need to adjust width for mode lines, as it
3470 is already adjusted by the caller.
3471 (marginal_area_string): Handle fringes inside/outside margins.
9018a88e 3472
0416870b
KS
3473 * frame.c: Make (many) trivial substitutions for renamed and
3474 new macros in dispextern.h, frame.h and window.h.
3475 (make_frame): Initialize left_fringe_width, right_fringe_width,
3476 fringe_cols, scroll_bar_actual_width, border_width,
3477 internal_border_width, column_width, line_height, x_pixels_diff,
3478 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
3479 members with values suitable for a non-window frames.
3480
3481 * gtkutil.c: Make (many) trivial substitutions for renamed and
3482 new macros in dispextern.h, frame.h and window.h.
9018a88e 3483
0416870b
KS
3484 * indent.c: Make (few) trivial substitutions for renamed and
3485 new macros in dispextern.h, frame.h and window.h.
3486
3487 * keyboard.c: Make (many) trivial substitutions for renamed and
3488 new macros in dispextern.h, frame.h and window.h.
3489 (make_lispy_event): Use window positions returned from
3490 window_from_coordinates when constructing the lisp event for
3491 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
3492 (incorrect) values locally.
3493 (make_lispy_movement): Use window positions returned from
3494 window_from_coordinates when constructing the lisp event, rather
3495 than calculating (incorrect) values locally.
3496
3497 * scroll.c: Make (some) trivial substitutions for renamed and
3498 new macros in dispextern.h, frame.h and window.h.
3499
3500 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
3501 scroll-bars.
3502
3503 * sysdep.c: Make (few) trivial substitutions for renamed and
3504 new macros in dispextern.h, frame.h and window.h.
3505
3506 * term.c: Make (some) trivial substitutions for renamed and
3507 new macros in dispextern.h, frame.h and window.h.
3508
3509 * widget.c: Make (few) trivial substitutions for renamed and
3510 new macros in dispextern.h, frame.h and window.h.
3511
3512 * window.c: Make (many) trivial substitutions for renamed and
3513 new macros in dispextern.h, frame.h and window.h.
3514 (make_window): Initialize new members
3515 left_margin_cols, right_margin_cols, left_fringe_width,
3516 right_fringe_width, fringes_outside_margins, scroll_bar_width,
3517 and vertical_scroll_bar_type.
3518 (coordinates_in_window): Adapted to new fringe/margin positions
9018a88e 3519 and per-window fringes and scroll-bars.
0416870b 3520 Fix bug related to incorrectly adjusting coordinates by
9018a88e 3521 frame's internal_border_width (the effect normally negible since
0416870b
KS
3522 the internal_border_width is typically 0 or 1 pixel, but very
3523 noticeable for an internal_border_width of e.g. 25 pixels).
3524 Upon successful return (other than ON_NOTHING), the coordinates
3525 are now always properly converted to window relative for the
3526 given display element.
3527 (window_from_coordinates): Add new parameters wx and wy to
3528 return the window relative x and y position in the returned
3529 window and part. A null arg means, don't return the position.
3530 All callers changed.
3531 (adjust_window_margins): New function which may reduce the width
3532 of the display margins if a window's text area is too small after
3533 resizing or splitting windows.
3534 (size_window): Fix bug that did not account for display margin
3535 widths when checking the minimum width of a window; use
3536 adjust_window_margins.
3537 (set_window_buffer): Call Fset_window_fringes and
3538 Fset_window_scroll_bars to setup per-window elements.
3539 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
3540 existing display margin, fringe widths, and scroll bar settings
9018a88e
SM
3541 (e.g. after splitting a window or resizing the frame).
3542 All callers changed.
0416870b
KS
3543 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
3544 (Fsplit_window): Duplicate original window's display margin,
3545 fringe, and scroll-bar settings; then call Fset_window_buffer with
3546 KEEP_MARGINS non-nil. This fixes a bug which caused a split
3547 window to only preserve the display margins in one of the windows.
c4b8aebc 3548 When splitting horizontally, call adjust_window_margins on both
0416870b
KS
3549 windows to ensure that the text area of the new windows is non too
3550 narrow. This fixes a bug which could cause emacs to trap if the
3551 width of the split window was less than the width of the display
3552 margins.
9018a88e
SM
3553 (window_box_text_cols): Renamed from window_internal_width.
3554 All uses changed. Adapt to per-window fringes and scroll bars.
0416870b
KS
3555 Fix bug that caused vertical separator to be subtracted also on
3556 window frames. Fix another bug that did not reduce the returned
3557 value by the columns used for display margins.
3558 (window_scroll_line_based): Fix bug related to scrolling too much
3559 when display margins are present (implicitly fixed by the fix to
3560 window_box_text_cols).
3561 (scroll_left, scroll_right): Fix bug related to scrolling too far
3562 by default when display margins are present (implicitly fixed by
3563 the fix to window_box_text_cols).
3564 (struct saved_window): Rename members left to left_col, top to
3565 top_line, width to total_cols, height to total_lines, orig_top to
3566 orig_top_line, orig_height to orig_total_lines. All uses changed.
3567 New members left_margin_cols, right_margin_cols,
3568 left_fringe_width, right_fringe_width, fringes_outside_margins,
3569 scroll_bar_width, and vertical_scroll_bar_type for saving
3570 per-window display elements.
3571 (Fset_window_configuration): Restore display margins, fringes,
3572 and scroll bar settings. This fixes a bug which caused display
3573 margins to be discarded when saving and restoring a window
3574 configuration.
3575 (save_window_save): Save display margins, fringes, and scroll bar
3576 settings. This fixes a bug which caused display margins to be
3577 discarded when saving and restoring a window configuration.
3578 (Fset_window_margins): Do nothing if display margins are not
3579 really changed. Otherwise, call adjust_window_margins to ensure
3580 the text area doesn't get too narrow. This fixes a bug which
3581 could cause emacs to trap if setting display margins wider than
3582 the width of the window.
3583 (Fset_window_fringes): New defun to allow user to specifically set
3584 this window's fringe widths and position vs. display margins.
3585 (Fwindow_fringes): New defun to return window's actual fringe
3586 settings.
3587 (Fset_window_scroll_bars): New defun to allow user to specifically
3588 set this window's scroll bar width and position.
3589 (Fwindow_scroll_bars): New defun to return window's actual scroll
3590 bar settings.
3591 (compare_window_configurations): Also compare display margins,
3592 fringes, and scroll bar settings.
3593 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
3594
3595 * xdisp.c: Make (many) trivial substitutions for renamed and
3596 new macros in dispextern.h, frame.h and window.h.
3597 (window_box_width): Adapt to per-window fringes and scroll bars,
3598 and new fringe vs. display margin position. Note that returned
3599 value is no longer guaranteed to be a whole multiple of the frame
3600 column width, since per-window fringes may now be any width.
3601 (window_box_left_offset): New function like window_box_left, but
3602 value is relative to left border of window (rather than frame).
3603 (window_box_right_offset): New function like window_box_right,
3604 but value is relative to left border of window.
3605 (window_box_left): Adapt to per-window fringes and scroll bars,
3606 and new fringe vs. display margin position. Simplify by using
3607 WINDOW_LEFT_EDGE_X and window_box_left_offset.
3608 (window_box): Allow null args for unnecessary return values;
3609 change/simplify relevant callers.
3610 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
9018a88e
SM
3611 and new fringe vs. display margin position.
3612 Use window_box_left_offset and window_box_right_offset
0416870b 3613 (get_glyph_string_clip_rect): Adapt to per-window fringes and
9018a88e
SM
3614 scroll bars, and new fringe vs. display margin position.
3615 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
0416870b
KS
3616 (draw_fringe_bitmap): Rework to handle per-window fringes and new
3617 fringe vs. display margin position.
3618 (hscroll_window_tree): Use window_box_width instead of window_box.
a64387ee
JB
3619 (redisplay_window): Adapt to per-window scroll bars.
3620 (draw_glyphs): Rework to handle per-window fringes and scroll
9018a88e
SM
3621 bars, and new fringe vs. display margin position.
3622 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
a64387ee 3623 (x_clear_end_of_line): Adapt to per-window fringes and scroll
0416870b
KS
3624 bars, and new fringe vs. display margin position. Fix bug which
3625 increased total width of full_width rows by width of scroll bars
3626 although window's total width already includes that.
3627 (x_fix_overlapping_area): Simplify using window_box_left_offset.
3628 (expose_area): Simplify using window_box_left_offset.
3629 (x_draw_vertical_border): Handle per-window scroll bar settings,
3630 mixing windows with left, right and no scroll bars.
3631
3632 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
3633 where it's used in x_list_fonts (for clarity).
3634 (frame_update_line_height): Remove unused function; functionality
3635 is now done directly when setting the default font in x_set_font.
3636
3637 * xfns.c: Make (many) trivial substitutions for renamed and
3638 new macros in dispextern.h, frame.h and window.h.
3639
3640 * xmenu.c: Make (some) trivial substitutions for renamed and
3641 new macros in dispextern.h, frame.h and window.h.
3642
3643 * xterm.h (struct x_output): Move members left_pos, top_pos,
3644 border_width, pixel_height, pixel_width, line_height,
3645 internal_border_width, vertical_scroll_bar_extra,
3646 left_fringe_width, right_fringe_width, fringe_cols,
3647 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
3648 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
3649 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
3650 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
3651 (PIXEL_WIDTH, PIXEL_HEIGHT)
3652 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
3653 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
3654 frame.h and renamed [see frame.h changes].
3655 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
3656 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
3657 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
3658 and renamed [see frame.h changes].
9018a88e 3659
0416870b
KS
3660 * xterm.c: Make (several) trivial substitutions for renamed and
3661 new macros in dispextern.h, frame.h and window.h.
3662 (x_draw_glyph_string_box): Adapt to per-window fringes and
3663 scroll-bars.
3664 (scroll_run): Adapt to new fringe position.
3665 (glyph_rect): Use window coordinates returned from
3666 window_from_coordinates rather than frame_to_window_pixel_xy.
3667 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
3668 scroll-bars.
3669 (handle_one_xevent): Simplify a USE_GTK conditional.
3670 (x_clip_to_row): Remove superfluous whole_line_p arg and code
3671 (fringes are now inside margins, i.e. always in the clipping area).
3672 All callers changed.
3673 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
3674 directly, then call compute_fringe_widths. Don't call
3675 frame_update_line_height.
3676
3677 * w32term.h (struct w32_output): Move members left_pos, top_pos,
3678 border_width, pixel_height, pixel_width, line_height,
3679 internal_border_width, vertical_scroll_bar_extra,
3680 left_fringe_width, right_fringe_width, fringe_cols,
3681 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
3682 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
3683 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
3684 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
3685 (PIXEL_WIDTH, PIXEL_HEIGHT)
3686 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
3687 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
3688 frame.h and renamed [see frame.h changes].
3689 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
3690 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
3691 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
3692 and renamed [see frame.h changes].
9018a88e 3693
0416870b
KS
3694 * w32term.c: Make (several) trivial substitutions for renamed and
3695 new macros in dispextern.h, frame.h and window.h.
3696 (x_draw_glyph_string_box): Adapt to per-window fringes and
3697 scroll-bars.
3698 (glyph_rect): Use window coordinates returned from
3699 window_from_coordinates rather than frame_to_window_pixel_xy.
3700 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
3701 scroll-bars.
3702 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
3703 (fringes are now inside margins, i.e. always in the clipping area).
3704 All callers changed.
3705 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
3706 directly, then call compute_fringe_widths. Don't call
3707 frame_update_line_height.
3708
3709 * w32console.c: Make (few) trivial substitutions for renamed and
3710 new macros in dispextern.h, frame.h and window.h.
3711
3712 * w32fns.c: Make (many) trivial substitutions for renamed and
3713 new macros in dispextern.h, frame.h and window.h.
3714
3715 * w32menu.c: Make (few) trivial substitutions for renamed and
3716 new macros in dispextern.h, frame.h and window.h.
3717
3718 * macterm.h (struct mac_output): Move members left_pos, top_pos,
3719 border_width, pixel_height, pixel_width, line_height,
3720 internal_border_width, vertical_scroll_bar_extra,
3721 left_fringe_width, right_fringe_width, fringe_cols,
3722 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
3723 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
3724 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
3725 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
3726 (PIXEL_WIDTH, PIXEL_HEIGHT)
3727 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
3728 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
3729 frame.h and renamed [see frame.h changes].
3730 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
3731 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
3732 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
3733 and renamed [see frame.h changes].
9018a88e 3734
0416870b
KS
3735 * macterm.c: Make (several) trivial substitutions for renamed and
3736 new macros in dispextern.h, frame.h and window.h.
3737 (x_draw_glyph_string_box): Adapt to per-window fringes and
3738 scroll-bars.
3739 (glyph_rect): Use window coordinates returned from
3740 window_from_coordinates rather than frame_to_window_pixel_xy.
3741 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
3742 scroll-bars.
3743 (x_clip_to_row): Remove superfluous whole_line_p arg and code
3744 (fringes are now inside margins, i.e. always in the clipping area).
3745 All callers changed.
3746 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
3747 directly, then call compute_fringe_widths. Don't call
3748 frame_update_line_height.
3749
3750 * macfns.c: Make (several) trivial substitutions for renamed and
3751 new macros in dispextern.h, frame.h and window.h.
9018a88e 3752 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
0416870b
KS
3753
3754 * macmenu.c: Make (few) trivial substitutions for renamed and
3755 new macros in dispextern.h, frame.h and window.h.
3756
3757 * msdos.h (struct x_output): Remove members left_pos, top_pos,
3758 and line_height, and use corresponding new members in struct
3759 frame. All uses changed.
3760 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
3761 superseeded by corresponding macros in frame.h.
3762
3763 * msdos.c: Make (several) trivial substitutions for renamed and
3764 new macros in dispextern.h, frame.h and window.h.
3765 (IT_note_mouse_highlight): Use updated window coordinates returned
9018a88e 3766 by window_from_coordinates, rather than adjusting them locally.
0416870b
KS
3767 (internal_terminal_init): No need to initialize line_height here;
3768 it now defaults to 1.
3769
9018a88e
SM
37702003-05-24 Stefan Monnier <monnier@cs.yale.edu>
3771
3772 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
3773 dropping `down' events.
3774
016bd3c0
AS
37752003-05-24 Andreas Schwab <schwab@suse.de>
3776
3777 * coding.c (find_safe_codings): Fix last change.
3778
4dacadcc
TTN
37792003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
3780
3781 * xfns.c (x_window): Fix typo from 2003-05-21 change.
3782
319830ce
SM
37832003-05-23 Stefan Monnier <monnier@cs.yale.edu>
3784
9018a88e
SM
3785 * xdisp.c (display_mode_element): Increase max depth.
3786 Simplify the error handling code. Use a different error string
3787 for the case where we hit the depth limit.
3788
319830ce
SM
3789 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
3790
3791 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
3792
37932003-05-21 Stefan Monnier <monnier@cs.yale.edu>
3794
3795 * intervals.c (get_local_map): Don't get char-property of previous
3796 point any more: get_pos_property already does it and better.
3797
c67de8ba
DL
37982003-05-21 Dave Love <fx@gnu.org>
3799
3800 [Merged from unicode branch.]
3801
3802 * xfns.c (x_window, x_window): Use use_xim.
3803
3804 * xterm.c (use_xim): Initialize.
3805 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
3806 (x_term_init): Maybe set use_xim.
3807
3808 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
3809
edd3ff1d
JR
38102003-05-21 Jason Rumney <jasonr@gnu.org>
3811
3812 * unexw32.c (_start): Remove _fmode initialization.
3813
3814 * emacs.c (main) [WINDOWSNT]: Move it here.
3815
463f55ee
DL
38162003-05-20 Dave Love <fx@gnu.org>
3817
3818 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
3819
af253914
RS
38202003-05-19 Richard M. Stallman <rms@gnu.org>
3821
3822 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
3823 as value for QCfont attribute.
3824 (realize_default_face): lface should already exist; crash if not.
3825 Specify 0 for FORCE_P when calling set_lface_from_font_name.
3826
3827 * frame.c (Fignore_event): Doc fix.
3828
1d211019
KH
38292003-05-19 Kenichi Handa <handa@m17n.org>
3830
3831 * coding.c (decode_coding_string): Handle post-read-conversion
3832 even if the coding doesn't require decoding.
3833
4dd68254
RS
38342003-05-18 Richard M. Stallman <rms@gnu.org>
3835
3836 * callproc.c (Fcall_process_region): Doc fix.
3837
14d87dc9
SM
38382003-05-17 Stefan Monnier <monnier@cs.yale.edu>
3839
deca5d96
SM
3840 * lread.c (Fload): Print a message if package is obsolete.
3841
14d87dc9
SM
3842 * window.c (Fselect_window): Add optional `norecord' arg.
3843 (select_window_1): Fold into Fselect_window.
3844 (select_window_norecord): New function.
3845 (temp_output_buffer_show): Use it. Preserve current buffer.
3846
3847 * window.h (Fselect_window): Update declaration.
3848
3849 * window.c (delete_window, Fother_window, Fset_window_configuration):
3850 * minibuf.c (read_minibuf):
3851 * macterm.c (x_new_focus_frame):
3852 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
3853 * callint.c (Fcall_interactively):
3854 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
3855
3856 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
3857
78f52183
DK
38582003-05-17 David Kastrup <dak@gnu.org>
3859
3860 * process.c (read_process_output): Back out change from 2003-03-09.
3861
14d87dc9
SM
38622003-05-17 Stefan Monnier <monnier@cs.yale.edu>
3863
3864 * editfns.c (get_pos_property): Don't assume that `object' = nil.
3865
3866 * textprop.c (text_property_stickiness): New arg `buffer'.
3867
3868 * intervals.h (text_property_stickiness): New arg `buffer'.
3869 (get_pos_property): Declare.
3870
3871 * intervals.c (get_local_map): Use get_pos_property, to obey
3872 stickiness and empty overlays.
3873 (create_root_interval, graft_intervals_into_buffer): Use BEG.
3874 (merge_properties, intervals_equal, merge_properties_sticky):
3875 Use XCAR, XCDR.
3876 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
3877
1fd1cc2f
RS
38782003-05-17 Richard M. Stallman <rms@gnu.org>
3879
4f9f637a
RS
3880 * minibuf.c (read_minibuf): If buffer is empty, record the default
3881 in the history.
3882 (Fminibuffer_complete_word): When deleting the overlap, take account
3883 of its real position.
3884
3885 * fns.c (map_char_table): Fix previous change.
3886
1fd1cc2f
RS
3887 * syntax.c (find_defun_start):
3888 When open_paren_in_column_0_is_defun_start,
3889 return beginning of buffer.
3890
3891 * lisp.h (map_char_table): Declare added arg.
3892
3893 * fns.c (map_char_table): New arg TABLE gets the master table.
3894 All calls changed.
3895 Process default and inheritance, resorting to Faref if necessary.
3896
3897 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
3898 (Faccessible_keymaps): Pass new arg to map_char_table.
3899
3900 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
3901
3902 * casetab.c (set_case_table): Pass new arg to map_char_table.
3903
3904 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
3905
3906 * lisp.h (specbinding_func): New typedef.
3907 (struct specbinding): Use specbinding_func, to put the `volatile'
3908 in the right place.
3909
3910 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
3911 to avoid GCC warning.
14d87dc9 3912
b4bd27c5
RS
39132003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org> (tiny change)
3914
14d87dc9 3915 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
b4bd27c5 3916
35fb885d
SM
39172003-05-15 Stefan Monnier <monnier@cs.yale.edu>
3918
3919 * keyboard.c (apply_modifiers): Don't fill the other cache.
3920
9a274fbd
SM
39212003-05-14 Stefan Monnier <monnier@cs.yale.edu>
3922
c55b5fad
SM
3923 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
3924
9a274fbd
SM
3925 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
3926 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
3927 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
3928 (Fset_window_configuration, Fcurrent_window_configuration)
3929 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
3930 (Fpos_visible_in_window_p, mark_window_cursors_off)
3931 (window_internal_height, window_internal_width, Frecenter)
3932 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
3933 (replace_buffer_in_all_windows, init_window_once, init_window)
3934 (syms_of_window, keys_of_window): Move from lisp.h.
3935 * lisp.h: Move window.c declarations to window.h.
3936
3937 * bytecode.c: Include window.h.
3938 * emacs.c: Include window.h.
3939
14d87dc9 3940 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
9a274fbd
SM
3941 (keyremap): Add `parent' field.
3942 (keyremap_step): Use it. Remove `parent' argument.
3943 (read_key_sequence): Setup and use the new `parent' field.
3944
fd93e331
SM
39452003-05-11 Stefan Monnier <monnier@cs.yale.edu>
3946
3947 * keyboard.c (adjust_point_for_property): Ensure termination.
3948
1c4001a1
SM
39492003-05-10 Stefan Monnier <monnier@cs.yale.edu>
3950
3951 * keyboard.c (follow_key): Remove dead variable `did_meta'.
3952 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
3953 duplicated handling of function-key-map and key-translation-map
3954 in read_key_sequence.
3955 (read_key_sequence): Use them.
3956
3957 * keyboard.c (adjust_point_for_property): Try harder to move point
3958 to the non-sticky end of an invisible property.
3959
3960 * xdisp.c (single_display_prop_intangible_p): Make `space' display
3961 property intangible as well.
3962
780379b1
AS
39632003-05-10 Andreas Schwab <schwab@suse.de>
3964
3965 * xmenu.c (single_menu_item): Change last parameter to void* to
3966 avoid warning.
3967
ca2de342
RS
39682003-05-09 Richard M. Stallman <rms@gnu.org>
3969
3970 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
3971 Bind Qinhibit_modification_hooks to t so there will be no GC.
3972 Rename local `tem' to `save_deactivate_mark'.
3973
3974 * eval.c (specpdl_ptr): Declare volatile.
3975 (unbind_to): Copy the whole binding and decrement specpdl_ptr
3976 before doing the work of unbinding it.
3977
3978 * lisp.h (struct specbinding): Declare elements volatile.
3979 (specpdl_ptr): Declare volatile.
3980
3981 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
3982
3983 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
3984 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
3985
347003be
DL
39862003-05-08 Dave Love <fx@gnu.org>
3987
3988 * coding.c (Vlast_coding_system_used): Doc fix.
3989
5adcec23
JR
39902003-05-07 Jason Rumney <jasonr@gnu.org>
3991
3992 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
3993 when system does not support them.
3994
5fe3b8a4
SM
39952003-05-05 Stefan Monnier <monnier@cs.yale.edu>
3996
3997 * fileio.c (Qwrite_region_annotate_functions): New var.
3998 (build_annotations): Use it to process the global part of the hook.
3999 (syms_of_fileio): Init and staticpro it.
4000
4001 * keyboard.c (safe_run_hooks_error): Display a message instead of
4002 silently ignoring the error.
4003
40042003-05-03 Stefan Monnier <monnier@cs.yale.edu>
4005
4006 * keyboard.c (input_available_signal): Mark static.
4007 (menu_bar_items): Use map_keymap.
4008 (menu_bar_one_keymap): Remove.
4009 (menu_bar_item): Adjust arglist (for use in map_keymap).
4010 Properly hide a second binding when not both are keymaps.
4011
4012 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
4013 (single_keymap_panes): Use it and map_keymap.
4014 (single_menu_item): Use skp as well.
4015
4016 * keymap.h (map_keymap_function_t): New type.
4017 (map_keymap): Declare.
4018
4019 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
4020 (map_keymap_call, Fmap_keymap): New functions.
4021 (syms_of_keymap): Defsubr map-keymap.
4022
4b1b4443
JD
40232003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4024
4025 * gtkutil.c (create_dialog, make_widget_for_menu_item)
4026 (make_menu_item, create_menus, xg_update_menu_item): Don't call
4027 ..._with_mnemonic functions for menu items.
4028
1f816871
KH
40292003-05-01 Kenichi Handa <handa@m17n.org>
4030
4031 * coding.c (coding_system_accept_latin_extra_p): Delete this
4032 function.
4033 (find_safe_codings): Pay attention to
4034 the property tranlsation-table-for-encode of each codings.
4035 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
4036
5ed6ba5b
SM
40372003-05-01 Stefan Monnier <monnier@cs.yale.edu>
4038
4039 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
4040
32c06229
SM
40412003-04-30 Stefan Monnier <monnier@cs.yale.edu>
4042
4043 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
4044
4045 * lisp.h (CHECK): Wrap args in parenthesis.
4046 (specbind): Fix doc: symbol = Qnil is not supported any more.
4047
4048 * bytecode.c (Fbyte_code) <unwind-protect>:
4049 Use Fprogn rather than 0 and Qnil.
4050
4051 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
4052 `double', and `triple' modifiers as well.
4053
ed3c3314
RS
40542003-04-30 Richard M. Stallman <rms@gnu.org>
4055
4056 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
4057
4058 * alloc.c (abort_on_gc): New variable.
4059 (Fgarbage_collect): Abort if abort_on_gc is set.
4060
4061 * lisp.h (abort_on_gc): Add decl.
4062
4063 * eval.c (Fsignal): Clear abort_on_gc.
4064
4065 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
32c06229 4066 Reinit FORMAT_START and END before second scan.
ed3c3314
RS
4067
4068 * xdisp.c (move_it_vertically_backward): Do the final big else
4069 even if nlines is 0.
4070
4071 * xdisp.c (redisplay_internal): Finish the per-frame loop
4072 even if redisplay is suspended by input.
4073
0b325c12
AC
40742003-04-24 Andrew Choi <akochoi@shaw.ca>
4075
4076 * macterm.c (x_list_fonts): Return all fonts that match if
4077 maxnames = -1.
4078
4e837cd0
KH
40792003-04-25 Kenichi Handa <handa@m17n.org>
4080
4081 * syntax.c (skip_chars): Fix previous change.
4082
9af7511a
KH
40832003-04-24 Kenichi Handa <handa@m17n.org>
4084
4085 * syntax.c (skip_chars): Make the code faster by using the common
4086 technique of *p, *stop, and *endp.
4087
e3b2c21f
JD
40882003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4089
4090 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
32c06229 4091 tool_bar_items so GTK tool bar expose callback does not access items
e3b2c21f
JD
4092 being updated.
4093
32c06229
SM
40942003-04-19 Stefan Monnier <monnier@cs.yale.edu>
4095
4096 * eval.c (Fapply): Undo last change and add a comment about why.
4097
c6464167
MB
40982003-04-18 Miles Bader <miles@gnu.org>
4099
4100 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
4101 pickier PARSE_MULTIBYTE_SEQ.
4102
e509f168
SM
41032003-04-17 Stefan Monnier <monnier@cs.yale.edu>
4104
4105 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
4106 Use XCDR, XCAR, CONSP.
4107 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
4108 (Fapply): Remove unnecessary GCPRO.
4109
4110 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
4111
4112 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
4113
4114 * buffer.h: Don't hardcode BEG==1.
4115
4116 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
4117
5ceea398
RS
41182003-04-16 Richard M. Stallman <rms@gnu.org>
4119
4120 * xdisp.c (try_window, try_window_reusing_current_matrix):
4121 When at end of window, set window_end_pos to Z-ZV.
4122
4123 * buffer.c (Foverlay_recenter): Doc fix.
4124
e509f168
SM
41252003-04-14 Stefan Monnier <monnier@cs.yale.edu>
4126
4127 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
4128
d243e605
AC
41292003-04-14 Andrew Choi <akochoi@shaw.ca>
4130
4131 * macterm.c (mac_check_for_quit_char): Don't check more often than
4132 once a second.
4133
6901b111
SM
41342003-04-11 Stefan Monnier <monnier@cs.yale.edu>
4135
4136 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
4137 specially, so that they can't hide an implicit switch-frame event.
4138 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
4139 (head_table): Use switch-frame as event_kind for select-window.
4140 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
4141
4142 * editfns.c (Fformat): Lisp_Object/int mixup.
4143 (format2): Remove unused var numargs.
4144
e301806f 41452003-04-11 Kenichi Handa <handa@m17n.org>
aa95b710 4146
6901b111 4147 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
aa95b710
KH
4148 (Qafter_insert_file_set_coding): New variable.
4149 (syms_of_fileio): Initialize and staticpro it. Delete declaration
4150 for after-insert-file-adjust-coding-function.
4151 (Finsert_file_contents): Call Qafter_insert_file_set_coding
4152 instead of Vafter_insert_file_adjust_coding_function.
4153
38914424
KH
41542003-04-11 Kenichi Handa <handa@m17n.org>
4155
4156 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
4157
4158 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
4159 string. Callers changed.
4160
41612003-04-10 Kenichi Handa <handa@m17n.org>
a288d979 4162
6901b111 4163 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
a288d979 4164 (syms_of_fileio): Declare it as a lisp variable.
6901b111
SM
4165 (Finsert_file_contents):
4166 Call Vafter_insert_file_adjust_coding_function before calling
a288d979
KH
4167 decode-format.
4168
f979dc05
JD
41692003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4170
4171 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
4172 get GtkAdjustment as widget now is a GtkRange.
4173
4174 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
4175 GtkRange to avoid memory leak.
4176
f8c6b4c2 41772003-04-09 Kenichi Handa <handa@m17n.org>
cb98871c 4178
50ebc53d
KH
4179 * xfaces.c (Vface_font_rescale_alist): New variable.
4180 (struct font_name): New member rescale_ratio.
4181 (font_rescale_ratio): New function.
6901b111 4182 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
50ebc53d
KH
4183 (better_font_p): On comparing point sized, pay attention to
4184 recale_ratio member of fonts.
4185 (build_scalable_font_name): Reflect font->rescale_ratio in the
4186 font name.
6901b111 4187 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
50ebc53d 4188
cb98871c
KH
4189 * lread.c (read1): Before calling index, check if the 2nd
4190 arguemnt is in ASCII range.
4191
4773b8ca
RS
41922003-04-08 Richard M. Stallman <rms@gnu.org>
4193
b0ada147
RS
4194 * fileio.c (Ffile_symlink_p): Doc fix.
4195
4196 * editfns.c (Fformat): Translate positions of text properties
4197 in the format string to apply them to the result.
4198
4773b8ca
RS
4199 * fileio.c (Finsert_file_contents): Doc fix.
4200 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
4201
42022003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6901b111 4203
4773b8ca
RS
4204 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
4205
e8f25745 42062003-04-08 Steven Tamm <steventamm@mac.com>
b0ada147 4207
e8f25745
ST
4208 * mac.c (init_mac_osx_environment): Switch libexec and bin so
4209 that self-contained application finds libexec files.
4210
f8c6b4c2 42112003-04-08 Kenichi Handa <handa@m17n.org>
2310d84c 4212
6901b111
SM
4213 * coding.c (code_convert_region_unwind):
4214 Set Vlast_coding_system_used to the argument.
2310d84c
KH
4215 (code_convert_region): If post-read-conversion function changed
4216 the value of last-coding-sytem, keep the new value in
4217 coding->symbol so that it won't be overridden.
4218 (run_pre_post_conversion_on_str): Likewise.
7c086845
KH
4219 (coding_system_accept_latin_extra_p): New function.
4220 (find_safe_codings): Pay attention to characters registered in
4221 latin-extra-code-table.
2310d84c 4222
39c9a034
TTN
42232003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
4224
4225 * Makefile.in (md5.o): Add missing dependency info.
4226
eb67c5d6
RS
42272003-04-06 Richard M. Stallman <rms@gnu.org>
4228
4229 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
4230
4231 * marker.c (verify_bytepos): New function.
4232
4233 * intervals.c (set_intervals_multibyte_1): When becoming
4234 multibyte, adjust right and left child sizes to a whole set of
4235 characters. If an interval gets zero total-length, delete it.
4236 If an interval consists of just its children, delete one of them.
4237
4238 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
4239 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
39c9a034 4240
eb67c5d6
RS
4241 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
4242 All calls deleted.
4243 (lisp_malloc): Do the work here directly.
4244
b1f81fc5
JB
42452003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
4246
4247 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
4248 char tables.
4249
42502003-04-04 Kenichi Handa <handa@m17n.org>
aa8b70ae
KH
4251
4252 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
4253 destructively change "%S" to "%s".
4254
774666fb
MB
42552003-04-03 Miles Bader <miles@gnu.org>
4256
4257 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
4258 always set.
4259
19c37f01
DL
42602003-04-01 Dave Love <fx@gnu.org>
4261
4262 * xfns.c (xpm_lookup_color): Grok "opaque".
4263
2f4b24c3
AC
42642003-03-31 Andrew Choi <akochoi@shaw.ca>
4265
4266 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
4267 parent window ID.
4268
4269 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
4270
4271 * macterm.h (struct mac_output): Define x_pixels_diff and
4272 y_pixels_diff.
b1f81fc5 4273
9443fcf6
JB
42742003-03-31 Juanma Barranquero <lektu@terra.es>
4275
4276 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
4277 blockinput.h and files included from it.
4278
e072891b
KS
42792003-03-31 Kim F. Storm <storm@cua.dk>
4280
4281 The following changes consolidates the common code related to
4282 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
4283 files into frame.c.
9443fcf6 4284
e072891b
KS
4285 * frame.c: Include blockinput.h.
4286 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
4287 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
4288 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
4289 related vars here.
4290 (struct frame_parm_table, frame_parms): New table for describing
4291 frame parameters and their associated Q-variable.
4292 The order of the parameters corresponds to the sequence of the
4293 frame_parm_handlers table in redisplay_interface.
4294 (x_fullscreen_move, x_set_frame_parameters)
4295 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
4296 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
4297 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
4298 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
4299 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
4300 Generic functions for processing of frame parameters.
4301 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
4302 (display_x_get_resource, x_get_resource_string): Functions for
4303 generic access to X resources.
4304 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
4305 (x_default_parameter, Fx_parse_geometry): Functions for generic
4306 access to frame parameters.
6901b111
SM
4307 (x_figure_window_size): Generic calculation of frame size.
4308 Fixed to add space needed for tool bar. Also setup size_hint_flags.
e072891b
KS
4309 (syms_of_frame): Intern and staticpro frame parameter variables.
4310 Defvar_lisp Vx_resource_class and Vx_resource_name here.
4311 Defsubr Sx_get_resource and Sx_parse_geometry.
9443fcf6 4312
e072891b
KS
4313 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
4314 parameter related vars defined in frame.c.
4315 (EMACS_CLASS): Define here.
4316 (enum FULLSCREEN_*): Define here.
4317 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
4318 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
4319 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
4320 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
4321 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
4322 (x_set_visibility, x_set_autoraise, x_set_autolower)
4323 (x_set_unsplittable, x_set_vertical_scroll_bars)
4324 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
4325 (x_figure_window_size): Add prototypes.
4326
4327 * dispextern.h (frame_parm_handler): New typedef.
4328 (struct redisplay_interface): New member frame_parm_handlers.
4329 (enum resource_types): Move declaration here.
4330 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
4331 (x_default_parameter): Add prototypes.
4332
4333 * window.c: Remove extern decl for frame parameter vars.
4334 (change_window_heights): New generic function;
4335 replaces x_change_window_heights. All users changed.
4336
4337 * window.h (change_window_heights): Add prototype.
4338
4339 * xfaces.c: Remove extern decl for frame parameter vars.
4340
4341 * xterm.h (EMACS_CLASS): Remove. Use generic define.
4342 (struct w32_display_info): Fix type of xrdb member.
4343 (enum FULLSCREEN_*): Remove.
4344 Remove prototypes for generic functions (in frame.h).
4345
4346 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
4347 parameters now defined in frame.h and frame.c.
4348 (Vx_resource_name): Remove. Use generic var.
4349 (enum x_frame_parms): Remove (bogus, unused enum).
4350 (check_x_display_info): Make non-static (for frame.c).
4351 (struct x_frame_parm_table, x_frame_parms): Remove.
4352 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
4353 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
4354 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
4355 (x_change_window_heights, x_set_autoraise, x_set_autolower)
4356 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
4357 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
4358 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
4359 Remove. Use generic functions instead.
4360 (enum resource_types): Remove.
4361 (x_set_scroll_bar_default_width): New global function (for frame.c).
4362 (Fx_create_frame): Depend on x_figure_window_size to add space for
4363 toolbar and setup size_hint_flags.
4364 (x_frame_parm_handlers): New table for redisplay_interface.
4365 (syms_of_xfns): Don't intern/staticpro removed vars.
9443fcf6 4366
e072891b
KS
4367 * xterm.c: Remove unnecessary extern declarations.
4368 (x_fullscreen_adjust): Remove. Use generic instead.
4369 (x_redisplay_interface): Add x_frame_parm_handlers member.
4370
4371 * w32gui.h (XrmDatabase): New (dummy) typedef.
4372
4373 * w32term.h (EMACS_CLASS): Remove. Use generic define.
4374 (struct w32_display_info): Fix type of xrdb member.
4375 (enum FULLSCREEN_*): Remove.
4376 (x_fullscreen_adjust): Remove prototype.
4377
4378 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
4379 parameters now defined in frame.h and frame.c.
4380 (Vx_resource_name): Remove. Use generic var.
4381 (enum x_frame_parms): Remove (bogus, unused enum).
4382 (check_x_display_info): Make non-static (for frame.c).
4383 (struct x_frame_parm_table, x_frame_parms): Remove.
4384 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
4385 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
4386 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
4387 (x_change_window_heights, x_set_autoraise, x_set_autolower)
4388 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
4389 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
4390 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
4391 Remove. Use generic functions instead.
4392 (enum resource_types): Remove.
4393 (x_set_scroll_bar_default_width): New global function (for frame.c).
4394 (Fx_create_frame): Depend on x_figure_window_size to add space for
4395 toolbar and setup size_hint_flags.
4396 (w32_frame_parm_handlers): New table for redisplay_interface.
4397 (syms_of_w32fns): Don't intern/staticpro removed vars.
9443fcf6 4398
e072891b
KS
4399 * w32term.c: Remove unnecessary extern declarations.
4400 (x_fullscreen_adjust): Remove. Use generic instead.
4401 (x_redisplay_interface): Add w32_frame_parm_handlers member.
4402
4403 * w32reg.c (x_get_string_resource): Use XrmDatabase.
4404
4405 * macgui.h (XrmDatabase): New (dummy) typedef.
4406
4407 * macterm.h (EMACS_CLASS): Remove.
4408 (struct mac_display_info): Add xrdb member.
4409 (struct mac_output): Add want_fullscreen member.
4410
4411 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
4412 parameters now defined in frame.h and frame.c.
4413 (Vx_resource_name): Remove. Use generic var.
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 (mac_frame_parm_handlers): New table for redisplay_interface.
4427 (syms_of_macfns): Don't intern/staticpro removed vars.
9443fcf6 4428
e072891b
KS
4429 * macterm.c: Remove unnecessary extern declarations.
4430 (x_redisplay_interface): Add mac_frame_parm_handlers member.
4431
3e6a560b
KS
4432 * Makefile.in (frame.o): Add dependency on blockinput.h and files
4433 included from it (atimer.h and systime.h).
4434
7b7b454e
AS
44352003-03-30 Andreas Schwab <schwab@suse.de>
4436
4437 * xdisp.c (x_insert_glyphs): Fix swapped width and height
4438 parameters for shift_glyphs_for_insert.
4439
4440 * macterm.c (x_redisplay_interface): Add missing entry for
4441 draw_vertical_window_border.
4442
beb402de
KG
44432003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
4444
4445 * fileio.c (Fexpand_file_name): In the no-handler case, after
4446 expanding, look again for a handler and invoke it. This is needed
4447 for filenames like "/foo/../user@host:/bar/../baz" -- the first
4448 expansion produces "/user@host:/bar/../baz" which needs to be
4449 expanded again for the finame result "/user@host:/baz".
4450
b676f356
JD
44512003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4452
4453 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
4454 of area to be redrawn for better performance.
4455
3c671a56
SM
44562003-03-28 Stefan Monnier <monnier@cs.yale.edu>
4457
4458 * xterm.c (take_vertical_position_into_account): Remove.
4459 (xt_action_hook): Call set_vertical_scroll_bar if needed.
4460 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
4461 (xm_scroll_callback, x_create_toolkit_scroll_bar)
4462 (x_set_toolkit_scroll_bar_thumb): Simplify.
4463 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
4464 (XTread_socket): Remove unused var.
4465 (x_make_frame_invisible): Replace goto with else.
4466
4467 * xdisp.c (set_vertical_scroll_bar): New fun.
4468 (redisplay_window): Use it.
4469
84f2e615
RS
44702003-03-26 Richard M. Stallman <rms@gnu.org>
4471
4472 * xdisp.c (update_tool_bar): Recompute tool bar if
4473 update_mode_lines is set. Set w->update_mode_line
4474 only if the tool bar contents actually change.
4475 (update_menu_bar): Undo previous change.
4476
70b6104c
JD
44772003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4478
5fd6f727
JD
4479 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
4480 (xg_frame_set_char_size): Calculate scroll bar width before frame
4481 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
4482 (xg_separator_p): Check for all documented separator types.
4483 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
4484 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
4485
70b6104c
JD
4486 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
4487 so tool bar gets updated.
4488
d9b36d19
SM
44892003-03-26 Stefan Monnier <monnier@cs.yale.edu>
4490
4491 * data.c (store_symval_forwarding): Re-instate part of the code
4492 that was deleted with too much enthusiasm.
4493
44942003-03-25 Stefan Monnier <monnier@cs.yale.edu>
4495
4496 * data.c (store_symval_forwarding): Delete special read-only
4497 hack for type == -1, since we now use ->constant instead.
4498 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
4499
4500 * buffer.c (overlays_in): Declare static.
4501 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
4502 `constant' field rather than the variable's `type' field.
4503
365fa1b3
AC
45042003-03-24 Andrew Choi <akochoi@shaw.ca>
4505
4506 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
4507
4508 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
4509
4510 * fns.c [MAC_OSX]: Do not redefine vector.
4511
4512 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
4513
4514 * macgui.h: Remove definition of No_Cursor.
4515
d9b36d19 4516 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
365fa1b3
AC
4517
4518 * xdisp.c: Define No_Cursor.
4519 (x_write_glyphs, notice_overwritten_cursor)
4520 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
4521 (note_mouse_highlight): Remove Mac-specific code.
4522 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
d9b36d19 4523
c0bcce6f
JPW
45242003-03-24 John Paul Wallington <jpw@gnu.org>
4525
4526 * xdisp.c (redisplay_window): If mini window's buffer is not
4527 empty, then redisplay it like other windows.
4528
a526b96c
KS
45292003-03-23 Kim F. Storm <storm@cua.dk>
4530
4531 * w32term.c (w32_draw_window_cursor): Fix last change.
4532
37ab321e
KH
45332003-03-23 Kenichi Handa <handa@m17n.org>
4534
a526b96c
KS
4535 * alloc.c (make_string_from_bytes, make_specified_string):
4536 Add `const' for the arg CONTENTS.
37ab321e
KH
4537
4538 * lisp.h (make_string_from_bytes, make_specified_string):
4539 Prototypes adjusted.
4540
7863d625
JD
45412003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4542
a526b96c 4543 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
fd4c9408 4544
7863d625
JD
4545 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
4546 (XG_SB_RANGE): New define.
4547
4548 * gtkutil.c (xg_fixed_handle_expose): New function.
4549 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
4550 expose events.
4551 (xg_update_scrollbar_pos): Take two more arguments, left and width
4552 of scroll bar including borders.
4553 Clear left and right part outside scroll bar separately as some
4554 themes have bars that are not an even number of pixels.
d9b36d19 4555 Don't set reallocate_redraws, don't call
7863d625
JD
4556 gdk_window_process_all_updates.
4557 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
4558 so no need to change it. Calculate size and value with XG_SB_RANGE.
4559
d9b36d19
SM
4560 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
4561 Pass left and width of scroll bar including borders to
7863d625
JD
4562 xg_update_scrollbar_pos.
4563
af0ad939
TTN
45642003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
4565
4566 * Makefile.in: Make sure space precedes end-of-line backslashes.
4567
b22139fd
KS
45682003-03-22 Kim F. Storm <storm@cua.dk>
4569
4570 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
4571 Add generic versions here. Remove system specific versions
4572 defined elsewhere.
4573
4574 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
4575 Add prototypes.
4576
6e6410cf
KS
4577 * xterm.h (STORE_NATIVE_RECT): New macro.
4578
5c9cc435
KS
45792003-03-21 Kim F. Storm <storm@cua.dk>
4580
00c64fab
SM
4581 * xdisp.c (get_glyph_string_clip_rect):
4582 Use FRAME_INTERNAL_BORDER_WIDTH.
5c9cc435
KS
4583
4584 * dispextern.h (struct redisplay_interface): Add active_p
4585 argument to draw_window_cursor member. All uses changed.
4586
acd37560
KS
45872003-03-21 Kim F. Storm <storm@cua.dk>
4588
4589 The following changes consolidate code related to writing and
4590 inserting glyphs, exposing frame, the tool bar, the mouse face,
4591 the output cursor, and help echo from xterm.c, w32term.c and
4592 macterm.c into xdisp.c. It also generalizes the use of the
4593 window_part enum instead of using numeric values throughout.
af0ad939 4594
acd37560
KS
4595 * xdisp.c: Consolidate gui-independent code here.
4596 Include keymap.h.
4597 (Qhelp_echo): Import.
4598 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
4599 (help_echo_string, help_echo_window, help_echo_object)
4600 (previous_help_echo_string, help_echo_pos): Declare here.
4601 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
4602 (estimate_mode_line_height): Define here. Handle windowing
4603 systems directly (without using estimate_mode_line_height_hook).
4604 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
4605 (update_window_cursor, update_cursor_in_window_tree)
4606 (fast_find_position, fast_find_string_pos)
4607 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
4608 (expose_area, expose_line, expose_overlaps, expose_window)
4609 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
4610 declared static as they are only used locally in xdisp.c.
4611 (draw_glyphs): Rename from x_draw_glyphs and make static.
4612 (tool_bar_item_info, notice_overwritten_cursor): Make static.
4613 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
4614 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
af0ad939 4615 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
acd37560
KS
4616 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
4617 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
4618 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
4619 (note_mouse_highlight, x_clear_window_mouse_face)
4620 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
4621 (x_intersect_rectangles): New generic functions for use by xdisp.c
4622 and GUI front-ends.
4623 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
4624 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
4625
4626 * dispextern.h (Display_Info): Generic typedef for *_display_info.
4627 (NativeRectangle): Generic typedef for rectangle type.
4628 (enum window_part): Move here from window.c.
4629 (struct redisplay_interface): New members flush_display_optional,
4630 define_frame_cursor, clear_frame_area, draw_window_cursor,
4631 draw_vertical_window_border, shift_glyphs_for_insert.
4632 Rename member clear_mouse_face to clear_window_mouse_face.
4633 (estimate_mode_line_height_hook): Remove hook.
4634 (auto_raise_tool_bar_buttons_p): Don't declare extern.
4635 (tool_bar_item_info): Remove prototype.
4636 (help_echo_string, help_echo_window, help_echo_object)
4637 (previous_help_echo_string, help_echo_pos)
4638 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
4639 (x_stretch_cursor_p, output_cursor): Declare extern.
4640 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
4641 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
4642 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
4643 (display_and_set_cursor, set_output_cursor, x_cursor_to)
4644 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
4645 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
4646 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
4647 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
4648 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
4649 Add prototypes.
4650 (mode_line_string, marginal_area_string): Fix prototypes.
4651
4652 * window.c (enum window_part): Move to dispextern.h.
4653 (coordinates_in_window): Use enum window_part member names
4654 instead of numbers to describe return value.
4655 (struct check_window_data): Change part member to window_part.
4656 (check_window_containing): Return window_part unaltered.
4657 (window_from_coordinates): Change part arg from int to enum
4658 window_part. Allow part arg to be null. All users changed.
4659
4660 * window.h (window_from_coordinates): Fix prototype.
4661
4662 * term.c (estimate_mode_line_height): Move to xdisp.c.
4663
4664 * keyboard.c (make_lispy_event): Use enum window_part.
4665
4666 * dispnew.c (mode_line_string, marginal_area_string): Use enum
4667 window_part instead of int in arg list. Users changed.
4668
4669 * xterm.h (No_Cursor): Declare as None for X.
4670 (struct mac_output): Replace member cross_cursor by hand_cursor.
af0ad939 4671
acd37560
KS
4672 * xterm.c: Remove consolidated defines and code.
4673 (BETWEEN): Remove unused macro.
4674 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
4675 (x_define_frame_cursor, x_clear_frame_area)
4676 (x_draw_window_cursor): New X-specific functions for RIF.
4677 (x_redisplay_interface): Add new members.
4678
4679 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
4680
4681 * w32term.h (struct w32_output): Remove cross_cursor member.
4682
4683 * w32term.c: Remove consolidated defines and code.
4684 (BETWEEN): Remove unused macro.
4685 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
4686 (w32_define_frame_cursor, w32_clear_frame_area)
4687 (w32_draw_window_cursor): New W32-specific functions for RIF.
4688 (w32_redisplay_interface): Add new members.
4689
a64387ee 4690 * w32gui.h (No_Cursor): Define as 0 for W32.
acd37560
KS
4691 (XRectangle): Add X compatible rectangle type.
4692 (NativeRectangle): Declare as RECT for W32.
4693 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
4694
4695 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
4696
4697 * w32console.c: Remove consolidated defines and code.
af0ad939 4698
acd37560
KS
4699 * msdos.h (Display_Info): Add generic typedef.
4700
4701 * msdos.c: Remove consolidated defines and code.
4702 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
4703
4704 * macterm.h (struct mac_output): Replace member cross_cursor by
4705 hand_cursor.
4706 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
4707
4708 * macterm.c: Remove consolidated defines and code.
4709 (BETWEEN): Remove unused macro.
4710 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
4711 (mac_define_frame_cursor, mac_clear_frame_area)
4712 (mac_draw_window_cursor): New Mac-specific functions for RIF.
4713 (x_redisplay_interface): Add new members.
4714
4715 * macgui.h (No_Cursor): Define as 0 for Mac.
4716 (XRectangle): Add X compatible rectangle type.
4717 (NativeRectangle): Declare as Rect for Mac.
4718 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
4719
204ccab1
KS
4720 * macfns.c (x_set_mouse_color): Setup hand_cursor.
4721 (x_set_cursor_color): Use x_display_and_set_cursor.
acd37560 4722
9443fcf6 4723 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
acd37560
KS
4724 included from it. Add dependency on keymap.h.
4725
4726 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
4727
8ba01a70 47282003-03-21 Kenichi Handa <handa@m17n.org>
3f817c73
KH
4729
4730 * fileio.c (Fexpand_file_name): Fix previous change.
4731
8ba01a70 47322003-03-19 Kenichi Handa <handa@m17n.org>
4f497b0a
KH
4733
4734 * fileio.c (Ffile_name_directory): Reconstruct file name by
4735 make_specified_string.
4736 (Ffile_name_nondirectory, Ffile_name_as_directory)
4737 (Fdirectory_file_name, Fexpand_file_name)
4738 (Fsubstitute_in_file_name): Likewise.
4739 (Fread_file_name): Compare decoded homedir with DIR and
4740 DEFAULT_FILENAME.
4741
4742 * alloc.c (make_specified_string): If NCHARS is negative, count
4743 the number of characters.
4744
19536747
JD
47452003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4746
de38ae5a
JD
4747 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
4748 all widgets.
4749
19536747
JD
4750 * gtkutil.h: Removed xg_ignore_next_thumb.
4751
37ab321e 47522003-03-18 Kenichi Handa <handa@m17n.org>
cb0d4562
KH
4753
4754 * coding.c (Vchar_coding_system_table): Remove this variable.
4755 (Vcoding_system_safe_chars): New variable.
4756 (intersection): Remove this function.
4757 (find_safe_codings): Don't use Vchar_coding_system_table, but try
4758 all codings in SAFE_CODINGS.
00c64fab 4759 (Ffind_coding_systems_region_internal): Adjust for the change of
cb0d4562
KH
4760 find_safe_codings. Get generic coding systems from
4761 Vcoding_system_safe_chars.
4762 (Fdefine_coding_system_internal): New function.
4763 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
4764 Initialize and staticpro Vcoding_system_safe_chars.
4765
17097258
JD
47662003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4767
2a2071c3
JD
4768 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
4769 equal old values before updating.
4770
17097258
JD
4771 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
4772
4773 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
4774
47752003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4776
4777 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
4778 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
4779 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
4780 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
4781 (xg_create_scroll_bar): Pass bar to button event callback.
4782 (xg_find_top_left_in_fixed): New function.
4783 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
4784 whole scroll bar area. Get old position with
4785 xg_find_top_left_in_fixed, calculate and only clear needed areas.
4786 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
4787 dragging is in progress. Calculate whole as for Motif.
4788 Remove code that saved last values. Call gtk_range functions to
4789 set scroll bar sizes.
4790
4791 * gtkutil.h: Removed xg_ignore_next_thumb.
4792
8cb9dfbf
JB
47932003-03-17 Juanma Barranquero <lektu@terra.es>
4794
4795 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
4796 and files included from it.
4797
00c64fab
SM
47982003-03-18 Stefan Monnier <monnier@cs.yale.edu>
4799
4800 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
4801 multiple occurrences of the same keymap under different prefixes.
4802 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
4803
c45bb3b2
JR
48042003-03-16 Jason Rumney <jasonr@gnu.org>
4805
4806 * w32gui.h: Use HDC for Display.
4807
4808 * w32term.c (w32_encode_char): Prevent double-byte chars from
4809 crashing Emacs.
4810
4811 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
4812 as binary.
4813
2a6d0874
JB
48142003-03-16 Juanma Barranquero <lektu@terra.es>
4815
4816 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
4817
03eb5fab
KS
48182003-03-16 Kim F. Storm <storm@cua.dk>
4819
4820 The following changes consolidate some of the gui-independent
4821 parts of the processing and drawing of "glyph strings" from
4822 xterm.c, w32term.c, and macterm.c into xdisp.c.
2a6d0874 4823
03eb5fab
KS
4824 * dispextern.h (struct glyph): Reduce face_id member from 22 to
4825 21 bits (this reduces number of faces from 4M to 2M).
4826 Replace W32 specific w32_font_type member (2 bits) by generic
4827 font_type member (3 bits) for portability.
4828 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
4829 (enum draw_glyphs_face): Define here.
4830 (struct glyph_string): Define here. Merge W32 and X versions.
4831 (struct redisplay_interface): New members per_char_metric,
4832 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
4833 (VCENTER_BASELINE_OFFSET): Define here.
4834 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
4835 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
4836
4837 * xdisp.c: Consolidate gui-independent "glyph string" code here.
4838 (dump_glyph_string): Moved here.
4839 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
4840 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
4841 (fill_composite_glyph_string, fill_glyph_string)
4842 (fill_image_glyph_string, fill_stretch_glyph_string)
4843 (left_overwritten, left_overwriting, right_overwritten)
4844 (right_overwriting, get_char_face_and_encoding)
4845 (set_glyph_string_background_width, compute_overhangs_and_x)
4846 (append_glyph, append_composite_glyph, produce_image_glyph)
4847 (take_vertical_position_into_account, append_stretch_glyph)
4848 (produce_stretch_glyph): New generic functions (based on X version).
4849 Call platform specific functions through rif.
4850 (INIT_GLYPH_STRING): New macro, hides W32 details.
4851 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
4852 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
4853 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
4854 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
4855 (notice_overwritten_cursor):
4856 Generic functions exported to platform modules. Users changed.
4857
4858 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
4859 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
4860 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
fad49844 4861 New macros for consolidated code.
2a6d0874 4862
03eb5fab
KS
4863 * xterm.c: Remove consolidated defines and code.
4864 (x_per_char_metric, x_encode_char)
4865 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
4866 (x_redisplay_interface): Add new members.
4867
4868 * w32gui.h (Display): Add dummy typedef for consolidation.
4869 (XChar2b): Define alias for wchar_t for consolidation.
4870 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
4871
4872 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
2a6d0874 4873 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
03eb5fab
KS
4874 New macros for consolidation.
4875
fad49844 4876 * w32term.c: Remove consolidated defines and code.
03eb5fab
KS
4877 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
4878 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
4879 (w32_per_char_metric): Change font_type arg to int for RIF.
4880 (w32_encode_char): Return int according to RIF requirements.
4881 (w32_compute_glyph_string_overhangs): Adapt to RIF.
4882 (w32_get_glyph_overhangs): New function for RIF. Uses generic
4883 x_get_glyph_overhangs.
4884 (w32_redisplay_interface): Add new members.
4885
4886 * macgui.h (XChar2b): Move typedef here for consolidation.
4887 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
4888
4889 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
4890 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
4891 consolidation.
4892
4893 * macterm.c: Remove consolidated defines and code.
4894 (mac_per_char_metric): New function for RIF.
00c64fab 4895 (mac_encode_char): Adapt to new RIF requirements.
03eb5fab
KS
4896 (mac_compute_glyph_string_overhangs): Adapt for RIF.
4897 (x_redisplay_interface): Add new members.
4898
00c64fab
SM
48992003-03-15 Stefan Monnier <monnier@cs.yale.edu>
4900
4901 * keymap.c (Vmenu_events): New var.
4902 (syms_of_keymap): Initialize it.
4903 (where_is_internal): Check more carefully what is a menu event.
4904
225c7a07
RS
49052003-03-14 Richard M. Stallman <rms@gnu.org>
4906
4907 * lread.c (read1): After #!, exit loop on eof.
4908
cea9be54
JD
49092003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4910
9ea0e54d
JD
4911 * gtkutil.h: Add declaration for xg_frame_cleared.
4912
0cb35f4e
JD
4913 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
4914
cea9be54
JD
4915 * gtkutil.c (struct xg_last_sb_pos): New structure.
4916 (handle_fixed_child): New function.
4917 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
4918 and force a redraw on them.
4919 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
4920 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
4921 so we can avoid unneeded redraws.
4922 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
4923 and force a redraw on the scroll bar.
4924 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
4925 if xg_last_sb_pos shows the positions are up to date.
0cb35f4e 4926 (xg_frame_cleared): New function.
cea9be54 4927
20b853f3
KH
49282003-03-13 Kenichi Handa <handa@m17n.org>
4929
4930 * coding.c (Fdetect_coding_region): Fix docstring.
4931 (Fdetect_coding_string): Fix docstring.
4932
7a555aff
AS
49332003-03-13 Andreas Schwab <schwab@suse.de>
4934
25cc0080
AS
4935 * gtkutil.c: Add prototype for create_menus.
4936
30225431
AS
4937 * data.c (long_to_cons): Fix type of top.
4938
4939 * xselect.c (selection_data_to_lisp_data): Use int instead of
4940 long for an integer of size 4.
4941
7a555aff 4942 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
30225431 4943 (xg_tool_bar_help_callback): Likewise.
7a555aff 4944
a3e4741f
AS
49452003-03-12 Andreas Schwab <schwab@suse.de>
4946
4947 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
4948
9668be7c
KS
49492003-03-12 Kim F. Storm <storm@cua.dk>
4950
03eb5fab 4951 The following changes consolidate the fringe handling from
9668be7c 4952 xterm.c, w32term.c, and macterm.c into xdisp.c.
00a88f32 4953
9668be7c
KS
4954 * xdisp.c: Consolidate fringe handling code here.
4955 (left_bits, right_bits, continued_bits, continuation_bits)
4956 (ov_bits, zv_bits): Define fringe bitmaps.
4957 (fringe_bitmaps): New array holding fringe bitmaps.
4958 (draw_fringe_bitmap): Draw a specific bitmap; call display
4959 specific drawing routine via rif->draw_fringe_bitmap.
4960 (draw_row_fringe_bitmaps): Generic replacement for
4961 x_draw_row_fringe_bitmaps; all callers changed.
4962 (compute_fringe_widths): Generic replacement for
4963 x_compute_fringe_widths; all callers changed.
4964
4965 * dispextern.h (enum fringe_bitmap_type): Define here.
4966 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
4967 (fringe_bitmaps): Declare extern.
4968 (struct redisplay_interface): New member draw_fringe_bitmap.
4969 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
4970
4971 * xterm.c: Remove generic fringe code.
4972 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
4973 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
4974
4975 * w32term.c: Remove generic fringe code.
4976 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
4977 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
00a88f32 4978
9668be7c
KS
4979 * macterm.c: Remove generic fringe code.
4980 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
4981 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
4982
00a88f32
SM
49832003-03-11 Stefan Monnier <monnier@cs.yale.edu>
4984
4985 * print.c (Fprin1_to_string): Return unibyte string if possible.
4986
1d1de695
DK
49872003-03-09 David Kastrup <dak@gnu.org>
4988
4989 * process.c (read_process_output): We have allocated enough space
4990 for readmax and carryover, so actually use the alloted space.
4991
257f40f2
JD
49922003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4993
4994 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
4995 toolkit scrollbar click.
4996
4997 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
4998 for USE_GTK.
4999 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
5000 also.
5001 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
5002 scrollbar and control is pressed, call x_scroll_bar_handle_click.
00a88f32 5003
257f40f2
JD
5004 * gtkutil.h: Declare xg_get_scroll_id_for_window.
5005
5006 * gtkutil.c (xg_get_scroll_id_for_window): New function.
5007 (xg_tool_bar_item_expose_callback): New function.
5008 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
5009 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
5010 on the tool bar widget.
5011 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
5012 to expose on the tool bar item widgets.
5013
15213141
JD
50142003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5015
26b74a0b 5016 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
00a88f32 5017 struct image* when deciding to update (struct image* may have been
26b74a0b
JD
5018 deleted from the image cache).
5019
15213141
JD
5020 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
5021 the event isn't for a frame (i.e. for dialogs).
5022
20b853f3 50232003-03-07 Kenichi Handa <handa@m17n.org>
cb681b34
KH
5024
5025 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
5026 composition components reaches the limit, terminate composing.
5027 (COMPOSITION_OK): New macro.
00a88f32 5028 (detect_coding_iso2022): Use it if an escape sequence for
cb681b34
KH
5029 composition is found.
5030 (coding_restore_composition): Adjust the number of composition
5031 components if it is not sane.
5032
c9029fe5
JB
50332003-03-06 Juanma Barranquero <lektu@terra.es>
5034
5035 * w32term.h (struct w32_display_info): Add xrdb member to support
5036 passing resources via -xrm on Windows.
5037
5038 * w32term.c (w32_make_rdb): New function.
5039 (w32_term_init): Use it to initialize xrdb member of w32_display_info
5040 struct. Delete leftover code.
5041
5042 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
5043 for resources passed on the command line.
5044
5045 * w32reg.c (w32_get_rdb_resource): New function.
5046 (x_get_string_resource): Use it, so resources passed with -xrm
5047 supercede the ones in the registry.
5048
9d00001f
JD
50492003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5050
5051 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
5052 instead of x_top_window_to_frame.
5053
ca2417b9
JD
50542003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5055
5056 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
5057 when restarting Emacs.
5058
5b20caf0
RS
50592003-03-03 Richard M. Stallman <rms@gnu.org>
5060
5061 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
5062 to run kill-buffer-query-functions.
5063 (Qkill_buffer_query_functions): New var.
5064 (syms_of_buffer): Init and staticpro it.
5065
58e91b77
JD
50662003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5067
5068 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
5069
932357b4
KS
50702003-02-25 Kim F. Storm <storm@cua.dk>
5071
5072 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
5073 If centering point failed to make whole line visible and vscroll
5074 is non-zero, disable vscroll and try centering point again.
5075
5076 * lread.c (read1): Accept `single space' syntax like (? x).
5077
bb8db7e1
JD
50782003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5079
5080 * keyboard.c (cancel_hourglass_unwind): Surround with
5081 #ifdef HAVE_X_WINDOWS
5082
47d77aab
KH
50832003-02-25 Kenichi Handa <handa@m17n.org>
5084
5085 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
5086 process only when "subprocesses" is defined.
5087
6a097c0c
SM
50882003-02-24 Stefan Monnier <monnier@cs.yale.edu>
5089
5090 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
5091
0b063c27
JB
50922003-02-24 Juanma Barranquero <lektu@terra.es>
5093
d1135afc
JB
5094 * callint.c (fix_command): Declare as static void and move before
5095 Fcall_interactively.
5096
0b063c27
JB
5097 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
5098 (syms_of_xdisp): Don't initialize Qwhen.
5099
0af912f0
JD
51002003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5101
5102 * keyboard.c (cancel_hourglass_unwind): New function.
5103 (command_loop_1): Cancel hourglass with unwind-protect.
5104
120d0a23
RS
51052003-02-23 Richard M. Stallman <rms@gnu.org>
5106
5107 * callint.c (fix_command): New subroutine, from Fcall_interactively.
5108 Detect (when ... (region-beginning)) etc.
5109 (Fcall_interactively): Call fix_command.
5110 (Qif, Qwhen): New variables.
5111 (syms_of_callint): Init and staticpro them.
0b063c27 5112
120d0a23
RS
5113 * regex.c (print_partial_compiled_pattern): Output to stderr.
5114
4ece81a6
KG
51152003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
5116
5117 * dired.c (directory_files_internal): Don't expand directory.
5118 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
5119 instead. From Lars Hansen <larsh@math.ku.dk>.
5120
e52bd6b7
SM
51212003-02-22 Stefan Monnier <monnier@cs.yale.edu>
5122
5123 * fns.c (string_to_multibyte): Remove unused var i.
5124 (Flanginfo): Fix int/Lisp_Object mixup.
5125 (void_call2): New fun.
5126 (Fmap_char_table): Use it in place of call2.
5127
5128 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
5129
5130 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
5131
5132 * keymap.c (copy_keymap_1): Make it static.
5133
5134 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
5135
c33ef7c4
JB
51362003-02-22 David Ponce <david@dponce.com>
5137
5138 * lread.c (Fload): Don't check STRING_MULTIBYTE.
5139
16782258
JD
51402003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5141
5142 * process.h: Removed subtty field from struct Lisp_Process.
5143
5144 * process.c (create_process): Remove setting of subtty.
5145 (emacs_get_tty_pgrp): New function.
e52bd6b7
SM
5146 (Fprocess_running_child_p, process_send_signal):
5147 Call emacs_get_tty_pgrp instead of ioctl.
16782258
JD
5148 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
5149
3abeca61
KG
51502003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
5151
5152 * keymap.c (Fdefine_key): Doc fix.
5153
92a8ce63
JB
51542003-02-21 Juanma Barranquero <lektu@terra.es>
5155
5156 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
5157
5158 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
5159 POLLING_PROBLEM_IN_SELECT.
5160
5161 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
5162 Delete #undef of POLLING_PROBLEM_IN_SELECT.
5163
5164 * s/hpux10-20.h: New file.
5165
e52bd6b7
SM
5166 * process.c (wait_reading_process_input):
5167 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
92a8ce63 5168
20f1ef2e
KH
51692003-02-20 Kenichi Handa <handa@m17n.org>
5170
32d0a9dc
KH
5171 * fontset.c (check_fontset_name): If NAME is nil, return the
5172 default fontset.
5173 (override_font_info): New function.
e52bd6b7 5174 (Fset_fontset_font): Document that NAME nil means the default fontset.
32d0a9dc
KH
5175 (Ffontset_info): If FONTSET is not the default fontset, merge
5176 FONTSET onto the copy of the default fontset, and work on that
5177 copy. Document that NAME nil means the default fontset.
5178 (Ffontset_font): Document that NAME nil means the default fontset.
5179
20f1ef2e
KH
5180 * process.c (setup_process_coding_systems): If the process's
5181 in/out descriptor is -1, do nothing.
5182
77d1daf2
AS
51832003-02-19 Andreas Schwab <schwab@suse.de>
5184
e52bd6b7
SM
5185 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
5186 Add prototypes.
77d1daf2 5187
f9a45bb3
KH
51882003-02-19 Kenichi Handa <handa@m17n.org>
5189
5190 * xfaces.c (try_alternative_families): Try all scalable fonts if
5191 Vscalable_fonts_allowed is not Qt.
5192
72ecb43c
JD
51932003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5194
5195 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
5196
ee5be7c3
JD
51972003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5198
5199 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
5200 names.
5201
5202 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
e52bd6b7 5203 (sorted_font_list): Move allocation of struct font_name to
ee5be7c3
JD
5204 x_face_list_fonts.
5205 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
5206 (Fx_list_fonts): Set maxnames to -1 to get all font names.
5207
4cd519a7
KS
52082003-02-18 Kim F. Storm <storm@cua.dk>
5209
068f9882
KS
5210 * lread.c (read1): Fix last change.
5211 "`" is not always special. Allow "?" after a character constant.
4cd519a7 5212
7290a344
AC
52132003-02-18 Andrew Choi <akochoi@shaw.ca>
5214
5215 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
5216
1f7fa69b
AS
52172003-02-18 Andreas Schwab <schwab@suse.de>
5218
5219 * window.c (window_scroll_pixel_based): Move outside a
5220 multi-glyph character before setting new window start.
5221
5222 * xdisp.c (in_display_vector_p): New function.
5223 * dispextern.h (in_display_vector_p): Declare.
5224
23e21195
KS
52252003-02-18 Kim F. Storm <storm@cua.dk>
5226
5227 * lread.c (read1): Fix and relax read syntax.
5228 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
5229 Only recognize "," after dotted-pair dot if inside backquote.
5230 Never include "`" or "," (inside backquote) in a symbol.
5231 Allow dotted-pair dot after a character constant.
5232 Allow "`" and "," (inside backquote) after a character constant.
92a8ce63 5233
f098b121
JD
52342003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5235
5236 * gtkutil.c (xg_tool_bar_expose_callback): New function.
5237 (xg_create_tool_bar): Force style of tool bar to be horizontal with
5238 icons. Set name of tool bar to emacs-toolbar.
5239 (update_frame_tool_bar): Connect expose event to
5240 xg_tool_bar_expose_callback.
5241
63020c46
RS
52422003-02-17 Richard M. Stallman <rms@gnu.org>
5243
5244 * keyboard.c (this_command_key_count_reset): New variable.
5245 Initiatize to 0 where this_command_key_count is set.
5246 (read_char): Save and restore this_command_key_count_reset
5247 around input method code.
5248 (read_char): If this_command_key_count_reset, echo reread commands.
5249 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
5250
fb4452cc
KH
52512003-02-17 Kenichi Handa <handa@m17n.org>
5252
5253 * fns.c (string_to_multibyte): Always return a multibyte string.
5254
bd11cc09
JR
52552003-02-16 Jason Rumney <jasonr@gnu.org>
5256
e52bd6b7
SM
5257 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
5258 Negative max_fonts parameter means list all.
bd11cc09 5259
4cdf4bde
DL
52602003-02-14 Dave Love <fx@gnu.org>
5261
5262 * fns.c (Flanginfo): Doc fix.
5263
023b93f6
KS
52642003-02-13 Kim F. Storm <storm@cua.dk>
5265
37cd4238
KS
5266 * lread.c (read_escape): Interpret \s as a SPACE character, except
5267 for \s-X in a character constant which still is the super modifier.
5268 (read1): Signal an `invalid read syntax' error if a character
5269 constant is immediately followed by a digit or symbol character.
5270
140a6b7e
KS
5271 * search.c (Fmatch_data): Doc fix. Explicitly state that
5272 match-data is undefined if last search failed.
5273
023b93f6
KS
5274 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
5275 All uses changed.
5276
7d5c86e5
JB
52772003-02-12 Juanma Barranquero <lektu@terra.es>
5278
5279 * eval.c (Fdefmacro): Fix typo.
5280
295fff2c
KS
52812003-02-12 Kim F. Storm <storm@cua.dk>
5282
5283 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
5284 macro is a string, convert meta modifiers in string when copying
5285 the string into a vector.
5286
60f3202d
KS
52872003-02-11 Kim F. Storm <storm@cua.dk>
5288
5289 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
5290
61cb0b53
KH
52912003-02-11 Kenichi Handa <handa@m17n.org>
5292
5293 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
5294
7392e23c
KS
52952003-02-10 Kim F. Storm <storm@cua.dk>
5296
5297 * process.c: Doc fixes.
5298 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
5299
ce4254bd
KH
53002003-02-10 Kenichi Handa <handa@m17n.org>
5301
9c7a329a
KH
5302 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
5303
ce4254bd
KH
5304 * process.c (QCfilter_multibyte): New variable.
5305 (setup_process_coding_systems): New function.
e52bd6b7
SM
5306 (Fset_process_buffer, Fset_process_filter):
5307 Call setup_process_coding_systems.
ce4254bd
KH
5308 (Fstart_process): Initialize the member `filter_multibyte' of
5309 struct Lisp_Process.
5310 (create_process): Call setup_process_coding_systems.
5311 (Fmake_network_process): New keyward `:filter-multibyte'.
5312 Initialize the member `filter_multibyte' of struct Lisp_Process.
5313 Call setup_process_coding_systems.
5314 (server_accept_connection): Call setup_process_coding_systems.
5315 (read_process_output): If the process has a filter, decide the
5316 multibyteness of a string to given to the filter by
5317 `filter_multibyte' member of the process. If the process doesn't
5318 have a filter and the result of conversion is unibyte, use
5319 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
5320 multibyte form.
5321 (Fset_process_coding_system): Call setup_process_coding_systems.
5322 (Fset_process_filter_multibyte): New function.
5323 (Fprocess_filter_multibyte_p): New function.
5324 (syms_of_process): Intern and staticpro QCfilter_multibyte.
5325 Defsubr Sset_process_filter_multibyte and
5326 Sprocess_filter_multibyte_p.
5327
5328 * process.h (struct Lisp_Process): New member filter_multibyte.
5329
5330 * lisp.h (setup_process_coding_systems): Add prototype.
5331
5332 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
5333 process, update coding systems for the process.
5334
b08d5f59
KH
53352003-02-09 Kenichi Handa <handa@m17n.org>
5336
5337 * fns.c (string_to_multibyte): New function.
5338 (Fstring_to_multibyte): New function.
5339 (syms_of_fns): Defsubr it.
5340
0dfd93c0
AS
53412003-02-08 Andreas Schwab <schwab@suse.de>
5342
5343 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
5344 instead of the substitution.
5345
7b76ca1c
JD
53462003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5347
5348 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
5349
5350 * xmenu.c (menu_position_func): Adjust menu popup position so that
5351 the menu is fully visible.
7b76ca1c 5352
2436a4e4
JD
53532003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5354
5355 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
e52bd6b7
SM
5356 (x_make_frame_invisible, x_wm_set_icon_position):
5357 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
2436a4e4
JD
5358
5359 * xfns.c (x_set_name, x_set_title): Ditto.
5360
37d1e680
RS
53612003-02-04 Richard M. Stallman <rms@gnu.org>
5362
5363 * keyboard.c (echo_now): Update before_command_echo_length.
5364 (Freset_this_command_lengths): Reset this_command_key_count etc.
5365 immediately rather than arranging to do it later.
5366 (before_command_key_count_1, before_command_echo_length_1)
5367 (before_command_restore_flag): Vars deleted.
5368 (add_command_key): Don't handle before_command_restore_flag.
5369 (read_char, record_menu_key): Don't update before_command_key_count or
5370 before_command_echo_length.
5371 (read_char): Don't handle before_command_restore_flag.
5372
5373 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
5374 in direct-output clauses if it wouldn't be called in the ordinary case.
5375
578846a3
KS
53762003-02-04 Kim F. Storm <storm@cua.dk>
5377
5378 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
5379
49853a4d
JD
53802003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5381
5382 * gtkutil.c (remove_from_container): Copying list is not needed.
5383 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
5384 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
5385 on list returned from gtk_container_get_children to avoid memory leak.
5386
8b53dc06
JR
53872003-02-01 Jason Rumney <jasonr@gnu.org>
5388
5d54d177
JR
5389 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
5390 local malloc.
5391 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
5392 definitions in xpm.h.
5393 (init_xpm_functions): New function.
5394 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
5395 (init_external_image_libraries): Try to load libXpm.dll.
5396
8b53dc06
JR
5397 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
5398 timestamp.
5399
b222e415
DL
54002003-01-31 Dave Love <fx@gnu.org>
5401
5402 * syntax.c (Fskip_chars_forward)
5403 (open-paren-in-column-0-is-defun-start): Doc fix.
5404
c60ee5e7
JB
54052003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
5406
5407 * fileio.c: Support // at start of name for Cygwin (just added proper
5408 preprocessor tests).
5409
5410 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
5411
5412 * Makefile.in: Use @EXEEXT@ for Cygwin.
5413
5414 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
5415
5416 * s/cygwin.h: Added for Cygwin port.
5417
53b37591
JB
54182003-01-31 Juanma Barranquero <lektu@terra.es>
5419
5420 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
5421 when including gif_lib.h.
fe929957
JB
5422 (init_gif_functions, init_tiff_functions): New functions.
5423 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
5424 Windows. Disable color table lookups. Call library functions
53b37591 5425 through pointers determined at runtime.
fe929957
JB
5426 (init_external_image_libraries): Try to load libungif.dll and
5427 libtiff.dll.
53b37591 5428
45415a8f
KH
54292003-01-31 Kenichi Handa <handa@m17n.org>
5430
5431 * xdisp.c (SKIP_GLYPHS): New macro.
e52bd6b7 5432 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
45415a8f 5433
a97e4138
JD
54342003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5435
e52bd6b7 5436 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
a97e4138 5437
6eed9bed
DL
54382003-01-30 Dave Love <fx@gnu.org>
5439
5440 * alloc.c (Vgc_elapsed, gcs_done): New variables.
5441 (Fgarbage_collect): Use them.
5442 (init_alloc, syms_of_alloc): Set them up.
5443
100dcd40
JB
54442003-01-30 Juanma Barranquero <lektu@terra.es>
5445
5446 * w32fns.c (init_external_image_libraries): Add missing operator.
5447
fbd852af
JR
54482003-01-29 Jason Rumney <jasonr@gnu.org>
5449
5450 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
5451 an alternative name for jpeg.dll.
5452
8a2d8020
KH
54532003-01-29 Kenichi Handa <handa@m17n.org>
5454
5455 * xdisp.c (set_cursor_from_row): Pay attention to string display
5456 properties.
5457
058c18c7
AC
54582003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
5459
5460 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
5461 <escape>.
5462 (keycode_to_xkeysym_table): Reformat and add more comments.
5463 (XTread_socket): Drop special case for backspace.
5464
385f11cf
AC
54652003-01-28 Andrew Choi <akochoi@shaw.ca>
5466
5467 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
5468 values in old-style RGB specs.
5469
c922a224
JB
54702003-01-27 Juanma Barranquero <lektu@terra.es>
5471
5472 * w32fns.c (init_external_image_libraries): Try alternate names for the
5473 jpeg dll.
5474
0a1d6de0
JD
54752003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5476
5477 * gtkutil.c (create_dialog, xg_separator_p)
5478 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
5479 before calling strcmp or strlen.
5480
a97e4138 54812003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1d1885fc
JD
5482
5483 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
5484 and handle image load failure.
5485
28908312
JR
54862003-01-26 Jason Rumney <jasonr@gnu.org>
5487
5488 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
5489 New functions.
5490 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
5491 Disable color table lookups. Call jpeg library functions
5492 through pointers determined at runtime.
5493 (init_external_image_libraries): Try to load jpeg.dll.
5494
84e47416
RS
54952003-01-25 Richard M. Stallman <rms@gnu.org>
5496
5497 * lisp.h: Declare format2 instead of format1.
5498
5499 * fileio.c (barf_or_query_if_file_exists):
5500 Call format2 instead of format1.
5501
5502 * editfns.c (format2): New function, replaces format1
5503 but takes exactly two Lisp Objects as format args.
5504
5505 * buffer.c (Fkill_buffer): Call format2 instead of format1.
5506
a97e4138 55072003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1fcfb866
JD
5508
5509 * xterm.h: Change to return value of x_dispatch_event to int.
5510
5511 * xterm.c (x_filter_event): New function.
5512 (event_handler_gdk, XTread_socket): Call x_filter_event.
5513 (x_dispatch_event): Change to return value of finish.
5514 (event_handler_gdk): Use return value from x_dispatch_event.
5515
5516 * xfns.c (x_window): Call create_frame_xic for GTK version to
5517 initialize input methods.
5518
5519 * gtkutil.h: Add (void) prototypes.
5520
5521 * gtkutil.c (create_menus): Remove code that puts the help menu to
5522 the right.
5523
54eefef1
JR
55242003-01-25 Jason Rumney <jasonr@gnu.org>
5525
5526 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
5527 [HAVE_PNG]: Sync with xfns.c version.
5528 (png_load): Adjust colors for Windows. Use Windows
5529 bitmaps. Disable color table lookups.
c262430d
JR
5530 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
5531 (init_png_functions): New function.
5532 (png_read_from_memory, png_load): Call png library functions
5533 through pointers determined at runtime.
5534 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
5535 (init_external_image_libraries): New function.
5536 (init_xfns): Call it.
54eefef1 5537
1a9e275b
AS
55382003-01-24 Andreas Schwab <schwab@suse.de>
5539
5540 * minibuf.c (Fminibuffer_message): Verify type of parameter.
5541
a97e4138 55422003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
81e302ef
JD
5543
5544 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
5545 of static initializer.
5546
422eec7e
DL
55472003-01-24 Dave Love <fx@gnu.org>
5548
5549 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
5550 architectures.
5551
5552 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
5553 Use __alignof__.
5554
2a026b04
KH
55552003-01-24 Kenichi Handa <handa@m17n.org>
5556
5557 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
e52bd6b7 5558 It it is nonzero, don't pretend that an invisible area doesn't exist.
2a026b04
KH
5559 (command_loop_1): Call adjust_point_for_property with proper
5560 second arg.
5561
a18bb28d
JR
55622003-01-22 Jason Rumney <jasonr@gnu.org>
5563
5564 Sync changes with xterm.c and xfns.c.
5565
5566 * w32term.c (x_draw_glyph_string_foreground)
5567 (x_draw_composite_glyph_string_foreground): Implement overstriking.
5568
5569 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
5570 phys_cursor's hpos is overwritten. This is still not completely
5571 correct, as it doesn't really make sense to use hpos at all to
5572 get the cursor glyph (as that is relative to the width of the
5573 characters on the line, which may have changed during the update).
5574
5575 * w32term.c (notice_overwritten_cursor): Handle the special case
5576 of the cursor being in the first blank non-text line at the
5577 end of a window.
5578
5579 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
5580 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
5581 Compute from the x position returned by x_draw_glyphs.
5582
5583 (x_display_and_set_cursor): Don't set phys_cursor_width here,
5584 except for NO_CURSOR and system caret, to make phys_cursor_width
5585 contain what its name suggests.
5586 (notice_overwritten_cursor): Consider the cursor image erased if
5587 the output area intersects the cursor image in y-direction.
5588
6a097c0c
SM
5589 * w32term.c (note_mode_line_or_margin_highlight): Rename from
5590 note_mode_line_highlight and extend.
a18bb28d
JR
5591
5592 * w32term.c (last_window): New variable.
5593 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
5594 (note_mouse_movement): Remove reimplemented code in #if 0.
5595
5596 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
5597 not update_mode_lines, and always set it to 1.
5598
ac6e47ef
JR
55992003-01-21 Jason Rumney <jasonr@gnu.org>
5600
5601 * w32fns.c (IDC_HAND): Define it if system headers don't.
5602
56032003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
5604
5605 * w32term.h (struct w32_output): New member hand_cursor.
5606 (WM_EMACS_SETCURSOR): New message definition.
5607
5608 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
5609 function w32_define_cursor.
5610 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
5611 position, change member name output_data.x to output_data.w32 and
5612 add function w32_define_cursor.
5613 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
5614 and change member name output_data.x to output_data.w32.
e52bd6b7
SM
5615 (w32_initialize_display_info):
5616 Setup dpyinfo->vertical_scroll_bar_cursor.
ac6e47ef
JR
5617
5618 * w32fns.c (Vx_hand_shape): New variable.
5619 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
5620 WM_EMACS_SETCURSOR.
5621 (x-create-frame): Setup Cursor types.
5622
ceb39a17
JB
56232003-01-21 David Ponce <david@dponce.com>
5624
ac6e47ef
JR
5625 * w32term.c (w32_encode_char): For DIM=1 charset, set
5626 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
5627 x_encode_char change by Kenichi Handa <handa@m17n.org> on
ceb39a17 5628 2002-09-30.)
ac6e47ef
JR
5629 (w32_draw_relief_rect): Declare all args.
5630 (w32_define_cursor): New.
5631
5632 * w32fns.c (w32_load_cursor): New function.
5633 (w32_init_class): Use it.
5634 (x_put_x_image): Declare all args.
5635
46cf0bed
JB
56362003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
5637
5638 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
5639
a97e4138 56402003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e8794476
JD
5641
5642 * gtkutil.c: Must include stdio.h before termhooks.h
5643
83fc9c63
DL
56442003-01-21 Dave Love <fx@gnu.org>
5645
5646 * alloc.c (Fgc_status): Print zombie list.
5647 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
5648 Fix assignment of zombies.
5649 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
5650 Don't take car of non-cons.
5651
5652 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
5653
5654 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
5655
fe04b8c8
JR
56562003-01-20 David Ponce <david@dponce.com>
5657
5658 * w32menu.c (digest_single_submenu): Declare all args.
5659
5660 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
5661 changes in xmenu.c:
5662
5663 (parse_single_submenu): Use individual keymap's prompt
5664 string as pane name, if there is one.
5665 (set_frame_menubar): Save menu_items_n_panes from each call to
5666 parse_single_submenu and use it when calling digest_single_submenu.
5667
539e69a9
ST
56682003-01-20 Steven Tamm <steventamm@mac.com>
5669
5670 * macterm.c (XTread_socket): Checks for valid, visible window
5671 before sending a scroll-wheel event.
5672
675d000f
RS
56732003-01-20 Richard M. Stallman <rms@gnu.org>
5674
5675 * xdisp.c (redisplay_window): If mini window's buffer is not
5676 a minibuffer, then redisplay it like other windows.
5677
a97e4138 56782003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22174d10
JD
5679
5680 * gtkutil.c (xg_create_frame_widgets): Check if there is an
5681 external tool bar before setting tool bar height.
5682
048addec
JD
56832003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5684
5685 * xterm.c (handle_one_xevent): Surround popup_activated
5686 with #ifdef:s for non-toolkit version.
5687
5688 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
5689 (gtkutil.o): New file.
5690 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
5691 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
5692
5693 * gtkutil.c: New file for GTK version.
5694
5695 * gtkutil.h: New file for GTK version.
5696
5697 * xterm.h: Add xt_or_gtk_widget.
5698 Include gtk files for USE_GTK.
5699 (struct x_output): Add toolbar_height.
5700 (struct x_output): Add GTK widgets and Gdk size_hints.
5701 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
5702 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
5703 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
5704
5705 * xterm.c: Include gtkutil.h for USE_GTK.
5706 Declare extern void free_frame_menubar for USE_GTK.
5707 (note_mouse_highlight): Check popup_activated for USE_GTK.
5708 (xt_action_hook): Don't compile if USE_GTK.
5709 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
5710 (xg_scroll_callback): New function.
5711 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
5712 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
5713 for USE_GTK.
5714 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
5715 xg_show_scroll_bar for USE_GTK.
5716 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
5717 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
5718 (event_handler_gdk): New function for USE_GTK.
5719 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
5720 (handle_one_xevent): Make sure widget is mapped before
5721 calling x_real_positions for USE_GTK.
5722 (XTread_socket): Add GTK event loop for USE_GTK.
5723 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
5724 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
5725 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
5726 (x_iconify_frame): Add code for USE_GTK.
5727 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
5728 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
5729 is in gtkutil.c.
5730 (x_term_init): Add initialization for GTK.
5731 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
5732
5733 * xmenu.c: Include gtkutil.h for USE_GTK.
5734 (Fx_popup_menu): Use current position if x and y is NIL.
6bdb309a
SM
5735 (single_menu_item, single_menu_item, Fx_popup_dialog):
5736 Check for USE_GTK.
048addec
JD
5737 (popup_widget_loop): New function for USE_GTK.
5738 (x_activate_menubar): Add code for USE_GTK.
5739 (popup_activate_callback, popup_deactivate_callback)
6bdb309a
SM
5740 (menu_highlight_callback, menubar_selection_callback):
5741 Add USE_GTK versions.
048addec
JD
5742 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
5743 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
5744 (free_frame_menubar): Only compile if not USE_GTK. GTK version
5745 is in gtkutil.c.
5746 (popup_selection_callback): New version for USE_GTK.
5747 (create_and_show_popup_menu): New fuction, one USE_GTK version and
6bdb309a 5748 one USE_X_TOOLKIT version.
048addec
JD
5749 (xmenu_show): Call create_and_show_popup_menu.
5750 (dialog_selection_callback): New version for USE_GTK.
5751 (create_and_show_dialog): New fuction, one USE_GTK version and
6bdb309a 5752 one USE_X_TOOLKIT version.
048addec
JD
5753 (xdialog_show): Call create_and_show_dialog.
5754
5755 * xfns.c: Include gtkutil for USE_GTK.
5756 (x_window_to_frame, x_any_window_to_frame)
5757 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
5758 (x_top_window_to_frame): Add code for USE_GTK.
5759 (x_set_background_color): Call xg_set_background_color for GTK.
5760 (x_set_menu_bar_lines): Check for USE_GTK.
5761 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
5762 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
5763 (x_window): Call xg_create_frame_widgets for USE_GTK.
5764 (Fx_create_frame): Check for USE_GTK
5765 (Fx_file_dialog): New implementation for USE_GTK.
5766
5767 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
5768 (update_menu_bar): Add check for USE_GTK.
5769 (update_tool_bar): Add check for USE_GTK and external tool bar.
5770 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
5771 (redisplay_internal): Add check for USE_GTK and popup_activated.
5772 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
5773 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
5774 (display_menu_bar): Add check for USE_GTK
5775
5776 * lisp.h: Declare Vx_resource_name extern.
5777
a64387ee 5778 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
048addec
JD
5779 for USE_GTK.
5780 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
5781
5782 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
5783 (FRAME_EXTERNAL_TOOL_BAR): New macro.
5784 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
5785
5786 * fileio.c (Fread_file_name): Add check for USE_GTK.
5787
6bdb309a
SM
5788 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
5789 Add check for USE_GTK.
048addec
JD
5790
5791 * config.in: Added HAVE_GTK
5792
5793 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
5794
57952003-01-18 Stefan Monnier <monnier@cs.yale.edu>
5796
5797 * charset.h (Funibyte_char_to_multibyte): Export.
5798
57992003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5800
5801 * xmenu.c (mouse_position_for_popup): New function.
5802 (Fx_popup_menu): Call mouse_position_for_popup for X and
5803 mouse_position_hook for others.
5804
58052003-01-17 Kim F. Storm <storm@cua.dk>
5806
5807 * editfns.c (Finsert): Mention `string-make-multibyte' and
5808 `string-as-multibyte' in doc string.
5809
58102003-01-17 Kenichi Handa <handa@m17n.org>
5811
5812 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
3c02a6f5 5813
048addec
JD
5814 * editfns.c (Fformat): Convert an unibyte char argument that is
5815 formatted by "%c" to multibyte if the total result must be a
5816 multibyte string.
cd7df9c0 5817
048addec 58182003-01-16 Kim F. Storm <storm@cua.dk>
cd7df9c0 5819
048addec
JD
5820 * process.c (set-process-filter): Document unibyte/multibyte-ness
5821 of string argument.
56210ecd 5822
048addec 58232003-01-16 Kenichi Handa <handa@m17n.org>
56210ecd 5824
048addec 5825 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
56210ecd 5826
048addec
JD
5827 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
5828 (re_search_2): Likewise.
6df8b9fe 5829
048addec 58302003-01-15 Kenichi Handa <handa@m17n.org>
6df8b9fe 5831
048addec
JD
5832 * xdisp.c (message_dolog): Fix bug of the case that *Message*
5833 buffer is unibyte.
292ddc31 5834
048addec 58352003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
292ddc31 5836
048addec 5837 * fns.c (Fsubstring): Clarify doc string.
292ddc31 5838
048addec
JD
5839 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
5840 (Fprevious_char_property_change)
5841 (Fnext_single_char_property_change)
5842 (Fprevious_single_char_property_change, Fnext_property_change)
5843 (Fnext_single_property_change, Fprevious_property_change)
5844 (Fprevious_single_property_change, Fadd_text_properties)
5845 (Fput_text_property, Fset_text_properties)
5846 (Fremove_text_properties, Fremove_list_of_text_properties)
5847 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
63e4e4c6 5848
048addec 58492003-01-14 Kim F. Storm <storm@cua.dk>
63e4e4c6 5850
048addec
JD
5851 * process.h (struct Lisp_Process): New member plist replaces old
5852 member private_vars. All uses changed.
63e4e4c6 5853
048addec 5854 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
6bdb309a 5855 (QCplist): Rename from QCvars. Change all uses.
048addec 5856 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
6bdb309a 5857 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
048addec 5858 (syms_of_process): Intern, staticpro, defsubr these.
6bdb309a 5859 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7ed16567 5860
048addec 58612003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7ed16567 5862
6bdb309a 5863 * m/delta.h: Remove (obsolete).
e833850f 5864
048addec 58652003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
e833850f 5866
048addec
JD
5867 * fileio.c (Fdelete_directory, Fdelete_file): Document the
5868 behaviour in front of symlinks.
5869 (Fdelete_file): Raise an error on directories.
817cb127 5870
048addec 58712003-01-13 Dave Love <fx@gnu.org>
817cb127 5872
048addec 5873 * fns.c (Freverse): Use QUIT.
3e8cf2ea 5874
048addec 58752003-01-13 Richard M. Stallman <rms@gnu.org>
3e8cf2ea 5876
048addec
JD
5877 * minibuf.c (minibuffer_completion_contents):
5878 Error if point is inside prompt.
3e8cf2ea 5879
048addec
JD
5880 * keyboard.c (command_loop_1): Don't redisplay directly
5881 if there's a post-command-hook.
3e8cf2ea 5882
048addec
JD
5883 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
5884 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
2c10f029 5885
048addec 58862003-01-12 Kim F. Storm <storm@cua.dk>
94e8ffca 5887
048addec 5888 * process.h (struct Lisp_Process): New member private_vars.
94e8ffca 5889
048addec
JD
5890 * process.c (QCvars): New variable.
5891 (syms_of_process): Intern and staticpro it.
5892 (Fset_process_contact): Removed function.
5893 (Fprocess_variable, Fset_process_variable): New functions.
5894 (syms_of_process): Defsubr them.
5895 (Fstart_process): Initialize private_vars plist to nil.
5896 (Fmake_network_process): New arg :vars to setup the private
5897 variables for new network process.
5898 (server_accept_connection): Copy server's private variables to
5899 client process.
2c10f029 5900
048addec
JD
5901 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
5902 crashes). Code rewritten and simplified. Now directly aligns the
5903 pointer and recalculates pure_bytes_used, rather than aligning the
5904 size and adjusting the pointer.
b8a76c6c 5905
048addec 59062003-01-11 Kim F. Storm <storm@cua.dk>
b8a76c6c 5907
048addec
JD
5908 * process.c (Fset_process_contact): New function.
5909 (syms_of_process): defsubr it.
5910 (make-network-process): Update doc.
3a8d0899 5911
048addec 59122003-01-10 Andreas Schwab <schwab@suse.de>
3a8d0899 5913
048addec
JD
5914 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
5915 Reported by Berthold Gunreben <b.gunreben@web.de>.
4abc7470 5916
048addec 59172003-01-10 Dave Love <fx@gnu.org>
4abc7470 5918
048addec 5919 * composite.c (syms_of_composite): Make composition_hash_table weak.
b809d662 5920
048addec 59212003-01-09 Kim F. Storm <storm@cua.dk>
b809d662 5922
048addec
JD
5923 * process.c (Fmake_network_process): Convert new port number
5924 to host byte order for `:service t' case. From Mario Lang.
bf338245 5925
048addec 59262003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
bf338245 5927
048addec
JD
5928 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
5929 instead of XtAppProcessEvent.
bf338245 5930
048addec
JD
5931 * xterm.c (handle_one_xevent): New function.
5932 (x_dispatch_event): New function.
5933 (XTread_socket): Call handle_one_xevent.
bf338245 5934
048addec 5935 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
e833850f 5936
048addec
JD
5937 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
5938 call XQueryPointer to get coordinates.
5939 (popup_get_selection): Do not set popup_activated_flag to zero,
5940 let popup_deactivate_callback do that. Needed for Motif.
5941 Call x_dispatch_event instead of XtDispatchEvent.
5942 (xmenu_show): Calculate root coordinate from frame top/left position.
c4af2bce 5943
048addec 59442003-01-08 Kim F. Storm <storm@cua.dk>
c4af2bce 5945
6bdb309a 5946 * process.c (server_accept_connection): Fix recording of new
048addec
JD
5947 connection's local address in :local property of contact info.
5948 (Fmake_network_process): Record local network address for new
5949 client processes in :local property of contact info.
6bdb309a 5950 (format-network-address): Add arg OMIT-PORT. Change callers.
00e3ab56 5951
048addec 59522003-01-07 Dave Love <fx@gnu.org>
00e3ab56 5953
048addec 5954 * Makefile.in (fns.o): Depend on coding.h.
f387e1fd 5955
048addec 59562003-01-07 Markus Rost <rost@math.ohio-state.edu>
f387e1fd 5957
048addec 5958 * minibuf.c (Fread_variable): Doc fix.
f387e1fd 5959
048addec
JD
5960 * eval.c (Fuser_variable_p): Doc change. For custom variables,
5961 use the same test as for custom-variable-p.
8c6d74c6 5962
048addec 59632003-01-05 Richard M. Stallman <rms@gnu.org>
e833850f 5964
048addec
JD
5965 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
5966 Count LAST_LINE_MISFIT in scroll margin for end of window.
5967 Move label too_near_end before setting SCROLL_MARGIN_POS.
5968 Set LAST_LINE_MISFIT before jumping there.
8c6d74c6 5969
048addec
JD
5970 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
5971 scroll_conservatively case. If scrolling that much doesn't change
5972 STARTP, move it down one line.
e833850f 5973
048addec
JD
5974 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
5975 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8c6d74c6 5976
048addec
JD
5977 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
5978 selected frame.
8c6d74c6 5979
048addec
JD
5980 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
5981 (syms_of_keymap): staticpro them.
5982 (Fapropos_internal): Initialize them and clear them out.
5983 Don't GCPRO them.
8c6d74c6 5984
048addec
JD
5985 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
5986 Doc fixes.
8c6d74c6 5987
048addec
JD
5988 * lisp.h: New misc type Lisp_Save_Value.
5989 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
5990 (XSAVE_VALUE): New macro.
5991 (struct Lisp_Save_Value): New data type.
5992 (union Lisp_Misc): Add u_save_value alternative.
5993 (make_save_value): Declared.
8c6d74c6 5994
048addec 5995 * alloc.c (make_save_value): New function.
8c6d74c6 5996
048addec
JD
5997 * xterm.c (x_catch_errors): Save dpy using make_save_value.
5998 (x_catch_errors_unwind): Call XSync.
8c6d74c6 5999
048addec 60002003-01-01 Richard M. Stallman <rms@gnu.org>
8c6d74c6 6001
048addec 6002 * window.c (window_scroll_pixel_based): Partially undo last change.
8c6d74c6 6003
048addec
JD
6004 * keyboard.c (command_loop_1): Call adjust_point_for_property
6005 in direct action cases for Qforward_char and Qbackward_char.
6006 Set already_adjusted so it won't be done twice.
8c6d74c6 6007
048addec 60082002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
8c6d74c6 6009
048addec
JD
6010 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
6011 type definition of size_t.
8c609cff 6012
048addec 60132003-01-02 Steven Tamm <steventamm@mac.com>
8c609cff 6014
048addec
JD
6015 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
6016 distinguish Carbon GUI builds from X11 builds on darwin.
b37113a1 6017
048addec 60182002-12-30 Steven Tamm <steventamm@mac.com>
b37113a1 6019
048addec
JD
6020 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
6021 to default to t.
fa634a5e 6022
048addec 60232002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
fa634a5e 6024
048addec 6025 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
ce0669d4 6026
048addec 60272002-12-28 Steven Tamm <steventamm@mac.com>
ce0669d4 6028
048addec
JD
6029 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
6030 allow building in a different directory than source. Uses some
6031 GNU Make extensions, but there is no other make on Mac OS X.
2308af15 6032
048addec 60332002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
2308af15 6034
048addec
JD
6035 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
6036 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
6037 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
6038 (Fstring_to_number): Mention the returned value in the doc strings.
2155ecf3 6039
048addec 60402002-12-23 Richard M. Stallman <rms@gnu.org>
2155ecf3 6041
048addec
JD
6042 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
6043 <scroll-down-aggressively>: Doc fix.
2155ecf3 6044
048addec
JD
6045 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
6046 string as pane name, if there is one.
6047 (set_frame_menubar): Save menu_items_n_panes from each call to
6048 parse_single_submenu and use it when calling digest_single_submenu.
2155ecf3 6049
048addec
JD
6050 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
6051 Don't try to make last line fully visible if it is past end of window.
61f1d295 6052
048addec 60532002-12-22 Steven Tamm <steventamm@mac.com>
61f1d295 6054
048addec
JD
6055 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
6056 (mac_menu_show): Add support for hierarchical popup menus.
6057 (add_menu_item): Remove indentation support.
6058 (fill_submenu, fill_menu): Create hierarchical menus
6059 instead of using indentation.
0b17a217 6060
048addec 60612002-12-22 Richard M. Stallman <rms@gnu.org>
0b17a217 6062
048addec
JD
6063 * xdisp.c (try_cursor_movement): Don't call try_window here.
6064 (redisplay_window): Never redisplay minibuffer when inactive.
0b17a217 6065
048addec 6066 * window.c (select_window_1): Undo 9/21 change.
402e4f8b 6067
048addec 60682002-12-22 Steven Tamm <steventamm@mac.com>
402e4f8b 6069
048addec
JD
6070 * macterm.c (XTread_socket): Call KeyTranslate for control and
6071 meta to deal correctly shifted non-alpha characters, like C-S-5
6072 being treated like C-%. Does not look for shift key to deal
6073 with masking off control-key with mac-reverse-ctrl-meta.
f02cac82 6074
048addec 60752002-12-21 Richard M. Stallman <rms@gnu.org>
f02cac82 6076
048addec
JD
6077 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
6078 If it is non-nil, run timers. Use an unwind-protect to requeue
6079 the events that were read ahead.
6080 (popup_get_selection_unwind): New subroutine.
6081 (popup_get_selection_queue): File-scope variable now holds that queue.
6082 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
6083 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
6084 Use an unwind-protect to pop down the dialog box.
6085 (xdialog_show_unwind): New subroutine implements that.
f02cac82 6086
048addec
JD
6087 * xdisp.c (row_containing_pos): Change exit test using last_y.
6088 (try_window_id): Abort if row_containing_pos returns null.
f02cac82 6089
048addec
JD
6090 * lread.c (load_error_handler): New function.
6091 (Fload): Handle errors in Fsubstitute_in_file_name.
6092 Don't expect Fsignal to return.
f02cac82 6093
048addec
JD
6094 * eval.c: Errors and throws work right with interrupt blocking.
6095 (struct catchtag): New elt interrupt_input_blocked.
6096 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
6097 (internal_catch, Fcondition_case, internal_condition_case)
6098 (internal_condition_case_1, internal_condition_case_2): Save it.
6099 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
f02cac82 6100
048addec 6101 * editfns.c (Fformat): Add parens.
f02cac82 6102
048addec
JD
6103 * dired.c (file_name_completion): Fix that change.
6104 Delete special quit-handling code; just use QUIT.
f02cac82 6105
048addec 61062002-12-21 Tak Ota <Takaaki.Ota@am.sony.com> (tiny change)
f02cac82 6107
048addec
JD
6108 * dired.c (file_name_completion): Close directory on error
6109 just as in directory_files_internal.
1a590729 6110
048addec 61112002-12-19 David Kastrup <David.Kastrup@t-online.de>
1a590729 6112
048addec
JD
6113 * window.c (Fset_window_configuration): Set old_point to correct
6114 value when new_current_buffer == current_buffer.
f02cac82 6115
048addec 61162002-12-17 Ben Key <bkey1@tampabay.rr.com>
2308af15 6117
048addec
JD
6118 Revisited my earlier fix for the following entry in etc/PROBLEMS:
6119 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
6120 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9785d95b 6121
048addec
JD
6122 These changes were in part based upon suggestions made by Peter
6123 'Luna' Runestig [peter@runestig.com].
9785d95b 6124
048addec
JD
6125 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
6126 g_b_init_get_token_information, g_b_init_lookup_account_sid,
6bdb309a 6127 g_b_init_get_sid_identifier_authority ): Add several static
048addec 6128 global variables.
9785d95b 6129
048addec
JD
6130 * w32.c (globals_of_w32): New function. Used to initialize those
6131 global variables that must always be initialized on startup even
6132 when the global variable initialized is non zero. Its primary
6133 purpose at this time is to set the global variables
6134 g_b_init_is_windows_9x, g_b_init_open_process_token,
6135 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
6136 g_b_init_get_sid_identifier_authority to 0 on startup.
6137 Called from main.
9785d95b 6138
048addec
JD
6139 * w32.c (is_windows_9x): Perform initialization only if
6140 g_b_init_is_windows_9x is equal to 0. On initialization set
6141 g_b_init_is_windows_9x equal to 1.
2308af15 6142
048addec
JD
6143 * w32.c (open_process_token): Perform initialization only if
6144 g_b_init_open_process_token is equal to 0. On initialization set
6145 g_b_init_open_process_token equal to 1.
2308af15 6146
048addec
JD
6147 * w32.c (get_token_information): Perform initialization only if
6148 g_b_init_get_token_information is equal to 0. On initialization
6149 set g_b_init_get_token_information equal to 1.
9785d95b 6150
048addec
JD
6151 * w32.c (lookup_account_sid): Perform initialization only if
6152 g_b_init_lookup_account_sid is equal to 0. On initialization
6153 set g_b_init_lookup_account_sid equal to 1.
9785d95b 6154
048addec
JD
6155 * w32.c (get_sid_identifier_authority): Perform initialization
6156 only if g_b_init_get_sid_identifier_authority is equal to 0.
6157 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
9785d95b 6158
048addec
JD
6159 * w32fns.c (globals_of_w32fns): New function. Used to initialize
6160 those global variables that must always be initialized on startup
6161 even when the global variable initialized is non zero.
6162 Its primary purpose at this time is to initialize the global variable
6163 track_mouse_event_fn.
9785d95b 6164
a64387ee 6165 * w32fns.c (w32_wnd_proc): Remove initialization of
048addec 6166 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
9785d95b 6167
048addec 6168 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
9785d95b 6169
a64387ee 6170 * w32menu.c (globals_of_w32menu): New function. Used to
048addec
JD
6171 initialize those global variables that must always be initialized
6172 on startup even when the global variable initialized is non zero.
6173 Its primary purpose at this time is to initialize the global
6174 variables get_menu_item_info and set_menu_item_info.
9785d95b 6175
048addec
JD
6176 * w32menu.c (initialize_frame_menubar): Remove initialization of
6177 get_menu_item_info and set_menu_item_info.
9785d95b 6178
048addec 6179 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
9785d95b 6180
048addec
JD
6181 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
6182 Declare them.
9785d95b 6183
048addec
JD
6184 * emacs.c (main): Call globals_of_w32 prior to calling
6185 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
6186 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
6187 is defined.
9785d95b 6188
048addec
JD
6189 * w32term.c (x_update_window_begin): Fix Windows API error
6190 detected by BoundsChecker. Test to determine if
6191 w32_system_caret_hwnd is NULL prior to attempting to use
6192 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
2308af15 6193
048addec
JD
6194 * w32term.c (x_update_window_end): Fix Windows API error
6195 detected by BoundsChecker. Test to determine if
6196 w32_system_caret_hwnd is NULL prior to attempting to use
6197 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
b6da19ef 6198
048addec 61992002-12-17 Kenichi Handa <handa@m17n.org>
b6da19ef 6200
048addec
JD
6201 * coding.c (coding_system_require_warning): New variable.
6202 (syms_of_coding): DEFVAR it.
b6da19ef 6203
048addec 6204 * coding.h (coding_system_require_warning): Extern it.
b6da19ef 6205
048addec
JD
6206 * fileio.c (choose_write_coding_system): Even if
6207 Vcoding_system_for_write is non-nil, if
6208 coding_system_require_warning is nonzero, call
6209 Vselect_safe_coding_system_function.
bfcf6dbe 6210
048addec 62112002-12-17 Markus Rost <rost@math.ohio-state.edu>
bfcf6dbe 6212
048addec
JD
6213 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
6214 (lisp): Add font-core.
2c568af5 6215
048addec 62162002-12-13 Stefan Monnier <monnier@cs.yale.edu>
2c568af5 6217
048addec
JD
6218 * textprop.c (text_read_only): New arg `propval'.
6219 (get_char_property_and_overlay): Remove unused var `next_overlay'.
6220 (verify_interval_modification): Use text_read_only's new arg.
b8c6225c 6221
048addec 62222002-12-13 Kenichi Handa <handa@m17n.org>
b8c6225c 6223
048addec 6224 * coding.c (Funencodable_char_position): Set pend correctly.
706ddb8f 6225
048addec 62262002-12-12 Jason Rumney <jasonr@gnu.org>
706ddb8f 6227
048addec
JD
6228 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
6229 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
6230 Be more careful about when help_events are generated.
96720f09 6231
048addec 62322002-12-12 Steven Tamm <steventamm@mac.com>
96720f09 6233
048addec
JD
6234 * macterm.c (mac_check_for_quit_char): Correctly set the
6235 modifiers of the event to 0.
6236 * mac.c (sys_select): Duplicate rfds before calling select to
6237 ensure that rfds survive the while loop.
e5ae1c49 6238
048addec 62392002-12-11 Kim F. Storm <storm@cua.dk>
e5ae1c49 6240
048addec
JD
6241 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
6242 row_containing_pos returned NULL.
2eb46b2d 6243
048addec 62442002-12-10 Steven Tamm <steventamm@mac.com>
2eb46b2d 6245
6bdb309a 6246 * mac.c (sys_read): Fix sys_read to not call select if IO is
048addec 6247 non-blocking.
6bdb309a 6248 (sys_select): Fix sys_select to not use a timeout larger than
048addec 6249 the one given.
b11f1d8a 6250
048addec 62512002-12-10 Juanma Barranquero <lektu@terra.es>
b11f1d8a 6252
048addec 6253 * editfns.c (Fformat): Use alloca, not _alloca.
d8528226 6254
048addec 62552002-12-09 Richard M. Stallman <rms@gnu.org>
d8528226 6256
048addec
JD
6257 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
6258 as the last thing.
a4ac5b17 6259
048addec 62602002-12-09 Dave Love <fx@gnu.org>
a4ac5b17 6261
048addec 6262 * s/sol2-8.h: Removed. (Not necessary.)
ac42d7b9 6263
048addec 62642002-12-09 Matthew Swift <swift@alum.mit.edu>
ac42d7b9 6265
048addec
JD
6266 * editfns.c (Fformat): Handle precision in string conversion
6267 specifiers like libc functions do (ie, print at most that many
6268 characters).
85cce843 6269
048addec 62702002-12-08 Richard M. Stallman <rms@gnu.org>
85cce843 6271
048addec
JD
6272 * xdisp.c (row_containing_pos): Check more carefully
6273 whether charpos is really in the row before returning it.
0d4d26a7 6274
048addec 62752002-12-07 Steven Tamm <steventamm@mac.com>
0d4d26a7 6276
048addec 6277 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
b11f1d8a 6278
048addec
JD
6279 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
6280 each stack frame. This may change as it could be time consuming.
0d4d26a7 6281
048addec
JD
6282 * macterm.c (mac_check_for_quit_char, quit_char_comp)
6283 (init_quit_char_handler, mac_determine_quit_char_modifiers)
6bdb309a 6284 (mac_initialize): Add code to check for pressing of quit_char
048addec 6285 in the OS event queue.
b11f1d8a 6286
048addec
JD
6287 * mac.c (sys_select): Call mac_check_for_quit_char every second
6288 while blocking on select.
0d4d26a7 6289
048addec
JD
6290 * mac.c (sys_read): Use sys_select to test for input first
6291 before calling read, to allow C-g to break.
9252f7bc 6292
048addec 62932002-12-07 Richard M. Stallman <rms@gnu.org>
9252f7bc 6294
048addec 6295 * minibuf.c (Fcompleting_read): Doc fix.
9252f7bc 6296
048addec 6297 * lread.c (syms_of_lread) <load-history>: Doc fix.
9252f7bc 6298
048addec 6299 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9252f7bc 6300
048addec
JD
6301 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
6302 autoload.
9252f7bc 6303
048addec 6304 * data.c (Fdefalias): Record in load-history redefining an autoload.
9252f7bc 6305
048addec 6306 * alloca.c: Undo ifdef change accidentally made on 12-04.
bfa261c0 6307
048addec 63082002-12-06 Francesco Potorti` <pot@gnu.org>
bfa261c0 6309
048addec 6310 * xfns.c (png_load): Avoid double gamma correction for PNG images.
c5992177 6311
048addec 63122002-12-04 Richard M. Stallman <rms@gnu.org>
c5992177 6313
048addec 6314 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 6315
048addec 6316 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 6317
048addec 6318 * alloca.c: Don't use #error.
02d588e2 6319
048addec 63202002-12-03 Dave Love <fx@gnu.org>
02d588e2 6321
048addec
JD
6322 * buffer.c (Qucs_set_table_for_input): New.
6323 (Fget_buffer_create): Use it.
6324 (Qset_buffer_major_mode_hook): Deleted.
6325 (Fset_buffer_major_mode): Revert previous change.
6326 (init_buffer_once): Intern ucs-set-table-for-input.
6327 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
6328 Add &Qucs_set_table_for_input.
451e2697 6329
048addec 63302002-12-03 Andreas Schwab <schwab@suse.de>
451e2697 6331
048addec
JD
6332 * callint.c (Fcall_interactively): Use next_event only if less
6333 than key_count.
72742a99 6334
048addec 63352002-12-02 Andrew Choi <akochoi@shaw.ca>
72742a99 6336
048addec
JD
6337 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
6338 names to 255 characters.
72742a99 6339
048addec
JD
6340 * macterm.c (XTread_socket): If all frames have been collapsed,
6341 expand the first one before handling drag-and-drop events.
72742a99 6342
048addec
JD
6343 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
6344 which is detected by autoconf.
40e6ff95 6345
048addec 63462002-12-01 Steven Tamm <steventamm@mac.com>
40e6ff95 6347
048addec
JD
6348 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
6349 offset in two hints table to allow prebinding to be redone and
6350 allow the executable to be stripped.
c02138c6 6351
048addec 63522002-11-29 Dave Love <fx@gnu.org>
c02138c6 6353
048addec
JD
6354 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
6355 already provided.
0e47bbf7 6356
048addec 63572002-11-29 Richard M. Stallman <rms@gnu.org>
0e47bbf7 6358
048addec
JD
6359 * xdisp.c (start_display): Check more intelligently for
6360 whether the line is continued.
6361 (move_it_vertically_backward): Clear it->continuation_lines_width.
44129dcb 6362
048addec 63632002-11-28 Dave Love <fx@gnu.org>
44129dcb 6364
048addec
JD
6365 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
6366 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
f707342d 6367
048addec 63682002-11-27 Steven Tamm <steventamm@mac.com>
f707342d 6369
048addec
JD
6370 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
6371 more descriptive error output from lread.c:Fload upon most require
6372 cycles during boostrapping.
1637fd2c 6373
048addec 63742002-11-27 Jason Rumney <jasonr@gnu.org>
1637fd2c 6375
048addec
JD
6376 * fileio.c (Finsert_file_contents): Give a more appropriate error
6377 for files bigger than 2Gb when off_t is 32 bit.
1637fd2c 6378
048addec
JD
6379 * dired.c (Ffile_attributes): Don't return negative file sizes for
6380 files bigger than 2Gb when off_t is 32 bit.
540c2788 6381
048addec 63822002-11-27 Dave Love <fx@gnu.org>
6b2fd6ea 6383
048addec 6384 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6b2fd6ea 6385
048addec
JD
6386 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
6387 Test GETPGRP_VOID instead.
6388 [BSD_TERMIOS]: Remove definitions (never used).
6b2fd6ea 6389
048addec
JD
6390 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
6391 Don't define.
6392 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
540c2788 6393
048addec 6394 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8cc03716 6395
048addec 63962002-11-25 Jason Rumney <jasonr@gnu.org>
8cc03716 6397
048addec
JD
6398 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
6399 supported.
4042a81a 6400
048addec 64012002-11-25 Dave Love <fx@gnu.org>
4042a81a 6402
048addec 6403 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
4042a81a 6404
048addec 6405 * Makefile.in (TEMACS_LDFLAGS): Update last change.
be4ee72f 6406
048addec 64072002-11-25 Andreas Schwab <schwab@suse.de>
be4ee72f 6408
048addec 6409 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
82122254 6410
048addec 64112002-11-24 Steven Tamm <steventamm@mac.com>
82122254 6412
048addec
JD
6413 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
6414 determine the size of pointers alloced in unexed space instead
6415 of using possibly invalid emacs_zone pointers. This fixes the
6416 binary incompatibility problems caused by updates to libSystem.B.
c1ee53bc 6417
048addec 64182002-11-24 Richard M. Stallman <rms@gnu.org>
c1ee53bc 6419
048addec 6420 * search.c (Fstring_match): Doc fix.
c1ee53bc 6421
048addec
JD
6422 * callint.c (Fcall_interactively): If a command fails because
6423 `*' detects a read-only buffer, but RECORD_FLAG is set,
6424 record it anyway if the args don't actually do tty input.
5598c32e 6425
048addec 64262002-11-22 Dave Love <fx@gnu.org>
5598c32e 6427
048addec 6428 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
5598c32e 6429
048addec
JD
6430 * keyboard.c (interrupt_signal): Provide forward declaration.
6431 (kbd_buffer_store_event): Don't declare interrupt_signal.
5598c32e 6432
048addec 6433 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
97b14e22 6434
048addec 64352002-11-21 Richard M. Stallman <rms@gnu.org>
97b14e22 6436
048addec
JD
6437 * eval.c (interactive_p): Skip any number of bytecode
6438 and special form frames, in any order.
516eea8e 6439
048addec 64402002-11-20 Jason Rumney <jasonr@gnu.org>
516eea8e 6441
048addec
JD
6442 * w32fns.c (convert_mono_to_color_image): New function.
6443 (xbm_load, xbm_load_image): Use it when foreground or background
6444 is explicitly set.
04dbfa08 6445
048addec 64462002-11-19 Dave Love <fx@gnu.org>
04dbfa08 6447
048addec 6448 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
b4aebae3 6449
048addec 64502002-11-18 Jason Rumney <jasonr@gnu.org>
b4aebae3 6451
048addec
JD
6452 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
6453 (XPutPixel): Swap blue and red.
6454 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
6455 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
6456 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
6457 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
1998560a 6458
048addec 64592002-11-18 Dave Love <fx@gnu.org>
d824beee 6460
048addec 6461 * m/orion105.h (HAVE_ALLOCA): Don't define.
d824beee 6462
048addec 6463 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
d824beee 6464
048addec 6465 * m/intel386.h: Don't include alloca.h or define alloca.
d824beee 6466
048addec
JD
6467 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
6468 malloc, realloc, calloc.
d824beee 6469
048addec
JD
6470 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
6471 (bcmp): Don't define.
d824beee 6472
048addec 6473 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
d824beee 6474
048addec 6475 * m/amdahl.h: Don't define LIB_STANDARD.
d824beee 6476
048addec 6477 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
d824beee 6478
048addec 6479 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
d824beee 6480
048addec
JD
6481 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
6482 Don't include alloca.h.
d824beee 6483
048addec 6484 * s/aix3-2.h (HAVE_FSYNC): Don't define.
1998560a 6485
048addec 6486 * regex.c (_GNU_SOURCE): Don't define.
1998560a 6487
048addec 6488 * process.c (_GNU_SOURCE): Don't define.
1998560a 6489
048addec 6490 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8704a6ab 6491
048addec 64922002-11-18 Markus Rost <rost@math.ohio-state.edu>
8704a6ab 6493
048addec 6494 * s/sol2-8.h: Include sol2-6.h.
6ae2cd57 6495
048addec 64962002-11-18 Miles Bader <miles@gnu.org>
6ae2cd57 6497
048addec
JD
6498 * dispextern.h (struct face): Add `overstrike' field.
6499 * xterm.c (x_draw_glyph_string_foreground)
6500 (x_draw_composite_glyph_string_foreground): Implement overstriking.
6501 * xfaces.c (load_face_font): Set `face->overstrike' based on
6502 result from choose_face_font.
6503 (best_matching_font, choose_face_font): Add `needs_overstrike'
6504 argument, and use it to return whether overstriking is desirable
6505 for this face/font combo.
6506 (set_font_frame_param: Pass new argument to choose_face_font.
6ae2cd57 6507
048addec 65082002-11-17 Ben Key <BKey1@tampabay.rr.com>
3582b6a3 6509
048addec
JD
6510 This change is my fix for the following entry in etc/PROBLEMS:
6511 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
6512 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
f60ae425 6513
048addec
JD
6514 * w32.c: Added wrapper functions around the win32 API functions
6515 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
6516 GetSidIdentifierAuthority. These wrapper functions serve two
6517 purposes:
6518 1. They ensure that the wrapped function can never be called
6519 when Emacs is running on an operating system on which they are
6520 not supported (Microsoft Windows 95 / 98 / ME).
6521 2. They call the wrapped functions via function pointers rather
6522 than calling them directly. This avoids taking advantage of the
6523 undocumented fact that although these functions are not supported
6524 in the 9x branch of Microsoft Windows, the functions do exist in
6525 the version of advapi32.dll that is found in the 9x branch of
6526 Microsoft Windows.
f60ae425 6527
6bdb309a 6528 * w32.c (init_user_info): Replace the calls to the win32 API
048addec
JD
6529 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
6530 and GetSidIdentifierAuthority with calls to the newly added
6531 wrapper functions.
f60ae425 6532
048addec
JD
6533 * w32.h: Added extern declarations for the following functions:
6534 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
6535 syms_of_w32menu, and void syms_of_fontset.
f60ae425 6536
6bdb309a 6537 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
048addec
JD
6538 function pointer track_mouse_event_fn in the handler for the
6539 WM_SETFOCUS message.
3582b6a3 6540
6bdb309a 6541 * w32menu.c (initialize_frame_menubar): Add code to
048addec
JD
6542 reinitialize the function pointers set_menu_item_info and
6543 get_menu_item_info.
f60ae425 6544
048addec 65452002-11-17 Ben Key <BKey1@tampabay.rr.com>
f60ae425 6546
048addec
JD
6547 * sound.c: Added a partial implementation of play-sound-internal
6548 for Microsoft Windows. Added various #ifdef / #else / #endif
6549 code blocks to separate the code that will compile under
6550 Microsoft Windows from the code that is specific to Gnu/Linux.
6551 Moved several blocks of code around to make this separation of code
6552 into Windows compatible and Gnu/Linux compatible code blocks easier.
f60ae425 6553
048addec 6554 * makefile.w32-in: Include sound.c and link with WinMM.lib.
a0f0878d 6555
048addec
JD
6556 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
6557 added support for play-sound-internal under Windows would be
6558 included in the build of Emacs.
517f42a0 6559
048addec 65602002-11-16 Jason Rumney <jasonr@gnu.org>
517f42a0 6561
048addec 6562 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
517f42a0 6563
048addec 6564 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
a0f0878d 6565
048addec 65662002-11-15 Stefan Monnier <monnier@cs.yale.edu>
a0f0878d 6567
048addec
JD
6568 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
6569 (adjust_point_for_property): Move out of display and invisible even if
6570 we were already inside before (in case a property was added while
6571 we weren't looking). Be more careful when handling invisible props.
6572 Skip invisible text as if it really wasn't there at all.
aab83f91 6573
048addec 65742002-11-15 Jason Rumney <jasonr@gnu.org>
aab83f91 6575
048addec
JD
6576 * w32term.c (x_draw_image_foreground)
6577 (w32_draw_image_foreground_1): Use standard copy and invert
6578 operations to draw images.
aab83f91 6579
048addec
JD
6580 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
6581 depth of 1.
6582 (xbm_read_bitmap_data): Invert bits as xbm is read in.
6583 (XPutPixel): Don't invert bits here.
a4478a76 6584
048addec 65852002-11-15 Jason Rumney <jasonr@gnu.org>
a4478a76 6586
048addec
JD
6587 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
6588 (w32_draw_image_foreground_1): Handle image masks.
6589 (x_draw_image_glyph_string): Don't BitBlt transparently.
a4478a76 6590
048addec
JD
6591 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
6592 (x_from_xcolors): Adjust RGB values for W32.
6593 (image_background, image_background_transparent)
6594 (postprocess_image, x_to_xcolors, x_disable_image)
6595 (x_build_heuristic_mask): Adapt for W32 and enable.
6596 (x_create_x_image_and_pixmap): Mark images with palettes as such.
6597 (xbm_load): Remove unused variable.
03670a65 6598
048addec 65992002-11-14 Richard M. Stallman <rms@gnu.org>
03670a65 6600
048addec 6601 * buffer.c (syms_of_buffer): Doc fix.
59daa29a 6602
048addec 66032002-11-14 Dave Love <fx@gnu.org>
59daa29a 6604
048addec 6605 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
59daa29a 6606
048addec
JD
6607 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
6608 * xmenu.c (unuse_menu_items, digest_single_submenu):
6609 * xfns.c (x_put_x_image):
6610 * xdisp.c (message2_nolog, set_message):
6611 * undo.c (record_point):
6612 * terminfo.c (tparam):
6613 * syntax.c (scan_sexps_forward):
6614 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
6615 * composite.c (update_compositions):
6616 * cm.c (calccost, cmgoto):
6617 * charset.c (c_string_width): Declare all args (per C99).
59daa29a 6618
048addec 6619 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
59daa29a 6620
048addec
JD
6621 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
6622 Don't declare.
59daa29a 6623
048addec 6624 * emacs.c (main) [!VMS]: Avoid third arg.
59daa29a 6625
048addec
JD
6626 * fns.c (Fcopy_sequence): Doc fix.
6627 (Fmap_char_table): Cast `call2'.
3947677c 6628
048addec
JD
66292002-11-14 Francesco Potorti` <pot@gnu.org>
6630
6631 * s/sol2-8.h: New file.
6632
66332002-11-14 Kim F. Storm <storm@cua.dk>
6634
6635 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
6636 dependency on `risky-local-variable' and the :propertize form.
6637
66382002-11-12 Stefan Monnier <monnier@cs.yale.edu>
6639
6640 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
6641
6642 * syntax.c (scan_sexps_forward): Undo last patch.
6643 Use a more obvious fix: check eob before updating the syntax table.
6644
66452002-11-09 Stefan Monnier <monnier@cs.yale.edu>
6646
6647 * syntax.c (scan_sexps_forward): Update syntax table before reading
6648 a char rather than after so we don't update the table past eob.
6649
66502002-11-09 Dave Love <fx@gnu.org>
6651
6652 * buffer.c (Fset_buffer_major_mode): Fix last change.
6653
6654 * regex.c (regexec): Fix pmatch declaration.
6655
6656 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
6657
6658 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
6659 to self-inserting characters.
6660 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
6661
6662 * coding.c (Vtranslation_table_for_input): New.
6663 (syms_of_coding): DEFVAR it.
6664
66652002-11-08 Juanma Barranquero <lektu@terra.es>
6666
6667 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
6668 window.
6669
66702002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6671
6bdb309a 6672 * process.c (Fformat_network_address): Remove unused locals p,
048addec
JD
6673 cp, and i.
6674
66752002-11-06 Dave Love <fx@gnu.org>
6676
6677 * buffer.c (Qset_buffer_major_mode_hook): New.
6678 (Fset_buffer_major_mode): Use it.
6679
66802002-11-06 Richard M. Stallman <rms@gnu.org>
6681
6682 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
6683 and stop_polling.
6684
6685 * process.c (wait_reading_process_input):
6686 Test POLLING_PROBLEM_IN_SELECT, not hpux.
6687 Avoid initialization for auto Lisp_Object var.
6688
6689 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
6690
6691 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
6692
66932002-11-05 Richard M. Stallman <rms@gnu.org>
6694
6695 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
6696
6697 * callint.c (Fcall_interactively): New local filter_specs.
6698 (Fcall_interactively): Check for progn as well as let.
6699 Add a gcpro.
6700 (Qprogn): New variable.
6701 (syms_of_callint): Staticpro and init Qprogn.
6702
67032002-11-04 John Paul Wallington <jpw@shootybangbang.com>
6704
6705 * lread.c (Feval_buffer): Doc fix.
6706
67072002-11-04 Dave Love <fx@gnu.org>
6708
6709 * keyboard.c (read_char): Always translate iff
6710 Vkeyboard_translate_table is a char table and c is valid.
6711
6712 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
6713 and fix C types.
6714
67152002-11-03 Stefan Monnier <monnier@cs.yale.edu>
6716
6717 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
6718
6719 * editfns.c (get_pos_property): Don't hardcode Qfield.
6720
6721 * keyboard.c (adjust_point_for_property): Handle `display' prop on
6722 overlays. Also handle `invisible' prop.
6723
67242002-11-02 Stefan Monnier <monnier@cs.yale.edu>
6725
6726 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
6727 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
6728
67292002-11-01 Andreas Schwab <schwab@suse.de>
6730
6731 * editfns.c (Fmessage): Revert last change to properly handle %%.
6732
67332002-11-01 Stefan Monnier <monnier@cs.yale.edu>
6734
6735 * xmenu.c (unuse_menu_items): New fun.
6736 (menu_items_inuse): New var.
6737 (syms_of_xmenu): Initialize it.
6738 (init_menu_items): Use it to detect re-entrance.
6739 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
6740 (Fx_popup_menu): Remove spurious XSETFRAME.
6741
6742 * editfns.c (find_field): Make an exception for nil fields.
6743
67442002-11-01 Dave Love <fx@gnu.org>
6745
6746 * m/gec63.h: Deleted.
6747
67482002-10-31 Dave Love <fx@gnu.org>
6749
6750 * xterm.c (XTread_socket): Fix last change.
6751 (xaw_scroll_callback): Cast call_data to long to avoid warning.
6752
67532002-10-31 Stefan Monnier <monnier@cs.yale.edu>
6754
6755 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
6756
67572002-10-30 Stefan Monnier <monnier@cs.yale.edu>
6758
6759 * editfns.c (overlays_around, get_pos_property): New funs.
6760 (find_field): Use them.
6761 Also be careful not to modify POS before its last use.
6762 (Fmessage): Don't Fformat if there's nothing to format.
6763
67642002-10-30 Dave Love <fx@gnu.org>
6765
6766 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
6767 [HAVE_PTY_H]; Include pty.h.
6768
6769 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
6770
6771 * xterm.c (Qeql): Declare.
6772 (Vx_keysym_table): New.
6773 (syms_of_xterm): Initialize it.
6774 (XTread_socket): Use it. Deal with ASCII keysyms.
6775 (XSetIMValues) [HAVE_X11R6]: Prototype.
6776
6777 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
6778 (lispy_kana_keys): Comment out.
6779 (make_lispy_event) [XK_kana_A]: Comment out.
6780 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
6781 Fix sprintf call.
6782
6783 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
6784 regexp.h change).
6785 (TERMINFO, LIBS_TERMCAP): Define.
6786
6787 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
6788 (bcmp): Define conditional on HAVE_BCMP.
6789 (NO_SIOCTL_H): Don't define.
6790 (TIOCSIGSEND): Don't make conditional on IRIX6.
6791
6792 * s/sol2-5.h: Don't include strings.h.
6793 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
6794
6795 * s/irix6-0.h (IRIX6): Don't define.
6796 (bcopy, bcmp, bzero): Don't undef.
6797
6798 * s/irix6-5.h: Don't include strings.h.
6799 (IRIX6): Don't define.
6800 (bcopy, bcmp, bzero): Don't undef.
6801
6802 * syntax.c (Fforward_comment): Doc fix.
6803
68042002-10-29 Kim F. Storm <storm@cua.dk>
6805
6806 * process.c (Fsignal_process): Allow PROCESS to be specified by
6807 name in addition to pid (as integer or string).
6808
68092002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
6810
6811 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
6812 environments.
6813
68142002-10-27 Kim F. Storm <storm@cua.dk>
6815
6816 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
6817
6818 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
6819
6820 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
6821
6822 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
6823
68242002-10-26 Richard M. Stallman <rms@gnu.org>
6825
6826 * editfns.c (Fformat): Detect invalid format letters for floats.
6827
68282002-10-25 Kenichi Handa <handa@m17n.org>
6829
6830 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
6831 (x_set_title): Likewise.
6832
68332002-10-25 Juanma Barranquero <lektu@terra.es>
6834
6835 * macgui.h:
6836 * w32gui.h: Remove definition of XColor.
6837
6838 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
6839
68402002-10-24 Kim F. Storm <storm@cua.dk>
6841
6842 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
6843 Callers changed (supply dummy arg).
6844
6845 * lisp.h (get_window_cursor_type): Update prototype.
6846
6847 * w32term.c (x_display_and_set_cursor): Get active_cursor from
6848 get_window_cursor_type to track system caret.
6849
68502002-10-24 Kim F. Storm <storm@cua.dk>
6851
6852 * process.c (Fformat_network_address): New function.
6853 (syms_of_process): Defsubr it.
6854 (list_processes_1): Use it to format :local/:remote address if
6855 service/host is not set; before emacs would crash in that case.
6856 (Fmake_network_process): Don't use Ffind_operation_coding_system
6857 to setup coding system if host or service is not set.
6858
68592002-10-23 Juanma Barranquero <lektu@terra.es>
6860
6861 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
6862
6863 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
6864 COLORREF.
6865
6866 * macgui.h:
6867 * w32gui.h: Add definition of XColor.
6868
6869 * macfns.c:
6870 * w32fns.c:
6871 * xfaces.c: Remove definition of XColor.
6872
68732002-10-22 Stefan Monnier <monnier@cs.yale.edu>
6874
6875 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
6876
6877 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
6878 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
6879 window if it is dedicated.
6880 (Fshrink_window): Add preserve_before as was done for enlarge_window.
6881 (Vspecial_display_function): Update docstring.
6882
6883 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
6884 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
6885 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
6886
68872002-10-21 Stefan Monnier <monnier@cs.yale.edu>
6888
6889 * casefiddle.c (casify_region): Don't treat a prefix char as part
6890 of a word when at the beginning.
6891
68922002-10-17 Juanma Barranquero <lektu@terra.es>
6893
6894 * lread.c (syms_of_lread): Fix typos.
6895
68962002-10-17 Dave Love <fx@gnu.org>
6897
6898 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
6899
69002002-10-16 Richard M. Stallman <rms@gnu.org>
6901
6902 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
6903
69042002-10-14 Juanma Barranquero <lektu@terra.es>
6905
6906 * w16select.c (syms_of_win16select): Fix docstring for
6907 `selection-coding-system'.
6908
6909 * w32select.c (syms_of_w32select): Likewise.
6910
69112002-10-14 Stefan Monnier <monnier@cs.yale.edu>
6912
6913 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
6914 a backslash-quoted char.
6915 (scan_lists, scan_sexps_forward): Pacify the compiler.
6916
69172002-10-13 Richard M. Stallman <rms@gnu.org>
6918
6919 * window.c (window_scroll): Set immediate_quit.
6920
6921 * print.c (print): When backquote form is the car of a list,
6922 output in old style. Use old_backquote_output to output all
6923 comma forms inside it in old style too.
6924
6925 * buffer.h (struct buffer): Move `undo_list' down below `name'.
6926
69272002-10-11 Markus Rost <rost@math.ohio-state.edu>
6928
6929 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
6930 batch mode).
6931
6932 * lread.c (Fload): Doc fix (load-suffixes).
6933
69342002-10-10 Steven Tamm <steventamm@mac.com>
6935
6936 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
6937 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
6938 Also switch the default to Qnil from Qt.
6939
69402002-10-08 Kenichi Handa <handa@m17n.org>
6941
6942 * coding.c (code_convert_region): When we need more GAP for
6943 conversion, pay attention to the case that coding->produced is not
6944 greater than coding->consumed.
6945
69462002-10-07 Richard M. Stallman <rms@gnu.org>
6947
6948 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
6949
69502002-10-06 Andrew Choi <akochoi@shaw.ca>
6951
6952 * macmenu.c (mac_menu_show): Add j to count menu items; match
6953 menu_item_selection to it to find selected item.
6954
69552002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6956
6957 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
6958 cases. The correct fix is to pass ReparentNotify to Xt.
6959 The shell widget interprets ConfigureNotify differently depending
6960 on if it has been reparented or not.
6961
69622002-10-05 Markus Rost <rost@math.ohio-state.edu>
6963
6964 * editfns.c (Fformat_time_string): Doc fix.
6965
69662002-10-05 John Paul Wallington <jpw@shootybangbang.com>
6967
6968 * fns.c (Flength): Doc fix.
6969
69702002-10-04 Stefan Monnier <monnier@cs.yale.edu>
6971
6972 * keyboard.c (keyremap): New struct.
6973 (read_key_sequence): Use it: globally replace keytran_foo with
6974 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
6975 keytran_next and fkey_next to just `next'.
6976
69772002-10-04 Steven Tamm <steventamm@mac.com>
6978
6979 * macterm.c (keycode_to_xkeysym_table): Change return to be
6980 treated like an X keysym.
6981
69822002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6983
6984 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
6985 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
6986 This is to also handle x/y changes that occur because of a resize.
6987
69882002-10-02 John Paul Wallington <jpw@shootybangbang.com>
6989
6990 * frame.c (Vdelete_frame_functions): New variable.
6991 (syms_of_frame): Initialize and defvar it.
6992 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
6993 it when frame's `tooltip' parameter is non-nil.
6994
6995 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
6996
6997 * w32fns.c (x_create_tip_frame): Likewise.
6998
6999 * macfns.c (x_create_tip_frame): Likewise.
7000
70012002-09-30 Kenichi Handa <handa@m17n.org>
7002
7003 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
7004 -1 before calling ccl_driver.
7005
7006 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
7007 Only when it is non-nil, handle composition sequence.
7008 (setup_coding_system) <0>: Don't force composition handling.
7009
7010 * Makefile.in (lisp, shortlisp): Add utf-16.elc
7011
70122002-09-29 Richard M. Stallman <rms@gnu.org>
7013
7014 * search.c (Freplace_match): Adjust match data for the substitution
7015 just made in the buffer.
7016
7017 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
7018 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
7019
70202002-09-27 Richard M. Stallman <rms@gnu.org>
7021
7022 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
7023 (read_char): Use them. Do all exits thru the end of the function.
7024
70252002-09-27 Kenichi Handa <handa@etl.go.jp>
7026
7027 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
7028 is nil.
7029
70302002-09-26 Richard M. Stallman <rms@gnu.org>
7031
7032 * regex.h (__restrict_arr): Don't define if already defined.
7033
7034 * coding.c (run_pre_post_conversion_on_str):
7035 Save and restore Vdeactivate_mark.
7036
70372002-09-26 John Paul Wallington <jpw@shootybangbang.com>
7038
7039 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
7040
70412002-09-26 Kenichi Handa <handa@etl.go.jp>
7042
7043 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
7044 nonzero, try face's family at first. Otherwise try FAMILY at first.
7045 (choose_face_font): If C is a single byte char or latin-1, call
7046 try_font_list with PREFER_FACE_FAMILY 1.
7047
70482002-09-21 Richard M. Stallman <rms@gnu.org>
7049
7050 * window.c (select_window_1): Don't select frame.
7051 Set frame's selected window only when frame itself is selected.
7052 (Fselect_window): Doc fix.
7053
70542002-09-18 Kim F. Storm <storm@cua.dk>
7055
7056 * process.c (make-network-process): Doc fix (there is no
7057 network-server-log-function hook).
7058
70592002-09-18 Richard M. Stallman <rms@gnu.org>
7060
7061 * print.c (print): Clear out the unused parts of Vprint_number_table.
7062 (syms_of_print): Doc fix for `print-number-table'.
7063
7064 * unexelf.c (unexec): Undo previous change.
7065
70662002-09-17 Andreas Schwab <schwab@suse.de>
7067
7068 * m/alpha.h [LINUX]: Don't define DATA_START.
7069
70702002-09-16 Dave Love <fx@gnu.org>
7071
7072 * unexelf.c (unexec): Deal with .got, reinstating change from
7073 25-08-1999.
7074
70752002-09-13 Richard M. Stallman <rms@gnu.org>
7076
7077 * s/sol2-6.h (UNEXEC): Comment out definition.
7078
7079 * unexsol.c (unexec): Don't downcase first letter of error msg.
7080
7081 * xfaces.c (Fcolor_supported_p): Just one arg is required.
7082
70832002-09-12 Markus Rost <rost@math.ohio-state.edu>
7084
7085 * unexsol.c: Include buffer.h, charset.h, coding.h.
7086
70872002-09-11 Richard M. Stallman <rms@gnu.org>
7088
7089 * unexsol.c: Don't use report_file_error; do it by hand
7090 using dlerror.
7091
7092 * process.c (wait_reading_process_input, both versions):
7093 Before calling turn_on_atimers, call stop_polling.
7094
7095 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
7096
7097 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
7098 we go to too_near_end, call clear_glyph_matrix.
7099 (redisplay_window): After make_cursor_line_fully_visible,
7100 call clear_glyph_matrix and bypass `goto done'.
7101
7102 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
7103 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
7104
71052002-09-10 Richard M. Stallman <rms@gnu.org>
7106
7107 * fileio.c (Fdo_auto_save): Catch error making directory.
7108 Only call push_message if we need to.
7109 At the same time, make an unwind-protect to pop it.
7110 Rename local message_p to old_message_p.
7111 (do_auto_save_make_dir, do_auto_save_eh): New functions.
7112 (do_auto_save_unwind): Don't call pop_message.
7113
7114 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
7115
7116 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
7117
7118 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
7119
7120 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
7121
71222002-09-10 Stefan Monnier <monnier@cs.yale.edu>
7123
7124 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
7125 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
7126 (re_match_2_internal): Be more careful with infinite loops.
7127
71282002-09-10 Kim F. Storm <storm@cua.dk>
7129
7130 * macros.c (end_kbd_macro): New function.
7131 (Fend_kbd_macro): Use it.
7132
7133 * macros.h (end_kbd_macro): Declare extern.
7134
7135 * keyboard.c (Fdiscard_input): If defining keyboard macro,
7136 end and save it instead of discarding it.
7137
71382002-09-09 Markus Rost <rost@math.ohio-state.edu>
7139
7140 * s/sol2-6.h: Fix typo. Add comment.
7141
71422002-09-09 Richard M. Stallman <rms@gnu.org>
7143
7144 * regex.c (regnum_t): Use signed int, not unsigned int.
7145
7146 * s/sol2-6.h: New file.
7147
7148 * s/sol2-5.h (UNEXEC): Definition deleted.
7149
71502002-09-08 Kim F. Storm <storm@cua.dk>
7151
7152 * macros.c (executing_macro_index): Change type to EMACS_INT.
7153 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
7154
7155 * macros.h (executing_macro_index): Change type to EMACS_INT.
7156
71572002-09-06 Richard M. Stallman <rms@gnu.org>
7158
7159 * casetab.c (set_case_table): Make canon table point to eqv table.
7160
71612002-09-06 Juanma Barranquero <lektu@terra.es>
7162
7163 * coding.c (syms_of_coding): Fix spacing.
7164
7165 * composite.c (Fcompose_region_internal)
7166 (Fcompose_string_internal): Likewise.
7167
7168 * data.c (Flsh): Likewise.
7169
7170 * fontset.c (Fset_fontset_font): Likewise.
7171
7172 * macfns.c (Fx_server_max_request_size): Likewise.
7173
7174 * w16select.c (syms_of_win16select): Likewise.
7175
7176 * w32select.c (syms_of_w32select): Likewise.
7177
7178 * xselect.c (syms_of_xselect): Likewise.
7179
71802002-09-05 Richard M. Stallman <rms@gnu.org>
7181
7182 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
7183 call EXTEND_RANGE_TABLE and return a proper value.
7184 (set_image_of_range): Don't call set_image_of_range_1
7185 if no TRANSLATE or if range includes all of Latin-1.
7186 Only call it for the Latin-1 part of the range.
7187 For other cases, make two separate ranges,
7188 one for the original specified characters and one for
7189 their case-conversions.
7190
71912002-09-04 Richard M. Stallman <rms@gnu.org>
7192
7193 * s/sol2-5.h (UNEXEC): Use unexsol.o.
7194
7195 * window.c (displayed_window_lines): Correct for one-off bug
7196 in HEIGHT on non-window displays.
7197
7198 * regex.c (set_image_of_range_1): New function.
7199 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
7200 Return a value to indicate running out of memory.
7201 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
7202 (extend_range_table_work_area): New subroutine.
7203 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
7204 Different calling conventions, and used from set_image_of_range{,_1}.
7205 (IMMEDIATE_QUIT_CHECK): Definitions moved.
7206
72072002-09-04 Juanma Barranquero <lektu@terra.es>
7208
7209 * makefile.w32-in: All dependencies updated.
7210
72112002-09-01 Richard M. Stallman <rms@gnu.org>
7212
7213 * unexsol.c: New file.
7214
7215 * xfns.c (Qbox): Declare external, don't define.
7216
7217 * xdisp.c (redisplay_window) <force-start case>:
7218 If point is on semi-visible last line, reposition
7219 it at previous line.
7220
7221 * alloc.c (display_malloc_warning): Use display-warning.
7222 (malloc_warning_1): Function deleted.
7223
7224 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
7225
7226 * lread.c (read1): Handle #! by skipping the line.
7227
72282002-08-31 Richard M. Stallman <rms@gnu.org>
7229
7230 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
7231 Don't include LDFLAGS.
7232 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
7233
72342002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
7235
7236 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
7237 member of x_display_info unless we compile for some window system.
7238
72392002-08-31 Kim F. Storm <storm@cua.dk>
7240
7241 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
7242 (get_window_cursor_type): Don't use them.
7243 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
7244
72452002-08-30 Kenichi Handa <handa@etl.go.jp>
7246
7247 * xdisp.c (get_next_display_element): Fix previous change.
7248
72492002-08-30 Andrew Choi <akochoi@shaw.ca>
7250
7251 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
7252 (expose_window): Use it to fix the display of overlapping
7253 rows (merge code from xterm.c).
7254
7255 * macfns.c (Qbox): Add extern declaration.
7256
72572002-08-30 Juanma Barranquero <lektu@terra.es>
7258
7259 * w32fns.c (Qbox): Make extern.
7260 (syms_of_w32fns): Remove initialization of Qbox.
7261
72622002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
7263
7264 * xfns.c (Fx_open_connection): Fix error message.
7265
72662002-08-30 Kim F. Storm <storm@cua.dk>
7267
7268 The following changes consolidates the handling of the cursor
7269 type in xdisp.c, moving duplicate code and functionality from
7270 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
7271
7272 * frame.h (enum text_cursor_kinds): Consolidated here.
7273 Added DEFAULT_CURSOR value.
7274 (struct frame) <desired_cursor, cursor_width>
7275 <blink_off_cursor, blink_off_cursor_width>: New fields.
7276 Consolidated from output_x, output_w32 and output_mac structs.
7277 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
7278 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
7279
7280 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
7281 Variables consolidated here.
7282 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
7283 (Vcursor_in_non_selected_windows): Renamed from
7284 cursor_in_non_selected_windows and changed to Lisp_Object.
7285 (syms_of_xdisp): Define and staticpro new and moved variables.
7286 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
7287 consolidated here. Recognize Qhollow setting.
7288 (set_frame_cursor_types): New function to set frame cursor types
7289 based on the frame parameters.
7290 (get_window_cursor_type): New function to calculate new cursor
7291 type and width for the specified window. Based on duplicated
7292 code consolidated here.
7293 Enhancements: cursor-in-non-selected-windows may be a cursor type,
7294 check buffer-local alternate-cursor-type and blink-cursor-alist
7295 before using built-in blink off methods.
7296
7297 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
7298
7299 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
7300 (get_specified_cursor_type, get_window_cursor_type)
7301 (set_frame_cursor_types): Added prototypes.
7302
7303 * macfns.c (x_specified_cursor_type): Removed.
7304 (x_set_cursor_type): Use set_frame_cursor_types.
7305 (Qbar, Qbox): Removed.
7306 (syms_of_macfns): Don't intern or staticpro them.
7307
7308 * macterm.c (x_specified_cursor_type): Remove prototype.
7309 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
7310 (x_display_and_set_cursor): Use get_window_cursor_type.
7311 Remove unused local variables cursor_non_selected, active_cursor.
7312 Redraw cursor if hbar cursor width changes.
7313 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
7314
7315 * macterm.h (enum text_cursor_kinds): Removed.
7316 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
7317 <blink_off_cursor, blink_off_cursor_width>: Members removed.
7318 (FRAME_DESIRED_CURSOR): Macro removed.
7319
7320 * w32fns.c (Vblink_cursor_alist): Removed.
7321 (Qbar, Qhbar, Qbox, Qhollow): Removed.
7322 (syms_of_w32fns): Don't intern, staticpro, or define them.
7323 (x_specified_cursor_type): Removed.
7324 (x_set_cursor_type): Use set_frame_cursor_types.
7325
7326 * w32term.c (x_specified_cursor_type): Remove prototype.
7327 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
7328 (x_display_and_set_cursor): Use get_window_cursor_type.
7329 Remove unused local variables cursor_off_state.
7330 Redraw cursor if hbar cursor width changes.
7331 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
7332
7333 * w32term.h (enum text_cursor_kinds): Removed.
7334 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
7335 <blink_off_cursor, blink_off_cursor_width>: Members removed.
7336 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
7337 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
7338 (struct w32_display_info) <x_highlight_frame>: Renamed member from
7339 w32_highlight_frame.
7340
7341 * xfns.c (Vblink_cursor_alist): Removed.
7342 (Qbar, Qhbar, Qbox, Qhollow): Removed.
7343 (syms_of_xfns): Don't intern, staticpro, or define them.
7344 (x_specified_cursor_type): Removed.
7345 (x_set_cursor_type): Use set_frame_cursor_types.
7346
7347 * xterm.c (x_specified_cursor_type): Remove prototype.
7348 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
7349 (x_display_and_set_cursor): Use get_window_cursor_type.
7350 Remove unused local variables cursor_off_state.
7351 Redraw cursor if hbar cursor width changes.
7352
7353 * xterm.h (enum text_cursor_kinds): Removed.
7354 (struct output_x) <current_cursor, desired_cursor, cursor_width>
7355 <blink_off_cursor, blink_off_cursor_width>: Members removed.
7356 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
7357 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
7358 (x_specified_cursor_type): Remove prototype.
7359
73602002-08-28 Richard M. Stallman <rms@gnu.org>
7361
7362 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
7363 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
7364 (Vblink_cursor_alist): New variable.
7365 (syms_of_w32fns): Initialize and defvar it.
7366 (x_specified_cursor_type): Recognize Qbox for filled box.
7367 Exceptions are hollow boxes.
7368 (Qbox, Qhollow): New variables.
7369 (syms_of_w32fns): Initialize and staticpro them.
7370
7371 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
7372 New macros.
7373 (struct w32_output): New fields blink_off_cursor,
7374 blink_off_cursor_width.
7375 (FRAME_CURSOR_WIDTH): New macro.
7376
7377 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
7378 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
7379
7380 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
7381 for bar cursor.
7382
7383 * w32term.c (expose_overlaps): New function.
7384 (expose_window): Use it to fix the display of overlapping rows.
7385
73862002-08-28 Simon Josefsson <jas@extundo.com>
7387
7388 * xfns.c (Fx_open_connection): Improve help when X connection
7389 fails, xhost is insecure and xauth is better.
7390
73912002-08-28 Juanma Barranquero <lektu@terra.es>
7392
7393 * makefile.w32-in: Add missing dependencies on w32term.h and
7394 composite.h.
7395
7396 * emacs.c (USAGE1): Add missing newline.
7397
73982002-08-27 Andrew Choi <akochoi@shaw.ca>
7399
7400 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
7401
74022002-08-27 Richard M. Stallman <rms@gnu.org>
7403
7404 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
7405 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
7406 (Vblink_cursor_alist): New variable.
7407 (syms_of_xfns): Initialize and defvar it.
7408 (x_specified_cursor_type): Recognize Qbox for filled box.
7409 Exceptions are hollow boxes.
7410 (Qbox, Qhollow): New variables.
7411 (syms_of_xfns): Initialize and staticpro them.
7412
7413 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
7414 New macros.
7415 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
7416
7417 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
7418 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
7419
7420 * emacs.c (main): Handle --script.
7421 (USAGE1): Mention --script.
7422 (standard_args): Define sort order for --script.
7423
74242002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
7425
7426 * xdisp.c (redisplay_updating_p): Variable removed.
7427 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
7428 New variables.
7429 (init_iterator): Don't free realized faces if
7430 inhibit_free_realized_faces is set.
7431 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
7432 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
7433 initialize Qinhibit_free_realized_faces.
7434
7435 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
7436 when iterator is adding glyphs to a glyph matrix.
7437
74382002-08-27 Kenichi Handa <handa@etl.go.jp>
7439
7440 * xdisp.c (get_next_display_element): In unibyte case, don't use
7441 octal form for such eight-bit characters that can be converted to
7442 multibyte char.
7443
74442002-08-26 Kim F. Storm <storm@cua.dk>
7445
7446 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize foreground
7447 and background colors. From Joe Buehler (tiny change).
7448
74492002-08-26 Miles Bader <miles@gnu.org>
7450
7451 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
7452
74532002-08-25 Andrew Choi <akochoi@shaw.ca>
7454
7455 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
7456 defined instead of MAC_OSX.
7457
7458 * s/darwin.h (select): Define select to sys_select only if
7459 HAVE_CARBON is defined.
7460 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
7461 (DONT_REOPEN_PTY): #def it.
7462
7463 * macterm.c (XTread_socket): Remove code to call
7464 SendEventToEventTarget for keys with command modifiers when
7465 mac_command_key_is_meta is nil.
7466
74672002-08-24 Andreas Schwab <schwab@suse.de>
7468
7469 * eval.c (Fdefvar): Fix last change.
7470
74712002-08-23 Richard M. Stallman <rms@gnu.org>
7472
7473 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
7474 Record variables in load history as (defvar . VAR).
7475 (Fdefvar): Don't record in load history if no initial value.
7476 (Qdefvar): New variable.
7477 (syms_of_eval): Init and staticpro it.
7478
7479 * lread.c (syms_of_lread): Doc fix.
7480 (build_load_history): Use Fmember to see if a definition
7481 is already in the Vload_history element.
7482
7483 * process.c (Fstart_process): Remove /: from program name.
7484
7485 * emacs.c (decode_env_path): Don't add /: if file name handler
7486 has a `safe-magic' property.
7487
7488 * callproc.c (Fcall_process): Remove /: from program name.
7489
74902002-08-23 Stefan Monnier <monnier@cs.yale.edu>
7491
7492 * regex.c (PATFETCH): Remove the translating fetch.
7493 (PATFETCH_RAW): Rename to PATFETCH.
7494 (set_image_of_range): New fun.
7495 (SET_RANGE_TABLE_WORK_AREA): Use it.
7496 (regex_compile): Don't translate the pattern chars so eagerly.
7497 Only do it when inserting an `exactn' bytecode or when handling
7498 a char-range.
7499 (mutually_exclusive_p): Avoid empty statement.
7500
75012002-08-22 Kim F. Storm <storm@cua.dk>
7502
7503 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
7504 end up on a partially visible line; this reverts a specific part
7505 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
7506 display error which has been reported several times now.
7507 However it introduces the problem that changes was supposed to fix.
7508 See my comments in the source if you want to debug this further.
7509
75102002-08-20 Kenichi Handa <handa@etl.go.jp>
7511
7512 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
7513
75142002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
7515
7516 * msdos.c (croak): Add `void' to definition.
7517
7518 * sysdep.c [MSDOS] (request_sigio, unrequest_sigio):
7519 Don't define them, they are defined in msdos.c.
7520
7521 * mem-limits.h [MSDOS]: Declare etext.
7522
7523 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
7524 `const' since CORRECT_DIR_SEPS modifies its target.
7525
75262002-08-19 Kim F. Storm <storm@cua.dk>
7527
7528 * keyboard.c (Fclear_this_command_keys): Added optional arg
7529 KEEP-RECORD to avoid clearing lossage when we just want to clear
7530 the current key sequence (kmacro needs this).
7531
75322002-08-19 Kenichi Handa <handa@localhost>
7533
7534 * composite.c (run_composition_function): Call FUNC if it is fboundp.
7535
7536 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
7537 cons, return Qnil.
7538
75392002-08-17 Richard M. Stallman <rms@gnu.org>
7540
7541 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
7542
7543 * sysdep.c [!VMS]: Include sys/files.h.
7544
7545 * editfns.c (save_restriction_restore): Defend from unchained marker.
7546
7547 * buffer.c (overlays_at): Handle extending vec uniformly.
7548 (overlays_in): Handle extending vec from length 0 as in overlays_at.
7549
75502002-08-15 Andrew Choi <akochoi@shaw.ca>
7551
7552 * mac.c (init_mac_osx_environment): New function.
7553
7554 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
7555
75562002-08-14 Kim F. Storm <storm@cua.dk>
7557
7558 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
7559 executing macro before appending to it (when used from Lisp).
7560 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
7561 which is called prior to each iteration of macro (for kmacro.el).
7562 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
7563
7564 * lisp.h (Fexecute_kbd_macro): Update prototype.
7565
7566 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
7567
75682002-08-14 Kenichi Handa <handa@etl.go.jp>
7569
7570 * xselect.c (QUTF8_STRING): New variable.
7571 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
7572 (x_atom_to_symbol): Likewise.
7573 (x_get_local_selection): New argument local_request. If it is
7574 nonzero, call handler_fn with the second arg nil.
7575 (x_handle_selection_request): Call x_get_local_selection with
7576 local_request 0.
7577 (lisp_data_to_selection_data): Don't encode the string here.
7578 (Fx_get_selection_internal): Call x_get_local_selection with
7579 local_request 1.
7580 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
7581
7582 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
7583
7584 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
7585
75862002-08-13 Richard M. Stallman <rms@gnu.org>
7587
7588 * minibuf.c (Fminibufferp): New function.
7589 (syms_of_minibuf): Defsubr it.
7590 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
7591
75922002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
7593
7594 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
7595
75962002-08-12 Richard M. Stallman <rms@gnu.org>
7597
7598 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
7599 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
7600 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
7601 already.
7602
7603 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
7604
76052002-08-11 Andrew Choi <akochoi@shaw.ca>
7606
7607 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
7608 (Vmac_pass_command_to_system): New variable.
7609 (Vmac_pass_control_to_system): New variable.
7610 (do_mouse_moved): Check wp with is_emacs_window.
7611 (XTread_socket): Check window_ptr with is_emacs_window.
7612 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
7613 events back to Mac Toolbox for processing, depending on values of
7614 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
7615 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
7616 Vmac_pass_control_to_system.
7617
76182002-08-10 Kenichi Handa <handa@etl.go.jp>
7619
7620 * coding.c (unencodable_char_position): New function.
7621 (Funencodable_char_position): New function.
7622 (syms_of_coding): Defsubr Funencodable_char_position.
7623
76242002-08-10 Andrew Choi <akochoi@shaw.ca>
7625
7626 * mac.c (sys_select) [MAC_OSX]: New function.
7627
7628 * macterm.c (MakeMeTheFrontProcess): New function.
7629 (mac_initialize): Call MakeMeTheFrontProcess.
7630
7631 * s/darwin.h: Define select to sys_select.
7632
76332002-08-09 Richard M. Stallman <rms@gnu.org>
7634
7635 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
7636
76372002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
7638
7639 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
7640 end of the buffer.
7641
76422002-08-08 Ken Raeburn <raeburn@mit.edu>
7643
7644 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
7645
7646 * puresize.h (BASE_PURESIZE): Increase to 910000.
7647
76482002-08-08 Kenichi Handa <handa@etl.go.jp>
7649
7650 * coding.c (Ffind_operation_coding_system): For write-region, if
7651 VISIT is a filename, make it the target.
7652
76532002-08-07 Richard M. Stallman <rms@gnu.org>
7654
7655 * alloc.c (mark_object): Detect long lists for debugging.
7656 (mark_object_loop_halt): New variable.
7657
7658 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
7659
7660 * data.c (Fmake_variable_frame_local): Doc fix.
7661
76622002-08-01 David Ponce <david@dponce.com>
7663
7664 * w32menu.c (local_heap, local_alloc, local_free): New macros.
7665 (malloc_widget_value, free_widget_value)
7666 (w32_free_submenu_strings): Use them.
7667
7668 (push_submenu_start, push_submenu_end, push_left_right_boundary)
7669 (push_menu_pane, push_menu_item, single_keymap_panes)
7670 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
7671 (single_submenu, set_frame_menubar)
7672 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
7673
7674 (Fx_popup_menu): Don't show pop up menu until preceding one is
7675 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
7676
7677 * w32menu.c: Changes adapted from xmenu.c
7678 (set_frame_menubar): First parse all submenus,
7679 then make widget_value trees from them.
7680 Don't allocate any widget_value objects
7681 until we are done with the parsing.
7682 (parse_single_submenu): New function.
7683 (digest_single_submenu): New function.
7684 (single_submenu): Function deleted, replaced by those two.
7685
76862002-08-04 Andrew Choi <akochoi@shaw.ca>
7687
7688 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
7689 returns a valid window pointer before proceeding for keyDown and
7690 autoKey events.
7691
76922002-08-03 Andrew Choi <akochoi@shaw.ca>
7693
7694 * macterm.c (USE_CARBON_EVENTS): New macro.
7695 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
7696 (x_iconify_frame): Call CollapseWindow.
7697 (Vmac_reverse_ctrl_meta): New variable.
7698 (Vmac_wheel_button_is_mouse_2): New variable.
7699 (init_mac_drag_n_drop): New function.
7700 (mac_do_receive_drag): New function.
7701 (mac_handle_service_event): New function.
7702 (init_service_handler): New function.
7703 (mac_to_emacs_modifiers): New function.
7704 (mac_event_to_emacs_modifiers): New function.
7705 (mac_get_mouse_btn): New function.
7706 (mac_convert_event_ref): New function.
7707 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
7708 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
7709 mac_get_mouse_btn.
7710 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
7711
7712 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
7713 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
7714 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
7715 TOOL_BAR_EVENT for MAC_OS as well.
7716 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
7717 as for WINDOWS_NT.
7718 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
7719
7720 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
7721
77222002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
7723
7724 * xdisp.c (forward_to_next_line_start): Fix a condition that
7725 lead to a newline being skipped.
7726
77272002-08-02 Andrew Choi <akochoi@shaw.ca>
7728
7729 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
7730
77312002-08-01 Richard M. Stallman <rms@gnu.org>
7732
7733 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
7734
77352002-07-31 Andrew Choi <akochoi@shaw.ca>
7736
7737 * macfns.c: #undef init_process before #define-ing it.
7738
7739 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
7740 HAVE_CARBON is defined.
7741
77422002-07-31 Richard M. Stallman <rms@gnu.org>
7743
7744 * xmenu.c (set_frame_menubar): First parse all submenus,
7745 then make widget_value trees from them.
7746 Don't allocate any widget_value objects
7747 until we are done with the parsing.
7748 (parse_single_submenu): New function.
7749 (digest_single_submenu): New function.
7750 (single_submenu): Function deleted, replaced by those two.
7751
77522002-07-30 Juanma Barranquero <lektu@terra.es>
7753
7754 * w32proc.c (syms_of_ntproc): Fix docstring of
7755 `w32-get-true-file-attributes'.
7756
77572002-07-28 Richard M. Stallman <rms@gnu.org>
7758
7759 * s/hpux8.h (HPUX8): Define this before including hpux.h.
7760 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
7761
7762 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
7763
7764 * keyboard.c (make_lispy_event):
7765 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
7766 Explicitly clear up_modifier in event->modifiers.
7767
77682002-07-27 Richard M. Stallman <rms@gnu.org>
7769
7770 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
7771
7772 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
7773 for bar cursor.
7774
77752002-07-26 Kenichi Handa <handa@etl.go.jp>
7776
7777 * coding.c (detect_coding_iso2022): While checking a byte sequence
7778 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
7779 it in the normal loop.
7780
77812002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
7782
7783 * xterm.c (expose_overlaps): New function.
7784 (expose_window): Use it to fix the display of overlapping rows.
7785
7786 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
7787
77882002-07-23 Ken Raeburn <raeburn@gnu.org>
7789
7790 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
7791 since it only depends on XUINT.
7792
7793 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
7794 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
7795 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
7796 Macros deleted.
3947677c 7797
77d1daf2
AS
7798 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
7799 its value over other approaches.
7800 * sysdep.c (start_of_data): Don't define the function if a macro
7801 form has been defined.
8a8e19a3 7802
048addec
JD
78032002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
7804
7805 * xdisp.c (redisplay_updating_p): New variable.
7806 (init_iterator): Don't free realized faces when
7807 redisplay_updating_p is set.
7808 (redisplay_internal): Set redisplay_updating_p while updating
7809 the display.
7810
78112002-07-23 Richard M. Stallman <rms@gnu.org>
7812
7813 * editfns.c (Fmessage): Treat "" like nil.
7814
78152002-07-23 Kenichi Handa <handa@etl.go.jp>
7816
7817 * xdisp.c (face_before_or_after_it_pos):
7818 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
7819
78202002-07-22 Juanma Barranquero <lektu@terra.es>
7821
7822 * callproc.c (init_callproc) [DOS_NT]:
7823 Initialize Vshared_game_score_directory to nil.
7824 (syms_of_callproc) [DOS_NT]: Likewise.
7825
78262002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
7827
7828 * xdisp.c (display_line): Replace an abort with xassert.
7829
78302002-07-21 Richard M. Stallman <rms@gnu.org>
7831
7832 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
7833 and END_UNCHANGED when setting buffer_unchanged_p.
7834 Use current_matrix_up_to_date_p to decide whether to use
7835 try_cursor_movement.
7836
7837 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
7838
7839 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
7840
7841 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
7842 Set to nil if dir does not exist.
7843 (syms_of_callproc): Init unconditionally and simply.
7844
7845 * buffer.c (Fbuffer_list): Doc fix.
7846
78472002-07-21 Ken Raeburn <raeburn@gnu.org>
7848
7849 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
7850
7851 * buffer.c (mmap_realloc): When shrinking, make sure number of
7852 pages to unmap is rounded towards zero.
7853
7854 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
7855 (XSETINT): Deleted.
7856
7857 * m/att3b.h (XINT): Don't define.
7858 (VALBITS, VALMASK, XTYPE): Deleted.
7859 (DATA_SEG_BITS): Define.
7860 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
7861 ARRAY_MARK_FLAG): Deleted.
7862 (DATA_SEG_BITS): Define.
7863 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
7864 (DATA_SEG_BITS): Define.
7865
78662002-07-20 Richard M. Stallman <rms@gnu.org>
7867
7868 * print.c (print_error_message): New args CONTEXT and CALLER.
7869 Calls changed.
7870
7871 * lisp.h (print_error_message): Declare new args.
7872
7873 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
7874 and CONTEXT to print_error_message, don't print them here.
7875 For a Quit, don't use Vsignaling_function.
7876 Call message_log_maybe_newline.
7877
7878 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
7879
78802002-07-20 Kim F. Storm <storm@cua.dk>
7881
7882 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
7883
78842002-07-19 Ken Raeburn <raeburn@gnu.org>
7885
7886 * bytecode.c (struct byte_stack): Pointers into byte string now
7887 point to const.
7888 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
7889 const.
7890 * charset.h (BCOPY_SHORT): Source pointer now points to const.
7891 * coding.c (encode_eol, detect_coding, detect_eol):
7892 (decode_coding, encode_coding, detect_coding_system):
7893 Source strings now treated as const.
7894 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
7895 modify Lisp string contents.
7896 * coding.h (decode_coding, encode_coding, detect_coding,
7897 detect_eol): Declarations updated.
7898 * composite.c (compose_chars_in_text): Treat Lisp string contents
7899 as const.
7900 * dispnew.c (safe_bcopy): Source pointer now points to const.
7901 * lisp.h (STRING_COPYIN): New macro.
7902 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
7903 (internal_with_output_to_temp_buffer): Declarations updated.
7904 * print.c (temp_output_buffer_setup):
7905 (internal_with_output_to_temp_buffer): Buffer name argument is now
7906 pointer to const.
7907 * sound.c (struct sound_device): Function pointer field "write"
7908 buffer argument now points to const.
7909 (vox_write): Buffer argument points to const.
7910 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
7911 contents as const.
7912 * sysdep.c (emacs_write): Buffer pointer now const.
7913 * term.c (encode_terminal_code): Buffer pointer now const.
7914 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
7915 (x_face_list_fonts, x_update_menu_appearance):
7916 (hash_string_case_insensitive): Treat Lisp string contents as const.
7917
79182002-07-19 Juanma Barranquero <lektu@terra.es>
7919
7920 * fileio.c (Ffile_name_as_directory): Fix argument name in docstring.
7921 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
7922
7923 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
7924
7925 * fileio.c (syms_of_fileio): Likewise.
7926
79272002-07-18 Richard M. Stallman <rms@gnu.org>
7928
7929 * data.c (Fdefalias): Doc fix.
7930
79312002-07-17 Dave Love <fx@gnu.org>
7932
7933 * intervals.h (text_property_stickiness): Use P_.
7934
7935 * ccl.c: Remove `emacs' conditionals.
7936 (ccl_backtrace_table): Fix size spec.
7937 (ccl_driver): Fix type errors.
7938
79392002-07-16 Ken Raeburn <raeburn@gnu.org>
7940
7941 * alloc.c (xstrdup, make_string, make_unibyte_string)
7942 (make_multibyte_string, build_string): String pointer args now
7943 point to const.
7944 * charset.c (find_charset_in_text, c_string_width):
7945 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
7946 * fileio.c (report_file_error):
7947 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
7948 (count_combining_before, count_combining_after, insert_1_both):
7949 (insert, insert_and_inherit, insert_string):
7950 (insert_before_markers, insert_before_markers_and_inherit):
7951 * lread.c (intern, oblookup, hash_string):
7952 * minibuf.c (temp_echo_area_glyphs):
7953 * search.c (fast_c_string_match_ignore_case):
7954 * sysdep.c (emacs_open, set_file_times):
7955 * xfaces.c (xstricmp):
7956 * xdisp.c (store_frame_title, string_char_and_length):
7957 (message_dolog, message2, message2_nolog, set_message): Likewise.
7958 (set_message_1): Cast message string argument to const pointer.
7959 * editfns.c (general_insert_function): Insertion function now
7960 takes pointer to const for input data.
7961 * charset.h (find_charset_in_text, c_string_width):
7962 (parse_str_as_multibyte): Declarations updated.
7963 * dispextern.h (xstricmp): Declaration updated.
7964 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
7965 (count_size_as_multibyte, count_combining_before):
7966 (count_combining_after, insert_1, insert_1_both, message_dolog):
7967 (insert, insert_and_inherit, insert_before_markers)
7968 (insert_before_markers_and_inherit, set_message, message2):
7969 (message2_dolog, build_string, make_string, make_unibyte_string):
7970 (make_multibyte_string, intern, oblookup, report_file_error):
7971 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
7972 (emacs_open, xstrdup): Declarations updated.
7973 * systime.h (set_file_times): Declaration updated.
7974
7975 * charset.c (find_charset_in_text, lisp_string_width): Use const
7976 for pointer to lisp string data.
7977 * charset.h (FETCH_STRING_CHAR_ADVANCE):
7978 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
7979 * coding.c (Ffind_coding_systems_region_interval):
7980 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
7981 (Fmake_directory_internal, Fdelete_directory):
7982 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
7983 * fontset.c (font_family_registry, fs_query_fontset):
7984 (list_fontsets):
7985 * frame.c (Fframe_parameter):
7986 * keyboard.c (cmd_error_internal):
7987 * keymap.c (Fdescribe_buffer_bindings):
7988 * lread.c (complete_filename_p, openp):
7989 * minibuf.c (Fminibuffer_complete_word):
7990 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
7991 (face_before_or_after_it_pos, next_element_from_string):
7992 (get_overlay_arrow_glyph_row, display_mode_element):
7993 (decode_mode_spec_coding):
7994 * xterm.c (same_x_server): Likewise.
7995
7996 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
7997 settings of non-existent fields.
7998
7999 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
8000 copy a lisp value.
8001
8002 * lread.c (Fintern_soft): Use string macros instead of
8003 Lisp_String fields.
8004 * keyboard.c (echo_char, parse_modifiers_uncached):
8005 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
8006 * textprop.c (validate_interval_range, interval_of): Likewise.
8007
8008 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
8009
8010 * charset.h (FETCH_STRING_CHAR_ADVANCE)
8011 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
8012 XSTRING()->size_byte.
8013
8014 * lisp.h (SDATA, SREF): Produce rvalue.
8015 (SSET): New macro.
8016 * alloc.c (make_event_array): Use SSET for storing into a string.
8017 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
8018 a string.
8019 * casefiddle.c (casify_object): Use SSET.
8020 * charset.h (FETCH_STRING_CHAR_ADVANCE)
8021 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
8022 address of string contents.
8023 * data.c (Faref): Use SDATA.
8024 (Faset): Use SDATA, SSET.
8025 * dired.c (directory_files_internal): Use SSET.
8026 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
8027 (Fread_file_name): Use SREF, SSET.
8028 * fns.c (concat): Use SSET.
8029 (concat, Fdelete): Use SDATA.
8030 * insdel.c (insert_from_string_1): Use SDATA.
8031 * keyboard.c (Fevent_convert_list): Use SREF.
8032 * lread.c (Fload): Use SDATA, SSET.
8033 * macfns.c (validate_x_resource_name): Use SSET.
8034 * process.c (status_message): Use SSET.
8035 * search.c (wordify): Use SDATA.
8036 (Freplace_match): Use SREF.
8037 * w32fns.c (validate_x_resource_name): Use SSET.
8038 * xfns.c (validate_x_resource_name): Use SSET.
8039 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
8040
80412002-07-16 Richard M. Stallman <rms@gnu.org>
8042
8043 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
8044
8045 * xdisp.c (reconsider_clip_changes):
8046 Don't test prevent_redisplay_optimizations_p.
8047 (redisplay_internal): Test prevent_redisplay_optimizations_p
8048 along with clip_changed in some cases.
8049 (try_window_id): Likewise.
8050 (redisplay_window): New local var buffer_unchanged_p.
8051
8052 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
8053
8054 * process.c (create_process): Test USG_SUBTTY_WORKS.
8055 (process_send_signal): Clean up handling of GID.
8056 Detect errors in ioctls meant to set GID.
8057
8058 * window.c (temp_output_buffer_show):
8059 Don't set prevent_redisplay_optimizations_p.
8060
80612002-07-15 Juanma Barranquero <lektu@terra.es>
8062
8063 * eval.c (Fdefvaralias): Add docstring argument.
8064
80652002-07-15 Ken Raeburn <raeburn@gnu.org>
8066
8067 * lisp.h (STRING_INTERVALS): Produce rvalue.
8068 (STRING_SET_INTERVALS): New macro.
8069 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
8070 * fns.c (Fstring_as_multibyte): Likewise.
8071 * intervals.c (balance_possible_root_interval, delete_interval)
8072 (create_root_interval, copy_intervals_to_string): Likewise.
8073 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
8074 instead of 0.
8075
80762002-07-14 Ken Raeburn <raeburn@gnu.org>
8077
8078 * lisp.h (STRING_SET_CHARS): New macro.
8079 (SCHARS, SBYTES): Produce rvalues.
8080 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
8081 * fns.c (concat): Likewise.
8082 * lread.c (read_vector): Likewise.
8083
8084 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
8085 (STRING_SET_UNIBYTE): New macro.
8086 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
8087 length of -1) changed to use STRING_SET_UNIBYTE.
8088 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
8089 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
8090 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
8091 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
8092 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
8093 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
8094 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
8095 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
8096 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
8097 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
8098 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
8099 STRING_BYTES or indirection changed to SCHARS, SBYTES,
8100 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
8101 unchanged for now.
8102
81032002-07-13 Kim F. Storm <storm@cua.dk>
8104
8105 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
8106
81072002-07-12 Richard M. Stallman <rms@gnu.org>
8108
8109 * fileio.c (Fwrite_region): Doc fix.
8110
8111 * print.c (print_error_message): Don't handle Vsignaling_function here.
8112
8113 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
8114 (command_loop_1): Avoid certain actions after memory-full error.
8115
8116 * eval.c (Fsignal): Don't call cancel_hourglass.
8117 For a memory-full error, don't call Vsignal_hook_function
8118 and don't set Vsignaling_function.
8119
8120 * process.c (process_send_signal): Add abort call.
8121
81222002-07-11 Markus Rost <rost@math.ohio-state.edu>
8123
8124 * keymap.c (Fkey_binding): Fix typo.
8125
81262002-07-11 Richard M. Stallman <rms@gnu.org>
8127
8128 * alloc.c (Vmemory_full): New variable.
8129 (Vmemory_signal_data): Renamed from memory_signal_data.
8130 Uses changed.
8131 (syms_of_alloc): Defvar them.
8132 (memory_full, buffer_memory_full): Set Vmemory_full.
8133
8134 * lisp.h (Vmemory_full): Add declaration.
8135 (current_column, indented_beyond_p): Change declaration.
8136
8137 * indent.c (last_known_column): Declare as double, not float.
8138 (current_column, current_column_1, string_display_width)
8139 (position_indentation): Return `double'.
8140 (indented_beyond_p): Arg `column' is `double'. Callers changed.
8141
8142 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
8143 (back_to_previous_visible_line_start)
8144 (reseat_at_next_visible_line_start, next_element_from_buffer):
8145 Use `double', not `float', when calling indented_beyond_p.
8146
8147 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
8148
8149 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
8150
81512002-07-11 Juanma Barranquero <lektu@terra.es>
8152
8153 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
8154 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
8155 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
8156 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
8157 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
8158 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
8159
81602002-07-10 Juanma Barranquero <lektu@terra.es>
8161
8162 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE. All callers
8163 changed.
8164
81652002-07-09 Stefan Monnier <monnier@cs.yale.edu>
8166
8167 * data.c (Fdefalias): Add an optional `docstring' argument.
8168 (set_internal, Fsetq_default): Use XCAR/XCDR.
8169
8170 * composite.c (HASH_VALUE, HASH_KEY):
8171 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
8172
81732002-07-09 Kenichi Handa <handa@etl.go.jp>
8174
8175 * callproc.c (Fcall_process): Fix previous change.
8176
81772002-07-07 Stefan Monnier <monnier@cs.yale.edu>
8178
8179 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
8180 Add support for hash-tables.
8181 (Ftry_completion): Return t even if the string appears multiple times.
8182
8183 * fns.c (Fnconc): Use XCDR.
8184 (Fprovide): Use CONSP and XCDR.
8185 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
8186 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
8187 (Fmake_hash_table): Accept `:size nil'.
8188 (Fmakehash): Delete: moved to subr.el.
8189 (syms_of_fns): Don't defsubr makehash.
8190
8191 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
8192 (HASH_TABLE_SIZE): Move from fns.c.
8193
81942002-07-07 Richard M. Stallman <rms@gnu.org>
8195
8196 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
8197 Instead just return 0 when there is something to be done.
8198 (try_scrolling): If make_cursor_line_fully_visible returns 0,
8199 retry scrolling as if cursor were off the bottom.
8200 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
8201 return CURSOR_MOVEMENT_MUST_SCROLL.
8202 (redisplay_window): If make_cursor_line_fully_visible returns 0,
8203 go to try_to_scroll.
8204
8205 * buffer.c (Fbuffer_local_value): Store current value into its binding
8206 so we get the up-to-date value for the binding that is loaded.
8207
8208 * eval.c (Fdefmacro): Doc fix.
8209
82102002-07-05 Dave Love <fx@gnu.org>
8211
8212 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
8213 correctly.
8214
8215 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
8216 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
8217 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
8218 CCL_LookupCharConstTbl.
8219 (syms_of_ccl): Defvar translation-hash-table-vector.
8220
82212002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8222
8223 * xdisp.c: Remove unused variable `face'.
8224
82252002-07-04 Juanma Barranquero <lektu@terra.es>
8226
8227 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
8228 obsolescence information.
8229
82302002-07-03 Andrew Choi <akochoi@shaw.ca>
8231
8232 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
8233 pattern. Search cache first.
8234 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
8235 for Japanese font.
8236 (XLoadQueryFont): Use it.
8237
82382002-07-02 Richard M. Stallman <rms@gnu.org>
8239
8240 * keymap.c (Fdefine_key): Doc fix.
8241
8242 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
8243
82442002-07-02 Juanma Barranquero <lektu@terra.es>
8245
8246 * keymap.c (syms_of_keymap): Fix typo.
8247
82482002-07-01 Andrew Choi <akochoi@shaw.ca>
8249
8250 * s/darwin.h: Define POSIX_SIGNALS.
8251
8252 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
8253 and FSRefMakePath to convert FSSpec returned with Apple Event to
8254 Posix pathname.
8255 (mac_initialize) [TARGET_API_MAC_CARBON]:
8256 Call init_required_apple_events and disable the `Quit' menu item
8257 provided automatically by the Carbon Toolbox.
8258
82592002-07-01 Dave Love <fx@gnu.org>
8260
8261 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
8262 for K&R.
8263
8264 * xterm.c: Fix prototype for K&R.
8265
8266 * term.c (costs_set): Declare static, non-initialized for pcc.
8267
82682002-07-01 Richard M. Stallman <rms@gnu.org>
8269
8270 * keyboard.c (timer_last_idleness_start_time): New variable.
8271 (timer_start_idle): Set that.
8272 (read_key_sequence): Use that to reset timer_idleness_start_time
8273 to previous value.
8274
8275 * window.c (Frecenter): With arg, set optional_new_start.
8276
8277 * xdisp.c (redisplay_internal): Make optional_new_start really work.
8278
8279 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
8280 buffer for completion.
8281
82822002-06-29 Ken Raeburn <raeburn@gnu.org>
8283
8284 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
8285
82862002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8287
8288 * keyboard.c (readable_filtered_events): New function that filters
8289 FOCUS_IN_EVENT depending on parameter.
8290 (readable_events): Calls readable_filtered_events, not filtering
8291 FOCUS_IN_EVENT.
8292 (get_filtered_input_pending): New function, filtering parameter passed
8293 to readable_filtered_events.
8294 (get_input_pending): Calls get_filtered_input_pending, not filtering
8295 FOCUS_IN_EVENT.
8296 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
8297 FOCUS_IN_EVENT.
8298
8299 * xterm.h (struct x_output): Add focus_state.
8300
8301 * xterm.c (x_focus_changed): New function.
8302 (x_detect_focus_change): New function.
8303 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
8304 EnterNotify and LeaveNotify to track X focus changes.
8305
83062002-06-28 Andreas Schwab <schwab@suse.de>
8307
8308 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
8309
83102002-06-27 Kim F. Storm <storm@cua.dk>
8311
8312 * xdisp.c: (mode_line_string_list, mode_line_string_face)
8313 (mode_line_string_face_prop): New variables.
8314 (store_mode_line_string): New function.
8315 (display_mode_element): Use store_mode_line_string to
8316 add mode-line string elements to mode_line_string_list
8317 when mode_line_string_list is non-nil.
8318 (Fformat_mode_line): Now returns propertized string by
8319 default. New arg NO-PROPS to ignore properties.
8320 (decode_mode_spec): Only add two dashes for %- in propertized
8321 mode-line string.
8322 (syms_of_xdisp): Init and staticpro mode_line_string_list.
8323
83242002-06-27 Stefan Monnier <monnier@cs.yale.edu>
8325
8326 * minibuf.c (minibuffer_completion_contents): Add return type.
8327
83282002-06-27 Juanma Barranquero <lektu@terra.es>
8329
8330 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
8331
83322002-06-26 Juanma Barranquero <lektu@terra.es>
8333
8334 * fileio.c (read_file_name_cleanup): Add missing return.
8335
83362002-06-26 Richard M. Stallman <rms@gnu.org>
8337
8338 * window.c (Frecenter): Don't set force_start flag.
8339
8340 * minibuf.c (do_completion, Fminibuffer_complete_word)
8341 (Fminibuffer_completion_help): Complete just the text before point.
8342 (minibuffer_completion_contents): New function.
8343
8344 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
8345
8346 * frame.c (frames_bury_buffer): Function deleted.
8347
83482002-06-25 Miles Bader <miles@gnu.org>
8349
8350 * callint.c (Fcall_interactively): When checking to see if doprnt hit
8351 the end of callint_message, allow for a terminating '\0'.
8352
83532002-06-24 Juanma Barranquero <lektu@terra.es>
8354
8355 * w32select.c: Include composite.h
8356
8357 * w16select.c: Likewise.
8358
83592002-06-24 Kenichi Handa <handa@etl.go.jp>
8360
8361 * callproc.c (Fcall_process): If code detection is necessary,
8362 call detect_coding directly here.
8363
8364 * coding.c (detect_eol): Preserve coding->cmp_data.
8365
8366 * w16select.c (Fw16_get_clipboard_data):
8367 * w32fns.c (w32_to_x_font):
8368 * w32select.c (Fw32_get_clipboard_data):
8369 * xselect.c (selection_data_to_lisp_data):
8370 * xterm.c (XTread_socket): Disable composition handling.
8371
83722002-06-24 Stefan Monnier <monnier@cs.yale.edu>
8373
8374 * print.c (temp_output_buffer_setup): Kill all local variables.
8375
83762002-06-22 Stefan Monnier <monnier@cs.yale.edu>
8377
8378 * lread.c (Fread): Remove redundant and imprecise declaration.
8379
8380 * xfns.c (check_x_display_info): Use check_x_frame.
8381
8382 * .gdbinit (xprintsym): Use the new `xname' field.
8383 (xsymbol): Use it.
8384
83852002-06-22 Jason Rumney <jasonr@gnu.org>
8386
8387 * w32fns.c (file_dialog_callback): New function.
8388 (Fx_file_dialog): Allow selecting directories as well as files.
8389
83902002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8391
8392 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
8393 OpenBSD. Add support for mipseb-*-netbsd* machines.
8394
83952002-06-17 Andrew Choi <akochoi@shaw.ca>
8396
8397 * macterm.c (mac_scroll_area): Set foreground and backcolor to
8398 black and white before scrolling. Restore frame background and
8399 foreground color after scrolling.
8400 (do_window_update): Call XClearWindow before calling expose_frame.
8401 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
8402 FRAME_FOREGROUND_PIXEL of frame.
8403
8404 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
8405 test Mac command key as <ALT> key.
8406
84072002-06-17 Stefan Monnier <monnier@cs.yale.edu>
8408
8409 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
8410
8411 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
8412 Lookup keys in function-key-map immediately so that key-translation-map
8413 can be applied earlier.
8414 Remove function_key_possible and key_translation_possible, replaced
8415 by checking `keytran_start < t'.
8416
8417 * .gdbinit (xsymbol): Use the new `xname' field.
8418
84192002-06-17 Andrew Choi <akochoi@shaw.ca>
8420
8421 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
8422 test Mac command key as <ALT> key.
8423
8424 * mac.c (do_applescript): Call initialize_applescript if necessary
8425 when first called. Dispose of result_desc only when there is no error.
8426 (Fdo_applescript): Use %d format specifier instead of %ld.
8427
84282002-06-16 Andrew Choi <akochoi@shaw.ca>
8429
8430 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
8431 of FrontWindow for cases keyDown and autoKey.
8432
8433 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
8434 Vdefault_fontset to Monaco with mac-roman coding.
8435
8436 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
8437 init_process before and after inclusion of Carbon/Carbon.h, resp.
8438
8439 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
8440 cursor_gc.
8441 (add_font_name_table_entry): New function.
8442 (init_font_name_table): Use add_font_name_table_entry; add italic,
8443 bold, and bold-italic entries for truetype fonts.
8444
8445 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
8446 for Mac too.
8447 (try_font_list) [MAC_OS]: If no font matches given registry, try
8448 fonts with any registry matching face_family.
8449 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
8450
8451 * s/darwin.h: If autoconf detects the Ncurses library, define
8452 LIBS_TERMCAP to -lncurses to use it.
8453
84542002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
8455
8456 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
8457
84582002-06-15 Richard M. Stallman <rms@gnu.org>
8459
8460 * window.c (Fset_window_configuration): Explicitly preserve
8461 the point value that new_current_buffer had at the start.
8462
84632002-06-14 Juanma Barranquero <lektu@terra.es>
8464
8465 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
8466 Fix typos.
8467
84682002-06-14 Kim F. Storm <storm@cua.dk>
8469
8470 * insdel.c (insert_1_both, insert_from_string_1)
8471 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
8472 insert happened in the end_unchanged region. Otherwise, the
8473 redisplay may be confused and duplicate the last line in the
8474 buffer [seen after save-buffer when require-final-newline==t].
8475
84762002-06-13 Jason Rumney <jasonr@gnu.org>
8477
8478 * w32.c (init_environment): Remove EMACSLOCKDIR.
8479 (stat): Swap _S_IFDIR and _S_IFREG.
8480
84812002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8482
8483 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
8484 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
8485 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
8486 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
8487 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
8488 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
8489 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
8490 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
8491 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
8492 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
8493 SELECTION_REQUEST_EVENT, selection_clear_event to
8494 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
8495 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
8496 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
8497 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
8498 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
8499 no_event to NO_EVENT.
8500
85012002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8502
8503 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
8504
85052002-06-12 Stefan Monnier <monnier@cs.yale.edu>
8506
8507 * intervals.c (textget): Don't forget to `return'.
8508 (lookup_char_property): Use XCAR/XCDR.
8509
85102002-06-12 Juanma Barranquero <lektu@terra.es>
8511
8512 * xdisp.c (Fformat_mode_line): Fix typo.
8513
85142002-06-12 Kim F. Storm <storm@cua.dk>
8515
8516 * xdisp.c (Fformat_mode_line): New function.
8517 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
8518 (store_frame_title_char, store_frame_title): Use unconditionally.
8519 (init_xdisp): Defsubr Fformat_mode_line.
8520 Initialize frame_title_buf etc. unconditionally.
8521
85222002-06-11 Stefan Monnier <monnier@cs.yale.edu>
8523
8524 * keyboard.c (read_key_sequence):
8525 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
8526 things through those maps after downcasing events.
8527 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
8528 applies after function-key-map.
8529 Make sure that keytran can be done in the middle in the sequence.
8530 Be careful not to throw away events past the one we downcase.
8531
8532 * lread.c (read_integer): Remove unused var `tem'.
8533 (read1): Fix int/Lisp_Object mixup.
8534
8535 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
8536
85372002-06-11 Richard M. Stallman <rms@gnu.org>
8538
8539 * keyboard.c (readable_events): Ignore any number of
8540 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
8541
85422002-06-09 Miles Bader <miles@gnu.org>
8543
8544 * xfaces.c (Ftty_supports_face_attributes_p): New function.
8545 (parse_rgb_list, tty_lookup_color): New functions.
8546 (tty_defined_color): Use `tty_lookup_color' to do all the work.
8547 (color_distance, Fcolor_distance): New functions.
8548 (TTY_SAME_COLOR_THRESHOLD): New macro.
8549 (Qtty_color_standard_values): New variable.
8550 (syms_of_xfaces): Initialize new vars & functions.
8551
85522002-06-08 Colin Walters <walters@verbum.org>
8553
8554 * textprop.c (Vchar_property_alias_alist): New variable.
8555 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
8556
8557 * intervals.c (lookup_char_property): New function for looking up
8558 overlay and text properties, created from textget.
8559 (textget): Use it.
8560
8561 * intervals.h (lookup_char_property): Declare.
8562 (Vchar_property_alias_alist): Declare.
8563
8564 * buffer.c (Foverlay_get): Use lookup_char_property.
8565
85662002-06-07 Sam Steingold <sds@gnu.org>
8567
8568 * xselect.c (lisp_data_to_selection_data): Fix last change:
8569 *data_ret is not a Lisp string, while unibyte_string is.
8570
85712002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
8572
8573 * xselect.c (lisp_data_to_selection_data): Fix last change:
8574 set size_ret.
8575
85762002-06-07 Andreas Schwab <schwab@suse.de>
8577
8578 * m/amdx86-64.h: New file.
8579
85802002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
8581
8582 * fns.c (Fstring_make_unibyte): Doc fix.
8583
8584 * xselect.c (lisp_data_to_selection_data): If the requested type
8585 is STRING, call string_make_unibyte to encode the selected text
8586 as a string.
8587
8588 * window.c (Fset_window_hscroll): Doc fix.
8589
85902002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8591
8592 * fileio.c (choose_write_coding_system):
8593 Call select-safe-coding-system properly.
8594
85952002-06-03 Richard M. Stallman <rms@gnu.org>
8596
8597 * xdisp.c (message_with_string): Error if STRING is not a string.
8598
8599 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
8600
8601 * fileio.c (choose_write_coding_system): Pass FILE arg to
8602 Vselect_safe_coding_system_function.
8603
86042002-06-03 Ken Raeburn <raeburn@gnu.org>
8605
8606 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
8607
86082002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
8609
8610 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
8611 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
8612 * keymap.c (describe_command): Likewise.
8613 * minibuf.c (read_minibuf): Likewise.
8614
8615 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
8616 Cast `current_column' return value to int.
8617 (back_to_previous_visible_line_start)
8618 (reseat_at_next_visible_line_start, next_element_from_buffer):
8619 Cast `indented_beyond_p' 3rd arg to float.
8620
8621 * indent.c (last_known_column): Now a float.
8622 (current_column_1, position_indentation, current_column)
8623 (string_display_width): Return float.
8624 (Fcurrent_column): Cast `current_column' return value to int.
8625 (Fcurrent_indentation): Cast `position_indentation' retval to int.
8626 (indented_beyond_p): Third arg now a float.
8627 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
8628
8629 * lisp.h (current_column): Now returns float.
8630 (indented_beyond_p): 3rd arg now a float.
8631
86322002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
8633
8634 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
8635 is Qcompound_text_with_extensions.
8636
8637 * xselect.c (lisp_data_to_selection_data): Always set selection
8638 type as string if x_encode_text returns streingp non-NULL.
8639
8640 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
8641
86422002-05-30 Richard M. Stallman <rms@gnu.org>
8643
8644 * window.c (Fset_window_configuration): Correct the handling
8645 of point in current buffer, to work with multiple windows.
8646
86472002-05-29 Colin Walters <walters@verbum.org>
8648
8649 * lread.c (Fread_from_string): Don't depend on order of evaluation
8650 for C function parameters.
8651
86522002-05-28 Richard M. Stallman <rms@gnu.org>
8653
8654 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
8655 way for blinked-off state and for a nonselected window.
8656
8657 * window.c (window_scroll_pixel_based): Don't call Fbolp;
8658 instead, see if the new start pos is at beginning of line.
8659
8660 * fileio.c (Fwrite_region): If START is a string, don't
8661 make any annotations.
8662
8663 * eval.c (syms_of_eval): Doc fix.
8664
86652002-05-28 Colin Walters <walters@debian.org>
8666
8667 * emacs.c (USAGE1): Add --no-splash.
8668 (standard_args): Ditto.
8669
86702002-05-28 Colin Walters <walters@gnu.org>
8671
8672 * lread.c (readchar_count): New variable.
8673 (readchar): Increment it.
8674 (unreadchar): Decrement it.
8675 (read_multibyte): Decrement it.
8676 (Vread_with_symbol_positions): New variable.
8677 (Vread_symbol_positions_list): New variable.
8678 (read_internal_start): New function, created from Fread and
8679 Fread_from_string. Handle Vread_symbol_positions_list and
8680 Vread_with_symbol_positions.
8681 (readevalloop, Fread, Fread_from_string): Use it.
8682 (read1): Use readchar_count to add symbol positions to
8683 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
8684 (syms_of_lread): DEFVAR_LISP and initialize them.
8685
8686 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
8687 (substitute_object_recurse, substitute_object_in_subtree)
8688 (substitute_in_interval): Prototype.
8689 (read_multibyte): Return c if it's less than zero.
8690
86912002-05-28 Kim F. Storm <storm@cua.dk>
8692
8693 * fileio.c (Fread_file_name_internal): Added brute-force
8694 speed up for using predicate file-directory-p.
8695
86962002-05-28 Kim F. Storm <storm@cua.dk>
8697
8698 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
8699 New variables.
8700 (syms_of_fileio): DEFVAR_LISP them.
8701 (read_file_name_cleanup): New unwind function.
8702 (Fread_file_name_internal): Only return completions satifying
8703 Vread_file_name_predicate. Temporarily unwind protect and rebind
8704 default-directory while checking completions against the predicate.
8705 (Fread_file_name): Added PREDICATE argument. Specbind it to
8706 Vread_file_name_predicate during completion.
8707 Call Vread_file_name_function to read the file name if non-nil.
8708
8709 * lisp.h (Fread_file_name): Now has 6 args.
8710
8711 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
8712 predicate for Fread_file_name when reading directory name.
8713 Supply Qnil for predicate in other calls to Fread_file_name.
8714
87152002-05-26 Miles Bader <miles@gnu.org>
8716
8717 * term.c (tty_capable_p): New function.
8718 * dispextern.h (tty_capable_p): New function declaration.
8719 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
8720 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
8721
87222002-05-23 Stefan Monnier <monnier@cs.yale.edu>
8723
8724 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
8725 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
8726 (Vwrite_region_annotate_functions): Docstring fix.
8727
87282002-05-23 Kim F. Storm <storm@cua.dk>
8729
8730 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
8731 phys_cursor's hpos is overwritten. This is still not completely
8732 correct, as it doesn't really make sense to use hpos at all to
8733 get the cursor glyph (as that is relative to the width of the
8734 characters on the line, which may have changed during the update).
8735
87362002-05-22 Jason Rumney <jasonr@gnu.org>
8737
8738 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
8739 Lisp_Object.
8740 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
8741 Use modified enumfont_t struct.
8742
8743 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
8744
8745 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
8746 Handle the `hbar' cursor type.
8747 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
8748
8749 * w32fns.c (Qhbar): New variable.
8750 (x_specified_cursor_type): Use it.
8751
87522002-05-21 Ken Raeburn <raeburn@gnu.org>
8753
8754 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
8755 now, when the address is needed.
8756
87572002-05-21 Colin Walters <walters@gnu.org>
8758
8759 * Makefile.in (shortlisp): Add font-core.el.
8760
87612002-05-20 Richard M. Stallman <rms@gnu.org>
8762
8763 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
8764
8765 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
8766 equivalent key bindings here.
8767
87682002-05-20 Ken Raeburn <raeburn@gnu.org>
8769
8770 Change symbol structure to contain a lisp object for the symbol
8771 name:
8772 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
8773 object field named "xname".
8774 (SYMBOL_NAME): New macro.
8775 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
8776 name field.
8777 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
8778 (mark_object, gc_sweep): Use symbol xname field and XSTRING
8779 instead of name field.
8780 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
8781 SYMBOL_NAME instead of XSYMBOL and name field.
8782 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
8783 instead of XSYMBOL and name field.
8784 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
8785 and SYMBOL_NAME instead of XSYMBOL and name field.
8786 * coding.c (Fread_coding_system, code_convert_region1)
8787 (code_convert_string1, code_convert_string_norecord)
8788 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
8789 XSYMBOL and name field.
8790 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
8791 (Fmake_variable_buffer_local, Fmake_local_variable)
8792 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
8793 of XSYMBOL and name field.
8794 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
8795 XSYMBOL and name field.
8796 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
8797 instead of XSYMBOL and name field.
8798 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
8799 XSYMBOL and name field.
8800 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
8801 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
8802 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
8803 instead of XSYMBOL and name field.
8804 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
8805 (parse_modifiers, apply_modifiers, Fevent_convert_list)
8806 (parse_solitary_modifier, Fexecute_extended_command):
8807 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
8808 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
8809 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
8810 of XSYMBOL and name field.
8811 (describe_command, describe_translation): Use SYMBOL_NAME and
8812 assignment instead of XSYMBOL and name field and XSETSTRING.
8813 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
8814 instead of XSYMBOL and name field.
8815 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
8816 name field and XSETSTRING.
8817 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
8818 of XSYMBOL and name field.
8819 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
8820 assignment instead of XSYMBOL and name field and XSETSTRING.
8821 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
8822 XSTRING instead of XSYMBOL and name field.
8823 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
8824 and XSTRING instead of XSYMBOL and name field.
8825 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
8826 and XSTRING instead of XSYMBOL and name field.
8827 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
8828 XSTRING instead of XSYMBOL and name field.
8829 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
8830 of XSYMBOL and name field.
8831 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
8832 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
8833
88342002-05-19 Ken Raeburn <raeburn@gnu.org>
8835
8836 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
8837 and XCDR real rvalues in most configurations.
8838
8839 * buffer.c (fix_overlays_in_range, fix_overlays_before):
8840 Don't take the address of the cdr part of a cons cell; instead, track
8841 the parent cell and call XSETCDR, or set the variable for the head
8842 of the list if we haven't started down the list yet.
8843
88442002-05-19 Richard M. Stallman <rms@gnu.org>
8845
8846 * doc.c (reread_doc_file): Don't ask for confirmation.
8847
88482002-05-18 Jason Rumney <jasonr@gnu.org>
8849
8850 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
8851 (xbm_load_image): Use it.
8852 (xbm_load): Ditto.
8853 (xbm_read_bitmap_data): Reverted to xfns.c version.
8854 From David Ponce <david@dponce.com>.
8855
88562002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
8857
8858 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
8859 2.02 and later.
8860
88612002-05-16 Juanma Barranquero <lektu@terra.es>
8862
8863 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
8864
88652002-05-15 Stefan Monnier <monnier@cs.yale.edu>
8866
8867 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
8868 meaningful test.
8869 (read_char_minibuf_menu_prompt): Fix typo.
8870
88712002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
8872
8873 * eval.c (Fcommandp): Doc fix.
8874
88752002-05-13 Stefan Monnier <monnier@cs.yale.edu>
8876
8877 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
8878 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
8879 (Fset_keymap_parent): Gcpro a bit more.
8880 (access_keymap): Gcpro around meta_map call and around the main loop.
8881 (get_keyelt): Gcpro when following indirect references.
8882 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
8883 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
8884 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
8885 Remove useless ad-hoc remap code.
8886
88872002-05-13 Richard M. Stallman <rms@gnu.org>
8888
8889 * search.c (search_buffer): Give up boyer moore search if inverse
8890 translation change charset_base.
8891
88922002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
8893
8894 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
8895 characters is carried over from the previous block of text, adjust
8896 coding->produced to account for the extra character.
8897
88982002-05-11 Andreas Schwab <schwab@suse.de>
8899
8900 * coding.c (intersection): Keep the elements of the returned list
8901 in the same order as in the first list.
8902
89032002-05-11 Kim F. Storm <storm@cua.dk>
8904
8905 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
8906 only update cmm_size if realloc actually succeeds.
8907 Testing with initial size of 2 elements revealed that using
8908 realloc on GNU/Linux would cause a random trap in xmalloc
8909 later on, so I rewrote the code to use malloc/bcopy/free instead
8910 of realloc.
8911
89122002-05-10 Jason Rumney <jasonr@gnu.org>
8913
8914 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
8915
89162002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
8917
8918 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
8919 parens, to ensure correct evaluation order.
8920
89212002-05-10 Kim F. Storm <storm@cua.dk>
8922
8923 * keymap.c (Vemulation_mode_map_alists): New variable.
8924 (syms_of_keymap): DEFVAR_LISP it.
8925 (current_minor_maps): Process keymap alists in that list before
8926 minor-mode-overriding-map-alist and minor-mode-map-alist.
8927
89282002-05-09 Richard M. Stallman <rms@gnu.org>
8929
8930 * search.c (Freplace_match): Doc fix.
8931
89322002-05-09 Kim F. Storm <storm@cua.dk>
8933
8934 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
8935 Enlarge cursor rectangle drawn around image with non-zero relief.
8936
8937 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
8938 Enlarge cursor rectangle drawn around image with non-zero relief.
8939
8940 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
8941 Enlarge cursor rectangle drawn around image with non-zero relief.
8942
89432002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
8944
8945 * xselect.c (lisp_data_to_selection_data): Don't set selection
8946 type if comes from the Lisp object's car. If the selection
8947 contains a pure ASCII text, always return QSTRING as its type.
8948
89492002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8950
8951 * mac.c (mac-cut-function): Doc fix.
8952
89532002-05-05 Richard M. Stallman <rms@gnu.org>
8954
8955 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
8956
89572002-05-04 Jason Rumney <jasonr@gnu.org>
8958
8959 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
8960 for event-click-count.
8961
8962 * process.c (init_process): Only add server subfeature if we can
8963 use non-blocking I/O.
8964
89652002-05-04 Andrew Choi <akochoi@shaw.ca>
8966
8967 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
8968 repeatedly.
8969
89702002-05-03 Jason Rumney <jasonr@gnu.org>
8971
8972 * process.c (Fmake_network_process): Only support server sockets
8973 when we can make them non-blocking.
8974
8975 * s/ms-w32.h (HAVE_SELECT): Define.
8976
8977 * w32.h (FILE_NDELAY): New flag.
8978
8979 * w32.c (sys_getpeername, fcntl): New functions.
8980 (_sys_read_ahead): Temporarily block on non-blocking sockets.
8981
8982 * w32proc.c: include sys/file.h.
8983
89842002-05-03 Colin Walters <walters@verbum.org>
8985
8986 * callproc.c (Vgame_score_directory): Renamed to
8987 Vshared_game_score_directory.
8988
89892002-04-30 Richard M. Stallman <rms@gnu.org>
8990
8991 * s/gnu.h [emacs]: Include stdio.h.
8992 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
8993
8994 * eval.c (do_autoload): Error if called while preparing to dump.
8995
8996 * fns.c (Frequire): Error if need to load while preparing to dump.
8997
89982002-04-28 Colin Walters <walters@verbum.org>
8999
9000 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
9001 Default to "~/.emacs.d/games".
9002
90032002-04-29 Stefan Monnier <monnier@cs.yale.edu>
9004
9005 * lread.c (openp): Change arg exec_only to predicate.
9006 (build_load_history): Use XCAR/XCDR.
9007 (Flocate_file_internal): New fun.
9008 (syms_of_lread): Defsubr it.
9009 (Fload): Update call to openp.
9010
9011 * lisp.h (openp): Update prototype.
9012
9013 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
9014 * w32proc.c (sys_spawnve):
9015 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
9016 * w32.c (check_windows_init_file):
9017 * sound.c (Fplay_sound_internal):
9018 * process.c (Fstart_process):
9019 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
9020 * mac.c (run_mac_command):
9021 * emacs.c (init_cmdargs):
9022 * callproc.c (Fcall_process): Update call to openp.
9023
9024 * textprop.c (remove_properties): Don't use XCAR without CONSP.
9025
9026 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
9027
90282002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9029
9030 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
9031 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
9032
90332002-04-28 Richard M. Stallman <rms@gnu.org>
9034
9035 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
9036
9037 * eval.c (Fcommandp): New arg for_call_interactively.
9038 * lisp.h (Fcommandp): Declare new arg.
9039
90402002-04-28 Jason Rumney <jasonr@gnu.org>
9041
9042 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
9043
9044 * w32.c (stat, fstat): Use file index information to generate
9045 inodes for directories where available.
9046
90472002-04-26 Andrew Choi <akochoi@shaw.ca>
9048
9049 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
9050 [HAVE_CARBON]: Include Mac object files.
9051
9052 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
9053 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
9054 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
9055 MAC_OSX, and MAC_OS instead of macintosh.
9056
9057 * editfns.c [MAC_OS8]: Include stdio.h.
9058
9059 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
9060
9061 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
9062 Apple Monaco.
9063
9064 * process.c: Declare QCfamily and QCfilter as extern.
9065 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
9066 calling select.
9067
9068 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
9069
9070 * tparam.c [MAC_OSX]: Don't define BC and UP.
9071
9072 * config.in [HAVE_CARBON]: Add.
9073
9074 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
9075 Move here from mac/src and mac/inc.
9076
9077 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
9078
90792002-04-26 Gerd Moellmann <gerd@gnu.org>
9080
9081 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
9082 Compute phys_cursor_width from the x position returned
9083 by x_draw_glyhs, which is cheaper.
9084 (x_display_and_set_cursor): Compute the buffer-local value
9085 of `cursor-in-non-selected-windows' only when needed.
9086
90872002-04-25 Gerd Moellmann <gerd@gnu.org>
9088
9089 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
9090 cursor on a stretch glyph has a width that depends on
9091 x_stretch_cursor_p.
9092
90932002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9094
9095 * abbrev.c (abbrev-start-location): Doc fix.
9096
9097 * indent.c (Fvertical_motion): Fix last change.
9098
90992002-04-25 Gerd Moellmann <gerd@gnu.org>
9100
9101 * indent.c (Fvertical_motion): Move to the start of the line
9102 containing PT before moving up or down.
9103
91042002-04-24 Gerd Moellmann <gerd@gnu.org>
9105
9106 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
9107 case of writing a whole row, more or less analogous to the case of
9108 writing only parts of a row.
9109
9110 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
9111 0 for NO_CURSOR.
9112
9113 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
9114
91152002-04-23 Colin Walters <walters@verbum.org>
9116
9117 * buffer.c (syms_of_buffer): Doc fix.
9118
91192002-04-23 Gerd Moellmann <gerd@gnu.org>
9120
9121 * xterm.c (notice_overwritten_cursor): Handle the special case
9122 of the cursor being in the first blank non-text line at the
9123 end of a window.
9124
9125 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
9126 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
9127 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
9128 bar cursors only, to make phys_cursor_width contain what its name
9129 suggests.
9130 (notice_overwritten_cursor): Consider the cursor image erased if
9131 the output area intersects the cursor image in y-direction.
9132
91332002-04-23 Simon Marshall <simon@gnu.org>
9134
9135 * xfns.c (x_set_mouse_color): Change default for cross_cursor
9136 to XC_hand2.
9137
91382002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9139
9140 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
9141
91422002-04-22 Kim F. Storm <storm@cua.dk>
9143
9144 * textprop.c (remove_properties): Fixed trap for malformed plist.
9145
91462002-04-22 Richard M. Stallman <rms@gnu.org>
9147
9148 * cmds.c (Fend_of_line): Handle intangible text in mid line.
9149
9150 * window.c (make_window): Initialize height_fixed_p,
9151 last_cursor_off_p, and p->cursor_off_p slots.
9152
91532002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9154
9155 * fns.c (use-dialog-box): Doc fix.
9156
91572002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9158
9159 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
9160 variables `row', `i' and `area'.
9161 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
9162 toolkit library.
9163
91642002-04-19 Stefan Monnier <monnier@cs.yale.edu>
9165
9166 * xfaces.c (clear_font_table): Don't free the default font of
9167 a frame even if it's on another display.
9168 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
9169 that could be Qt.
9170
91712002-04-19 Juanma Barranquero <lektu@terra.es>
9172
9173 * indent.c (Fmove_to_column): Remove unused local variable
9174 `next_boundary_byte'.
9175 (current_column_1): Likewise.
9176
91772002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
9178
9179 * msdos.c (Qhbar): New variable.
9180 (syms_of_msdos): Intern and staticpro it.
9181 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
9182 cursor type.
9183
91842002-04-19 Dave Lambert <dlambert@acm.org>
9185
9186 Theses change implement an underscore-like (`hbar') cursor.
9187
9188 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
9189
9190 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
9191 Handle the `hbar' cursor type.
9192 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
9193
9194 * xfns.c (Qhbar): New variable.
9195 (syms_of_xfns): Intern and staticpro it.
9196 (x_specified_cursor_type): Handle `hbar' cursor.
9197
9198 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
9199 not defined.
9200
92012002-04-18 Richard M. Stallman <rms@gnu.org>
9202
9203 * textprop.c (remove_properties): New arg LIST allows scanning
9204 either a list or a plist.
9205 (interval_has_some_properties_list): New function, like
9206 interval_has_some_properties using list instead of plist.
9207 All callers changed.
9208 (Fremove_list_of_text_properties): New function.
9209 (syms_of_textprop): Defsubr it.
9210
92112002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
9212
9213 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
9214
92152002-04-17 Juanma Barranquero <lektu@terra.es>
9216
9217 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
9218
92192002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
9220
9221 * window.c (coordinates_in_window): Don't report on margin area
9222 if its width is zero.
9223
92242002-04-16 Jason Rumney <jasonr@gnu.org>
9225
9226 * w32fns.c (Fx_file_dialog): Decode file name before using.
9227
9228 * w32term.c (construct_drag_n_drop): Likewise.
9229
92302002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
9231
9232 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
9233 store load-history in pure space.
9234
9235 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
9236
92372002-04-16 Stefan Monnier <monnier@cs.yale.edu>
9238
9239 * xterm.c (Qlatin_1, Qutf_8): New vars.
9240 (syms_of_xterm): Initialize them.
9241 (XTread_socket): Eliminate incorrect optimization that tried to avoid
9242 decoding the output of X*LookupString.
9243 Always use latin-1 to decode the output of XLookupString.
9244 Try Xutf8LookupString if XmbLookupString failed.
9245
9246 * region-cache.c (new_region_cache): Use BEG.
9247
92482002-04-16 Gerd Moellmann <gerd@gnu.org>
9249
9250 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
9251 configuration files.
9252 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
9253 returns 0.
9254
92552002-04-15 Andreas Schwab <schwab@suse.de>
9256
9257 * config.in: Regenerated using autoheader.
9258
9259 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
9260 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
9261 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
9262 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
9263 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
9264 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
9265 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
9266 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
9267 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
9268 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
9269 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
9270 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
9271 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
9272 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
9273 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
9274 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
9275 STACK_DIRECTION, now set by autoconf.
9276
92772002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9278
9279 * dispnew.c (marginal_area_string): Sort arguments.
9280
9281 * dispextern.h (marginal_area_string): Add prototype.
9282
92832002-04-13 Richard M. Stallman <rms@gnu.org>
9284
9285 * fileio.c (Finsert_file_contents):
9286 Don't call temp_output_buffer_setup--do just part, by hand.
9287
9288 * coding.c (run_pre_post_conversion_on_str):
9289 Don't call temp_output_buffer_setup--do just part, by hand.
9290
9291 * keyboard.c (command_loop_1): Don't call start_hourglass
9292 or cancel_hourglass when executing a macro.
9293
9294 * marker.c (count_markers): New function.
9295
9296 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
9297 grow without limit. Move recently used elements to the front.
9298
92992002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
9300
9301 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
9302
93032002-04-12 Gerd Moellmann <gerd@gnu.org>
9304
9305 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
9306 rows marginal areas.
9307 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
9308 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
9309
9310 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
9311
93122002-04-12 Dave Love <fx@gnu.org>
9313
9314 * dispnew.c (marginal_area_string): New.
9315
9316 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
9317 (Qleft_margin, Qright_margin): Declare.
9318 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
9319
9320 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
9321 note_mode_line_highlight and extended.
9322
9323 * keyboard.c (Qleft_margin, Qright_margin): Declare.
9324 (make_lispy_event): Deal with mouse events in margins.
9325
93262002-04-12 Stefan Monnier <monnier@cs.yale.edu>
9327
9328 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
9329
9330 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
9331 than deactivating the mark if tmm is set to `lambda'.
9332 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
9333 Use a single event for HELP_EVENT.
9334 (Fexecute_extended_command): Save last_point_position.
9335
93362002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9337
9338 * lisp.h (Fpropertize): Add prototype.
9339
9340 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
9341
93422002-04-10 Colin Walters <walters@verbum.org>
9343
9344 * config.in: Add HAVE_SHARED_GAME_DIR.
9345
9346 * callproc.c: (Vgame_score_directory): New variable.
9347 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
9348
93492002-04-10 Richard M. Stallman <rms@gnu.org>
9350
9351 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
9352
93532002-04-09 Stefan Monnier <monnier@cs.yale.edu>
9354
9355 * minibuf.c (read_minibuf): Use empty_string.
9356 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
9357 Short-circuit the search as soon as it "failed".
9358 (Fall_completions): Allow lambda forms and lists of strings for alist.
9359 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
9360 when require_match is nil.
9361 (Ftest_completion): Rename from `test_completion' and export to elisp.
9362 Call the predicate also when alist is a list.
9363 Obey Vcompletion_regexp_list.
9364 (do_completion, Fminibuffer_complete_and_exit): Use it.
9365 (Fassoc_string): Rename from `assoc_for_completion'.
9366 Allow list of strings as well and export to elisp.
9367
93682002-04-08 Stefan Monnier <monnier@cs.yale.edu>
9369
9370 * puresize.h (BASE_PURESIZE): Increase to 900KB.
9371
93722002-04-08 Juanma Barranquero <lektu@terra.es>
9373
9374 * w32.c (sys_accept): Don't hide variable `s'.
9375
93762002-04-05 Gerd Moellmann <gerd@gnu.org>
9377
9378 * callint.c (Fcall_interactively): Use INTEGERP instead of
9379 NUMBERP for checking Vhistory_length.
9380
93812002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9382
9383 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
9384 Doc fix to reflect it.
9385
93862002-04-04 Richard M. Stallman <rms@gnu.org>
9387
9388 * xdisp.c (display_mode_element): New arg RISKY.
9389 Disregard text props found or specified within a variable
9390 that isn't marked risky-local-variable.
9391 (Qrisky_local_variable): New variable.
9392 (syms_of_xdisp): Init and staticpro it.
9393
93942002-04-04 Stefan Monnier <monnier@cs.yale.edu>
9395
9396 * undo.c (record_point): New fun.
9397 (record_delete, record_insert): Use it.
9398
93992002-04-03 Juanma Barranquero <lektu@terra.es>
9400
9401 * doc.c (Fdocumentation): Add missing parentheses.
9402 (Fdocumentation_property): Likewise.
9403
94042002-04-03 Stefan Monnier <monnier@cs.yale.edu>
9405
9406 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
9407 data is 0, just return nil.
9408
94092002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
9410
9411 * msdos.c (syms_of_msdos): Fix last change with
9412 mouse_autoselect_window.
9413
94142002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9415
9416 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
9417 mouse_autoselect_window.
9418
94192002-04-02 Stefan Monnier <monnier@cs.yale.edu>
9420
9421 * keyboard.c (make_lispy_event): Handle unknown keysyms together
9422 with system-specific keysyms. Use it also for unknown function keys.
9423
9424 * doc.c (reread_doc_file): Return whether reload was attempted.
9425 (Fdocumentation, Fdocumentation_property): Don't try to reload
9426 if the doc is 0 and only ask once.
9427
9428 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
9429
94302002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
9431
9432 * keyboard.c (read_char): If the event was Qselect_window,
9433 restore timer_idleness_start_time to its previous value.
9434
9435 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
9436
94372002-04-01 Stefan Monnier <monnier@cs.yale.edu>
9438
9439 * region-cache.c (new_region_cache): Use BEG.
9440
9441 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
9442 Use BEG and BEG_BYTE.
9443
9444 * doc.c (get_doc_string): Return nil if the location is wrong.
9445 (reread_doc_file): New fun.
9446 (Fdocumentation, Fdocumentation_property):
9447 Call it if get_doc_string fails.
9448 (Fsnarf_documentation): Make it work for a dumped Emacs.
9449
9450 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
9451 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
9452
9453 * charset.c (Fstring): Allow 0 arguments.
9454
9455 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
9456
9457 * process.c (DATAGRAM_CONN_P, list_processes_1)
9458 (Fprocess_datagram_address, Fset_process_datagram_address)
9459 (Fset_network_process_options, server_accept_connection):
9460 Fix some int/Lisp_Object confusions (thank you union types).
9461
94622002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9463
9464 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
9465
9466 * w32term.c: Likewise.
9467 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
9468
9469 * keyboard.c (Qselect_window): New symbol.
9470 (head_table): Use it.
9471 (keys_of_keyboard): Bound select-window event to handle-select-window.
9472 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
9473
9474 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
9475 (last_window): New variable.
9476 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
9477 (note_mouse_movement): Remove reimplemented code in #if 0.
9478 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
9479 Emacs windows.
9480
9481 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
9482
94832002-03-31 Gerd Moellmann <gerd@gnu.org>
9484
9485 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
9486 Callers changed.
9487
94882002-03-30 Richard M. Stallman <rms@gnu.org>
9489
9490 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
9491 loop whenever it stops making progress.
9492
9493 * widget.c (set_frame_size): Don't call change_frame_size.
9494
94952002-03-30 Gerd Moellmann <gerd@gnu.org>
9496
9497 * dispnew.c (direct_output_for_insert):
9498 Call mark_window_display_accurate.
9499
95002002-03-29 Jason Rumney <jasonr@gnu.org>
9501
9502 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
9503
95042002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
9505
9506 * Makefile.in (lread.o): Depend on coding.h.
9507
9508 * lread.c (openp, Fload): Encode the file name before passing it
9509 to `stat', `access', and `emacs_open'.
9510 (openp): GCPRO the encoded file name. Don't recompute Lisp
9511 strings unnecessarily.
9512
95132002-03-29 Kim F. Storm <storm@cua.dk>
9514
9515 * fns.c (Flax_plist_put): Doc fix.
9516
95172002-03-28 Miles Bader <miles@gnu.org>
9518
9519 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
9520
95212002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9522
9523 * process.c (set-network-process-options): Add usage.
9524 (make-network-process): Doc fix.
9525
95262002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
9527
9528 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
9529
95302002-03-26 Richard M. Stallman <rms@gnu.org>
9531
9532 * fns.c (Fsubstring_no_properties): New function.
9533 (Flax_plist_get, Flax_plist_put): New functions.
9534 (syms_of_fns): defsubr them.
9535
9536 * xdisp.c (update_menu_bar): Test only update_mode_lines;
9537 don't test or alter w->update_mode_line.
9538
9539 * window.c (Fdisplay_buffer): Doc fix.
9540
95412002-03-24 Richard M. Stallman <rms@gnu.org>
9542
9543 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
9544
95452002-03-24 Gerd Moellmann <gerd@gnu.org>
9546
9547 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
9548 (Fdefmacro): Handle `(declare ...)'.
9549 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
9550 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
9551
95522002-03-24 Jason Rumney <jasonr@gnu.org>
9553
9554 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
9555 (xbm_file_p): Add prototypes.
9556 (xbm_format, xbm_image_p): Sync with xfns.c.
9557 (reflect_byte): New function.
9558 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
9559 (xbm_load_image): Create bitmaps with a depth of 1.
9560 (init_xfns): Enable XBM images.
9561
95622002-03-23 Jason Rumney <jasonr@gnu.org>
9563
9564 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
9565 correctly. Do not pass up_modifier to keyboard buffer.
9566
9567 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
9568
95692002-03-22 Stefan Monnier <monnier@cs.yale.edu>
9570
9571 * Makefile.in (bootstrapclean): New target.
9572 (bootstrap-temacs, bootstrap-doc): Remove.
9573 (bootstrap-emacs): Use a bog-standard `temacs'.
9574 Don't bother to build a DOC file.
9575
9576 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
9577
9578 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
9579 in temacs even if !CANNOT_DUMP.
9580 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
9581
9582 * alloc.c (check_pure_size): Only output a warning.
9583
95842002-03-22 Jason Rumney <jasonr@gnu.org>
9585
9586 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
9587 supported.
9588
9589 * w32term.c (zv_bits): Declare as short, for word alignment.
9590 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
9591 (syms_of_w32term): Define x-use-underline-position-properties.
9592
9593 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
9594 (clear_image_cache): Block input, fix logic, clear matrices in
9595 all frames that share this cache.
9596
95972002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
9598
9599 * emacs.c (main): Update the Copyright year in the blurb printed
9600 by "emacs --version".
9601
9602 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
9603
9604 * xterm.c (XTread_socket): If XK_ISO_Lock and
9605 XK_ISO_Last_Group_Lock are defined, handle keysyms between
9606 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
9607
96082002-03-21 Kim F. Storm <storm@cua.dk>
9609
9610 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
9611 menu-bar bindings in keymap and local-map properties _are_ used.
9612 But try keymap property first in accordance with 2002-01-03 patch.
9613 Added comment describing why this is not always reliable.
9614 (tool_bar_items): Ditto for tool-bar.
9615
96162002-03-21 Jason Rumney <jasonr@gnu.org>
9617
9618 * w32fns.c (x_clear_image_1): Disable color table code.
9619
96202002-03-21 Kim F. Storm <storm@cua.dk>
9621
9622 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
9623 removed the wrong version of the DEFUN macro; fixed it.
9624
9625 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
9626 Fmember rather than Fmemq).
9627 (Fprovide): Check that subfeatures is a list.
9628
9629 * process.c (QCfeature, QCdatagram): Removed variables.
9630 (QCtype, Qdatagram): New variables.
9631 (network_process_featurep): Removed function.
9632 (Fmake_network_process): Removed :feature check.
9633 Use :type 'datagram instead of :datagram t to create a datagram
9634 socket. This allows us to add other connection types (e.g. raw
9635 sockets) later in a consistent manner.
9636 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
9637 supported subfeatures for feature make-network-process.
9638 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
9639 Intern and staticpro QCtype and Qdatagram.
9640 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
9641
9642 * xfns.c: (QCtype): Remove duplicate declaration and
9643 initialization (is now declared in process.c).
9644
9645 * w32fns.c: (QCtype): Remove duplicate declaration and
9646 initialization (is now declared in process.c).
9647
96482002-03-21 Richard M. Stallman <rms@gnu.org>
9649
9650 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
9651 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
9652 when jumping to `fail' to avoid undoing reg changes in the
9653 last iteration of the loop.
9654 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
9655
9656 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
9657 Depend on process.h.
9658
96592002-03-20 Jason Rumney <jasonr@gnu.org>
9660
9661 Most of the following changes are still conditional on HAVE_IMAGES
9662 which is not set by default on Windows.
9663
9664 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
9665
9666 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
9667 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
9668 (four_corners_best, x_clear_image_1, x_clear_image)
9669 (x_alloc_image_color, postprocess_image)
9670 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
9671 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
9672 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
9673
9674 * w32gui.h (struct XImage): Define.
9675
9676 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
9677 extract mouse co-ordinates.
9678
96792002-03-20 Jason Rumney <jasonr@gnu.org>
9680
9681 * w32.c (init_winsock): Dynamically load new server and UDP
9682 socket functions.
9683 (socket_to_fd): New function.
9684 (sys_socket): Use it.
9685 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
9686 (sys_recvfrom, sys_sendto): New wrapper functions.
9687
9688 * process.c (QCfamily, QCfilter): Remove duplicate declaration
9689 and initialization.
9690
9691 * makefile.w32-in (LIBS): Remove $(WSOCK32).
9692
96932002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
9694
9695 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
9696 Don't use "sun" as a variable, it's a predefined constant on Sun
9697 machines.
9698
96992002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9700
9701 * bytecode.c (Fbyte_code): Revert last change.
9702
97032002-03-19 Kim F. Storm <storm@cua.dk>
9704
9705 * makefile.w32-in (LIBS): Add $(WSOCK32).
9706 From David Ponce <dponce@voila.fr>.
9707
97082002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9709
9710 * process.c (wait_reading_process_input): Move variables `pname'
9711 and `pnamelen' down where they are used.
9712
9713 * bytecode.c (Fbyte_code): Discard unused computed value to
9714 prevent gcc warning.
9715
9716 * lisp.h (Fplist_member): Add prototype.
9717
97182002-03-18 Kim F. Storm <storm@cua.dk>
9719
9720 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
9721 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
9722
9723 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
9724 Remove explicit GNU_LINUX settings for datagram support.
9725
97262002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9727
9728 * process.c (Fmake_network_process): Remove unused variable `sa'.
9729 Doc fix. Add usage:.
9730 (set_socket_options): Remove unused variables `optnum' and `opttype'.
9731
97322002-03-17 Richard M. Stallman <rms@gnu.org>
9733
9734 * xdisp.c (cursor_type_changed): New variable.
9735 (redisplay_internal): Redisplay all windows if cursor_type_changed.
9736 Clear it when clearing windows_or_buffers_changed.
9737 (try_cursor_movement, redisplay_window, try_window_id)
9738 (try_window_reusing_current_matrix): Test cursor_type_changed
9739 along with windows_or_buffers_changed.
9740
9741 * window.h (cursor_type_changed): New variable.
9742
9743 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
9744 not update_mode_lines, and always set it to 1.
9745
9746 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
9747 if no frames needed redrawing.
9748
97492002-03-17 Kim F. Storm <storm@cua.dk>
9750
9751 The following changes add support for network server processes,
9752 datagram connections, and local (unix) sockets.
9753
9754 * process.h (struct Lisp_Process): New member log.
9755 Doc fix: Member command used to indicate stopped network process.
9756 Doc fix: Member childp contains plist for network process.
9757 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
9758
9759 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
9760 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
9761 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
9762 New variables.
9763 (NETCONN1_P): New macro.
9764 (DATAGRAM_SOCKETS): New conditional symbol.
9765 (datagram_address): New array.
9766 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
9767 (status_message): Use concat3.
9768 (Fprocess_status): Add `listen' status to doc string. Return `stop'
9769 for a stopped network process.
9770 (Fset_process_buffer): Update contact plist for network process.
9771 (Fset_process_filter): Ditto. Don't enable input for stopped
9772 network processes. Server must listen, even if filter is t.
9773 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
9774 New functions.
9775 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
9776 (Fprocess_contact): Added KEY argument. Handle datagrams.
9777 (list_processes_1): Optionally show only processes with the query
9778 on exit flag set. Dynamically adjust column widths. Omit tty
9779 column if not needed. Report stopped network processes.
9780 Identify server and datagram network processes.
9781 (Flist_processes): New optional arg `query-only'.
9782 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
9783 (conv_lisp_to_sockaddr, set_socket_options)
9784 (network_process_featurep, unwind_request_sigio): New helper functions.
9785 (Fprocess_datagram_address, Fset_process_datagram_address):
9786 (Fset_network_process_options): New lisp functions.
9787 (Fopen_network_stream): Removed. Now defined in simple.el.
9788 (Fmake_network_process): New lisp function. Code is based on previous
9789 Fopen_network_stream, but heavily reworked with new property list based
9790 argument list, support for datagrams, server processes, and local
9791 sockets in addition to old client-only functionality.
9792 (server_accept_connection): New function.
9793 (wait_reading_process_input): Use it to handle incoming connects.
9794 Do not enable input on a new connection if process is stopped.
9795 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
9796 (send_process): Handle datagram sockets.
9797 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
9798 network process is indicated by setting command field to t .
9799 (Fprocess_send_eof): No-op if datagram connection.
9800 (Fstatus_notify): Don't read input for a stream server socket or a
9801 stopped network process.
9802 (init_process): Initialize datagram_address array.
9803 (syms_of_process): Intern and staticpro new variables, defsubr new
9804 functions.
9805
98062002-03-16 Jason Rumney <jasonr@gnu.org>
9807
9808 * w32fns.c (w32_to_all_x_charsets): Return correct type in
9809 startup case.
9810
98112002-03-16 Richard M. Stallman <rms@gnu.org>
9812
9813 * xdisp.c (redisplay_internal, redisplay_windows):
9814 Use list_of_error to call internal_condition_case_1.
9815 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
9816 so as to catch all errors with no possibility of debugger redisplay.
9817 (list_of_error): New variable.
9818 (syms_of_xdisp): Init and staticpro it.
9819
9820 * print.c (print_object): Delete `\ ' from printed rep of frame.
9821
98222002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
9823
9824 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
9825 until its implementation is fixed.
9826
98272002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9828
9829 * xfns.c (png_load): Remove unused variable `gamma_str'.
9830
98312002-03-14 Richard M. Stallman <rms@gnu.org>
9832
9833 * xfns.c (x_real_positions): Handle failure in XQueryTree.
9834
98352002-03-14 Miles Bader <miles@gnu.org>
9836
9837 * intervals.c (adjust_for_invis_intang): New function.
9838 (set_point_both): Use `adjust_for_invis_intang' to do most of the
9839 work for dealing with invisible+intangible regions. Do so before
9840 and after both forward and backward movements, to handle both
9841 front-sticky and rear-sticky cases.
9842 * textprop.c (text_property_stickiness): Function moved here from
9843 `editfns.c'.
9844 * intervals.h (text_property_stickiness): New declaration.
9845 * editfns.c (char_property_eq): Function removed.
9846 (text_property_stickiness): Function moved to `textprop.c'.
9847
98482002-03-13 Jason Rumney <jasonr@gnu.org>
9849
9850 * config.in: Add STRFTIME_NO_POSIX2.
9851
9852 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
9853 and %OX when underlying strftime does not.
9854
98552002-03-13 Stefan Monnier <monnier@cs.yale.edu>
9856
9857 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
9858 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
9859 line) to avoid annoying flicker.
9860 (xm_scroll_callback): Get rid of the now unnecessary kludge.
9861 (XTread_socket): Mark it static.
9862
9863 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
9864
98652002-03-13 Kim F. Storm <storm@cua.dk>
9866
9867 * puresize.h (BASE_PURESIZE): Increase to 775000.
9868
98692002-03-12 Juanma Barranquero <lektu@terra.es>
9870
9871 * editfns.c (syms_of_editfns): Fix typo.
9872
98732002-03-12 Gerd Moellmann <gerd@gnu.org>
9874
9875 * xsmfns.c: Include stdio.h because termhooks.h needs it.
9876 Include termopt.h for interrupt_input.
9877
98782002-03-11 Andreas Schwab <schwab@suse.de>
9879
9880 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
9881
98822002-03-11 Gerd Moellmann <gerd@gnu.org>
9883
9884 * xterm.c (note_mouse_movement): Put code for
9885 x_autoselect_window_p in #if 0.
9886
9887 * lread.c (Fload): Don't assume that message_with_string uses the
9888 string it is given like a C string.
9889
98902002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9891
9892 * xterm.h (x_session_check_input, x_session_initialize): Declared.
9893
9894 * xterm.c: (XTread_socket): Add call to x_session_check_input and
9895 x_session_have_connection.
9896 (x_initialize): Add call to x_session_initialize.
9897
9898 * termhooks.h (enum event_kind): Add save_session_event.
9899
9900 * keyboard.c: Add Emacs event save_session_event.
9901
9902 * emacs.c (main): Add call to syms_of_xsmfns.
9903
9904 * lisp.h: Declare syms_of_xsmfns as extern.
9905
9906 * config.in: Add HAVE_X_SM.
9907
9908 * Makefile.in (LIBXT): Add -lSM -lICE
9909 if HAVE_X_SM and not USE_X_TOOLKIT.
9910 (XOBJ): New file xsmfns.c added.
9911
9912 * xsmfns.c: New file for X session management.
9913
99142002-03-09 Jason Rumney <jasonr@gnu.org>
9915
9916 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
9917 read-only when setting modified time.
9918
99192002-03-08 Gerd Moellmann <gerd@gnu.org>
9920
9921 * xdisp.c (move_it_vertically_backward): At the end of the function,
9922 when moving forward by lines, treat terminal frames specially.
9923
9924 * keyboard.c (echo_char): Make sure to add a separator between
9925 keys even if echo_dash hasn't been called.
9926
9927 * xdisp.c: Use new string macros.
9928 (update_echo_area): Pass number of bytes to message3 instead of
9929 number of chars.
9930 (set_message_1): Don't access a string's size_byte directly.
9931 (decode_mode_spec_coding): Use number of bytes of eoltype string
9932 instead number of chars.
9933
9934 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
9935
99362002-03-08 Juanma Barranquero <lektu@terra.es>
9937
9938 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
9939 24-bit.
9940
99412002-03-06 Jason Rumney <jasonr@gnu.org>
9942
9943 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
9944
99452002-03-06 Gerd Moellmann <gerd@gnu.org>
9946
9947 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
9948 (cancel_echoing, echo_length, echo_truncate): Changed to
9949 work with new kboard definition.
9950 (echo_now): Use message3_nolog instead of message2_nolog.
9951
9952 * alloc.c (mark_kboards): Mark echo_string.
9953
9954 * keyboard.h (ECHOBUFSIZE): Removed.
9955 (struct kboard): Member echoptr removed, member echobuf renamed
9956 to echo_string.
9957
9958 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
9959 message3 instead of message2 to display the message using STRING's
9960 text properties.
9961
99622002-03-05 Andreas Schwab <schwab@suse.de>
9963
9964 * xdisp.c (hscroll_margin): Change to EMACS_INT.
9965
99662002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
9967
9968 * frame.c (default-frame-alist): Explain that setting it doesn't
9969 affect existing frames.
9970
99712002-03-05 Stefan Monnier <monnier@cs.yale.edu>
9972
9973 * indent.c (skip_invisible): Fix my brain fart.
9974
9975 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
9976
99772002-03-04 Stefan Monnier <monnier@cs.yale.edu>
9978
9979 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
9980 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
9981 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
9982 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
9983 and variables to use EMACS_INT instead of just int.
9984
9985 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
9986
99872002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
9988
9989 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
9990 environment, pass it down with corrected value.
9991
99922002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9993
9994 * lread.c (read_filtered_event): Do not call start_hourglass
9995 before returning.
9996
99972002-03-04 Juanma Barranquero <lektu@terra.es>
9998
9999 * w32term.c (x_display_and_set_cursor): Fix typo.
10000
100012002-03-03 Richard M. Stallman <rms@gnu.org>
10002
10003 * fileio.c (Fmake_temp_name): Doc fix.
10004
100052002-03-03 Gary Wong <gtw@gnu.org>
10006
10007 * termcap.c [!emacs]: Replace ospeed for building standalone
10008 libtermcap, for binary compatibility.
10009
10010 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
10011
100122002-03-03 Richard M. Stallman <rms@gnu.org>
10013
10014 * xrdb.c (file_p): Rename arg `path' to `filename'.
10015
10016 * abbrev.c (Fexpand_abbrev): Increment plist as use count
10017 only if it is an integer.
10018
10019 * xfns.c (png_load): Set screen_gamma based on f->gamma.
10020 If png_get_sRGB gives an answer, call png_set_gamma
10021 using the default image gamma value.
10022
10023 * lread.c (read1): When reading from a file, default string to
10024 multibyte only if it has some multibyte characters.
10025
10026 * print.c (print_object): Output multibyte chars 128...255
10027 using \x even if ! print_escape_multibyte.
10028
10029 * xdisp.c (display_mode_element): Move the places where
10030 bytepos, charpos, this, and lisp_string are set.
10031 Use lisp_string to set bytepos.
10032
10033 * xdisp.c (redisplay_internal):
10034 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
10035
10036 * xdisp.c (display_mode_element): Merge properties specified with
10037 :propertize onto those that come with the string.
10038
100392002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
10040
10041 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
10042 automatic-hscrolling. Users changed.
10043 <hscroll-margin>: Renamed from automatic-hscroll-margin.
10044 Users changed.
10045 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
10046
100472002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
10048
10049 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
10050
100512002-03-02 Kim F. Storm <storm@cua.dk>
10052
10053 * window.c (Fminibuffer_selected_window): New function.
10054 (syms_of_window): Defsubr it.
10055
100562002-03-01 Kim F. Storm <storm@cua.dk>
10057
10058 * window.h (struct window): New member phys_cursor_width.
10059
10060 * window.c (make_window, replace_window): Init phys_cursor_width.
10061
10062 * xterm.c (x_display_and_set_cursor): Blink box cursor using
10063 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
10064
10065 * w32term.c (x_display_and_set_cursor): Blink box cursor using
10066 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
10067
10068 * lisp.h (GCPRO6): New macro.
10069
10070 * process.c (Fopen_network_stream): Use GCPRO6.
10071
100722002-03-01 Kim F. Storm <storm@cua.dk>
10073
10074 * process.c (Qconnect, Qfailed): New variables.
10075 (syms_of_process): Intern and staticpro them.
10076 (Fprocess_status): Document connect and failed return values.
10077 [NON_BLOCKING_CONNECT]: New conditional.
10078 (connect_wait_mask, num_pending_connects): New variables.
10079 (status_message): Convert Qfailed status.
10080 (Fopen_network_stream): Added support for non-blocking connect.
10081 New optional args: filter, sentinel, non_blocking. Doc updated.
10082 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
10083 (deactivate_process): Handle pending non-blocking connect.
10084 (wait_reading_process_input): Poll for status of non-blocking
10085 connects. Exec sentinel directly when connect succeeds.
10086 (status_notify): Don't read process output if not yet connected.
10087
100882002-02-28 Kim F. Storm <storm@cua.dk>
10089
10090 * window.c: (minibuf_selected_window): Renamed from
10091 Vminibuf_selected_window. Users changed.
10092 (syms_of_window): Staticpro it.
10093
100942002-02-26 Kim F. Storm <storm@cua.dk>
10095
10096 The following changes add a new Vminibuf_selected_window variable
10097 which is similar to Vminibuf_scroll_window, but which is only set
10098 on entry to the minibuffer (from a non-minibuffer window):
10099
10100 * window.c: (Vminibuf_selected_window): New variable.
10101 (struct save_window_data): New member minibuf_selected_window.
10102 (Fset_window_configuration): Restore Vminibuf_selected_window.
10103 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
10104 Set minibuf_scroll_window member to nil if minibuf_level is 0.
10105 (compare_window_configurations): Compare minibuf_selected_window.
10106
10107 * window.h: (Vminibuf_selected_window): Declare extern.
10108
10109 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
10110 entry to minibuffer or on entry from a non-minibuffer window.
10111
10112 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
10113 Vminibuf_selected_window instead of Vminibuf_scroll_window.
10114
10115 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
10116 instead of Vminibuf_scroll_window when deciding in which window
10117 the region should be highlighted. Consequently, the region remains
10118 highlighteded even when a completion buffer is also displayed.
10119
101202002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
10121
10122 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
10123
10124 * xselect.c (Qcompound_text_with_extensions): Renamed from
10125 Qcompound_text_no_extensions.
10126 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
10127
101282002-02-26 Juanma Barranquero <lektu@terra.es>
10129
10130 * w32proc.c (syms_of_ntproc): Doc fix.
10131
101322002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10133
10134 * intervals.h: Include "dispextern.h" unconditionally.
10135
101362002-02-24 Jason Rumney <jasonr@gnu.org>
10137
10138 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
10139 and disp-table.elc.
10140 (lisp): Add emacs-lisp/backquote.elc.
10141
101422002-02-24 Kim F. Storm <storm@cua.dk>
10143
10144 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
10145 The validation of the event type was too strict as it didn't
10146 allow string events; buffer names are used in bindings for
10147 menu-bar-select-buffer (see `menu-bar-update-buffers').
10148
101492002-02-23 Kim F. Storm <storm@cua.dk>
10150
10151 The following changes rework my patch of 2002-02-06 which
10152 added command remapping by entering the commands directly into
10153 the keymaps. Now, command remapping uses an explicit `remap'
10154 prefix in the keymaps, i.e. [remap COMMAND].
10155
10156 * keymap.c (Qremap, remap_command_vector): New variables.
10157 (is_command_symbol): Removed function.
10158 (Fdefine_key): No longer accept a symbol for KEY.
10159 Added validation of [remap COMMAND] argument for KEY.
10160 The DEF is no longer required to be a symbol when remapping a command.
10161 (Fremap_command): New function to remap command through keymaps.
10162 (Flookup_key): Perform command remapping initiated by
10163 Fremap_command directly for speed.
10164 (Fkey_binding): Use Fremap_command for command remapping.
10165 (where_is_internal): Handle new command remapping representation.
10166 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
10167 staticpro them. Defsubr Fremap_command.
10168
10169 * keymap.h (Fremap_command): Declare extern.
10170 (is_command_symbol): Remove extern.
10171
10172 * keyboard.c (command_loop_1): Use Fremap_command for command
10173 remapping; now try command remapping for all symbols.
10174
101752002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
10176
10177 * coding.h (run_pre_post_conversion_on_str): Add prototype.
10178
101792002-02-23 Jason Rumney <jasonr@gnu.org>
10180
10181 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
10182 on the string before encoding it.
10183 (Fw32_get_clipboard_data): Run post-read-conversion on the string
10184 after decoding it.
10185
10186 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
10187
101882002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10189
10190 * w32term.c (enter_timestamp): Remove unused static variable to
10191 prevent warning.
10192
10193 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
10194
101952002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
10196
10197 * w16select.c (Fw16_get_clipboard_data): Fix last change.
10198
10199 * xselect.c (selection_data_to_lisp_data): Fix last change.
10200
102012002-02-22 Jason Rumney <jasonr@gnu.org>
10202
10203 * w32term.h (struct w32_output): New member menu_command_in_progress.
10204
10205 * w32menu.c (menubar_selection_callback): Free the menu and
10206 clear the menu_command_in_progress flag.
10207
10208 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
10209 (menu_free_timer): New variable.
10210 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
10211 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
10212 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
10213 menu command is in progress.
10214 <WM_COMMAND>: Set the menu_command_in_progress flag.
10215 Kill any menu_free_timer that is running.
10216
10217 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
10218 Call ExtTextOutA rather than ExtTextOut.
10219
102202002-02-22 Eli Zaretskii <eliz@gnu.org>
10221
10222 * puresize.h (BASE_PURESIZE): Increase to 755000.
10223
102242002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
10225
10226 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
10227 on the string before encoding it.
10228 (Fw16_get_clipboard_data): Run post-read-conversion on the string
10229 after decoding it.
10230
102312002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
10232
10233 Support for ICCCM Extended Segments in X selections:
10234
10235 * xselect.c <Qcompound_text_no_extensions>: New variable.
10236 (syms_of_xselect): Intern and staticpro it.
10237 (selection_data_to_lisp_data): Run post-read-conversion on decoded
10238 selection text.
10239 (lisp_data_to_selection_data): If next-selection-coding-system is
10240 compound-text-no-extensions, set the type of selection to be
10241 compound-text.
10242
10243 * xterm.h (x_encode_text): Update prototype.
10244
10245 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
10246 callers changed. If SELECTIONP is non-zero, run the
10247 pre-write-conversion function before encoding the selection text.
10248
102492002-02-21 Kim F. Storm <storm@cua.dk>
10250
10251 * frame.c (syms_of_frame): Change mouse-highlight default to t.
10252
10253 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
10254 Correct composing of language-change event.
10255
102562002-02-20 Kim F. Storm <storm@cua.dk>
10257
10258 * keyboard.c (menu_bar_items): Don't include keymap or local-map
10259 bindings at PT when building menu (the menu is not updated often
10260 enough for this to work reliable).
10261 (tool_bar_items): Likewise.
10262 (current_active_maps): Removed unused (and buggy) function.
10263
102642002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10265
10266 * xfns.c (gif_load): Use correct width and height for GIF images.
10267
102682002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
10269
10270 * floatfns.c (Fatan): Accept an optional second arg and call
10271 atan2 if passed 2 args.
10272
102732002-02-18 Jason Rumney <jasonr@gnu.org>
10274
10275 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
10276
102772002-02-17 Jason Rumney <jasonr@gnu.org>
10278
10279 * w32term.c (x_autoselect_window_p): New variable.
10280 (syms_of_w32term): DEFVAR_BOOL and initialize it.
10281 (note_mouse_movement): Use it.
10282
10283 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
10284
10285 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
10286
10287 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
10288 New variables.
10289 (syms_of_w32fns): Intern and staticpro them.
10290 (x_frame_parms) <"fullscreen">: New parameter.
10291 (x_fullscreen_move, x_set_fullscreen): New functions.
10292 (x_set_frame_parameters): Support Qfullscreen.
10293 (x_real_positions): Save x/y_pixels_diff frame params.
10294 (x_figure_window_size): Support full-screen frames.
10295 (Fx_create_frame): Default the fullscreen parameter.
10296
10297 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
10298 (x_fullscreen_adjust): New functions.
10299 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
10300 fullscreen. Call x_check_fullscreen_move, and set the
10301 want_fullscreen member of output_data.w32
10302 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
10303
10304 * w32term.h: New enum for FULLSCREEN_* constants.
10305 (struct w32_output): New members want_fullscreen, x_pixels_diff,
10306 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
10307 (x-fullscreen-adjust): New prototype.
10308
103092002-02-17 Kim F. Storm <storm@cua.dk>
10310
10311 * frame.c: (Vmouse_highlight): New variable.
10312 (syms_of_frame): DEFVAR_LISP it.
10313
10314 * frame.h: (Vmouse_highlight): Declare extern.
8a8e19a3 10315
048addec 10316 * xterm.h (struct x_display_info): Add mouse_face_hidden.
8a8e19a3 10317
048addec
JD
10318 * xterm.c (disable_mouse_highlight): Removed variable.
10319 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
10320 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
10321 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
10322 and on after keyboard input.
10323 (x_term_init): Initialize mouse_face_hidden.
8a8e19a3 10324
048addec 10325 * msdos.h (struct display_info): Add mouse_face_hidden.
8a8e19a3 10326
048addec
JD
10327 * msdos.c (disable_mouse_highlight): Removed variable.
10328 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
10329 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
10330 (internal_terminal_init): Initialize mouse_face_hidden.
10331 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
10332 and on after keyboard input.
4f1b1854 10333
048addec 10334 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
4f1b1854 10335
048addec
JD
10336 * w32term.c (disable_mouse_highlight): Removed variable.
10337 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
10338 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
10339 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
10340 and on after keyboard input.
10341 (w32_initialize_display_info): Initialize mouse_face_hidden.
4f1b1854 10342
048addec 103432002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
4f1b1854 10344
048addec
JD
10345 * msdos.c (last_mouse_window): New variable.
10346 (dos_rawgetc): Fix last change--if the mouse is in the same window
10347 as recorded in last_mouse_window, don't select this window.
5cb6905d 10348
048addec 10349 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
5cb6905d 10350
048addec
JD
10351 * msdos.c (x_autoselect_window_p): New variable.
10352 (syms_of_msdos): Defvar it.
10353 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
10354 which the last mouse movement occured, unless it is already selected.
437dfb9f 10355
048addec
JD
10356 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
10357 New variables.
10358 (syms_of_xdisp): DEVFAR them.
10359 (hscroll_window_tree): Use automatic_hscroll_margin and
10360 Vautomatic_hscroll_step to compute the amount of window scrolling.
437dfb9f 10361
048addec 103622002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9f696a00 10363
048addec
JD
10364 * xterm.c (x-autoselect-window): New variable.
10365 (note_mouse_movement): Use it.
9f696a00 10366
048addec 10367 * keyboard.c: Do not include "systime.h" twice.
d57966d7 10368
048addec 103692002-02-15 Andreas Schwab <schwab@suse.de>
d57966d7 10370
048addec 10371 * puresize.h (BASE_PURESIZE): Increase to 9/5.
d57966d7 10372
048addec 10373 * alloc.c (NSTATICS): Increase to 1280.
74779f52 10374
048addec 103752002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
74779f52 10376
048addec 10377 * alloc.c (NSTATICS): Bump to 1026.
a474d59c 10378
048addec
JD
10379 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
10380 (Vx_super_keysym): New variables.
10381 (syms_of_xterm): DEFVAR_LISP them.
10382 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
10383 variables to determine which keys to use for the various modifiers.
a474d59c 10384
048addec 103852002-02-13 Kim F. Storm <storm@cua.dk>
fbb70ad9 10386
048addec
JD
10387 * window.c: (Vmode_line_in_non_selected_windows): Removed.
10388 (mode_line_in_non_selected_windows): New variable.
10389 (syms_of_window): DEFVAR_BOOL it.
fbb70ad9 10390
048addec
JD
10391 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
10392 Use mode_line_in_non_selected_windows.
10393 (mode_line_in_non_selected_windows): Declare extern.
10394 (Vmode_line_in_non_selected_windows): Removed extern.
2d10309f 10395
048addec 103962002-02-13 Richard M. Stallman <rms@gnu.org>
2d10309f 10397
048addec
JD
10398 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
10399 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
10400 (Fclear_this_command_keys): Doc fixes.
2d10309f 10401
048addec
JD
10402 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
10403 (update_face_from_frame_parameter): Increment face_change_count
10404 and windows_or_buffers_changed to force redisplay using changed faces.
7f2cddf3 10405
048addec
JD
10406 * xdisp.c (QCpropertize): New variable.
10407 (mode_line_proptrans_alist): New variable.
10408 (display_mode_element): New arg PROPS; all calls changed.
10409 Implement this, for strings.
10410 Handle literal output of strings by sharing the
10411 main-line code for strings, using local var `literal'.
10412 Handle :propertize feature.
10413 (syms_of_xdisp): Initialze and staticpro QCpropertize and
10414 mode_line_proptrans_alist.
0b1e6b54 10415
048addec 104162002-02-11 Kim F. Storm <storm@cua.dk>
7f2cddf3 10417
048addec
JD
10418 * window.c: (Vmode_line_in_non_selected_windows): New variable.
10419 (syms_of_window): DEFVAR_LISP it.
7f2cddf3 10420
048addec
JD
10421 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
10422 (CURRENT_MODE_LINE_FACE_ID): Use it.
10423 (Vmode_line_in_non_selected_windows): Declare extern.
e17144de 10424
048addec
JD
10425 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
10426 to get mode line face.
e17144de 10427
048addec 104282002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 10429
048addec
JD
10430 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
10431 variables; cus-start.el doesn't need them anymore.
44368f8f 10432
048addec 104332002-02-09 Kim F. Storm <storm@cua.dk>
f884b6f4 10434
048addec
JD
10435 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
10436 reduction. This fixes a display problem where stray newlines were
10437 inserted in the window (corrected by C-l). Clarified code (IMHO).
6637c996 10438
048addec 104392002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 10440
048addec 10441 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
6637c996 10442
048addec 10443 * xdisp.c (display_mode_lines): Fix last change.
453c5510 10444
048addec 104452002-02-09 Jason Rumney <jasonr@gnu.org>
453c5510 10446
048addec
JD
10447 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
10448 match each other.
10449 (w32_load_system_font): Prevent Cleartype fonts from loading.
10450 (Fx_show_tip): Ensure tip frames are above other topmost windows.
d1d070e3 10451
048addec 104522002-02-09 Kim F. Storm <storm@cua.dk>
d1d070e3 10453
048addec
JD
10454 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
10455 (CURRENT_MODE_LINE_HEIGHT): Use it.
10456 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 10457
048addec
JD
10458 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
10459 (pos_visible_p, handle_face_prop): Likewise.
10460 (display_mode_lines): Likewise, but for the real selected window.
10461 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 10462
048addec
JD
10463 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
10464 in non-selected windows.
10465 (realize_basic_faces): Realize it.
10466 (syms_of_term): Intern and staticpro it.
308dd672 10467
048addec 104682002-02-08 Kim F. Storm <storm@cua.dk>
edde72f6 10469
048addec
JD
10470 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
10471 Changed mail addresses to emacs-devel@gnu.org.
308dd672 10472
048addec 104732002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
3c1e6b46 10474
048addec
JD
10475 * fileio.c (Fsubstitute_in_file_name): If the file name includes
10476 ~user, and there's no such user, don't discard everything before ~user.
03950b5b 10477
048addec 10478 * floatfns.c (Fround): Doc fix.
3c1e6b46 10479
048addec 104802002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c1e11810 10481
048addec 10482 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
c1e11810 10483
048addec 104842002-02-07 Stefan Monnier <monnier@cs.yale.edu>
1996baee 10485
048addec 10486 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
1996baee 10487
048addec 104882002-02-07 Kim F. Storm <storm@cua.dk>
0065bb74 10489
048addec
JD
10490 * keymap.c (where_is_internal): Only check whether definition is
10491 remapped if it fulfills is_command_symbol.
0065bb74 10492
048addec 104932002-02-07 Andreas Schwab <schwab@suse.de>
0065bb74 10494
048addec 10495 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
b5cb6072 10496
048addec 10497 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
b5cb6072 10498
048addec 104992002-02-06 Kim F. Storm <storm@cua.dk>
15fff01d 10500
048addec
JD
10501 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
10502 defining command remapping. Doc updated.
10503 (Flookup_key): Remap command through keymap if KEY is a symbol.
10504 (is_command_symbol): New function.
10505 (Fkey_binding): Use it. New optional argument NO-REMAP.
10506 Doc updated. Callers changed. Perform command remapping via
10507 recursive call unless that arg is non-nil.
10508 (where_is_internal): New argument no_remap. Callers changed.
10509 Call recursively to find original key bindings for a remapped
10510 comand unless that arg is non-nil.
10511 (Fwhere_is_internal): New optional argument NO-REMAP.
10512 Doc updated. Callers changed. Pass arg to where_is_internal.
0065bb74 10513
048addec
JD
10514 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
10515 (is_command_symbol): Added prototype.
0d8466cc 10516
048addec
JD
10517 * keyboard.c (Vthis_original_command): New variable.
10518 (syms_of_keyboard): DEFVAR_LISP it.
10519 (command_loop_1): Set it, and perform command remapping.
15fff01d 10520
048addec 105212002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2fae9111 10522
048addec 10523 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
2d6c1fc0 10524
048addec 105252002-02-06 Jason Rumney <jasonr@gnu.org>
07025a55 10526
048addec 10527 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
07025a55 10528
048addec 105292002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
07025a55 10530
048addec 10531 * charset.c (get_charset_id): Use if-else instead of ?:.
3a232704 10532
048addec 105332002-02-06 Richard M. Stallman <rms@gnu.org>
539e92ad 10534
048addec 10535 * filelock.c (S_ISLNK): Define if not defined.
3a232704 10536
048addec 105372002-02-03 Richard M. Stallman <rms@gnu.org>
0cb8bb48 10538
048addec 10539 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
539e92ad 10540
048addec
JD
10541 * lread.c (read1): Redesign strategy for force_multibyte and
10542 force_singlebyte. Now is_multibyte records whether read_buffer
10543 is multibyte. Encountering any multibyte character makes it so.
4e02881b 10544
048addec 105452002-02-02 Stefan Monnier <monnier@cs.yale.edu>
4e02881b 10546
048addec
JD
10547 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
10548 with the same sequence, map that sequence to f10 rather than f0.
1ab964d7 10549
048addec 105502002-02-03 Andreas Schwab <schwab@suse.de>
1ab964d7 10551
048addec
JD
10552 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
10553 latter never being defined on GNU/Linux.
749f499f 10554
048addec 105552002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
749f499f 10556
048addec
JD
10557 * xfaces.c (realize_default_face): Don't set the weight and slant of
10558 the default face to Qnormal, unless these attributes are unspecified.
b5d9aaba 10559
048addec 105602002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3a232704 10561
048addec
JD
10562 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
10563 Call cancel_hourglass unconditionally.
d0fd26dd 10564
048addec
JD
10565 * eval.c (Fsignal): Remove duplicated declaration of
10566 the variable `display_hourglass_p'.
b4c45162 10567
048addec 105682002-01-31 Richard M. Stallman <rms@gnu.org>
d0fd26dd 10569
048addec 10570 * editfns.c (region_limit): Nicer error message.
c95eaa61 10571
048addec
JD
10572 * coding.c (decode_composition_emacs_mule):
10573 Give up if NCOMPONENT gets too large to index `component'.
c95eaa61 10574
048addec
JD
10575 * callint.c (check_mark): New arg to specify clearer error message.
10576 Callers changed.
c95eaa61 10577
048addec 105782002-01-27 Richard M. Stallman <rms@gnu.org>
c95eaa61 10579
048addec 10580 * minibuf.c (Fcompleting_read): Doc fix.
c95eaa61 10581
048addec 105822002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c95eaa61 10583
048addec
JD
10584 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
10585 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
10586 Fix doc-strings.
c95eaa61 10587
048addec 105882002-01-26 Richard M. Stallman <rms@gnu.org>
c95eaa61 10589
048addec 10590 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
c95eaa61 10591
048addec
JD
10592 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
10593 and scroll_up_aggressively.
c95eaa61 10594
048addec 105952002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
31877e0a 10596
048addec 10597 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
31877e0a 10598
048addec 105992002-01-25 Stefan Monnier <monnier@cs.yale.edu>
e2c3786a 10600
048addec
JD
10601 * textprop.c (Fnext_property_change, Fnext_single_property_change)
10602 (Fprevious_property_change, Fprevious_single_property_change):
10603 Stay within the narrowed-buffer boundaries.
e2c3786a 10604
048addec 106052002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
c513fc03 10606
048addec
JD
10607 * term.c (Ftty_display_color_cells): New function.
10608 (syms_of_term): Defsubr it.
10609 (Ftty_display_color_cells, Ftty_display_color_p): Change the
10610 argument name to DISPLAY. Doc fix.
bf794306 10611
048addec
JD
10612 * dispextern.h: Add prototype for set_tty_color_mode and
10613 tty_setup_colors.
bf794306 10614
048addec 106152002-01-24 Jason Rumney <jasonr@gnu.org>
bf794306 10616
048addec
JD
10617 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
10618 If region left to draw is not what was expected, mark the frame as
10619 garbaged.
62582985 10620
048addec
JD
10621 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
10622 Combine the regions returned by BeginPaint and GetUpdateRect.
c513fc03 10623
048addec 106242002-01-23 Jason Rumney <jasonr@gnu.org>
3509a04c 10625
048addec
JD
10626 * w32term.c (x_update_window_begin): Only hide caret if
10627 w32_use_visible_system_caret is set.
10628 (x_update_window_end): Only show caret if
10629 w32_use_visible_system_caret is set.
10630 (syms_of_w32term): Handle SystemParametersInfo call failing.
3509a04c 10631
048addec 10632 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
3509a04c 10633
048addec 106342002-01-22 Richard M. Stallman <rms@gnu.org>
3509a04c 10635
048addec
JD
10636 * unexelf.c (unexec): Define n so as to cause compilation error
10637 for the code where people have often written n instead of nn.
1e9a6186 10638
048addec 10639 * .gdbinit (hookpost-run): Defined.
1e9a6186 10640
048addec 106412002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e4e34e31 10642
048addec 10643 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
e4e34e31 10644
048addec 106452002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4521d1fc 10646
048addec
JD
10647 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
10648 if fullscreen is being set.
7c75be36 10649
048addec 106502002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4521d1fc 10651
048addec
JD
10652 * minibuf.c (Fminibuffer_contents)
10653 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
10654 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
4521d1fc 10655
048addec 106562002-01-21 Richard M. Stallman <rms@gnu.org>
4521d1fc 10657
048addec 10658 * window.c (check_frame_size): Fix minimum height calculation.
93dec019 10659
048addec 106602002-01-20 Ken Raeburn <raeburn@gnu.org>
93dec019 10661
048addec
JD
10662 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
10663 height before comparison.
10664 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
905cc05a 10665
048addec 106662002-01-20 Jason Rumney <jasonr@gnu.org>
2ed06289 10667
048addec
JD
10668 * w32term.c (w32_system_caret_width): Remove.
10669 (w32_use_visible_system_caret): New user flag.
10670 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
10671 Windows reports a screen reader running.
10672 (x_update_window_begin): Hide the system caret.
10673 (x_update_window_end): Show the system caret.
10674 (x_display_and_set_cursor): Don't draw a cursor when
10675 w32_use_visible_system_caret is set. Do not adjust width.
0e79d667 10676
048addec
JD
10677 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
10678 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
10679 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
10680 the user requests it. Use system default width when creating.
10681 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
0e79d667 10682
048addec
JD
10683 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
10684 New window messages.
905cc05a 10685
048addec 106862002-01-20 Richard M. Stallman <rms@gnu.org>
82a7ab23 10687
048addec 10688 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
d75bec6a 10689
048addec 106902002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
52dcb476 10691
048addec 10692 * doprnt.c (doprnt1): Fix typos in error call.
82a7ab23 10693
048addec 106942002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
82a7ab23 10695
048addec 10696 * unexelf.c (unexec) [__sgi]: Support the .got sections.
82a7ab23 10697
048addec 106982002-01-20 Jason Rumney <jasonr@gnu.org>
4d0fa4f3 10699
048addec
JD
10700 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
10701 that Windows returns. If a double check fails, try to guess how
10702 ExtTextOut is going to act.
4d0fa4f3 10703
048addec
JD
10704 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
10705 in place of stricmp.
10706 (w32_list_synthesized_fonts): Removed.
10707 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
10708 (struct enumfont_t): New element; list.
10709 (enum_font_cb2): List all style and charset variations of a font.
10710 (Fw32_select_font): New optional argument; include_proportional.
10711 Exclude vertical fonts. Exclude proportional fonts unless
10712 include_proportional is non-nil.
10713 (w32_enable_synthesized_fonts): Change to a boolean.
10714 (Fw32_send_sys_command): Doc fix.
493faf20 10715
048addec 107162002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
493faf20 10717
048addec
JD
10718 * dispnew.c (update_frame): Move the variable `tem' to the block
10719 where it is used.
4971e491 10720
048addec 107212002-01-19 Jason Rumney <jasonr@gnu.org>
4971e491 10722
048addec
JD
10723 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
10724 call to face-set-after-frame-default.
4971e491 10725
048addec 107262002-01-18 Richard M. Stallman <rms@gnu.org>
d911a0fa 10727
048addec
JD
10728 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
10729 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
d911a0fa 10730
048addec 107312002-01-17 Richard M. Stallman <rms@gnu.org>
d911a0fa 10732
048addec
JD
10733 * window.c (enlarge_window): When exceeding size of parent,
10734 directly delete all the siblings instead of trying to resize it.
201c831a 10735
048addec 107362002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
201c831a 10737
048addec 10738 * term.c (set_tty_color_mode): Remove unused variable `tem'.
201c831a 10739
048addec 107402002-01-16 Henrik Enberg <henrik@enberg.org>
34e39c95 10741
048addec 10742 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
34e39c95 10743
048addec 107442002-01-16 Kim F. Storm <storm@cua.dk>
d77fbc16 10745
048addec
JD
10746 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
10747 is invisible. This can happen if cursor is on top line of a
10748 window, and we switch to a buffer with a header line.
d77fbc16 10749
048addec 10750 * w32term.c (x_erase_phys_cursor): Ditto.
61e3b944 10751
048addec 107522002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
61e3b944 10753
048addec
JD
10754 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
10755 `dont_resize' only when used.
61e3b944 10756
048addec 10757 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
70da46c3 10758
048addec 107592002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
70da46c3 10760
048addec
JD
10761 * xdisp.c (display_mode_element): When computing charpos, depend
10762 on multibyteness of elt, not the text in field.
8af01033 10763
048addec 107642002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8af01033 10765
048addec
JD
10766 * buffer.c (Fkill_all_local_variables):
10767 Increment `update_mode_lines' only once.
7363986a 10768
048addec 107692002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7363986a 10770
048addec
JD
10771 * lisp.h (adjust_after_replace_noundo)
10772 (Fupdate_coding_systems_internal): Add prototypes.
d9e6c4b1 10773
048addec 10774 * sound.c (Fplay_sound): Initialize header_size also for :data case.
d20fc48a 10775
048addec 107762002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
d9e6c4b1 10777
048addec
JD
10778 Support for the --color command-line argument and tty-color-mode
10779 frame parameter:
f1a85b89 10780
048addec
JD
10781 * term.c (tty_default_color_capabilities, tty_setup_colors)
10782 (set_tty_color_mode): New functions.
10783 (term_init): Call tty_default_color_capabilities.
10784 (Qtty_color_mode_alist): New variable.
10785 (syms_of_term): Intern and staticpro it.
f1a85b89 10786
048addec
JD
10787 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
10788 frames.
10789 (do_switch_frame): For termcap frames, switch the tty
10790 color mode as specified by the frame's parameters.
10791 (Qtty_color_mode): New variable.
10792 (syms_of_frame): Intern and staticpro it.
3a62677f 10793
048addec
JD
10794 * emacs.c (USAGE2): Add the --color option.
10795 (standard_args): Ditto.
72244db2 10796
048addec
JD
107972002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10798
10799 * xterm.h (struct x_output): New members want_fullscreen,
10800 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
10801 y_pixels_outer_diff.
10802 New enum for FULLSCREEN_* constants.
10803 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
10804 is NULL.
10805 (x_fullscreen_adjust): Add prototype.
3a62677f 10806
048addec
JD
10807 * emacs.c (USAGE2): Add the new full-screen arguments.
10808 (standard_args): Ditto.
3a62677f 10809
048addec
JD
10810 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
10811 New variables.
10812 (syms_of_xfns): Intern and staticpro them.
10813 (x_frame_parms) <"fullscreen">: New parameter.
10814 (x_fullscreen_move, x_set_fullscreen): New functions.
10815 (x_set_frame_parameters): Support for Qfullscreen.
10816 (x_real_positions): More accurate computation of the frame position.
10817 (x_figure_window_size): Support full-screen frames.
10818 (Fx_create_frame): Default the fullscreen parameter.
3a62677f 10819
048addec
JD
10820 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
10821 (XTread_socket) <Expose>: Call x_check_fullscreen.
10822 <ConfigureNotify>: Don't resize to fullscreen.
10823 Call x_check_fullscreen_move, and set the want_fullscreen member of
10824 output_data.x.
3a62677f 10825
048addec 108262002-01-13 Jason Rumney <jasonr@gnu.org>
9d113d9d 10827
048addec
JD
10828 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
10829 for mice with more than 3 buttons.
b8523839 10830
048addec
JD
10831 * w32term.c (parse_button): New parameter xbutton. Callers changed.
10832 (w32_read_socket): Handle new "XBUTTON" messages.
9464dea4 10833
048addec
JD
10834 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
10835 (syms_of_w32fns): DEFVAR_BOOL it.
10836 (w32_wnd_proc): Handle new "XBUTTON" messages.
9d113d9d 10837
048addec 108382002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
70ec1377 10839
048addec 10840 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
70ec1377 10841
048addec 108422002-01-13 Andreas Schwab <schwab@suse.de>
92f7dd37 10843
048addec 10844 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
92f7dd37 10845
048addec 108462002-01-12 Andreas Schwab <schwab@suse.de>
c93674bb 10847
048addec
JD
10848 * .gdbinit (xbuffer): Remove address operator since data is now a
10849 pointer.
c93674bb 10850
048addec 108512002-01-11 Richard M. Stallman <rms@gnu.org>
59b59892 10852
048addec 10853 * insdel.c (adjust_after_replace_noundo): New function.
59b59892 10854
048addec 10855 * coding.c (code_convert_region): Don't copy old text if undo disabled.
c6ea2775 10856
048addec 108572002-01-09 Jason Rumney <jasonr@gnu.org>
c6ea2775 10858
048addec
JD
10859 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
10860 when checking for multiple frames.
91175673 10861
048addec 108622002-01-08 Richard M. Stallman <rms@gnu.org>
91175673 10863
048addec
JD
10864 * window.c (delete_window): Rewrite the code for changing the
10865 selected window to handle the case where WINDOW is not a leaf.
91175673 10866
048addec 108672002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
e0fead5d 10868
048addec
JD
10869 * process.c (send_process): Set src_multibyte to 1 after the call
10870 top setup_coding_system, not before the call.
e0fead5d 10871
048addec 108722002-01-07 Jason Rumney <jasonr@gnu.org>
e0fead5d 10873
048addec
JD
10874 * xmenu.c (set_frame_menubar, xmenu_show):
10875 (xdialog_show): Initialize wv->help to Qnil.
c186cdb3 10876
048addec
JD
10877 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
10878 (w32_dialog_show): Initialize wv->help to Qnil.
c186cdb3 10879
048addec 108802002-01-06 Jason Rumney <jasonr@gnu.org>
c186cdb3 10881
048addec 10882 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
c186cdb3 10883
048addec 10884 * w32menu.c (w32_menu_display_help): Revert last change.
58cfce98 10885
048addec 10886 * xmenu.c (menu_highlight_callback): Revert last change.
58cfce98 10887
048addec 108882002-01-06 Andreas Schwab <schwab@suse.de>
62854fe2 10889
048addec
JD
10890 * insdel.c (make_gap_larger): Make sure buffer size does not
10891 overflow range of int.
62854fe2 10892
048addec 108932002-01-05 Jason Rumney <jasonr@gnu.org>
656f46bb 10894
048addec
JD
10895 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
10896 OVERLAPS_P.
656f46bb 10897
048addec 10898 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
656f46bb 10899
048addec
JD
10900 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
10901 to the left or to the right of the pointer, put it against
10902 the left screen edge.
10903 (x_frame_parms): Add missing braces around initializer.
036e218d 10904
048addec
JD
10905 * w32term.c (x_setup_relief_colors): Don't compute an image's
10906 background color if it doesn't have a Pixmap.
10907 (notice_overwritten_cursor): Don't depend on
10908 output_cursor and updated_area. Compare pixel coordinates with
10909 window's cursor pixel coordinates.
10910 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
10911 Call notice_overwritten_cursor with new arg list.
10912 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
10913 unconditionally.
10914 (x_draw_image_relief): Use predefined macro instead of
10915 constant when the value of `tool_bar_button_relief' is negative.
036e218d 10916
048addec 10917 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
7ddb2c16 10918
048addec 109192002-01-04 Richard M. Stallman <rms@gnu.org>
7ddb2c16 10920
048addec 10921 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
ace9b298 10922
048addec 109232002-01-03 Richard M. Stallman <rms@gnu.org>
90647b07 10924
048addec
JD
10925 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
10926 (Fkey_binding): Try the `keymap' property map first.
10927 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
10928 minor mode bindings.
90647b07 10929
048addec 109302002-01-03 Kim F. Storm <storm@cua.dk>
ace9b298 10931
048addec 10932 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
ace9b298 10933
048addec 109342002-01-02 Richard M. Stallman <rms@gnu.org>
ace9b298 10935
048addec
JD
10936 * keyboard.c (read_key_sequence): Handle the keymap property
10937 before minor mode maps.
9fbc32aa 10938
048addec
JD
10939 * editfns.c (Fformat): Update thissize from field_width
10940 based on the actual width, in the string case.
036e218d 10941
048addec 109422002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fbc32aa 10943
048addec
JD
10944 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
10945 when used as truth value to prevent gcc warnings.
9fbc32aa 10946
048addec
JD
10947 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
10948 * w32proc.c: Include <config.h>.
9fbc32aa 10949
048addec 109502002-01-01 Andreas Schwab <schwab@suse.de>
9fbc32aa 10951
048addec
JD
10952 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
10953 not EMACS_INT, to make them compatible with DEFVAR_INT.
10954 * lisp.h (max_specpdl_size): Adjust declaration.
9fbc32aa 10955
048addec 109562002-01-01 Richard M. Stallman <rms@gnu.org>
9fbc32aa 10957
048addec
JD
10958 * print.c (print_object): Test print_escape_nonascii only for
10959 unibyte strings.
10960 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
10961 when outputting to a multibyte buffer.
9fbc32aa 10962
048addec 109632001-12-29 Richard M. Stallman <rms@gnu.org>
9fbc32aa 10964
048addec
JD
10965 * print.c (print_object): In multibyte string, use hex escapes.
10966 Use octal only for unibyte strings.
10967 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
0142178a 10968
048addec
JD
10969 * lread.c (read_escape): New arg BYTEREP for reporting whether
10970 escape forces unibyte or multibyte.
10971 (read1): When reading a string, take note of that info.
0142178a 10972
048addec 109732001-12-29 Ken Raeburn <raeburn@gnu.org>
d4824a5d 10974
048addec
JD
10975 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
10976 comparison to test lisp value returned by Fget.
d4824a5d 10977
048addec 109782001-12-29 Richard M. Stallman <rms@gnu.org>
b1356234 10979
048addec 10980 * lisp.h (max_specpdl_size): Add declaration.
b1356234 10981
048addec 10982 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
3ce081f5 10983
048addec
JD
10984 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
10985 Handle modifier bits. Correct typo in error message.
99e380ee 10986
048addec 109872001-12-28 Richard M. Stallman <rms@gnu.org>
3ce081f5 10988
048addec
JD
10989 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
10990 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
10991 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
10992 Update calls to Fdefine_abbrev.
10993 (write_abbrev): Update for changed data format.
10994 Don't list "system" abbrevs.
10995 (Fexpand_abbrev): Update use count with new data format.
10996 (describe_abbrev): Update for changed data format.
10997 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
66458f32 10998
048addec 10999 * config.in (HAVE_MBSINIT): Add #undef.
66458f32 11000
048addec 11001 * strftime.c (mbsinit): Define as no-op if not available.
66458f32 11002
048addec
JD
11003 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
11004 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
59a86c99 11005
048addec
JD
11006 * keymap.c (Flookup_key): Error message if key has wrong data type.
11007 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
11008 (exclude_key): New variable.
59a86c99 11009
048addec 110102001-12-28 Gerd Moellmann <gerd@gnu.org>
eb77a5f4 11011
048addec
JD
11012 * xterm.c (x_setup_relief_colors): Don't compute an image's
11013 background color if it doesn't have a Pixmap.
eb77a5f4 11014
048addec
JD
11015 * xterm.c (notice_overwritten_cursor): Don't depend on
11016 output_cursor and updated_area. Compare pixel coordinates with
11017 window's cursor pixel coordinates.
11018 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
11019 Call notice_overwritten_cursor with new arg list.
11020 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
11021 unconditionally.
eb77a5f4 11022
048addec
JD
11023 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
11024 height of the cursor line to the amount to scroll.
eb77a5f4 11025
048addec 110262001-12-27 Richard M. Stallman <rms@gnu.org>
bb313871 11027
048addec
JD
11028 * intervals.c (set_point_both): The position after an invisible,
11029 intangible character is not an acceptable stopping point.
bb313871 11030
048addec 110312001-12-27 Ken Raeburn <raeburn@gnu.org>
55b43a63 11032
048addec
JD
11033 * window.c (enlarge_window): In new preserve_before code, convert
11034 CURBEG from lisp object to integer before doing arithmetic.
6052529b 11035
048addec 110362001-12-27 Richard M. Stallman <rms@gnu.org>
3ce081f5 11037
048addec 11038 * bytecode.c (Fbyte_code): Undo previous change.
3ce081f5 11039
048addec 110402001-12-26 Kim F. Storm <storm@cua.dk>
3ce081f5 11041
048addec
JD
11042 * keyboard.c (record_char): Ignore duplicate help-echo events only
11043 separated by mouse-movement. When tracking mouse, only record
11044 first and last mouse-movement event in same window.
11045 Don't record mouse-movement events in keyboard macros.
3ce081f5 11046
048addec 110472001-12-25 Richard M. Stallman <rms@gnu.org>
55b43a63 11048
048addec
JD
11049 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
11050 (Fenlarge_window): New arg PRESERVE_BEFORE.
111ed14e 11051
048addec
JD
11052 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
11053 instead of Fstring_as_unibyte.
9fabb2f5 11054
048addec 110552001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fabb2f5 11056
048addec 11057 The following changes remove mocklisp support:
9fabb2f5 11058
048addec 11059 * mocklisp.h, mocklisp.c: Files removed.
111ed14e 11060
048addec
JD
11061 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
11062 `Qmocklisp' and `Qmocklisp_arguments'.
11063 Remove prototype of syms_of_mocklisp.
2fa0eedf 11064
048addec 11065 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
d1420435 11066
048addec
JD
11067 * callint.c: Do not include mocklisp.h.
11068 (Fcall_interactively): Do not test for mocklisp case.
2fa0eedf 11069
048addec
JD
11070 * eval.c: Remove variables `Qmocklisp_arguments',
11071 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
11072 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
11073 Do not test for mocklisp case.
11074 (Fwhile): Remove unused variable `tem'.
11075 (syms_of_eval): Remove variable `moclisp-arguments'.
ebcbef4e 11076
048addec 11077 * data.c (wrong_type_argument): Remove mocklisp case.
5c131048 11078
048addec 11079 * doc.c (Fdocumentation): Remove mocklisp case.
5c131048 11080
048addec 11081 * emacs.c (main): Do not call syms_of_mocklisp.
5c131048 11082
048addec 110832001-12-21 Richard M. Stallman <rms@gnu.org>
96d276c3 11084
048addec
JD
11085 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
11086 to the left or to the right of the pointer, put it against
11087 the left screen edge.
6108b49c 11088
048addec 110892001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
96d276c3 11090
048addec
JD
11091 * Makefile.in (distclean): Remove .gdbinit if we are building
11092 outside the source tree.
5eea19a4 11093
048addec 110942001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
5eea19a4 11095
048addec 11096 * w32.c (emacs_root_dir): New function.
5eea19a4 11097
048addec 11098 * msdos.c (emacs_root_dir): New function.
5eea19a4 11099
048addec
JD
11100 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
11101 of the current drive as the fallback for default_directory.
438e57dd 11102
048addec
JD
11103 * dired.c (file_name_completion): Run the elements of
11104 completion-ignored-extensions through ENCODE_FILE.
438e57dd 11105
048addec
JD
11106 * lisp.h (scmp): Remove prototype, since it's now a static
11107 function private to dired.c.
c88e5347 11108
048addec 111092001-12-18 Richard M. Stallman <rms@gnu.org>
c88e5347 11110
048addec
JD
11111 * dired.c (scmp): Function moved from minibuf.c.
11112 Delete multibyte handling--used only on encoded strings.
59ce1461 11113
048addec 11114 * minibuf.c (scmp): Function moved to dired.c.
59ce1461 11115
048addec 11116 * fns.c (merge): Add QUIT call.
59ce1461 11117
048addec 111182001-12-18 Dave Love <fx@gnu.org>
8727d588 11119
048addec
JD
11120 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
11121 language/georgian.el.
8727d588 11122
048addec 111232001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
cc63037e 11124
048addec
JD
11125 * Makefile.in (lisp, shortlisp): Synchronize with changes to
11126 lisp/Makefile.in:DONTCOMPILE.
cc63037e 11127
048addec 111282001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
cc63037e 11129
048addec
JD
11130 * xdisp.c (window_box_height): Do not return negative values.
11131 From Gerd Moellmann <gerd@gnu.org>.
cc63037e 11132
048addec 11133 * keyboard.c (head_table): Add missing braces around initializer.
cc63037e 11134
048addec 11135 * term.c (keys): Likewise.
deece6f5 11136
048addec 11137 * xfns.c (x_frame_parms, visual_classes): Likewise.
deece6f5 11138
048addec 111392001-12-17 Sam Steingold <sds@gnu.org>
1b944d9c 11140
048addec
JD
11141 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
11142 patch (COMPOSING_P, not COMPOSING).
28ff4293 11143
048addec 111442001-12-17 Richard M. Stallman <rms@gnu.org>
a395ef6a 11145
048addec 11146 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
a395ef6a 11147
048addec
JD
11148 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
11149 before calling decode_coding.
9b46de40 11150
048addec 11151 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
9b46de40 11152
048addec
JD
11153 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
11154 instead of only for COMPOSITION_DISABLED.
9b46de40 11155
048addec 111562001-12-16 Richard M. Stallman <rms@gnu.org>
aff37336 11157
048addec 11158 * alloc.c (pure_alloc): After overflow, allocate just a small block.
aff37336 11159
048addec 11160 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
b9937f07 11161
048addec
JD
11162 * buffer.h (struct buffer): New field `display_error_modiff'.
11163 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
b9937f07 11164
048addec 11165 * window.c (Frecenter): Clear display_error_modiff field.
2cd23960 11166
048addec
JD
11167 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
11168 Call redisplay_window, but not if display_error_modiff field says no.
11169 (redisplay_window_error): New function.
11170 (displayed_buffer): New variable.
11171 (redisplay_internal, redisplay_windows): Call the new functions
11172 instead of redisplay_window directly.
2cd23960 11173
048addec 111742001-12-15 Richard M. Stallman <rms@gnu.org>
2cd23960 11175
048addec 11176 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
2cd23960 11177
048addec 111782001-12-14 Andrew Innes <andrewi@gnu.org>
a4184c1c 11179
048addec
JD
11180 * makefile.w32-in (EMACSLOADPATH): Define.
11181 ($(EMACS)): Run `list-load-path-shadows' after dumping emacs.
11182 (bootstrap-temacs): Remove dependency on bootstrap-clean.
a4184c1c 11183
048addec 111842001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
f6fa0866 11185
048addec
JD
11186 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
11187 parameter have a numeric value all the time.
f6fa0866 11188
048addec 11189 * w32fns.c (x_report_frame_params): Likewise.
f4ca4b00 11190
048addec 111912001-12-12 Richard M. Stallman <rms@gnu.org>
f4ca4b00 11192
048addec 11193 * fileio.c (Fwrite_region): Doc fix.
f4e25f94 11194
048addec
JD
11195 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
11196 (redisplay_internal): Call clear_image_cache only for window terminals.
f4e25f94 11197
048addec 111982001-12-12 Gerd Moellmann <gerd@gnu.org>
91c153e2 11199
048addec
JD
11200 * xdisp.c (move_it_vertically_backward): Change heuristic
11201 for the case that we didn't move far enough initially.
91c153e2 11202
048addec
JD
11203 * window.c (Frecenter): Simplify computation in the case of window
11204 system frames and ARG < 0; use window_box_height.
65b7d3e7 11205
048addec 112062001-12-11 Richard M. Stallman <rms@gnu.org>
65b7d3e7 11207
048addec
JD
11208 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
11209 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
6b5f6311 11210
048addec 112112001-12-11 Andrew Innes <andrewi@gnu.org>
6b5f6311 11212
048addec
JD
11213 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
11214 arg is negative.
be676094 11215
048addec 112162001-12-11 Richard M. Stallman <rms@gnu.org>
be676094 11217
048addec
JD
11218 * m/hp800.h: Split the __hpux conditional into the parts
11219 that are right for GNU/Linux too and the parts that are not.
11220 Use the former if GNU_LINUX.
11221 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
032a857d 11222
048addec 11223 * s/gnu-linux.h (GNU_LINUX): Defined.
032a857d 11224
048addec 112252001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
032a857d 11226
048addec
JD
11227 * macros.c, msdos.c, w16select.c: Change doc-string comments to
11228 `new style' [w/`doc:' keyword].
032a857d 11229
048addec 112302001-12-10 Jason Rumney <jasonr@gnu.org>
b6270150 11231
048addec
JD
11232 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
11233 before using.
b6270150 11234
048addec 112352001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
792e5cbd 11236
048addec
JD
11237 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
11238 keyword].
98cbb9fa 11239
048addec 112402001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
98cbb9fa 11241
048addec 11242 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
98cbb9fa 11243
048addec 11244 * s/hpux10.h (srand48): Don't undefine.
98cbb9fa 11245
048addec 112462001-12-09 Jason Rumney <jasonr@gnu.org>
792e5cbd 11247
048addec
JD
11248 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
11249 Add comment to explain where the struct came from.
11250 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
11251 (add_menu_item): Process pop-up menus first to avoid memory leak.
11252 (add_menu_item, w32_menu_display_help): Use `help' field as
11253 Lisp_Object.
11254 (w32_free_submenu_strings): Only free owner-drawn strings.
fa336b91 11255
048addec 112562001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
fa336b91 11257
048addec 11258 * COPYING: Moved back.
fa336b91 11259
048addec
JD
11260 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
11261 Add parentheses around && within ||.
077907d4 11262
048addec 11263 * indent.c (compute_motion): Likewise.
aa2af83a 11264
048addec 11265 * intervals.c (merge_properties_sticky): Likewise.
60a653f1 11266
048addec
JD
11267 * coding.c (setup_coding_system, shrink_encoding_region)
11268 (Fdecode_sjis_char): Likewise.
60a653f1 11269
048addec 112702001-12-07 Andreas Schwab <schwab@suse.de>
60a653f1 11271
048addec
JD
11272 * xdisp.c (display_mode_element): Don't read past end of string if
11273 it ends with '%'.
60a653f1 11274
048addec
JD
11275 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
11276 can hold.
60a653f1 11277
048addec
JD
11278 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
11279 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
11280 type changed to Lisp_Object.
11281 (syms_of_data): DEFVAR_LISP them.
60a653f1 11282
048addec 112832001-12-07 Richard M. Stallman <rms@gnu.org>
60a653f1 11284
048addec
JD
11285 * callproc.c (init_callproc): Set Vdata_directory based on the source
11286 location whenever Emacs was run uninstalled.
60a653f1 11287
048addec 112882001-12-06 Paul Eggert <eggert@twinsun.com>
60a653f1 11289
048addec
JD
11290 * config.in (HAVE_WORKING_VFORK): New #undefs.
11291 * process.c (create_process):
11292 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
11293 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
11294 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
11295 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
11296 * m/intel386.h (HAVE_VFORK): Likewise.
11297 * m/mips-siemens.h (HAVE_VFORK): Likewise.
11298 * m/mips.h (HAVE_VFORK): Likewise.
11299 * s/freebsd.h (vfork): Remove #define.
11300 * s/lynxos.h (HAVE_VFORK): Remove #undef.
11301 * s/usg5-4-2.h: Fix comment about vfork.
60a653f1 11302
048addec 113032001-12-06 Richard M. Stallman <rms@gnu.org>
60a653f1 11304
048addec
JD
11305 * s/hpux10.h (random): Add undef.
11306 (HAVE_RANDOM): Define it just once.
60a653f1 11307
048addec 113082001-12-06 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11309
048addec 11310 * eval.c: Undo last change: the standard syntax is not wanted.
60a653f1 11311
048addec 113122001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 11313
048addec
JD
11314 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
11315 scroll bars of the frame before deleting the frame itself. If the
11316 frame has a widget, delete the frame with XtDestroyWidget, and do
11317 not call XDestroyWindow before that.
60a653f1 11318
048addec 113192001-12-06 Kim F. Storm <storm@cua.dk>
60a653f1 11320
048addec 11321 * xfns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 11322
048addec 11323 * w32fns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 11324
048addec 113252001-12-05 Andrew Innes <andrewi@gnu.org>
60a653f1 11326
048addec
JD
11327 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
11328 excessively large.
60a653f1 11329
048addec
JD
11330 * insdel.c (make_gap_larger): New function.
11331 (make_gap_smaller): New function.
11332 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
11333 Call make_gap_smaller if arg is negative.
60a653f1 11334
048addec 113352001-12-04 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11336
048addec
JD
11337 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
11338 Pass a dummy argument when calling interrupt_signal.
11339 (parse_menu_item): Mark disabled items before checking for empty def.
11340 (read_char_minibuf_menu_prompt): Make safety more visible.
11341 (read_key_sequence): Add a `first_unbound' variable.
11342 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
11343 unbound prefix as soon as we can detect it.
60a653f1 11344
048addec
JD
11345 * doc.c (Fsnarf_documentation): Add prototype.
11346 (get_doc_string): Handle negative arguments.
11347 (Fdocumentation): Use AREF and ASIZE.
11348 Move the calls to get_doc_string to a single place.
11349 Don't confuse an interactive-spec for a docstring reference.
11350 (Fdocumentation_property): Take advantage of the fact that
11351 get_doc_string now ignores the sign of the docstring position.
60a653f1 11352
048addec 11353 * eval.c: Use standard syntax for usage in docstrings.
60a653f1 11354
048addec 113552001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11356
a64387ee 11357 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
60a653f1 11358
048addec 113592001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11360
048addec
JD
11361 * xterm.c (x_draw_image_relief): Use predefined macro instead of
11362 constant when the value of `tool_bar_button_relief' is negative.
60a653f1 11363
048addec 113642001-12-02 Richard M. Stallman <rms@gnu.org>
60a653f1 11365
048addec
JD
11366 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
11367 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
60a653f1 11368
048addec 11369 * fileio.c (read_non_regular): Delete Fsignal call.
60a653f1 11370
048addec 113712001-12-01 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11372
048addec 11373 * lisp.h (run_hook_list_with_args): Undo last change.
60a653f1 11374
048addec 113752001-12-01 Gerd Moellmann <gerd@gnu.org>
60a653f1 11376
048addec 11377 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
60a653f1 11378
048addec 113792001-12-01 Jason Rumney <jasonr@gnu.org>
60a653f1 11380
048addec 11381 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
60a653f1 11382
048addec
JD
11383 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
11384 [!WM_MOUSELEAVE]: Define.
60a653f1 11385
048addec
JD
11386 * w32menu.c (current_popup_menu, get_menu_item_info):
11387 (set_menu_item_info): New vars.
11388 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
11389 (w32_menu_show): Set current_popup_menu.
11390 (add_menu_item): Allocate new strings for owner-drawn menu items
11391 and help strings.
11392 Use owner-draw for disabled menu items again.
11393 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
11394 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
60a653f1 11395
048addec
JD
11396 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
11397 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
11398 <WM_EXITMENULOOP>: Free menu strings.
11399 <WM_MOUSELEAVE>: Stop tracking mouse.
11400 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
60a653f1 11401
048addec
JD
11402 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
11403 and mouse face.
60a653f1 11404
048addec 114052001-12-01 Kim F. Storm <storm@cua.dk>
60a653f1 11406
048addec
JD
11407 The following changes add left-fringe and right-fringe
11408 frame parameters to adjust fringe widths, or remove one or
11409 both fringes.
60a653f1 11410
048addec
JD
11411 * frame.h (struct frame): Remove trunc_area_pixel_width and
11412 trunc_area_cols fields.
11413 (Qleft_fringe, Qright_fringe): Declare.
11414 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
60a653f1 11415
048addec
JD
11416 * frame.c (Qleft_fringe, Qright_fringe): New vars.
11417 (syms_of_frame): Initialize them.
60a653f1 11418
048addec
JD
11419 * window.c (coordinates_in_window): Handle separate left and right
11420 fringe widths.
60a653f1 11421
048addec
JD
11422 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
11423 and fringe_cols fields.
11424 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
11425 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
11426 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
11427 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
11428 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
11429 (x_compute_fringe_widths): Add prototype.
60a653f1 11430
048addec
JD
11431 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
11432 fill fringe evenly with small dashes.
11433 (x_draw_fringe_bitmap): Clear background if necessary. Align and
11434 clip the new ZV bitmap to avoid jitter between rows.
11435 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
11436 background. Don't draw fringe bitmaps if fringe width is zero.
11437 (x_compute_fringe_widths): New function.
11438 (x_new_font, x_set_window_size_1): Use it.
60a653f1 11439
048addec
JD
11440 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
11441 (x_set_frame_parameters): Process `font' parameter before other
11442 parameters as fringe widths depend on it.
11443 (x_set_fringe_width): New function.
11444 (x_figure_window_size): Use x_compute_fringe_widths.
11445 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
11446 parameters.
60a653f1 11447
048addec
JD
11448 * widget.c (set_frame_size): Use x_compute_fringe_widths.
11449 (EmacsFrameSetCharSize): Ditto.
60a653f1 11450
048addec
JD
11451 * w32term.h: Merged changes from xterm.h.
11452 * w32term.c: Merged changes from xterm.c.
11453 * w32fns.c: Merged changes from xfns.c.
60a653f1 11454
048addec 114552001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11456
048addec 11457 * COPYING: Removed.
60a653f1 11458
048addec 114592001-11-29 Dave Love <fx@gnu.org>
60a653f1 11460
048addec
JD
11461 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
11462 extra extra slot.
11463 (detect_coding_mask): Fix call of detect_coding_iso2022.
60a653f1 11464
048addec 114652001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11466
048addec
JD
11467 * fileio.c (file-name-coding-system)
11468 (default-file-name-coding-system): Doc fix (links to referenced
11469 variables added).
60a653f1 11470
048addec 114712001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11472
048addec
JD
11473 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
11474 Add dummy uses of gcproN variables.
60a653f1 11475
048addec
JD
11476 * category.c (describe_category, describe_category_1)
11477 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
11478 (syms_of_category): Don't defsubr Sdescribe_categories.
60a653f1 11479
048addec 114802001-11-28 Richard M. Stallman <rms@gnu.org>
60a653f1 11481
048addec 11482 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
60a653f1 11483
048addec
JD
11484 * Makefile.in (lispdir): New variable, referring to build dir.
11485 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
60a653f1 11486
048addec 114872001-11-28 Andrew Innes <andrewi@gnu.org>
60a653f1 11488
048addec
JD
11489 * w32menu.c (w32_menu_display_help): Actually add the new argument
11490 OWNER.
60a653f1 11491
048addec 114922001-11-28 Jason Rumney <jasonr@gnu.org>
60a653f1 11493
048addec
JD
11494 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
11495 menu items. From David Ponce <dponce@wanadoo.fr>.
11496 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
11497 conditionally.
11498 (w32_menu_display_help): New argument OWNER. Rewritten to store a
11499 help event in the owner frame's keyboard buffer.
60a653f1 11500
048addec
JD
11501 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
11502 (Fx_show_tip): Don't subtract last width from row width.
11503
11504 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
11505 (w32_read_socket): Use EQ to compare frames.
60a653f1 11506
048addec 115072001-11-28 Gerd Moellmann <gerd@gnu.org>
60a653f1 11508
048addec
JD
11509 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
11510 OVERLAPS_P.
60a653f1 11511
048addec 115122001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11513
048addec
JD
11514 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
11515 `gcpro3' and `gcpro4'.
60a653f1 11516
048addec 11517 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
60a653f1 11518
048addec 115192001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11520
048addec 11521 * ccl.c: Use AREF and ASIZE.
60a653f1 11522
048addec 115232001-11-27 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11524
048addec
JD
11525 * lisp.h (run_hook_list_with_args): Remove.
11526 (LIST_END_P): Fix call to wrong_type_argument.
11527 (make_fixnum_or_float): Use EMACS_INT rather than int.
60a653f1 11528
048addec 115292001-11-26 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11530
048addec
JD
11531 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
11532 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
60a653f1 11533
048addec
JD
11534 * eval.c: Use AREF and ASIZE.
11535 (Ffetch_bytecode): Add the file name to the error message.
60a653f1 11536
048addec
JD
11537 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
11538 which match the end of the file-name.
11539 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
11540 is not a valid env var, but leave it as is instead.
60a653f1 11541
048addec
JD
11542 * keymap.c (access_keymap): Handle t bindings like nil bindings.
11543 Make nil bindings in char-tables transparent.
11544 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
60a653f1 11545
048addec 115462001-11-26 Richard M. Stallman <rms@gnu.org>
60a653f1 11547
048addec
JD
11548 * textprop.c (set_text_properties_1): Allow START, END in either order.
11549 Do nothing if range is empty.
60a653f1 11550
048addec 11551 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
60a653f1 11552
048addec
JD
11553 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
11554 (clean): Not here.
60a653f1 11555
048addec 115562001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11557
048addec
JD
11558 * textprop.c (set_text_properties_1): Clearly mark that the
11559 interval should not be empty.
60a653f1 11560
048addec
JD
11561 * intervals.c (graft_intervals_into_buffer):
11562 Don't call set_text_properties_1 on an empty interval.
60a653f1 11563
048addec 115642001-11-25 Richard M. Stallman <rms@gnu.org>
60a653f1 11565
048addec 11566 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
60a653f1 11567
048addec
JD
11568 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
11569 don't lose the data in it.
60a653f1 11570
048addec 115712001-11-25 Juanma Barranquero <lektu@terra.es>
60a653f1 11572
048addec 11573 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
60a653f1 11574
048addec 11575 * buffer.c (Fkill_buffer): Use Frun_hooks, not Vrun_hooks.
60a653f1 11576
048addec 11577 * print.c (temp_output_buffer_setup): Use Frun_hooks, not Vrun_hooks.
60a653f1 11578
048addec 115792001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11580
048addec 11581 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
60a653f1 11582
048addec 115832001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 11584
048addec
JD
11585 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
11586 Niemitalo <kon@iki.fi>.
60a653f1 11587
048addec 115882001-11-25 Jason Rumney <jasonr@gnu.org>
60a653f1 11589
048addec 11590 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
60a653f1 11591
048addec
JD
11592 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
11593 (Fx_show_tip): Block input during frame creation.
11594 (Fx_show_tip, Fx_hide_tip): Enable.
60a653f1 11595
048addec 115962001-11-24 Richard M. Stallman <rms@gnu.org>
60a653f1 11597
048addec
JD
11598 * lread.c (Fload): Detect recursive load error for more than 3
11599 nestings of the same file.
11600 (Vrecursive_load_depth_limit): Variable deleted.
11601 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
60a653f1 11602
048addec 116032001-11-24 Jason Rumney <jasonr@gnu.org>
60a653f1 11604
048addec
JD
11605 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
11606 mouse position if either left or top is not specified.
60a653f1 11607
048addec
JD
11608 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
11609 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
11610 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
11611 (my_create_tip_window): Assign tip_window.
11612 (x_create_tip_frame): Use same defaults as X.
11613 (compute_tip_xy): Remove unused variable. Use full screen width.
11614 (Fx_show_tip): Do not double height. Call ShowWindow directly.
60a653f1 11615
048addec
JD
11616 * w32term.c (x_after_update_window_line): Doc fix.
11617 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
11618 frames.
11619 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
60a653f1 11620
048addec
JD
11621 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
11622 for all Windowed systems.
60a653f1 11623
048addec 116242001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 11625
048addec
JD
11626 * msdos.c (IT_clear_screen): If the frame's faces are not yet
11627 realized, use the initial screen colors to clear the screen.
60a653f1 11628
048addec 116292001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11630
048addec
JD
11631 * textprop.c (Fset_text_properties): Remove unused variables
11632 `unchanged', `prev_changed', `s' and `len'.
60a653f1 11633
048addec
JD
11634 * search.c (Freplace_match): Remove unused variable `inslen'.
11635
11636 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
11637
116382001-11-22 Jason Rumney <jasonr@gnu.org>
11639
11640 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
11641 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
11642 (my_create_tip_window): New function.
11643 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
11644 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
11645
116462001-11-20 Jason Rumney <jasonr@gnu.org>
11647
11648 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
11649 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
11650
11651 * w32fns.c (Vw32_system_coding_system): Remove.
11652 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
11653
116542001-11-19 Stefan Monnier <monnier@cs.yale.edu>
11655
11656 * fileio.c (Fwrite_region): Move choose_write_coding_system to
11657 after build_annotations.
11658
11659 * syntax.c (describe_syntax): Add dummy arg.
11660 (describe_syntax_1): Update call to describe_vector.
11661
11662 * category.c (describe_category): Add dummy arg.
11663 (describe_category_1): Update call to describe_vector.
11664
11665 * keymap.c (Fdescribe_vector): Add `describer' parameter.
11666 (describe_command, describe_translation): Add dummy second param.
11667 (describe_map): Call elt_describer with two arguments.
11668 (describe_vector_princ): Add `fun' parameter.
11669 Call it instead of the hardcoded `princ'.
11670 (describe_vector): Add arg `args'.
11671 Pass it as a new second argument to elt_describer.
60a653f1 11672
048addec 11673 * keymap.h (describe_vector): Update prototype.
60a653f1 11674
048addec
JD
11675 * frame.c: Don't include keymap.h any more.
11676 (keys_of_frame): Remove.
60a653f1 11677
048addec 11678 * lisp.h (keys_of_frame): Remove declaration.
60a653f1 11679
048addec 11680 * emacs.c (main): Don't call `keys_of_frame' any more.
60a653f1 11681
048addec 116822001-11-14 Andreas Schwab <schwab@suse.de>
60a653f1 11683
048addec
JD
11684 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
11685 if defined, 0 otherwise.
11686 (MAP_FAILED): Define if not defined and use it to test mmap failure.
11687 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
60a653f1 11688
048addec 116892001-11-19 Richard M. Stallman <rms@gnu.org>
60a653f1 11690
048addec 11691 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
60a653f1 11692
048addec 116932001-11-18 Jason Rumney <jasonr@gnu.org>
60a653f1 11694
048addec
JD
11695 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
11696 (x_draw_bar_cursor): If the background color of the glyph under
11697 the cursor equals the frame's cursor color, use the glyph's
11698 foreground color for drawing the bar cursor.
11699 (x_after_update_window_line): Clear internal border in different
11700 circumstances.
11701 (w32_set_vertical_scroll_bar): Check for width and height > 0.
11702 (w32_draw_relief_rect): Correct relief by 1 pixel.
11703 (x_set_glyph_string_background_width):
11704 Set extends_to_end_of_line_p if the row's fill_line_p is set and
11705 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
11706 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
11707 if cursor_in_non_selected_windows is false.
11708 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
11709 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
11710 Notice if cursor gets overwritten.
11711 (notice_overwritten_cursor): Renamed from
11712 note_overwritten_text_cursor. Rewritten to take glyph widths
11713 into account, and to take X positions as parameters.
11714 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
11715 around call to x_draw_glyphs.
11716 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
11717 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
11718 color to use for image glyph reliefs.
11719 (x_draw_image_relief): Accept zero tool_bar_button_relief.
11720 (glyph_rect): Remove unused variable `area'.
60a653f1 11721
048addec
JD
11722 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
11723 some items.
11724 (x_set_internal_border_width): Set frame garbaged when window
11725 doesn't exist yet.
11726 (Fx_create_frame): Accept zero tool_bar_button_relief.
11727 (x_clear_image_1, four_corners_best, image_background)
11728 (image_background_transparent): New functions.
11729 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
11730 (gs_format): Add `:background' entry.
11731 (lookup_image): Set IMG's background color if specified.
11732 (pbm_load, xbm_load_image, png_load): Set IMG's background field
11733 when appropriate.
11734 (x_clear_image_1): Reset `background_valid' and
11735 `background_transparent_valid' fields.
11736 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
11737 calculating it here. Set IMG's background_transparent field.
11738 (enum xpm_keyword_index): Add XPM_BACKGROUND.
11739 (enum png_keyword_index): Add PNG_BACKGROUND.
11740 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
11741 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
11742 (enum gif_keyword_index): Add GIF_BACKGROUND.
11743 (enum gs_keyword_index): Add GS_BACKGROUND.
11744 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
11745 Pre-calculate image background color where necessary.
11746 (x_create_x_image_and_pixmap, xbm_load, gs_load):
11747 Use display info's n_cbits entry for screen depth.
11748 (Fx_show_tip): Remove unused variables `buffer', `top',
11749 `left', `max_width' and `max_height'.
60a653f1 11750
048addec 11751 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
60a653f1 11752
048addec 117532001-11-18 Gerd Moellmann <gerd@gnu.org>
60a653f1 11754
048addec 11755 * puresize.h (BASE_PURESIZE): Increase to 750000.
60a653f1 11756
048addec 117572001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11758
048addec 11759 * frame.c (Fframe_live_p): Doc fix.
60a653f1 11760
048addec 117612001-11-18 Richard M. Stallman <rms@gnu.org>
60a653f1 11762
048addec
JD
11763 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
11764 (message_dolog_marker3): New static variables hold three markers.
11765 (syms_of_xdisp): Initialize and staticpro them.
11766 (message_dolog): Use message_dolog_marker1..3 instead of
11767 allocating markers each time. Unchain them when done.
60a653f1 11768
048addec 117692001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 11770
048addec 11771 * doc.c (Fsnarf_documentation): Doc fix.
60a653f1 11772
048addec 117732001-11-17 Andreas Schwab <schwab@suse.de>
60a653f1 11774
048addec 11775 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
60a653f1 11776
048addec 117772001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 11778
048addec 11779 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
60a653f1 11780
048addec 117812001-11-17 Jason Rumney <jasonr@gnu.org>
60a653f1 11782
048addec 11783 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
60a653f1 11784
048addec 117852001-11-17 Gerd Moellmann <gerd@gnu.org>
60a653f1 11786
048addec
JD
11787 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
11788 with invalid position.
60a653f1 11789
048addec 117902001-11-16 Richard M. Stallman <rms@gnu.org>
60a653f1 11791
048addec 11792 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
60a653f1 11793
048addec
JD
11794 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
11795 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
11796 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
60a653f1 11797
048addec 11798 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
60a653f1 11799
048addec 118002001-11-16 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11801
048addec
JD
11802 * fileio.c (build_annotations): Split off the tail.
11803 (build_annotations_2): New fun. Extracted from build_annotations.
11804 (Fwrite_region): Split the call to build_annotations into two
11805 calls to build_annotations and build_annotations_2.
077907d4 11806
048addec 118072001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
1756e2fb 11808
048addec
JD
11809 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
11810 clear_waiting_for_input with argument.
1756e2fb 11811
048addec 11812 * xterm.h (x_update_cursor): Remove duplicated prototype.
06e8f738 11813
048addec 11814 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
06e8f738 11815
048addec 11816 * xterm.c (waiting_for_input): Remove unnecessary declaration.
fa336b91 11817
048addec 11818 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
fa336b91 11819
048addec 118202001-11-16 Stefan Monnier <monnier@cs.yale.edu>
fa336b91 11821
048addec
JD
11822 * fileio.c (choose_write_coding_system): New fun, extracted
11823 from Fwrite_region.
11824 (Fwrite_region): Use it.
fa336b91 11825
048addec
JD
11826 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
11827 (funcall_lambda, run_hook_with_args): Make static and add prototype.
11828 (ml_apply, find_handler_clause): Add prototype.
fa336b91 11829
048addec 118302001-11-16 Eli Zaretskii <eliz@gnu.org>
fa336b91 11831
048addec 11832 * config.in: Add #undef HAVE_COFF_H.
fa336b91 11833
048addec
JD
11834 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
11835 Required for ISC 4.1.
fa336b91 11836
048addec 118372001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
fa336b91 11838
048addec
JD
11839 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
11840 Andrew Wiseman <a.wiseman@btclick.com>.
fa336b91 11841
048addec 118422001-11-16 Kim F. Storm <storm@cua.dk>
fa336b91 11843
048addec
JD
11844 The following changes are made to clean up the various internal
11845 references to the fringes to actually use the term `fringe' for
11846 them. Previously, they were called `flags areas', `bitmap areas',
11847 `left/right side of windows', or implicitly as `flags' or
11848 `bitmaps':
fa336b91 11849
048addec
JD
11850 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
11851 Comments fixed. Use renamed symbols.
06e8f738 11852
048addec 11853 * dispnew.c: Comment fix. Use renamed symbols.
06e8f738 11854
048addec
JD
11855 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
11856 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
11857 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
9ce647f4 11858
048addec 11859 * msdos.c: Comment fix.
9ce647f4 11860
048addec 11861 * w32fns.c: Use renamed symbols.
9b784ab8 11862
048addec
JD
11863 * w32term.c: Comment fixes. Use renamed symbols.
11864 (fringe_bitmap_type): Renamed from bitmap_type.
11865 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
11866 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
11867 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
9f7e52b4 11868
048addec
JD
11869 * w32term.h: Comment fixes. Use renamed symbols.
11870 (fringes_extra): Renamed from flags_areas_extra.
11871 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
11872 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
11873 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
11874 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
11875 (FRAME_X_LEFT_FRINGE_WIDTH):
11876 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
11877 (FRAME_X_RIGHT_FRINGE_WIDTH):
11878 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
9f7e52b4 11879
048addec 11880 * widget.c: Use renamed symbols.
9f7e52b4 11881
048addec
JD
11882 * window.c: Comment fixes. Use renamed symbols.
11883 (coordinates-in-window-p): Doc fix.
fa336b91 11884
048addec 11885 * xdisp.c: Comment fixes. Use renamed symbols.
34e5d0af 11886
048addec 11887 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
9b784ab8 11888
048addec 11889 * xfns.c: Use renamed symbols.
89512fcd 11890
048addec
JD
11891 * xterm.c: Comment fixes. Use renamed symbols.
11892 (fringe_bitmap_type): Renamed from bitmap_type.
11893 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
11894 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
11895 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
89512fcd 11896
048addec
JD
11897 * xterm.h: Comment fixes. Use renamed symbols.
11898 (fringes_extra): Renamed from flags_areas_extra.
11899 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
11900 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
11901 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
11902 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
11903 (FRAME_X_LEFT_FRINGE_WIDTH):
11904 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
11905 (FRAME_X_RIGHT_FRINGE_WIDTH):
11906 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
11907
119082001-11-15 Jason Rumney <jasonr@gnu.org>
11909
11910 * w32menu.c (add-menu-item): Make help_echo and radio buttons
11911 work for most menu items. From David Ponce
11912 <david.ponce@wanadoo.fr>.
11913
119142001-11-15 Gerd Moellmann <gerd@gnu.org>
11915
11916 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
11917 Some x_set_* function expect to be called even if old and new
11918 value are equal.
11919
11920 * xdisp.c (build_desired_tool_bar_string): Accept zero
11921 tool_bar_button_relief.
11922
11923 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
11924
11925 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
11926
11927 * xterm.c (x_draw_bar_cursor): If the background color of the
11928 glyph under the cursor equals the frame's cursor color, use
11929 the glyph's foreground color for drawing the bar cursor.
11930
11931 * dispnew.c (direct_output_forward_char): Fix character/byte
11932 position comparison.
7d18891d 11933
048addec 119342001-11-15 Miles Bader <miles@gnu.org>
d2936d21 11935
048addec
JD
11936 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
11937 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
11938 Update arguments to find_field.
11939 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
11940 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
11941 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
11942 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
7d18891d 11943
048addec 119442001-11-14 Richard M. Stallman <rms@gnu.org>
7d18891d 11945
048addec 11946 * editfns.c (Fpropertize): Allow call with 1 arg.
7d18891d 11947
048addec
JD
11948 * dispextern.h (image_background, image_background_transparent):
11949 Conditionalize on HAVE_X_WINDOWS.
7d18891d 11950
048addec 119512001-11-13 Richard M. Stallman <rms@gnu.org>
7d18891d 11952
048addec 11953 * print.c (Fprin1_to_string): Doc fix.
7d18891d 11954
048addec 11955 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
7d18891d 11956
048addec 11957 * floatfns.c (Fceiling, Ffloor): Doc fixes.
7d18891d 11958
048addec 11959 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
7d18891d 11960
048addec 11961 * fileio.c (Ffile_accessible_directory_p): Doc fix.
7d18891d 11962
048addec 11963 * eval.c (syms_of_eval): Doc fix.
7d18891d 11964
048addec 11965 * coding.c (syms_of_coding): Doc fix.
7d18891d 11966
048addec 11967 * doc.c (Fsnarf_documentation): Doc fix.
7d18891d 11968
048addec 11969 * dispnew.c (syms_of_display): Doc fix.
9474c847 11970
048addec 11971 * category.c (Fget_unused_category): Doc fix.
9474c847 11972
048addec 11973 * buffer.c (syms_of_buffer): Doc fixes.
e3059a5d 11974
048addec 119752001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
e3059a5d 11976
048addec 11977 * print.c (prin1, print): Doc fix.
e3059a5d 11978
048addec 119792001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
b3700ae7 11980
048addec
JD
11981 * fontset.h: Remove declarations of variables
11982 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
b3700ae7 11983
048addec
JD
11984 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
11985 `Vclip_large_size_font'.
eae936e2 11986
048addec 119872001-11-13 Jason Rumney <jasonr@gnu.org>
4bb962be 11988
048addec 11989 * w32fns.c: Doc fix.
ddb67bdc 11990
048addec 119912001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3467c402 11992
048addec 11993 * xfaces.c (Fface_attributes_as_vector): Doc fix.
3467c402 11994
048addec 11995 * fns.c: Doc fix.
6e1b91d7 11996
048addec 11997 * emacs.c: Doc fix.
1c1d3d69 11998
048addec 11999 * coding.c: Doc fix.
1c1d3d69 12000
048addec
JD
12001 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
12002 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
12003 `new style' [w/`doc:' keyword].
b6f4c7ba 12004
048addec 120052001-11-12 Richard M. Stallman <rms@gnu.org>
b6f4c7ba 12006
048addec
JD
12007 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
12008 LeaveNotify events. Only FocusIn and FocusOut do that now.
12009 (x_display_and_set_cursor): Do display hollow cursors in active
12010 minibuffer windows when they are not selected.
b6f4c7ba 12011
048addec 120122001-11-12 Jason Rumney <jasonr@gnu.org>
a89f435d 12013
048addec
JD
12014 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
12015 * w32term.c: Change doc-string comments to `new style'.
12016 [w/`doc:' keyword]. Doc fixes.
a89f435d 12017
048addec
JD
12018 * w32fns.c: Don't define max.
12019 (Fx_open_connection): Only execute once.
a4cd0cd7 12020
048addec 120212001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
eafb659a 12022
048addec
JD
12023 * ccl.c: Change macros to use do-while block instead of if-else.
12024 Use braces to follow GNU Coding Standards.
eafb659a 12025
048addec 120262001-11-11 Richard M. Stallman <rms@gnu.org>
a4cd0cd7 12027
048addec 12028 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
a4cd0cd7 12029
048addec 12030 * lread.c (read_escape): Use end_of_file_error for reporting eof.
a4cd0cd7 12031
048addec
JD
12032 * insdel.c (replace_range): Use adjust_markers_for_replace
12033 instead of adjust_markers_for_delete and adjust_markers_for_insert.
a4cd0cd7 12034
048addec 12035 * intervals.h: Declare set_text_properties and set_text_properties_1.
a4cd0cd7 12036
048addec
JD
12037 * textprop.c (set_text_properties_1): New subroutine
12038 broken out of set_text_properties.
12039 (set_text_properties): Use set_text_properties_1.
91823618 12040
048addec
JD
12041 * intervals.c (graft_intervals_into_buffer):
12042 Use set_text_properties_1 to clear out properties.
91823618 12043
048addec
JD
12044 * search.c (Freplace_match): Use replace_range to insert
12045 and delete. Don't request property inheritance from
12046 surrounding text.
86928dfb 12047
048addec 120482001-11-10 Jason Rumney <jasonr@gnu.org>
86928dfb 12049
048addec
JD
12050 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
12051 vertical fonts. Allow them if face name is explicitly specified.
12052 Do not give up if we find a font that cannot be converted to an xlfd.
40ef1eda 12053
048addec 120542001-11-10 Gerd Moellmann <gerd@gnu.org>
ab8469eb 12055
048addec
JD
12056 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
12057 instead of malloc/free.
a78e0303 12058
048addec 120592001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
40ef1eda 12060
048addec
JD
12061 * xfaces.c (merge_face_vectors): Use braces to follow GNU
12062 Coding Standards.
12063 (Finternal_set_lisp_face_attribute): Likewise.
fabf4a91 12064
048addec 12065 * buffer.c (Fbury_buffer): Likewise.
0c99b139 12066
048addec 12067 * indent.c (current_column_1): Remove unused variable `prev_col'.
0c99b139 12068
048addec
JD
12069 * coding.c (encode_coding): Use precomputed value of `src'.
12070 (encode_coding): Remove unused variable `src_end'.
12071 (code_convert_region): Remove unused variables `count'.
830ddd77 12072
048addec 120732001-11-07 Jason Rumney <jasonr@gnu.org>
830ddd77 12074
048addec
JD
12075 * w32term.c (x_display_and_set_cursor): Do not move system caret
12076 if cursor_glyph is NULL.
55c6d645 12077
048addec 120782001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
55c6d645 12079
048addec 12080 * keymap.c (access_keymap): Fix compilation error.
5de38842 12081
048addec 120822001-11-07 Miles Bader <miles@gnu.org>
7a4564a4 12083
048addec 12084 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
5de38842 12085
048addec 120862001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4fa23df5 12087
048addec
JD
12088 * intervals.c (graft_intervals_into_buffer):
12089 Remove #ifdef'd-out code.
12090 (graft_intervals_into_buffer): Remove unused variable `middle'.
4fa23df5 12091
048addec
JD
12092 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
12093 code (eval-current-buffer).
12094 Change doc-string comments to `new style' [w/`doc:' keyword].
7a6a97d7 12095
048addec 120962001-11-06 Richard M. Stallman <rms@gnu.org>
c191d13c 12097
048addec 12098 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
7a6a97d7 12099
048addec 121002001-11-06 Stefan Monnier <monnier@cs.yale.edu>
44dc78e0 12101
048addec 12102 * lread.c (read1): Fix behavior with nested backquoting.
44dc78e0 12103
048addec
JD
12104 * keyboard.c (make_lispy_event): Check integerness and fix
12105 Lisp_Object/int mixup.
17893c65 12106
048addec 121072001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4d994a79 12108
048addec 12109 * fns.c (copy_hash_table): Remove unused variable `v'.
d5360cc7 12110
048addec
JD
12111 * fontset.c (fontset_font_pattern): Remove unused variable
12112 `family_registry'.
d5360cc7 12113
048addec 12114 * indent.c (current_column_1): Remove unused variable `prev_col'.
d5360cc7 12115
048addec 121162001-11-05 Richard M. Stallman <rms@gnu.org>
96238a5a 12117
048addec 12118 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
96238a5a 12119
048addec
JD
12120 * buffer.c (Fkill_buffer): Don't delete auto save file
12121 if buffer is modified.
d9d54213 12122
048addec 121232001-11-05 Andrew Innes <andrewi@gnu.org>
d9d54213 12124
048addec
JD
12125 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
12126 CHECK_NUMBER_CDR.
b116830b 12127
048addec 121282001-11-05 Richard M. Stallman <rms@gnu.org>
b116830b 12129
048addec 12130 * unexelf.c (unexec): Minor changes; clean up comments.
3297e2a1 12131
048addec 121322001-11-05 Sam Steingold <sds@gnu.org>
3297e2a1 12133
048addec 12134 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
6fb8339c 12135
048addec 121362001-11-05 Andreas Schwab <schwab@suse.de>
6fb8339c 12137
048addec 12138 * sound.c (sound_perror): Save errno from being clobbered.
7dd73b78 12139
048addec 121402001-11-05 Dale Hagglund <rdh@yottayotta.com>
7dd73b78 12141
048addec
JD
12142 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
12143 the program image directly.
982f6c7e 12144
048addec 121452001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d31053f9 12146
048addec 12147 * buffer.h (Fbuffer_local_value): Add prototype.
d31053f9 12148
048addec 121492001-11-04 Richard M. Stallman <rms@gnu.org>
d31053f9 12150
048addec
JD
12151 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
12152 and CHECK_BUFFER.
d31053f9 12153
048addec
JD
12154 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
12155 (record_char): Likewise.
d31053f9 12156
048addec
JD
12157 * keyboard.c (make_lispy_event): Don't insist a drag event must
12158 move to a different buffer position. Instead, check for moving at
12159 least double_click_fuzz.
982f6c7e 12160
048addec 12161 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
830047fd 12162
048addec 12163 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
b116830b 12164
048addec
JD
12165 * indent.c (current_column_1, Fmove_to_column): Separate the code
12166 for display-table glyphs from the code for buffer text, to fix
12167 bugs in the former.
830047fd 12168
048addec 121692001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
b116830b 12170
048addec
JD
12171 * buffer.c (Fbuffer_local_value): New function.
12172 (syms_of_buffer): Defsubr it.
2df5238c 12173
048addec
JD
12174 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
12175 value of `cursor-in-non-selected-windows'.
4e397688 12176
048addec
JD
12177 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
12178 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
12179 (syms_of_xdisp): Initialize it.
48b0f3ae 12180
048addec 121812001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2df5238c 12182
048addec 12183 * xfns.c (Fx_create_frame): Doc fix.
3ecaf7e5 12184
048addec
JD
12185 * coding.c: Change doc-string comments to `new style' [w/`doc:'
12186 keyword].
3ecaf7e5 12187
048addec
JD
12188 * eval.c (top_level_value, top_level_set): Remove commented and
12189 #ifdef'd-out code.
12190 (Fdefvar): Fix usage in doc-string.
3ecaf7e5 12191
048addec 121922001-11-03 Richard M. Stallman <rms@gnu.org>
3ecaf7e5 12193
048addec 12194 * xfns.c: Include unistd.h, if it exists.
8db2e33b 12195
048addec 12196 * editfns.c: Move the include of ctype.h after unistd.h.
8db2e33b 12197
048addec 12198 * gmalloc.c: Test BROKEN_PROTOTYPES.
aed29b97 12199
048addec 122002001-11-03 Ken Raeburn <raeburn@gnu.org>
aed29b97 12201
048addec
JD
12202 * lisp.h (CHECK_STRING_CAR): New macro.
12203 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
12204 treating XCAR and XCDR as lvalues.
12205 (openp): Use CHECK_STRING_CAR.
12206 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
aed29b97 12207
048addec 122082001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
6cb16f95 12209
048addec
JD
12210 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
12211 (SIGMASKTYPE): Define.
1b1acc13 12212
048addec 12213 * syssignal.h (sigunblock): Don't define if already defined.
020f9b38 12214
048addec 122152001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
020f9b38 12216
048addec
JD
12217 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
12218 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
12219 Fix typos in comments.
6cb16f95 12220
048addec
JD
12221 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
12222 and #ifdef'd-out code.
12223 Fix and reindent comments.
6cb16f95 12224
048addec 12225 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
6cb16f95 12226
048addec
JD
12227 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
12228 argument `i' in macros.
6cb16f95 12229
048addec
JD
12230 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
12231 `i' in macros.
7e9d3c2f 12232
048addec
JD
12233 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
12234 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
12235 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
12236 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
12237 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
12238 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
12239 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
12240 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
12241 in macros.
7e9d3c2f 12242
048addec
JD
12243 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
12244 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
12245 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
12246 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
12247 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
12248 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
12249 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
12250 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
12251 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
12252 (remove unused second argument).
7e9d3c2f 12253
048addec 122542001-11-02 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 12255
048addec
JD
12256 * syntax.c (describe_syntax): New wrapper.
12257 (Finternal_describe_syntax_value): Rename from describe_syntax.
12258 Don't insert space at front and \n at the end.
12259 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
e6bff182 12260
048addec
JD
12261 * regex.c (re_wctype): Try to fix some warnings.
12262 (regcomp, regexec): Don't forget the __restrict.
9ba48103 12263
048addec 122642001-11-02 Richard M. Stallman <rms@gnu.org>
9ba48103 12265
048addec 12266 * textprop.c (Fget_char_property): Doc fix.
9ba48103 12267
048addec 122682001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9ba48103 12269
048addec 12270 * process.c (Fstart_process): Add usage to doc-string.
c22e59e1 12271
048addec 12272 * data.c (Fsetq_default): Ditto.
c22e59e1 12273
048addec 12274 * callint.c (Finteractive): Ditto.
9271ed2c 12275
048addec 122762001-11-01 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 12277
048addec
JD
12278 * macros.c: Don't include keymap.h any more.
12279
122802001-11-01 Richard M. Stallman <rms@gnu.org>
12281
12282 * data.c (Fmake_local_variable): Doc fix.
12283
12284 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
12285 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
e6bff182 12286
048addec 12287 * keymap.c (Fdescribe_buffer_bindings): Print character property
9271ed2c
RS
12288 bindings along with or instead of the buffer local map.
12289 Make the overriding maps override what they should.
12290
f00691a3 122912001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8b8bd9c6
PJ
12292
12293 * window.c (grow_mini_window): Fix typo in comment.
12294
27188d11
GM
122952001-11-01 Gerd Moellmann <gerd@gnu.org>
12296
7b49b9d2
GM
12297 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
12298 (XTset_vertical_scroll_bar): Likewise.
12299
43f7c3ea
GM
12300 * xfns.c (x_build_heuristic_mask): Use four_corners_best
12301 instead of IMAGE_BACKGROUND.
c22e59e1 12302
b350c2e5
GM
12303 * xfns.c (four_corners_best): Reindent.
12304
c22e59e1 12305 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
27188d11
GM
12306 Handle :box so that it is possible to specify sexprs.
12307
bf00d461
EZ
123082001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
12309
12310 * s/hpux11.h: New file.
12311
f00691a3 123122001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e10df59 12313
2b209b97
PJ
12314 * emacs.c (USAGE1): Show command line option --no-window-system
12315 instead of --no-windows in usage.
12316 (standard_args): Rename --no-windows to --no-window-system.
12317 (bug_reporting_address): Follow Emacs coding conventions.
12318
9dbc9081
PJ
12319 * eval.c (Fcommandp): Doc fix.
12320 Change doc-string comments to `new style' [w/`doc:' keyword].
12321
4e10df59
PJ
12322 * frame.c (Fframe_live_p): Doc fix.
12323
12324 * buffer.c (selective-display-ellipses): Doc fix.
12325
dd387b25
GM
123262001-10-31 Gerd Moellmann <gerd@gnu.org>
12327
fe957e65
GM
12328 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
12329
dd387b25
GM
12330 * xfaces.c (realize_x_face): If C is not a single-byte character,
12331 set the face's colors_copied_bitwise_p instead of the defaulted_p
12332 members which have a different meaning.
12333 (free_face_colors): Do nothing for a face whose colors have been
12334 copied bitwise.
12335
c22e59e1 12336 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
dd387b25 12337
f00691a3 123382001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2e1280f8 12339
687784e8
PJ
12340 * marker.c, mocklisp.c: Change doc-string comments to `new style'
12341 [w/`doc:' keyword].
2e1280f8 12342
b9d9a9b9
GM
123432001-10-31 Gerd Moellmann <gerd@gnu.org>
12344
12345 * fns.c (require_unwind): Return Lisp_Object.
12346
f00691a3 123472001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
48400103 12348
fa1361cb
PJ
12349 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
12350 (last-input-char): Revert doc-string to be the same as the
12351 doc-string of `last-input-event'.
12352
6c465a15 12353 * xdisp.c: Fix typos in comments.
48400103 12354
eafa3196
GM
123552001-10-31 Gerd Moellmann <gerd@gnu.org>
12356
12357 * window.c (grow_mini_window): Handle case that the root
12358 window is already smaller than the nominal mininum height.
12359
747d3f2a
SM
123602001-10-30 Stefan Monnier <monnier@cs.yale.edu>
12361
bf9bb76f
SM
12362 * emacs.c (main): Don't call keys_of_macros any more.
12363
12364 * lisp.h (keys_of_macros): Remove.
12365
12366 * macros.c (keys_of_macros): Remove.
12367
747d3f2a
SM
12368 * xfaces.c (Fface_attribute_relative_p): Declare args.
12369
5e905a57
JR
123702001-10-30 Jason Rumney <jasonr@gnu.org>
12371
12372 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
12373 (enum_font_cb2): Ignore fonts with vertical orientation.
12374
3a426197
RS
123752001-10-30 Richard M. Stallman <rms@gnu.org>
12376
12377 * keyboard.c (Finput_pending_p): Doc fix.
12378
a742d646
GM
123792001-10-30 Gerd Moellmann <gerd@gnu.org>
12380
259cf6bc
GM
12381 * xterm.c (x_after_update_window_line): Don't run the code
12382 clearing in borders for rows whose visible height is 0.
12383
3f99f948
GM
12384 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
12385 resized_p flag is set. If not set, use the much less flickering
12386 method previously used.
12387
12388 * dispnew.c (change_frame_size_1): Set frame's resized_p.
12389
12390 * frame.h (struct frame) <resized_p>: New member.
12391
b4a3be43
GM
12392 * lread.c (to_multibyte): Ensure read_buffer is at least twice
12393 as large as the number of bytes to convert.
747d3f2a 12394
a742d646
GM
12395 * lread.c (to_multibyte): New function.
12396 (read1): Use it.
12397
cacbb9e9
EZ
123982001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
12399
12400 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
12401
99cb6b2f
GM
124022001-10-30 Gerd Moellmann <gerd@gnu.org>
12403
327f42ee 12404 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
747d3f2a
SM
12405 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
12406 if the row's fill_line_p is set and drawing the last glyph with
12407 DRAW_IMAGE_{RAISED,SUNKEN}.
327f42ee 12408
99cb6b2f
GM
12409 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
12410
8e8223e2
SM
124112001-10-29 Stefan Monnier <monnier@cs.yale.edu>
12412
12413 * xmenu.c: Include coding.h and charset.h.
12414 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
12415 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
12416 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
12417 Explicitly set wv->help. Use `TRUE' rather than `True'.
12418 (menu_help_callback): Use empty_string.
12419
12420 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
12421 (Fx_popup_dialog): Explicitly init f.
12422 (w32_menu_display_help): Use empty_string.
12423
4d083a8f
RS
124242001-10-29 Richard M. Stallman <rms@gnu.org>
12425
b2304472
RS
12426 * fns.c (Frequire): Detect recursive try to require the same
12427 feature 3 or more levels deep, and get error.
12428 (require_unwind): New subroutine.
12429 (require_nesting_list): New variable.
12430 (syms_of_fns): Init and staticpro it.
12431
4d083a8f
RS
12432 * print.c (print_object): Clarify indication of insertion type.
12433
2fe41216
EZ
124342001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
12435
90480000
EZ
12436 * coding.c (syms_of_coding): Document that locale-coding-system is
12437 used for decoding input on X.
12438
2fe41216
EZ
12439 * window.c (Fscroll_left, Fscroll_right): Doc fix.
12440
f00691a3 124412001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
74e79967
PJ
12442
12443 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
12444 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
12445
60ebcfe8
GM
124462001-10-29 Gerd Moellmann <gerd@gnu.org>
12447
9a7bdceb
GM
12448 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
12449 use NO_CURSOR if cursor_in_non_selected_windows is false.
12450
3f08fcd2
GM
12451 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
12452 the slant attribute if FRAME is t.
12453
0ccfdad2
GM
12454 * xfns.c (x_set_internal_border_width): Set frame garbaged
12455 when X window doesn't exist yet.
12456
ef253080
GM
12457 * xterm.c (x_after_update_window_line): Clear internal border
12458 in different circumstances.
b116830b 12459
60ebcfe8
GM
12460 * xterm.c (XTread_socket) <KeyPress>: Don't use
12461 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
12462 <handa@etl.go.jp>.
12463
73d25f9c
EZ
124642001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
12465
12466 * m/ibms390.h: New file. From Adam Thornton
12467 <athornton@sinenomine.net>.
12468
cac1daf0
GM
124692001-10-28 Gerd Moellmann <gerd@gnu.org>
12470
053b3256 12471 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
b116830b 12472
cac1daf0
GM
12473 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
12474 a loop counter.
12475
f00691a3 124762001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13b1a09c 12477
186486eb
PJ
12478 * emacs.c: Use argv[0] instead of emacs when -t was specified.
12479
4707d2d0
PJ
12480 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
12481 keyword].
12482 Fix typos in comments.
b116830b 12483
d883731c
PJ
12484 * emacs.c (bug_reporting_address): New function.
12485 Use it when displaying usage message.
12486
04012254
PJ
12487 * minibuf.c (read_minibuf): Remove unused external declaration of
12488 variable `Qread_only'.
12489
13b1a09c
PJ
12490 * keymap.c (access_keymap): Remove unused variable `charset'.
12491
5bbf4378
MB
124922001-10-28 Miles Bader <miles@gnu.org>
12493
12494 * xfaces.c (merge_face_heights): Handle TO being relative as well.
12495 Remove #ifdef'd-out code.
12496 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
12497 (syms_of_xfaces): Initialize them.
12498
1ce1e4ee
JR
124992001-10-27 Jason Rumney <jasonr@gnu.org>
12500
12501 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
12502 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
12503 position using the system caret.
12504
12505 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
12506 (w32_system_caret_height, w32_system_caret_x)
12507 (w32_system_caret_y): New variables for tracking system caret.
12508 (w32_initialize): Initialize them.
c2d53558 12509 (x_display_and_set_cursor): Make system caret follow the active cursor.
1ce1e4ee 12510
c2d53558
SM
12511 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
12512 New messages types.
1ce1e4ee
JR
12513
12514 * w32term.c (note_mouse_highlight): Clear old help_echo.
12515
f00691a3 125162001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e30ce42 12517
bb4600a4
PJ
12518 * xterm.c: Fix typo in a comment.
12519
7db35a48
PJ
12520 * emacs.c: Fix typos in comments.
12521 Remove unnecessary spaces.
12522 Change doc-string comments to `new style' [w/`doc:' keyword].
12523 (USAGE2): Fix typos in usage string.
12524
a7248e4f
PJ
12525 * xterm.c: Fix typo in a comment.
12526
4e30ce42
PJ
12527 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
12528 emacs.c.
12529
62725a92
GM
125302001-10-27 Gerd Moellmann <gerd@gnu.org>
12531
798dbe1f 12532 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
c2d53558 12533 instead of 1/2 line_height in the heuristic for skipping
798dbe1f
GM
12534 farther backward when target_y was not reached.
12535
62725a92
GM
12536 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
12537 Display errno only if non-zero.
12538 (sound_warning): New function.
12539 (vox_configure): Don't treat failing to set sample rate as error.
12540 (various places): Improve error messages.
12541
d4e34d24
EZ
125422001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
12543
944e6f60
EZ
12544 * fileio.c (Faccess_file): Run the argument filename through
12545 Fexpand_file_name, before using it.
12546
d4e34d24
EZ
12547 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
12548 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
12549
38d2af0c
GM
125502001-10-26 Gerd Moellmann <gerd@gnu.org>
12551
da80a8d5
GM
12552 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
12553
38d2af0c
GM
12554 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
12555 Fix clearing in the case of scroll bars on the right.
c2d53558 12556
45de4a6f 125572001-10-26 Juanma Barranquero <lektu@terra.es>
56f508dd
EZ
12558
12559 * w32gui.h (XImage): Add a dummy typedef.
12560
fbd5ceb2
GM
125612001-10-26 Gerd Moellmann <gerd@gnu.org>
12562
c2d53558 12563 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
fbd5ceb2 12564
b23236fb
EZ
125652001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
12566
12567 * frame.c (Fframe_parameter): Fix last change.
12568
5d991fc4
EZ
12569 * fileio.c: Revert last change (which removed old commented-out
12570 version of expand-file-name). Add a comment that explains why
12571 this old version should not be removed.
12572
879eadc3
GM
125732001-10-25 Gerd Moellmann <gerd@gnu.org>
12574
75700ff2
GM
12575 * frame.c (Fframe_parameter): Fix a bug whereby some
12576 ``artificial'' frame parameters, like `minibuffer' were not
12577 obtained by calling Fframe_parameters.
12578
dfe92a6a
GM
12579 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
12580 cursor differently.
12581
879eadc3
GM
12582 * xdisp.c (move_it_vertically_backward): Compute line height
12583 differently. Add heuristic to try to be more compatible to 20.x.
12584
e1010ebe
SM
125852001-10-25 Stefan Monnier <monnier@cs.yale.edu>
12586
d73a471b
SM
12587 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
12588
d6da5a06
GM
12589 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
12590 boolean.
e1010ebe 12591
f66bd220
MB
125922001-10-25 Miles Bader <miles@gnu.org>
12593
12594 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
12595 BG is a pointer to a structure, not a structure.
12596 (gif_format, png_format): Add missing commas.
12597
d436d538
RS
125982001-10-24 Richard M. Stallman <rms@gnu.org>
12599
12600 * xfaces.c (Fface_attributes_as_vector): New function.
c2d53558 12601 (syms_of_xfaces): Defsubr it.
d436d538 12602
f00691a3 126032001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
075c507b
PJ
12604
12605 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
12606 variable `area'.
12607
f00691a3 126082001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d492b584 12609
c2d53558 12610 * search.c (scan_newline): Remove unused variable `selective_display'.
d492b584 12611
e2a57b34
MB
126122001-10-25 Miles Bader <miles@gnu.org>
12613
12614 * dispextern.h (struct image): Add `background',
12615 `background_valid', and `background_transparent' fields.
12616 (image_background, image_background_transparent): New declarations.
12617 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
12618 * xfns.c (image_background, image_background_transparent)
12619 (four_corners_best): New functions.
c2d53558 12620 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
e2a57b34
MB
12621 (gs_format): Add `:background' entry.
12622 (lookup_image): Set IMG's background color if specified.
12623 (pbm_load, xbm_load_image, png_load): Set IMG's background field
12624 when appropriate.
12625 (x_clear_image_1): Reset `background_valid' and
12626 `background_transparent_valid' fields.
12627 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
12628 calculating it here. Set IMG's background_transparent field.
12629 (enum xpm_keyword_index): Add XPM_BACKGROUND.
12630 (enum png_keyword_index): Add PNG_BACKGROUND.
12631 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
12632 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
12633 (enum gif_keyword_index): Add GIF_BACKGROUND.
12634 (enum gs_keyword_index): Add GS_BACKGROUND.
c2d53558 12635 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
e2a57b34
MB
12636 Pre-calculate image background color where necessary.
12637 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
12638 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
12639 color to use for image glyph reliefs.
12640
b547b6e8
GM
126412001-10-24 Gerd Moellmann <gerd@gnu.org>
12642
d9e3b8c6
GM
12643 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
12644 in full-width rows.
c2d53558 12645
b547b6e8
GM
12646 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
12647 Fix clearing of area not covered by scroll bar.
12648
f00691a3 126492001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2beb36f9
PJ
12650
12651 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
12652 and `real_start'.
c2d53558 12653 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
2beb36f9
PJ
12654 (glyph_rect): Remove unused variable `area'.
12655
76cb5e06
GM
126562001-10-24 Gerd Moellmann <gerd@gnu.org>
12657
bdbdebff 12658 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
c2d53558
SM
12659
12660 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
12661 (row_containing_pos): Take additional argument DY.
12662 Treat rows ending in middle of char differently.
62e33982
GM
12663 (display_line): Handle tabs on window systems differently.
12664
12665 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
12666 with additional argument.
12667
12668 * dispextern.h (row_containing_pos): Adjust prototype.
12669
76cb5e06
GM
12670 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
12671 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
12672 (try_window_id, try_window_reusing_current_matrix)
12673 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
6c465a15 12674 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
76cb5e06 12675
f00691a3 126762001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
996fee11 12677
c9e60620
PJ
12678 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
12679 gnuemacs).
12680 (HAVE_BOXES): Fix typo in comment.
12681 (push_menu_pane): Fix typo in comment.
12682
3b552d56
PJ
12683 * xdisp.c: (display_prop_string_p): Remove unused local declaration
12684 of `Qwhen'.
12685 (single_display_prop_string_p): Remove unused local declarations
12686 of `Qwhen' and `Qmargin'.
12687 (string_buffer_position): Remove unused variable `around'.
12688 (store_frame_title): Remove unused variable `width'.
12689
15c565ac
PJ
12690 * window.c: Don't define max.
12691 (coordinates_in_window): Remove unused variable `uy'.
12692
a8818eb9
PJ
12693 * widget.c: Don't define max.
12694
996fee11
PJ
12695 * process.c: Don't define max.
12696 (create_process): Remove unused variable `buffer'.
12697
496e1a5b
GM
126982001-10-23 Gerd Moellmann <gerd@gnu.org>
12699
c2d53558 12700 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
496e1a5b 12701
5905ae8b
EZ
127022001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
12703
12704 * xfaces.c (Finternal_set_lisp_face_attribute)
12705 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
12706 frame is on a windowed display.
12707
24db49fb
GM
127082001-10-23 Gerd Moellmann <gerd@gnu.org>
12709
c2d53558
SM
12710 * dispnew.c (sync_window_with_frame_matrix_rows):
12711 Fix handling of windows which aren't full-width, fix handling
c51488cd
GM
12712 of marginal areas.
12713
c2d53558 12714 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
24db49fb 12715
f0487f05
EZ
127162001-10-23 Andreas Schwab <schwab@suse.de>
12717
12718 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
12719 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
12720
f0a48a01
GM
127212001-10-23 Gerd Moellmann <gerd@gnu.org>
12722
c2d53558 12723 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
f0a48a01
GM
12724 REAL_END. Notice if cursor gets overwritten.
12725 (notice_overwritten_cursor): Take X positions as parameters.
12726 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
12727 around call to x_draw_glyphs.
12728
f00691a3 127292001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
a50a10a0 12730
fc11dff0
PJ
12731 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
12732 instead of C) and usage.
a50a10a0 12733
fc11dff0
PJ
12734 * editfns.c (char-to-string): Fix argument names (use CHAR instead
12735 of C) and usage.
a50a10a0
PJ
12736
12737 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
12738 `left', `max_width' and `max_height'.
12739
8738febd
GM
127402001-10-23 Gerd Moellmann <gerd@gnu.org>
12741
12742 * xdisp.c (display_line): For a tab continued to the next line,
12743 set row's ends_in_middle_of_char_p.
12744
653c329b
GM
127452001-10-22 Gerd Moellmann <gerd@gnu.org>
12746
12747 * xdisp.c (display_line): Fix computation of continuation lines
12748 width for TABs.
12749
f00691a3 127502001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
f958c5ac 12751
7ba51063
PJ
12752 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
12753 `Qlaplace'.
12754
f958c5ac
PJ
12755 * fileio.c: Remove unused code.
12756
eb360291
MB
127572001-10-22 Miles Bader <miles@gnu.org>
12758
12759 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
12760 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
12761 Remove `DOC_STRINGS_IN_COMMENTS' cases.
12762
98515cf0
JR
127632001-10-21 Jason Rumney <jasonr@gnu.org>
12764
12765 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
12766
93026d88
EZ
127672001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
12768
12769 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
12770 (Finsert_string): Avoid the multi-line string literals warning.
12771
c9a95b79
MB
127722001-10-22 Miles Bader <miles@gnu.org>
12773
12774 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
12775 (Fdocumentation): Don't use it.
12776 (syms_of_doc): Don't initialize it.
12777
12778 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
12779 * print.c (Fwith_output_to_temp_buffer): Likewise.
12780 * window.c (Fsave_window_excursion): Likewise.
c2d53558 12781 * editfns.c (Fsave_excursion, Fsave_current_buffer)
c9a95b79 12782 (Fsave_restriction): Likewise.
c2d53558
SM
12783 * eval.c (Frun_hooks, Frun_hook_with_args)
12784 (Frun_hook_with_args_until_failure)
12785 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
12786 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
12787 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
c9a95b79
MB
12788 (Funwind_protect, Fcondition_case): Likewise.
12789 * coding.c (Ffind_operation_coding_system): Likewise.
12790 * keyboard.c (Ftrack_mouse): Likewise.
12791
a3b10252
MB
127922001-10-21 Miles Bader <miles@gnu.org>
12793
c2d53558 12794 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
a3b10252
MB
12795 (Fmake_hash_table): Add usage: string to doc string.
12796 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
c2d53558 12797 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
a3b10252
MB
12798 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
12799 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
12800 (Fml_prefix_argument_loop): Likewise.
12801
f00691a3 128022001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c6f73eec 12803
c2d53558 12804 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
888ebd13 12805
c6f73eec
PJ
12806 * sysdep.c (init_sys_modes): Change doc-string comments to `new
12807 style' [w/`doc:' keyword].
12808
12809 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
12810 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
12811 comments to `new style' [w/`doc:' keyword].
12812
3cf3436e
JR
128132001-10-21 Jason Rumney <jasonr@gnu.org>
12814
12815 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
12816
c169b8f1
JR
12817 * w32term.c (remember_mouse_glyph): New function.
12818 (w32_mouse_position): Use it.
12819 (note_mouse_movement): If the mouse moved off the glyph, remember
12820 its new position.
c2d53558 12821
4fdd691b
JR
12822 * w32term.h (struct w32_output): Correct spelling of x_compatible.
12823 (w32_display_info): Add mouse_face_overlay.
12824
c169b8f1
JR
12825 * w32term.c (notice_overwritten_cursor): Renamed from
12826 note_overwritten_text_cursor. Rewritten to take glyph widths into
12827 account.
12828 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
12829 (fast_find_string_pos): New function.
12830 (fast_find_position): Return the correct vpos. Add parameter
12831 STOP. In the final row, stop before glyphs having STOP as object.
12832 Don't consider glyphs that are not from a buffer.
12833 (fast_find_position) [0]: Add a presumably more correct version
12834 for after 21.1.
12835 (expose_window_tree, expose_frame): Don't compute intersections here.
12836 (expose_window): Do it here instead.
12837 (expose_window_tree, expose_window, expose_line): Return 1 when
12838 overwriting mouse-face.
12839 (expose_window): If W is the window currently being updated, mark
12840 the frame garbaged.
12841 (expose_frame): If mouse-face was overwritten, redo it.
12842 (x_use_underline_position_properties): New variable.
12843 (syms_of_xterm): DEFVAR_BOOL it.
12844 (x_draw_glyph_string): Add comment to use it in future.
12845 (x_draw_glyph_string): Restore clipping after drawing box.
12846 Fix a computation of the underline position.
12847 (w32_get_glyph_string_clip_rect): Minor cleanup.
12848 (x_fill_stretch_glyph_string): Remove an assertion.
12849 (x_produce_glyphs): Don't convert multibyte characters
12850 to unibyte characters in unibyte buffers.
12851 (cursor_in_mouse_face_p): New function.
12852 (x_draw_stretch_glyph_string): Use it to choose a different GC
12853 when drawing a cursor within highlighted text. Don't draw
12854 background again if it has already been drawn.
12855 (x_draw_glyph_string_box): Don't draw a full-width
12856 box just because the glyph row's full_width_p flag is set.
12857 (x_draw_glyphs): Fix computation of rightmost x for
12858 full-width rows.
12859 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
12860 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
12861 change bottom shadow accordingly. Some cleanup.
12862 (x_update_window_end): Handle overwritten mouse face
12863 also for tool bar windows.
12864 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
12865 DRAW is DRAW_IMAGE_RAISED.
12866 (clear_mouse_face): Return 1 if text with mouse face was
2c568af5
SM
12867 actually redrawn. Make the function static.
12868 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
c169b8f1
JR
12869 optimize away highlighting if we pass over that same overlay again.
12870 (note_mouse_highlight): Call mouse_face_overlay_overlaps
12871 to detect a case where we have to highlight a different region
12872 despite not having left the currently highlighted region.
12873 Set mouse_face_overlay in the x_display_info. Avoid changing the
12874 mouse pointer shape when show_mouse_face has already done it, or
12875 there is no need. Handle mouse-face and help-echo in strings.
12876 (glyph_rect): New function.
12877 (w32_mouse_position): Use it to raise the threshold for mouse
12878 movement event generation.
12879 (w32_initialize_display_info): Initialize the x_display_info's
12880 mouse_face_overlay.
12881 (w32_set_vertical_scroll_bar): Don't clear a zero height
12882 or width area.
12883 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
12884 a widget to zero height.
12885
3cf3436e 12886 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
4fdd691b 12887 Protect unibyte strings created by replacing their multibyte
3cf3436e
JR
12888 equivalents in menu_items.
12889 (w32_menu_show): Don't overwrite an item's name with its key
12890 description in case the description is a multibyte string.
12891 (single_submenu): Some cleanup.
12892
12893 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
12894 (postprocess_image): New function.
12895 (lookup_image): Call it for all image types except PostScript.
12896 (x_kill_gs_process): Call postprocess_image.
12897 (tiff_error_handler, tiff_warning_handler): New functions.
12898 (tiff_load): Install them as handlers.
12899 (x_kill_gs_process): Recognize if someone has cleared the image
12900 cache under us.
12901 (valid_image_p): Protect better against invalid image
12902 specifications. Previous code could signal an error.
12903 (Fx_hide_tip, Fshow_tip): Doc fix.
12904 (Fv_max_tooltip_size): New variable.
12905 (syns_of_xfns): DEFVAR_LISP it.
12906 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
12907 window buffer to *tip* right after creating the frame. Set frame's
12908 window_width. Use a maximum tooltip size specified by
12909 Vx_max_tooltip_size, if that has valid contents.
12910 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
12911 Make sure the tooltip is completely visible.
12912 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
12913 (Fx_create_frame): Adjust the frame's height for presence
12914 of the tool bar before calling x_figure_window_size.
12915 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
12916 when the window gets smaller.
12917 (x_set_foreground_color): Set frame's cursor_pixel.
12918 (x_set_foreground_color, x_set_background_color): Cleaned up.
12919 (x_set_font): Handle case of x_new_fontset returning the same name
12920 as before, although there was a change in fontsets.
12921
386ca361
MB
129222001-10-21 Miles Bader <miles@gnu.org>
12923
c2d53558 12924 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
386ca361
MB
12925 (Flogxor): Add usage: string to doc string.
12926 * charset.c (Fstring): Likewise.
12927 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
12928 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
12929
f00691a3 129302001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14ff1ee0 12931
03be2694
PJ
12932 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
12933
12934 * alloc.c: Reindent DEFUNs with doc: keywords.
12935
12936 * abbrev.c (Finsert_abbrev_table_description): Reindent.
12937
14ff1ee0
PJ
12938 * frame.c: Change doc-string comments to `new style' [w/`doc:'
12939 keyword].
12940
2f147815 12941See ChangeLog.9 for earlier changes.
6922b018
KH
12942
12943;; Local Variables:
49b3bd82 12944;; coding: iso-2022-7bit
6922b018 12945;; End:
2a34a036 12946
2f147815 12947 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
2a34a036
GM
12948 Copying and distribution of this file, with or without modification,
12949 are permitted provided the copyright notice and this notice are preserved.
ab5796a9
MB
12950
12951;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4