Fix typos.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
36a3fd05
RS
12004-03-19 Richard M. Stallman <rms@gnu.org>
2
3 * s/sol2-6.h: Delete previous change.
4
ab24c127
KS
52004-03-19 Kim F. Storm <storm@cua.dk>
6
7 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
8 to_charpos corresponds to newline in right fringe. Use local
9 BUFFER_POS_REACHED_P macro.
10
992126de
JD
112004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12
13 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
14 to compile on non-window system.
15
45dbfc84
KS
162004-03-19 Kim F. Storm <storm@cua.dk>
17
18 * dispextern.h (calc_pixel_width_or_height): Add prototype.
19
20 * image.c (Qcenter): Move to xdisp.c.
21
22 * xdisp.c (Qcenter): Declare here.
23 (syms_of_xdisp): intern and staticpro it.
24 (handle_single_display_prop): Allow space display property on all
25 platforms.
26 (display_mode_line): Set mode_line_p before displaying line.
27 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
28 handling. Remove complex cases for fringes and scroll-bars.
29 Add left, right, and center alignment positions. Add text (area)
30 width/height. Return width or height for image specs.
31 (produce_stretch_glyph): Improve handling of :align-to. Is now
32 relative to left of text area by default, but other base offsets
33 can be specified -- also for text lines.
34
35 * term.c (produce_glyphs): Handle IT_STRETCH.
36 (produce_stretch_glyph): New function to handle space width and
37 align-to display properties on non-window systems.
38
37264101
SM
392004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
40
41 * fileio.c (Fread_file_name): Set completion-ignore-case for
42 case-insensitive systems.
43
73bc43da
MY
442004-03-14 Masatake YAMATO <jet@gyve.org>
45
46 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
47 when keymap and cursor are setup.
48
9062aa89
ST
492004-03-14 Steven Tamm <steventamm@mac.com>
50
51 * Makefile.in (XMENU_OBJ): Do not include xmenu.o if
52 HAVE_CARBON is defined.
53
e4b1b5ab
KS
542004-03-14 Kim F. Storm <storm@cua.dk>
55
56 * dispextern.h (x_find_image_file): Add prototype.
57
58 * image.c (x_find_image_file): Make extern.
59
60 * xfns.c (x_find_image_file): Remove prototype.
61
5109b06a
EZ
622004-03-13 Eli Zaretskii <eliz@elta.co.il>
63
37264101 64 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
5109b06a 65
37264101 66 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
5109b06a 67
e69cfac2
RS
682004-03-12 Richard M. Stallman <rms@gnu.org>
69
70 * fns.c (internal_equal): New arg PROPS controls comparing
71 text properties. All callers changed.
72 (Fequal_including_properties): New function.
73 (syms_of_fns): defsubr it.
74
45034953
KS
752004-03-12 Kim F. Storm <storm@cua.dk>
76
77 Fix image support on MAC. From YAMAMOTO Mitsuharu.
37264101 78
45034953
KS
79 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
80 (image_background, image_background_transparent): Fix prototypes.
81
37264101 82 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
45034953
KS
83
84 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
85 (x_query_font, x_find_ccl_program, x_set_window_size)
86 (x_make_frame_visible, mac_initialize, XCreatePixmap)
87 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
88 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
89
90 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
91 (x_query_font, x_find_ccl_program, x_set_window_size)
92 (x_make_frame_visible, mac_initialize, XCreatePixmap)
93 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
94 (mac_draw_line_to_pixmap): Add prototypes.
95
962004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
97
98 * macterm.c (XTread_socket): Fix mouse click on tool bar.
99
a12d3d87
KS
1002004-03-11 Kim F. Storm <storm@cua.dk>
101
d3ab1cf1
KS
102 * dispextern.h: Move image related prototypes from xfns.c section
103 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
104 HAVE_X_WINDOWS.
37264101 105
37de9f51 106 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
37264101 107 Move gtkutil.o to new GTK_OBJ list.
a12d3d87
KS
108 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
109 (GTK_OBJ) [USE_GTK]: New declaration.
110 (obj): Add $(GTK_OBJ) to list.
111
5243c06a 1122004-03-11 Steven Tamm <steventamm@mac.com>
5109b06a 113
5243c06a
ST
114 * image.c [MAC_OSX]: Include sys/stat.h
115
116 * macfns.c (syms_of_macfns): Remove definitions of things now
117 defined in image.c
118
c0f97789
KS
1192004-03-11 Kim F. Storm <storm@cua.dk>
120
121 The following changes consolidates the identical/similar image
122 support code previously found in xfns.c, w32fns.c, and macfns.c
123 into a new file image.c.
124
125 * makefile.w32-in (OBJ1): Add image.o.
126 ($(BLD)/image.$(O)): Add dependencies.
127
128 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
129 (image.o): Add dependencies.
37264101 130
c0f97789
KS
131 * image.c: New file with consolidated image support code.
132 (COLOR_TABLE_SUPPORT): New define to control whether
133 color table support is available (X only).
134 (Bitmap_Record): Common name for x_bitmap_record,
135 w32_bitmap_record, and mac_bitmap_record.
136 (XImagePtr): Common name for pointer to XImage or equivalent.
137 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
138 to XImagePtr on X+MAC, and to HDC on W32.
139 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
140 (NO_PIXMAP): Common name for "None" or equivalent.
141 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
142 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
143 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
37264101
SM
144 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
145 Define with suitable equivalents on W32 and MAC for code sharing.
c0f97789
KS
146 (XDrawLine): Define on MAC for code sharing.
147 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
148 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
149 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
150 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
151 (x_reference_bitmap, x_create_bitmap_from_data)
152 (x_create_bitmap_from_file, x_destroy_bitmap)
153 (x_destroy_all_bitmaps, x_create_bitmap_mask)
154 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
155 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
156 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
157 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
158 (define_image_type, lookup_image_type, valid_image_p)
159 (image_error, enum image_value_type, struct image_keyword)
160 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
161 (make_image, free_image, prepare_image_for_display, image_ascent)
162 (four_corners_best, image_background, image_background_transparent)
163 (x_clear_image_1, x_clear_image, x_alloc_image_color)
164 (make_image_cache, free_image_cache, clear_image_cache)
165 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
166 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
167 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
168 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
169 (init_image_func_pointer, image_load_quartz2d)
170 (struct ct_color, init_color_table, free_color_table)
171 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
172 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
173 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
174 (x_disable_image, x_build_heuristic_mask)
175 (XBM support, XPM support, PBM support, PNG support, JPEG support)
176 (TIFF support, GIF support, Ghostscript support): Consolidate image
177 code from xfns.c, w32fns.c, and macfns.c.
178 (syms_of_image): Consolidate image related symbol setup here.
179 (init_image): Consolidate image related initializations here.
37264101 180
c0f97789
KS
181 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
182 and init_image. Remove call to init_xfns.
183
37264101
SM
184 * macterm.h (struct mac_bitmap_record): Add file member.
185 Not currently used, but simplifies code sharing.
c0f97789
KS
186
187 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
188 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
189 (x_reference_bitmap, x_create_bitmap_from_data)
190 (x_create_bitmap_from_file, x_destroy_bitmap)
191 (x_destroy_all_bitmaps, x_create_bitmap_mask)
192 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
193 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
194 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
195 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
196 (define_image_type, lookup_image_type, valid_image_p)
197 (image_error, enum image_value_type, struct image_keyword)
198 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
199 (make_image, free_image, prepare_image_for_display, image_ascent)
200 (four_corners_best, image_background, image_background_transparent)
201 (x_clear_image_1, x_clear_image, x_alloc_image_color)
202 (make_image_cache, free_image_cache, clear_image_cache)
203 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
204 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
205 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
206 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
207 (init_image_func_pointer, image_load_quartz2d)
208 (struct ct_color, init_color_table, free_color_table)
209 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
210 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
211 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
212 (x_disable_image, x_build_heuristic_mask)
213 (XBM support, XPM support, PBM support, PNG support, JPEG support)
214 (TIFF support, GIF support, Ghostscript support): Merge with image
215 code from xfns.c and macfns.c into image.c.
216 (syms_of_xfns): Move image related symbols to image.c.
217 (init_external_image_libraries, init_xfns): Remove; initialization
218 moved to init_image in image.c.
219
220 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
221 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
222 (x_reference_bitmap, x_create_bitmap_from_data)
223 (x_create_bitmap_from_file, x_destroy_bitmap)
224 (x_destroy_all_bitmaps, x_create_bitmap_mask)
225 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
226 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
227 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
228 (define_image_type, lookup_image_type, valid_image_p)
229 (image_error, enum image_value_type, struct image_keyword)
230 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
231 (make_image, free_image, prepare_image_for_display, image_ascent)
232 (four_corners_best, image_background, image_background_transparent)
233 (x_clear_image_1, x_clear_image, x_alloc_image_color)
234 (make_image_cache, free_image_cache, clear_image_cache)
235 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
236 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
237 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
238 (struct ct_color, init_color_table, free_color_table)
239 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
240 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
241 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
242 (x_disable_image, x_build_heuristic_mask)
243 (XBM support, XPM support, PBM support, PNG support, JPEG support)
244 (TIFF support, GIF support, Ghostscript support): Merge with image
245 code from xfns.c and macfns.c into image.c.
246 (syms_of_xfns): Move image related symbols to image.c.
247 (init_external_image_libraries, init_xfns): Remove; initialization
248 moved to init_image in image.c.
249
250 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
251 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
252 (x_reference_bitmap, x_create_bitmap_from_data)
253 (x_create_bitmap_from_file, x_destroy_bitmap)
254 (x_destroy_all_bitmaps, x_create_bitmap_mask)
255 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
256 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
257 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
258 (define_image_type, lookup_image_type, valid_image_p)
259 (image_error, enum image_value_type, struct image_keyword)
260 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
261 (make_image, free_image, prepare_image_for_display, image_ascent)
262 (four_corners_best, image_background, image_background_transparent)
263 (x_clear_image_1, x_clear_image, x_alloc_image_color)
264 (make_image_cache, free_image_cache, clear_image_cache)
265 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
266 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
267 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
268 (struct ct_color, init_color_table, free_color_table)
269 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
270 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
271 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
272 (x_disable_image, x_build_heuristic_mask)
273 (XBM support, XPM support, PBM support, PNG support, JPEG support)
274 (TIFF support, GIF support, Ghostscript support): Merge with
275 w32fns.c and macfns.c image code into image.c.
276 (syms_of_xfns): Move image related symbols to image.c.
277 (init_xfns): Remove; initialization moved to init_image in image.c.
278
279 * lisp.h (syms_of_image, init_image): Add protoypes.
280 (init_xfns): Remove prototype.
281
282 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
283 (x_reference_bitmap, x_create_bitmap_from_data)
284 (x_create_bitmap_from_file, x_destroy_bitmap)
285 (x_create_bitmap_mask): Move prototypes from dispextern.h.
286 (gamma_correct) [MAC_OS]: Add prototype.
287
288 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
289 (x_reference_bitmap, x_create_bitmap_from_data)
290 (x_create_bitmap_from_file, x_destroy_bitmap)
291 (x_create_bitmap_mask): Move prototypes to dispextern.h.
292
6eced09c
KH
2932004-03-09 Kenichi Handa <handa@etlken2>
294
295 * coding.c (decode_coding_emacs_mule): Handle insufficent source
296 correctly.
297
9a7e95f3
RS
2982004-03-04 Richard M. Stallman <rms@gnu.org>
299
04a6e76b
RS
300 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
301
9a7e95f3
RS
302 * window.c (Fdisplay_buffer): Doc fix.
303
304 * buffer.c (Fpop_to_buffer): Doc fix.
305
6c2488df
KS
3062004-03-03 Kim F. Storm <storm@cua.dk>
307
308 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
309
d8d95bc7
SM
3102004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
311
312 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
313
357589bf
RS
3142004-03-02 Richard M. Stallman <rms@gnu.org>
315
316 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
317
409949b5
KH
3182004-03-02 Kenichi Handa <handa@m17n.org>
319
320 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
321
d24bc50f
KS
3222004-03-02 Kim F. Storm <storm@cua.dk>
323
324 * window.h (struct window): New member overlay_arrow_bitmap.
325
326 * window.c (make_window): Initialize overlay_arrow_bitmap.
327
328 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
329 implement and integrate multiple overlay arrows with redisplay.
330 (syms_of_xdisp): DEFVAR_LISP and initialize it.
331 (last_arrow_position, last_arrow_string): Replace by properties.
332 (Qlast_arrow_position, Qlast_arrow_string)
333 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
334 (syms_of_xdisp): Intern and staticpro them.
335 (overlay_arrow_string_or_property, update_overlay_arrows)
336 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
337 (overlay_arrow_at_row): New functions for multiple overlay arrows.
338 (redisplay_internal): Use them instead of directly accessing
339 Voverlay_arrow_position etc. for multiple overlay arrows.
340 (mark_window_display_accurate): Use update_overlay_arrows.
341 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
342 (try_window_id): Use overlay_arrows_changed_p.
343 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
344 (display_line): Use overlay_arrow_at_row to check multiple
345 overlay arrows, and get relevant overlay-arrow-string and
d8d95bc7 346 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
d24bc50f
KS
347 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
348 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
349
350 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
351 (update_window_fringes): Remove unused code.
352
c1464661
JR
3532004-03-01 Jason Rumney <jasonr@gnu.org>
354
355 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
356
a64387ee
JB
3572004-03-01 Juanma Barranquero <lektu@terra.es>
358
359 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
360
361 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
362
334faa08
JD
3632004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
364
365 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
366 how many colors can be displayed.
367
bb62616f
KH
3682004-03-01 Kenichi Handa <handa@m17n.org>
369
370 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
371 correctly.
372
0fd16104
KS
3732004-02-28 Kim F. Storm <storm@cua.dk>
374
375 * dispnew.c (update_window): Update header line also if there are
376 no other changes in window (move code after set_cursor label).
377
378 * lisp.h (mark_window_display_accurate): Remove prototype.
379
380 * window.c (window_loop, Fforce_window_update): Force mode line
381 updates by setting prevent_redisplay_optimizations_p and
382 update_mode_lines.
383
b59dd9c8
JD
3842004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
385
d8d95bc7 386 * xfns.c (x_window): Fix indentation.
b59dd9c8
JD
387
388 * xterm.c (x_calc_absolute_position): Call x_real_positions
389 to get WM window sizes and use those to calculate position.
d8d95bc7 390 (x_set_offset): Remove code commented out.
b59dd9c8 391
a874691c
MB
3922004-02-28 Miles Bader <miles@gnu.org>
393
394 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
395
3e0c6482
KS
3962004-02-28 Kim F. Storm <storm@cua.dk>
397
398 * keyboard.c (kbd_buffer_store_event_hold): New function to store
399 an event into kbd fifo, but with special handling of quit event;
400 a quit event is saved for later, and further events are discarded
401 until the saved quit event has been processed.
402 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
403 (gen_help_event): Store help event in kbd fifo.
404 (NREAD_INPUT_EVENTS): Remove.
405 (read_avail_input): Adapt to new read_socket_hook interface.
406 Remove allocation and initialization of local input_event buffer,
407 as read_socket_hook stores events directly in fifo. Allocate and
408 initialize local hold_quit event to handle postponed quit event
409 (and store it if set by kbd_buffer_store_event_hold).
410
411 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
412 (gen_help_event): Fix prototype.
413
a64387ee 414 * macterm.c (XTread_socket): Remove bufp_r and
3e0c6482
KS
415 numcharsp args. Add hold_quit arg.
416 Rework to use just one, local, inev input_event. Store inev
417 directly in fifo using kbd_buffer_store_event_hold.
418
419 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
420 (read_input_waiting): Adapt to new read_socket_hook interface.
421 Remove allocation and initialization of local input_event buffer,
422 as read_socket_hook stores events directly in fifo. Allocate and
423 initialize local hold_quit event to handle postponed quit event
424 (and store it if set by kbd_buffer_store_event_hold).
425
a64387ee 426 * term.c (read_socket_hook): Fix arg list.
3e0c6482
KS
427
428 * termhooks.h (read_socket_hook): Fix prototype.
429
430 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
431 numcharsp args. Add hold_quit arg.
432 Rework to use just one, local, inev input_event. Store inev
433 directly in fifo using kbd_buffer_store_event_hold.
434
435 * w32inevt.h (w32_console_mouse_position): Fix prototype.
436
437 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
438 Add hold_quit arg. Rework to use just one, local, inev
439 input_event. Store inev directly in fifo using
440 kbd_buffer_store_event_hold. Update count in one place.
441 Postpone call to gen_help_event until inev is stored; use new
442 local do_help for this.
443 Remove local emacs_event in handing of ButtonPress event; just use
444 inev instead (so no reason to copy it later).
445
446 * xsmfns.c (x_session_check_input): Remove numchars arg.
447
d8d95bc7
SM
448 * xterm.c (x_focus_changed, x_detect_focus_change):
449 Remove numchars arg. Always store event into bufp arg.
450 Return nothing. Callers changed accordingly.
3e0c6482
KS
451 (glyph_rect): Simplify.
452 (STORE_KEYSYM_FOR_DEBUG): New macro.
453 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
454 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
455 (current_hold_quit) [USE_GTK]: Add.
456 (event_handler_gdk): Adapt to new handle_one_xevent.
457 (handle_one_xevent): Remove bufp_r and numcharsp args.
458 Add hold_quit arg. Rework to use just one, local, inev
459 input_event. Store inev directly in fifo using
460 kbd_buffer_store_event_hold. Update count in one place.
461 Postpone call to gen_help_event until inev is stored; use new
462 local do_help for this.
463 Simplify handling of keysyms (consolidate common code). Fix bug
464 where count was updated with nchars instead of nbytes.
465 Remove local emacs_event in handing of ButtonPress event; just use
466 inev instead (so no reason to copy it later).
467 Remove `out' label. Rename label `ret' to `done'; add various
468 `goto done' to clarify code flow in deeply nested blocks.
469 (x_dispatch_event): Simplify as handle_one_xevent now calls
470 kbd_buffer_store_event itself.
471 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
472 arg. Call handle_one_xevent with new arglist. Store event from
473 x_session_check_input in fifo.
474 [USE_GTK]: Setup current_hold_quit.
475 Decrement handling_signal before unblocking input.
476 (x_initialize) [USE_GTK]: Initialize current_count.
477
478 * xterm.h (x_session_check_input): Fix prototype.
479
e3564461 4802004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
a64387ee 481
d8d95bc7 482 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
a64387ee 483
e3564461
ST
484 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
485 macgui.h).
a64387ee 486
e3564461 487 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
a64387ee 488
e3564461
ST
489 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
490 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
491 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
492 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
493 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
494 (Bitmap): Remove typedef.
495 (Pixmap): Change int to GWorldPtr.
496
d8d95bc7 497 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
a64387ee 498
d8d95bc7
SM
499 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
500 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
501 New #define to extract 16-bit depth color components from unsigned
e3564461
ST
502 long representation.
503 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
504 colors used for masks.
505 (struct mac_display_info): Add color_p. Remove n_cbits.
a64387ee 506
e3564461
ST
507 * macfns.c: Include sys/types.h and sys/stat.h.
508 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
509 Include QuickTime/QuickTime.h.
510 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
511 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
512 functions defined in macterm.c.
513 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
514 (ZPixmap): New #define for compatibility with xfns.c.
515 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
516 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
d8d95bc7
SM
517 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
518 New functions.
e3564461 519 (four_corners_best, x_create_x_image_and_pixmap)
d8d95bc7
SM
520 (x_destroy_x_image, unwind_create_frame, x_disable_image)
521 (x_edge_detection, init_color_table, colors_in_color_table)
e3564461
ST
522 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
523 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
524 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
525 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
526 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
527 long mixup.
528 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
529 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
530 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
531 (x_set_cursor_type, Fxw_color_values, valid_image_p)
532 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
533 (x_alloc_image_color, clear_image_cache, lookup_image)
534 (x_find_image_file, xbm_read_bitmap_file_data)
535 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
536 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
537 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
538 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
539 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
d8d95bc7 540 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
e3564461
ST
541 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
542 #if 0.
543 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
544 #if 0. Free white_relief.gc and black_relief.gc.
d8d95bc7
SM
545 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
546 New functions (from xfns.c).
e3564461
ST
547 (Fx_create_frame): Record unwind_create_frame.
548 (Fxw_display_color_p): Use dpyinfo->color_p.
549 (Fx_display_grayscale_p, Fx_display_planes): Don't use
550 dpyinfo->n_cbits.
551 (Fx_display_color_cells): Use dpyinfo->n_planes;
552 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
553 (Qheuristic, cross_disabled_images, emboss_matrix)
554 (laplace_matrix): New variables (from xfns.c).
555 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
556 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
557 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
d8d95bc7
SM
558 (image_background_transparent): New function (from xfns.c).
559 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
560 (image_load_quicktime): Add declaration.
561 [MAC_OSX] (image_load_quartz2d): Likewise.
562 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
563 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
d8d95bc7 564 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
e3564461
ST
565 (xbm_load_image_from_file, x_laplace_read_row)
566 (x_laplace_write_row, pbm_read_file): Remove functions.
567 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
568 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
569 (colors_in_color_table): Sync with xfns.c (although not used).
570 (lookup_rgb_color): Don't lookup color table. Just do gamma
571 correction.
572 (COLOR_INTENSITY): New #define (from xfns.c).
d8d95bc7
SM
573 (x_disable_image): New function (from xfns.c).
574 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
575 (x_build_heuristic_mask): Sync with xfns.c.
576 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
577 (HAVE_PBM): Remove #ifdef.
578 (pbm_load): Sync with xfns.c. Set img->width and img->height
579 before IMAGE_BACKGROUND.
d8d95bc7 580 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
e3564461
ST
581 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
582 Don't enclose with #if HAVE_PNG.
583 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
d8d95bc7
SM
584 symbol _CGImageCreateWithPNGDataProvider is defined.
585 Otherwise use image_load_quicktime.
e3564461 586 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
d8d95bc7
SM
587 [HAVE_PNG] (png_load): Sync with xfns.c.
588 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
589 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
590 HAVE_JPEG.
591 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
592 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
593 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
594 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
595 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
596 (tiff_image_p, tiff_load): Don't enclose declarations with #if
597 HAVE_TIFF.
598 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
599 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
600 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
d8d95bc7
SM
601 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
602 New functions (from xfns.c).
e3564461 603 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
d8d95bc7 604 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
e3564461
ST
605 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
606 Don't enclose with #if HAVE_GIF.
607 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
608 animated gif. Otherwise use image_load_quicktime.
609 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
610 gif_DrawText to avoid conflict with QuickdrawText.h.
611 [HAVE_GIF] (gif_load): Sync with xfns.c.
612 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
613 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
614 Ghostscript is not supported yet).
615 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
616 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
617 cross_disabled_images (from xfns.c). Remove #if 0 for supported
618 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
619 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
620 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
d8d95bc7
SM
621 HAVE_PNG. Call EnterMovies to support animated gifs.
622 Call init_image_func_pointer to bind a symbol
e3564461 623 _CGImageCreateWithPNGDataProvider if it is defined.
a64387ee 624
d8d95bc7 625 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
e3564461
ST
626 (x_draw_bar_cursor): Sync declaration with xterm.c.
627 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
628 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
629 graphics).
630 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
631 (mac_draw_line_to_pixmap, XCreatePixmap)
632 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
d8d95bc7
SM
633 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
634 New functions.
635 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
636 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
637 Cast bits to char *.
e3564461
ST
638 (reflect_byte): New function (from w32fns.c).
639 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
640 due to byte alignment.
d8d95bc7
SM
641 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
642 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
e3564461
ST
643 (XSetForeground): Remove static (now used in macfns.c).
644 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
645 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
646 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
647 (x_draw_glyph_string_box, x_draw_image_foreground)
648 (x_draw_image_foreground_1, x_draw_image_glyph_string)
649 (x_draw_stretch_glyph_string, x_draw_glyph_string)
650 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
651 Sync with xterm.c.
652 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
653 than the xterm.c version when a strictly horizontal or vertical
654 line is drawn.
655 (XTset_terminal_window): Add static.
656 (x_make_frame_visible): Add UNBLOCK_INPUT.
657 (x_free_frame_resources): New funcion (from xterm.c).
658 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
659 occurs in tool bar area.
d8d95bc7
SM
660 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
661 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
e3564461
ST
662 Initialize image cache.
663 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
664 Enclose unused functions with #if 0.
665 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
666 (decode_mac_font_name): New function to apply code conversions
d8d95bc7 667 from a mac font name to an XLFD font name according to its script code.
e3564461 668 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
d8d95bc7 669 font name to a mac font name according to REGISTRY and ENCODING fields.
e3564461
ST
670 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
671 whose name starts with `.'.
672 (init_font_name_table): Use decode_mac_font_name. Add both
673 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
674 of a font is smJapanese.
675 (mac_do_list_fonts): New function to list fonts that match a given
676 pattern.
677 (x_list_fonts, XLoadQueryFont): Use it.
678 (XLoadQueryFont): Set rbearing field for each variable width
679 character to avoid needless redraw.
680 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
681
446f5f3d
KS
6822004-02-26 Kim F. Storm <storm@cua.dk>
683
af617d0f
KS
684 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
685 as read_socket_hook handler on X aborts if buffer is too small
686 and W32 handler doesn't always check buffer limit.
687
446f5f3d
KS
688 * xdisp.c (handle_single_display_prop): Handle left-fringe and
689 right-fringe similar to a display margin image. Specifically,
690 the characters having the fringe prop are no longer shown, and
691 we use IT_IMAGE/next_element_from_image with image_id = -1 to
692 do this. Set fringe bitmap face_id in it->face_id.
693 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
694 still realize it->face (i.e. the fringe bitmap face).
695
7d8a0b55
MB
6962004-02-25 Miles Bader <miles@gnu.org>
697
698 * xdisp.c (check_it): Check string/string_pos consistency.
699 (init_iterator): Initialize string-related fields properly.
700
7012004-02-11 Miles Bader <miles@gnu.org>
702
703 * xdisp.c (produce_image_glyph): Force negative descents to zero.
704
7052004-02-10 Miles Bader <miles@gnu.org>
706
707 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
708 BLOCK_INPUT can be nested, so it doesn't make much sense.
709
a64387ee 7102004-02-24 Michael Mauger <mmaug@yahoo.com>
ce35edd1
JR
711
712 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
713 (xbm_read_bitmap_data): Use unsigned char for image data.
714
92f5fba2
LT
7152004-02-23 Luc Teirlinck <teirllm@auburn.edu>
716
717 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
718
8565fb3d
JR
7192004-02-22 Jason Rumney <jasonr@gnu.org>
720
721 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
722 correctly over other bitmaps.
723
f8125c39
EZ
7242004-02-21 Eli Zaretskii <eliz@elta.co.il>
725
726 * emacs.c (USAGE1): Split into two halves.
727 (USAGE2): Second half of the old USAGE1.
d8d95bc7
SM
728 (USAGE3): Rename from USAGE2.
729 (USAGE4): Rename from USAGE3.
f8125c39 730
4effffca
EZ
7312004-02-21 Juri Linkov <juri@jurta.org>
732
733 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
734 Fix --multibyte. Move --help, --version to USAGE2. Add alias
735 --file. Fix -f, -l. Sort options. Untabify.
736 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
737
923c1e6f
LT
7382004-02-19 Luc Teirlinck <teirllm@auburn.edu>
739
740 * category.c (Fdefine_category, Fcategory_docstring)
741 (Fget_unused_category, Fset_category_table)
742 (Fcategory_set_mnemonics): Doc fixes.
743
b0e225fd
KS
7442004-02-20 Kim F. Storm <storm@cua.dk>
745
746 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
747 The following changes are relative to the 2004-01-21 revision.
748 (NREAD_INPUT_EVENTS): Define as max number of input events to read
749 in one call to read_socket_hook. Value is 8.
750 (read_avail_input): Separate and rework handling of read_socket_hook
751 and non-read_socket_hook cases. Use smaller input_event buffer
d8d95bc7
SM
752 in read_socket_hook case, and repeat if full buffer is read.
753 Use new local variable 'discard' to skip input after C-g.
b0e225fd
KS
754 In non-read_socket_hook case, just use a single input_event, and
755 call kbd_buffer_store_event on the fly for each character.
756
b15aa9f9
SM
7572004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
758
759 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
760 Remove unused `gu' alternative.
761
83c9aa95
AS
7622004-02-19 Andreas Schwab <schwab@suse.de>
763
764 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
765 warning.
766
cc808173
KS
7672004-02-18 Kim F. Storm <storm@cua.dk>
768
769 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
770 Fix last change.
771
ab90a54d
KS
7722004-02-17 Kim F. Storm <storm@cua.dk>
773
b26f249f
KS
774 * xdisp.c (fast_find_position): Fix return value of new version;
775 it was inverted compared to the 21.1 version.
776 (get_window_cursor_type): Don't look at glyph if NULL.
777 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
0bf7d005 778
ab90a54d
KS
779 * keyboard.c: Rework previous change; it didn't consider that the
780 buf array was allocated on the stack.
781 (prev_read): Remove variable.
782 (read_avail_input_buf): New static event buffer array.
b9568dfc 783 (in_read_avail_input): New static variable to handle re-entrancy.
ab90a54d 784 (read_avail_input): Change buf to pinter to read_avail_input_buf.
b9568dfc
KS
785 Use in_read_avail_input to handle re-entrance; when re-entered,
786 fully initialize and use tmp_buf array instead of read_avail_input_buf.
787 Do not initialize read_avail_input_buf in full here; instead assume it
ab90a54d
KS
788 is always cleared on entry. To ensure that, we clear (just) the
789 entries that were used before we return.
790 (init_keyboard): Initialize read_avail_input_buf here.
791
4e039f3f
EZ
7922004-02-16 Jesper Harder <harder@ifa.au.dk> (tiny change)
793
794 * cmds.c (Fend_of_line): Doc fix.
795
7b5368c1
EZ
7962004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
797
798 * keyboard.c (prev_read): New static variable.
799 (read_avail_input): Use it to zero out only those slots in buf[]
800 that were used last time we were called.
801
ca4bc494
EZ
8022004-02-16 Eli Zaretskii <eliz@elta.co.il>
803
804 * Makefile.in (obj): Move fringe.o from here...
805 (XOBJ, MAC_OBJ): ...to here.
806
159c348e
SE
8072004-02-16 Stephen Eglen <stephen@gnu.org>
808
809 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
810
d2f14999
SM
8112004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
812
b15aa9f9
SM
813 * data.c (Fbyteorder):
814 * fringe.c (Fdefine_fringe_bitmap):
815 * xdisp.c (handle_single_display_prop):
d2f14999
SM
816 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
817
8d50508a
JR
8182004-02-16 Jason Rumney <jasonr@gnu.org>
819
820 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
821
dd4497dc
ST
8222004-02-15 Steven Tamm <steventamm@mac.com>
823
824 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
825 controlling emulation of a three button mouse with option and
826 command keys.
827 (Qreverse, mac_get_enumlated_btn): Handle the emulation
b15aa9f9 828 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
dd4497dc 829
c9159cb3
KS
8302004-02-15 Kim F. Storm <storm@cua.dk>
831
2cc52658
KS
832 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
833
c9159cb3
KS
834 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
835 Perform byte-swapping.
836
12fde2dc
KS
8372004-02-14 Kim F. Storm <storm@cua.dk>
838
839 * dispextern.h (struct draw_fringe_bitmap_params): Change member
840 bits from char to short to facilitate wider bitmaps.
841 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
842 member.
843
844 * fringe.c (struct fringe_bitmap): Change member bits from char to
845 short to facilitate 16 bits wide bitmaps. Modify all standard
846 bitmaps accordingly.
847 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
848 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
849 (draw_fringe_bitmap): Ditto.
850 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
851 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
852 handle up to 16 bits wide bitmaps.
853 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
f21a7192 854 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
12fde2dc
KS
855
856 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
857 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
858 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
859
860 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
861 so it is no longer necessary to expand them here.
862
863 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
864
9d7271e8
KS
8652004-02-12 Kim F. Storm <storm@cua.dk>
866
867 * window.c (Fwindow_fringes): Doc fix.
868
706c1e4f
JD
8692004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
870
871 * xselect.c (x_get_foreign_selection): Add new optional parameter
872 time_stamp.
873 (Fx_get_selection_internal): Ditto, pass time_stamp to
874 x_get_foreign_selection.
875
876 * data.c (Fbyteorder): New function.
877
c2d12b5d
JD
8782004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
879
880 * atimer.c: Move include stdio.h to same place as in other files.
881
882 * region-cache.c: Ditto.
883
884 * sysdep.c: Ditto.
885
886 * xfaces.c: Ditto.
887
4c1947b9
SS
8882004-02-09 Sam Steingold <sds@gnu.org>
889
890 * w32term.c (w32_draw_fringe_bitmap): Fixed a typo in the last patch.
891
82722af3
KS
8922004-02-09 Kim F. Storm <storm@cua.dk>
893
894 * fringe.c: New file. Move original fringe related declarations
895 and code from dispextern.h and xdisp.c here.
896 Rework code to support user defined fringe bitmaps, redefining
897 standard bitmaps, ability to overlay user defined bitmap with
898 overlay arrow bitmap, and add faces to bitmaps.
899 (Voverflow_newline_into_fringe): Declare here.
900 (enum fringe_bitmap_align): New enum.
901 (..._bits): All bitmaps are now defined without bitswapping; that
902 is now done in init_fringe_once (if necessary).
903 (standard_bitmaps): New array with specifications for the
904 standard fringe bitmaps.
905 (fringe_faces): New array.
906 (valid_fringe_bitmap_id_p): New function.
907 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
908 (draw_fringe_bitmap): New function which draws fringe bitmap,
909 possibly overlaying bitmap with cursor in right fringe or the
910 overlay arrow in the left fringe.
911 (update_window_fringes): Do not handle overlay arrow here.
912 Compare and copy fringe bitmap faces.
913 (init_fringe_bitmap): New function.
914 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
915 define and destroy user defined fringe bitmaps.
916 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
917 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
918 (syms_of_fringe): New function. Defsubr new DEFUNs.
919 DEFVAR_LISP Voverflow_newline_into_fringe.
920 (init_fringe_once, init_fringe): New functions.
921 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
4c1947b9 922
82722af3
KS
923 * Makefile.in (obj): Add fringe.o.
924 (fringe.o): New dependencies.
925
926 * dispextern.h (FRINGE_ID_BITS): New definition for number of
927 bits allocated to hold a fringe number. Increase number of bits
928 from 4 to 8 to allow user defined fringe bitmaps.
929 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
930 left_user_fringe_face_id, right_user_fringe_bitmap,
931 right_user_fringe_face_id.
932 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
933 Move to new file fringe.c.
934 (MAX_FRINGE_BITMAPS): Define here.
935 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
936 and overlay_p. Change member which to int.
937 (struct redisplay_interface): New members define_fringe_bitmap
938 and destroy_fringe_bitmap.
939 (valid_fringe_bitmap_id_p): Add prototype.
940 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
941
942 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
943 arrows.
944 (update_frame): Do flush_display if force_flush_display_p to
945 ensure display (specifically fringes) are updated in a timely
946 manner when resizing the frame by dragging the mouse.
947 (update_window_line): Update row if overlay arrow changed.
948 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
949 or overlay arrow changed.
950
951 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
952 syms_of_fringe, and init_fringe.
953
954 * frame.h (struct frame): New member force_flush_display_p.
955
956 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
957 Add prototypes.
958
a3993cc8 959 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
a64387ee 960 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
a3993cc8
KS
961 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
962 Use cursor color for displaying cursor in fringe.
82722af3
KS
963 (x_redisplay_interface): Add null handlers for
964 define_fringe_bitmap and destroy_fringe_bitmap functions.
965
966 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
967 xterm.c to handle overlayed fringe bitmaps and to use cursor color
968 for displaying cursor in fringe.
969 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
970 specific functions to define and destroy fringe bitmaps in fringe_bmp.
971 (w32_redisplay_interface): Add them to redisplay_interface.
972 (w32_term_init): Call w32_init_fringe instead of explicitly
973 defining fringe bitmaps in fringe_bmp array.
974 (x_delete_display): Call w32_reset_fringes instead of explicitly
975 destroying fringe bitmaps in fringe_bmp array.
976
977 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
978 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
979 (continued_bits, continuation_bits, ov_bits, first_line_bits)
980 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
981 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
982 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
983 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
984 Move fringe handling vars and code to new file fringe.c.
985 (handle_display_prop): Handle left-fringe and right-fringe
986 display properties; store user fringe bitmaps in iterator.
987 (move_it_in_display_line_to): Handle cursor in fringe at eob.
988 (clear_garbaged_frames): Set force_flush_display_p if resized.
989 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
990 (display_line): Handle cursor in fringe at eob.
991 (display_line): Set row user fringe bitmaps from iterator.
992
993 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
994 Use cursor color for displaying cursor in fringe.
995 (x_redisplay_interface): Add null handlers for
996 define_fringe_bitmap and destroy_fringe_bitmap functions.
997
030400eb
JD
9982004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
999
1000 * macfns.c (Fx_change_window_property): Make doc string and
1001 parameters same as for X version.
1002
1003 * w32fns.c (Fx_change_window_property): Ditto.
1004
3af55251
KS
10052004-02-07 Kim F. Storm <storm@cua.dk>
1006
ec110e9e
KS
1007 * xdisp.c (hscroll_window_tree): Position cursor near to right
1008 margin in hscrolled window when jumping to end of line (rather
1009 than centering cursor).
1010
3af55251
KS
1011 * process.c (wait_reading_process_input): Don't do adaptive read
1012 buffering if waiting for a specific process.
1013
b0c138ce
LT
10142004-02-05 Luc Teirlinck <teirllm@auburn.edu>
1015
1016 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
1017 (Fread_minibuffer, Feval_minibuffer)
1018 (Fread_string, Fread_no_blanks_input)
1019 (Fcompleting_read): Doc fixes.
1020 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
1021 completion-regexp-list. Define Qcase_fold_search and staticpro it.
1022 (read_minibuf): Fix initial comment.
1023 (Ftry_completion, Fall_completions, Ftest_completion): Bind
1024 case-fold-serach to the value of completion-ignore-case when
1025 checking completion-regexp-list.
1026 (Fdisplay_completion_list): Make it handle arguments that are
1027 symbols. Doc fix.
1028
9676f5ad 10292004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
64d1e373 1030
9676f5ad 1031 * xterm.h: Add declaration of free_frame_menubar.
64d1e373 1032
9676f5ad
JD
1033 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
1034 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
b0c138ce 1035 (Fx_change_window_property): Add declaration of parameters type and
9676f5ad 1036 format. Remove unused variable cons.
5b698285
JD
1037
1038 * xselect.c: Include stdio,h.
1039
fc1d15f6
KH
10402004-02-05 Kenichi Handa <handa@m17n.org>
1041
ebaff4af
KH
1042 * fns.c (Fset_char_table_range): Fix previous change.
1043
fc1d15f6
KH
1044 * buffer.c (Fset_buffer_multibyte): Fix docstring.
1045
9676f5ad
JD
10462004-02-04 Luc Teirlinck <teirllm@auburn.edu>
1047
1048 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
1049
da75761f
SM
10502004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
1051
1052 * keymap.c (Vmouse_events): Rename from Vmenu_events.
1053 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
1054
13c5d120
KH
10552004-02-04 Kenichi Handa <handa@m17n.org>
1056
1057 * fns.c (Fset_char_table_range): Handle charsets ascii,
1058 eight-bit-control, and eight-bit-graphic correctly.
1059
2883d842
JR
10602004-02-03 Jason Rumney <jasonr@gnu.org>
1061
1062 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
1063
1064 * w32fns.c (x_to_w32_font): Likewise.
1065
69eff41f
JD
10662004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1067
1068 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
1069 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
1070
1071 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
1072 ClientMessages.
1073
1074 * xselect.c: Include termhooks.h and X11/Xproto.h
1075 (x_check_property_data, x_fill_property_data)
1076 (x_property_data_to_lisp, mouse_position_for_drop)
1077 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
da75761f 1078 (Fx_send_client_event): Move here from xfns.c.
69eff41f
JD
1079 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
1080
da75761f 1081 * xfns.c (x-send-client-message): Move to xselect.c
69eff41f
JD
1082 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
1083 OUTER_P.
1084 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
1085 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
1086 if vector_ret_p is true.
1087 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
69eff41f 1088
dcdbbb5d
EZ
10892004-02-02 Eli Zaretskii <eliz@elta.co.il>
1090
1091 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
1092 basename of FILE relative to it, not FILE itself.
1093
09721b31
KH
10942004-02-02 Kenichi Handa <handa@m17n.org>
1095
1096 * coding.c (coding_restore_composition): Check invalid
1097 composition data more rigidly.
1098
eb996101
LT
10992004-01-30 Luc Teirlinck <teirllm@auburn.edu>
1100
1101 * fileio.c (Fread_file_name_internal): Correctly handle the case
1102 where insert-default-directory is nil.
1103 (Fread_file_name): Always return an empty string if the user exits
1104 with an empty minibuffer. Adapt the docstring accordingly.
1105 (syms_of_fileio): Adapt the docstring of insert-default-directory
1106 to the change in Fread_file_name.
1107
a0367d42
EZ
11082004-01-29 Eli Zaretskii <eliz@elta.co.il>
1109
1110 * alloca.c [!alloca]: Fix the prototype for xfree.
1111
13f52ed8
KH
11122004-01-29 Kenichi Handa <handa@m17n.org>
1113
1114 * fns.c (string_char_to_byte): Optimize for ASCII only string.
1115 (string_byte_to_char): Likewise.
1116
d57625a0
JR
11172004-01-28 Peter Runestig <peter@runestig.com>
1118
1119 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
1120
a64387ee 11212004-01-27 Steven Tamm <steventamm@mac.com>
911c78b4
ST
1122
1123 * unexmacosx.c (unexec_copy): Do not copy more than was
1124 requested to prevent overwriting during unexec.
1125
eb37b8fd
JD
11262004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1127
ce38070a
JD
1128 * process.c (sigchld_handler): Add comment about not calling malloc.
1129
eb37b8fd
JD
1130 * process.h: Add extern to synch_process_termsig.
1131
a64387ee 11322004-01-27 Steven Tamm <steventamm@mac.com>
21a3e657 1133
da75761f
SM
1134 * macterm.c (make_mac_frame, make_mac_terminal_frame):
1135 Move setting of scroll bars from make_mac_frame to
1136 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
21a3e657 1137
d62a265d
RS
11382004-01-26 Richard M. Stallman <rms@gnu.org>
1139
1140 * search.c (Freplace_match): Handle nonexistent
1141 back-references properly.
1142
11432004-01-03 Richard M. Stallman <rms@gnu.org>
1144
1145 * window.c (decode_any_window): New function.
1146 (Fwindow_height, Fwindow_width, Fwindow_edges)
1147 (Fwindow_pixel_edges, Fwindow_inside_edges)
1148 (Fwindow_inside_pixel_edges): Use decode_any_window.
1149
ff236419
JD
11502004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1151
1152 * process.h: synch_process_termsig new variable.
1153
1154 * callproc.c: Define synch_process_termsig.
1155 (Fcall_process): Initiate synch_process_termsig to zero and
1156 check if non-zero and get signal name after subprocess has ended.
1157
1158 * process.c (sigchld_handler): Set synch_process_termsig
1159 if terminated by a signal. synch_process_death setting removed.
1160
1161 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
1162
41b867ea
AS
11632004-01-26 Andreas Schwab <schwab@suse.de>
1164
1165 * print.c (print_preprocess): Declare size as EMACS_INT to not
1166 lose bits.
1167 (print_object): Likewise.
1168 * alloc.c (Fpurecopy): Likewise.
1169
a08084ff
LT
11702004-01-25 Luc Teirlinck <teirllm@auburn.edu>
1171
1172 * window.c (Fwindow_minibuffer_p): Doc fix.
1173
b19ac475
JY
11742004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
1175
1176 * editfns.c (Fformat): Make both passes accept the same set of flags.
1177
fe905025
KH
11782004-01-23 Kenichi Handa <handa@m17n.org>
1179
1180 * fns.c (Fmd5): If OBJECT is a buffer different from the current
1181 one, set buffer to OBJECT temporarily.
1182
438fc6c0
SM
11832004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
1184
455316e2
SM
1185 * keyboard.c (kbd_buffer_gcpro): Remove.
1186 (kbd_buffer_store_event, clear_event, Fdiscard_input)
1187 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
1188 Don't initialize and/or maintain the variable any more. It was made
1189 redundant by my commit of 2003-06-15.
1190
438fc6c0
SM
1191 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
1192
5335a4ee
JD
11932004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1194
1195 * lisp.h: Add undef DECL_ALIGN.
1196
dcdaeebc
SM
11972004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
1198
1199 * process.c (wait_reading_process_input) [SYNC_INPUT]:
1200 Check interrupt_input_pending explicitly.
1201
1202 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
1203
1204 * keyboard.c (handle_async_input): New fun,
1205 extracted from input_available_signal.
1206 (input_available_signal, reinvoke_input_signal): Use it.
1207
9076a823
SM
12082004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
1209
d7107586
SM
1210 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
1211
1212 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
1213 manipulation macros for when tags are in the lower bits.
1214 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
1215 (DECL_ALIGN): New macro.
1216 (DEFUN): Use it.
1217
1218 * lisp.h [ENABLE_CHECKING]: Don't force union type.
1219
1220 * s/darwin.h (__attribute__): Remove outdated workaround.
1221
1222 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
1223
1224 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
1225 Don't check range of malloc address.
1226 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
1227
9076a823
SM
1228 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
1229
1230 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
1231
ba029065
KH
12322004-01-19 Kenichi Handa <handa@m17n.org>
1233
1234 * fontset.c (fontset_font_pattern): Fix previous change.
1235
7af0e8d7
MB
12362004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
1237
1238 * xdisp.c (Voverflow_newline_into_fringe)
1239 (move_it_in_display_line_to, redisplay_internal)
1240 (update_window_fringes, redisplay_window, display_line, window):
1241 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
1242 that it compiles without a window-system.
1243 * dispnew.c (direct_output_for_insert, update_window): Likewise.
1244
77a9cf69
KS
12452004-01-16 Kim F. Storm <storm@cua.dk>
1246
1247 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
1248
a64387ee 1249 * buffer.c (init_buffer_once): Set buffer_defaults and
77a9cf69
KS
1250 buffer_local_flags for indicate_buffer_boundaries.
1251 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
1252 default- variable for it.
1253
1254 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
1255 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
d7107586 1256 New members exact_window_width_line_p and cursor_in_fringe_p for
77a9cf69
KS
1257 overflowing newlines into right fringe.
1258 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
1259 and indicate_bottom_line_p for buffer boundaries and scrolling.
1260 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
1261 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
1262 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
1263 and HOLLOW_SQUARE_BITMAP.
1264 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
1265 Add prototypes.
1266
1267 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
1268 instead of related indicator fields.
1269 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
1270 (direct_output_for_insert): Handle exact width lines like
1271 contined lines. Call update_window_fringes.
1272 (update_window): Call update_window_fringes.
1273 (scrolling_window): Don't skip desired rows with changed bitmaps.
1274 Check if fringe bitmaps changes when assigning scrolled rows.
1275
1276 * xdisp.c (Voverflow_newline_into_fringe): New variable.
1277 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
1278 (move_it_in_display_line_to): Overflow newline into fringe for
1279 rows that are exactly as wide as the window.
1280 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
1281 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
1282 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
1283 (fringe_bitmaps): Add new bitmaps.
1284 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
1285 Select proper bitmap for cursor in fringe when appropriate.
1286 Handle alignment of bitmap to top or bottom of row.
1287 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
1288 done by update_window_fringes.
1289 (update_window_fringes, draw_window_fringes): New functions.
1290 (redisplay_internal): Call update_window_fringes in case only
1291 cursor row is updated.
1292 (redisplay_window): Call update_window_fringes.
1293 Explicitly call draw_window_fringes if redisplay was done using
1294 the current matrix or the overlay arrow is in the window.
1295 (try_window_reusing_current_matrix): Mark scrolled rows for
1296 fringe update (to update buffer-boundaries / scrolling icons).
1297 (find_last_unchanged_at_beg_row): Handle exact width lines line
1298 continued lines.
1299 (display_line): Overflow newline into fringe for rows that are
1300 exactly as wide as the window. Don't append space for newline
d7107586 1301 in this case.
77a9cf69
KS
1302 (notice_overwritten_cursor): Explicitly clear cursor bitmap
1303 in fringe as if it had been overwritten.
1304 (erase_phys_cursor): Erase cursor bitmap in fringe.
d7107586 1305 (syms_of_xdisp): Mark show-trailing-whitespace and
77a9cf69
KS
1306 void-text-area-pointer as user options.
1307 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
d7107586 1308
77a9cf69
KS
1309 * xterm.c (x_update_window_end): Call draw_window_fringes.
1310 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
1311 in row instead of actually drawing fringe bitmaps.
1312 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
1313 (x_draw_window_cursor): Draw cursor in fringe.
1314
1315 * w32term.c (x_update_window_end): Call draw_window_fringes.
1316 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
1317 in row instead of actually drawing fringe bitmaps.
1318 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
1319 (w32_draw_window_cursor): Draw cursor in fringe.
1320
1321 * macterm.c (x_update_window_end): Call draw_window_fringes.
1322 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
1323 in row instead of actually drawing fringe bitmaps.
1324 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
1325 (mac_draw_window_cursor): Draw cursor in fringe.
1326
a633a954
JD
13272004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1328
1329 * xterm.c (handle_one_xevent): Don't handle characters that are part
1330 of an old style (XLookupString) compose sequence.
1331
80460525
KH
13322004-01-15 Kenichi Handa <handa@m17n.org>
1333
1334 * search.c (Freplace_match): Use make_multibyte_string or
1335 make_unibyte_string according to the buffer multibyteness.
1336
7fc34f85
SM
13372004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
1338
1339 * alloc.c (struct interval_block, struct string_block)
1340 (struct symbol_block, struct marker_block, live_string_p)
1341 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
1342 Better preserve alignment for objects in blocks.
1343 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
1344
1345 * lread.c (defvar_per_buffer): Remove dead declaration.
1346
1347 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
1348 space size.
1349
66070bd1
JD
13502004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1351
1352 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
1353 if a key press should pop down. Only pop down if a key is pressed
1354 outside the menu/dialog.
1355 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
1356 popup_get_selection.
1357 (create_and_show_dialog): Pass 1 for down_on_keypress to
1358 popup_get_selection.
1359
de7515d6
JD
13602004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1361
1362 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
1363 BLOCK/UNBLOCK_INPUT.
1364
160b1b50
JD
13652004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1366
1367 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
1368 specified.
1369
3a9f36e6
KH
13702004-01-08 Kenichi Handa <handa@m17n.org>
1371
1372 * editfns.c (Fformat): Fix '&' to '&&'.
1373
3803eb32
AS
13742004-01-08 Andreas Schwab <schwab@suse.de>
1375
1376 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
1377 size if PSEUDOVECTOR_FLAG is set.
1378
9da88f37
KH
13792004-01-07 Kenichi Handa <handa@m17n.org>
1380
74ac5074
KH
1381 * charset.c (Fdeclare_equiv_charset): Fix docstring.
1382
9da88f37
KH
1383 * fontset.c (fontset_ref_via_base): Fix previous change.
1384
05faee07
KS
13852004-01-07 Kim F. Storm <storm@cua.dk>
1386
1387 * process.c (read_process_output): Only activate adaptive
1388 buffering if we read less than 256 bytes at a time.
1389
634910c8
KS
13902004-01-06 Kim F. Storm <storm@cua.dk>
1391
1392 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
1393 object and image object. Return glyph width and height.
1394 (mode_line_string, marginal_area_string): Ditto.
1395
1396 * dispextern.h (buffer_posn_from_coords, mode_line_string)
1397 (marginal_area_string): Fix prototypes.
1398
1399 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
1400 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
1401 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
1402
1403 * keyboard.c (make_lispy_position): Use modified mode_line_string,
1404 buffer_posn_from_coords, and marginal_area_string functions to
1405 include both string object and image object in the lispy position.
1406 Also add actual glyph width and height to position.
1407 (read_key_sequence): Use real buffer position from mouse
1408 event to find keymap property even when click is in marginal area.
1409
1410 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
1411 mode_line_string and marginal_area_string functions to handle
1412 both string object and image object properties.
d7107586 1413
57951c2e
AS
14142004-01-06 Andreas Schwab <schwab@suse.de>
1415
1416 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
1417 character.
1418
181e6a61
AS
14192004-01-02 Andreas Schwab <schwab@suse.de>
1420
d7107586
SM
1421 * macterm.c (emacs_options, x_initialized, same_x_server):
1422 Remove unused (and duplicated) definitions.
181e6a61 1423
31e0fbdd
KS
14242004-01-02 Kim F. Storm <storm@cua.dk>
1425
1426 * process.h (struct Lisp_Process): New members for adaptive read
1427 buffering: adaptive_read_buffering, read_output_delay, and
1428 read_output_skip.
1429
1430 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
1431 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
1432 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
1433 (process_output_delay_count, process_output_skip): New vars.
1434 (Vprocess_adaptive_read_buffering): New variable.
1435 (make_process): Initialize adaptive read buffering members.
1436 (Fstart_process): Set adaptive_read_buffering member.
1437 (deactivate_process): Cleanup adaptive read buffering.
1438 (wait_reading_process_input): Temporarily omit delayed
1439 subprocesses from the set of file descriptors to read from;
1440 adjust the select timeout if we skipped any subprocesses.
1441 (read_process_output): Increase adaptive read buffering delay if
1442 we read less than a full buffer; reduce delay when we read a
1443 full buffer.
1444 (send_process): Simplify using local Lisp_Process var.
1445 Reset adaptive read buffering delay after write.
1446 (init_process): Initialize process_output_delay_count and
1447 process_output_skip.
1448 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
1449
68c6a789
JR
14502004-01-01 Jason Rumney <jasonr@gnu.org>
1451
d7107586 1452 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
68c6a789 1453
3f70fe82
LT
14542003-12-30 Luc Teirlinck <teirllm@auburn.edu>
1455
1456 * print.c (Ferror_message_string): Add hyperlink in the docstring
1457 to the definition of `signal' in the Elisp manual.
1458 * eval.c (Fsignal): Ditto.
1459
a64387ee 14602003-12-29 James Clark <jjc@jclark.com> (tiny change)
c2be49ed
EZ
1461
1462 * fns.c (internal_equal): Return t for two NaN arguments.
1463
7abd90ea
RS
14642003-12-29 Richard M. Stallman <rms@gnu.org>
1465
1466 * data.c (store_symval_forwarding): Handle setting
1467 default-fill-column, etc., by changing the value in
1468 buffers that use the default.
1469
1470 * minibuf.c (Fset_minibuffer_window): Doc fix.
1471
1472 * fileio.c (choose_write_coding_system): Ignore auto_saving
1473 if using the visited file for auto saves.
1474 (Fwrite_region): Don't update SAVE_MODIFF
1475 if auto-saving in visited file.
1476
3e7cfcdc
KH
14772003-12-29 Kenichi Handa <handa@m17n.org>
1478
1479 * dispextern.h (face_font_available_p): Extern it.
1480
1481 * fontset.c (Voverriding_fontspec_alist): New variable.
1482 (lookup_overriding_fontspec): New function.
d7107586 1483 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
3e7cfcdc
KH
1484 (fontset_font_pattern): Likewise.
1485 (regulalize_fontname): New function.
1486 (Fset_fontset_font): Call regulalize_fontname.
1487 (Fset_overriding_fontspec_internal): New function.
d7107586
SM
1488 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
1489 Defsubr Sset_overriding_fontspec_internal.
3e7cfcdc
KH
1490
1491 * xfaces.c (face_font_available_p): New function.
1492
7abd90ea
RS
14932003-12-28 Richard M. Stallman <rms@gnu.org>
1494
1495 * buffer.c (Fother_buffer): Don't crash if BUF is nil
1496 or if its name is nil.
1497
1498 * buffer.c (Fkill_buffer): Don't delete auto-save file
1499 if it's the same as the visited file.
1500
de1d1a40
LT
15012003-12-28 Luc Teirlinck <teirllm@auburn.edu>
1502
1503 * coding.c (Fcheck_coding_system): Doc fix.
1504
204fb75e
KS
15052003-12-28 Kim F. Storm <storm@cua.dk>
1506
1507 * Makefile.in (eval.o): Depend on dispextern.h.
1508
1509 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
1510 image glyph using image's ascent.
1511 (mode_line_string): Return image glyph as object clicked on.
1512 Adjust y0 for image glyph using image's ascent.
1513
1514 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
1515 (struct glyph): New members, ascent and descent. Used to save
1516 this glyph's ascent and descent, instead of having.
1517 (struct glyph): Declare member face_id using FACE_ID_BITS.
1518 (find_hot_spot): Add prototype.
1519
1520 * keyboard.c (Qimage): Remove extern (now in lisp.h).
1521 (QCmap): Declare extern.
1522 (make_lispy_position): When position is inside image hot-spot,
1523 use hot-spot element's id as posn element.
1524
1525 * lisp.h (IMAGEP): New macro to test for image object type.
1526 (Qimage): Declare extern.
1527
1528 * macfns.c (Qimage): Remove extern (now in lisp.h).
1529 (valid_image_p, parse_image_spec): Use IMAGEP macro.
1530
1531 * macterm.c (Qface, Qmouse_face): Remove unused externs.
1532
1533 * w32fns.c (Qimage): Remove extern (now in lisp.h).
1534 (valid_image_p, parse_image_spec): Use IMAGEP macro.
1535
1536 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
1537
1538 * w32term.c (Qface, Qmouse_face): Remove unused externs.
1539
1540 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
1541 pointer types.
1542 (Qrelative_width, Qalign_to): Remove unused variables.
1543 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
1544 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
1545 image maps.
d7107586 1546 (x_y_to_hpos_vpos): Return glyph relative coordinates through
204fb75e
KS
1547 new dx and dy args.
1548 Remove buffer_only_p arg (always 0). Simplify code accordingly.
1549 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
1550 than row's ascent and height, to get sensible height on tall rows.
1551 (build_desired_tool_bar_string): Remove Qimage extern.
1552 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
1553 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
1554 image glyph is alone on the last line.
1555 (append_glyph, append_composite_glyph, produce_image_glyph)
d7107586 1556 (append_stretch_glyph): Set glyph's ascent and descent.
204fb75e 1557 (on_hot_spot_p): New function to check if position is inside an
d7107586 1558 rectangular, circular, or polygon-shaped image hot-spot,
204fb75e
KS
1559 (find_hot_spot): New function to search for image hot-spot.
1560 (Flookup_image_map): New defun to search for image hot-spot.
1561 (define_frame_cursor1): New aux function to determine frame pointer.
1562 (note_mode_line_or_margin_highlight, note_mouse_highlight):
1563 Handle `pointer' text property and :pointer image property to
1564 control frame pointer shape. Detect image hot-spots for pointer
1565 and help_echo properties. Use define_frame_cursor1.
1566 (note_mouse_highlight): Use Vvoid_text_area_pointer.
1567 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
1568 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
1569
1570 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
1571
1572 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
1573 (Qimage): Remove extern (now in lisp.h).
1574 (valid_image_p, parse_image_spec): Use IMAGEP macro.
1575
1576 * xmenu.c (show_help_event): Remove unused code.
1577
1578 * xterm.c (Qface, Qmouse_face): Remove unused externs.
1579 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
1580 row's ascent and descent, to get a sensible height on tall rows.
1581
fc052137
LT
15822003-12-25 Luc Teirlinck <teirllm@auburn.edu>
1583
1584 * minibuf.c (Fcompleting_read): Undo previous change.
1585
a64387ee 15862003-12-25 Lars Hansen <larsh@math.ku.dk>
b9148500
LH
1587
1588 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
1589 Arguments GCPRO'ed in call to file name handler.
1590
56ffd194
TTN
15912003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
1592
1593 * termcap.c (tgetst1): Scan for "%pN"; if all
1594 N are continuous in [1,9], remove all "%pN".
1595
5202d23d
JD
15962003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1597
f26fab36
JD
1598 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
1599
5202d23d
JD
1600 * xfaces.c (lface_fully_specified_p): Take into account that
1601 MAC OS always have unspecified stipple.
1602
8babaa59
TTN
16032003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
1604
1605 * tparam.c (tparam1): Add handling for `%pN', which
1606 means use param N for the next substitution.
1607
2d176448
TTN
16082003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
1609
1610 * xfaces.c (Fcolor_gray_p): Fix omission bug:
1611 In case `frame' is nil, consult the selected frame.
1612 (Fcolor_supported_p): Likewise.
1613
adb0708c
LT
16142003-12-23 Luc Teirlinck <teirllm@auburn.edu>
1615
000eeb15
LT
1616 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
1617 Doc fixes.
0dc72b11
LT
1618
1619 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
1620 and an integer. Adapt the introductory comment accordingly.
adb0708c
LT
1621 (Fread_from_minibuffer): Delete code moved into read_minibuf.
1622 Doc fix.
1623 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
1624 read_minibuf.
1625 (Fcompleting_read): Delete code moved into read_minibuf.
d7107586 1626 (Ftest_completion): Make it handle obarrays and hash tables correctly.
adb0708c 1627
2e4d132b
KH
16282003-12-03 Kenichi Handa <handa@m17n.org>
1629
1630 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
1631 encoding sequence.
1632
3999c705
KH
16332003-12-01 Kenichi Handa <handa@m17n.org>
1634
1635 * composite.c (syms_of_composite): Don't make the compostion hash
1636 table week.
1637
d344ecbb
LT
16382003-11-30 Luc Teirlinck <teirllm@auburn.edu>
1639
1640 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
1641 * textprop.c (Fget_char_property_and_overlay): New function.
1642 (syms_of_textprop): Defsubr it.
1643
03d6484e
JD
16442003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1645
019b1f0e
JD
1646 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
1647 to compile on terminal configuration.
1648
03d6484e
JD
1649 * fileio.c (Fread_file_name): Check use_file_dialog also before
1650 calling Fx_file_dialog.
1651
1652 * fns.c: use_file_dialog: New variable.
1653 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
1654
442d3fd0
KS
16552003-11-29 Kim F. Storm <storm@cua.dk>
1656
1657 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
1658 (syms_of_msdos): Don't intern and staticpro them.
1659
0f6a07a8
KS
16602003-11-27 Kim F. Storm <storm@cua.dk>
1661
1662 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
1663 coordinates relative to glyph at posn. If glyph is an image,
1664 return that as object at posn. Callers changed.
1665 (mode_line_string, marginal_area_string): Calculate and return
1666 pixel coordinates relative to glyph. Callers changed.
1667
1668 * dispextern.h (buffer_posn_from_coords, mode_line_string)
1669 (marginal_area_string): Fix prototypes.
1670 (window_box_left_offset, window_box_right_offset): Add prototypes.
1671
1672 * frame.h (get_specified_cursor_type, get_window_cursor_type):
1673 Remove prototypes.
1674
1675 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
1676
1677 * keyboard.c (make_lispy_position): Add x and y coordinates
1678 relative to the current glyph as 7th element of position.
1679 If glyph is an image, return it in the object element.
1680 (read_key_sequence): Skip checks for keymap property in cases
1681 where POSN_STRING is not a string (e.g. an image).
1682
1683 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
1684 (Vshow_text_cursor_in_void): New variable.
1685 (glyph_to_pixel_coords): Don't use negative hpos.
1686 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
1687 (append_stretch_glyph): Change ascent arg to be actual value
1688 in pixels rather than ratio to height. Callers changed.
1689 (calc_pixel_width_or_height): New aux function, implementing
1690 pixel based artihmetic for glyph widths and heights.
1691 (produce_stretch_glyph): Use calc_pixel_width_or_height for
1692 :width, :height, :align-to, and :ascent, thus allowing these to
1693 be specified in pixels as well as multiples of characters.
1694 Don't produce stretch glyphs with zero width or height.
1695 (get_specified_cursor_type): Declare static.
1696 (get_window_cursor_type): Declare static. Add glyph arg to be
1697 able to know when cursor is on an image; always substitute
1698 hollow-box cursor for filled-box cursor on images, to avoid
1699 negative images and flicker when blinking the cursor.
1700 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
1701 (note_mode_line_or_margin_highlight): Use non-text cursor rather
1702 than vertical scroll-bar cursor in display margins.
1703 (note_mouse_highlight): Use non-text cursor rather than text
1704 cursor in fringes and over images in the text area.
1705 Use non-text cursor when mouse pointer is outside editable text,
1706 i.e. in the void after end-of-line or end-of-buffer; this was
1707 already done for W32, but is now standard for all systems --
1708 user can toggle show-text-cursor-in-void to get old behaviour.
1709 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
1710 Vdisplay_pixels_per_inch.
1711
00498bfc
AS
17122003-11-25 Andreas Schwab <schwab@suse.de>
1713
1714 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
1715 EMACS_INT to not lose bits.
1716 (Ffillarray): Don't set bits beyond the size of a bool vector.
1717
edaa824d
KS
17182003-11-25 Kim F. Storm <storm@cua.dk>
1719
1720 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
1721 define this defun on systems that cannot use stderr as lvalue.
1722
74d6f539
GM
17232003-11-24 Gerd Moellmann <gerd@gnu.org>
1724
1725 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
1726 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
1727 ld's default is incompatible with unexec.
1728
6a1ff3ba
KS
17292003-11-23 Kim F. Storm <storm@cua.dk>
1730
63dc7c6b
KS
1731 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
1732 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
1733 (Fforce_window_update): New defun.
1734 (syms_of_window): Defsubr it.
1735 (Fset_window_margins, Fset_window_fringes): Doc fix.
1736
6a1ff3ba
KS
1737 * print.c (Fredirect_debugging_output): New defun.
1738 (syms_of_print): Defsubr it.
1739
aef109b7
LT
17402003-11-22 Luc Teirlinck <teirllm@auburn.edu>
1741
1742 * fns.c (Fset_char_table_parent): Doc fix.
1743
6a1ff3ba 17442003-11-22 Kim F. Storm <storm@cua.dk>
63ccbe21
KS
1745
1746 * dispnew.c (buffer_posn_from_coords): Return actual row/column
1747 for glyph clicked on, rather than (unused) pixel positions.
1748 (mode_line_string, marginal_area_string): Change X and Y args to
1749 pointers for returning actual row/column for glyph clicked on.
1750 Simplify and optimize loops.
1751
aef109b7
LT
1752 * dispextern.h (mode_line_string, marginal_area_string):
1753 Update prototypes.
63ccbe21
KS
1754
1755 * keyboard.c (make_lispy_position): New function for generating
1756 mouse click positions from frame and pixel coordinates.
1757 Enhanced to return buffer position and actual row/column for
1758 events outside the text area using updated mode_line_string and
1759 marginal_area_string functions.
1760 Return left-fringe and right-fringe clicks as such, rather than
1761 clicks in text area.
1762 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
1763 pixel_to_glyph_coords, as we never use the results.
1764 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
1765 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
1766 Eliminate unused code in WHEEL_EVENT handling.
1767 (make_lispy_movement): Use make_lispy_position.
1768
1769 * window.c (coordinates_in_window): Remove redundant tests.
1770 Fix returned X pixel value for left-margin.
1771
1772 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
1773 mode_line_string and marginal_area_string parameters.
1774
a64387ee 17752003-11-22 Lars Hansen <larsh@math.ku.dk>
930a9995 1776
d7107586
SM
1777 * w32.c (struct the_group, getgrgid): Add.
1778 * mac.c (struct my_group, getgrgid): Add.
aef109b7 1779
3dbf3426
LT
17802003-11-21 Luc Teirlinck <teirllm@auburn.edu>
1781
1782 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
1783
cae8ddbb 17842003-11-21 Lars Hansen <larsh@math.ku.dk>
ded4064f 1785
d7107586
SM
1786 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
1787 include in call to file name handler. Optionally translate numeric
1788 UID and GID to strings. Update docstring.
1789 (directory_files_internal): Add parameter ID-FORMAT.
1790 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
1791 include in call to file name handler and call to
1792 directory_files_internal. Update Docstring.
1793 (Fdirectory_files): Add dummy parameter in call to
1794 directory_files_internal.
1795 * lisp.h (Qinteger): Add.
1796 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
1797 (Ffile_attributes): Add parameter.
1798 * data.c (Qinteger): Export.
cae8ddbb 1799
2550b848
LT
18002003-11-21 Luc Teirlinck <teirllm@auburn.edu>
1801
3dbf3426 1802 * fns.c (Freverse, Fnreverse): Doc fixes.
2550b848 1803
88380018
KS
18042003-11-19 Kim F. Storm <storm@cua.dk>
1805
1806 * xdisp.c (init_iterator): Initialize it->start to position
1807 before reseating (in case start position is invisible).
1808 (init_to_row_start): Set it->start to row-start.
1809 (redisplay_window): Accept optional_new_start if start position
1810 is invisible (in which case IT_CHARPOS overshoots PT).
1811 (display_line): Setup row->start from it->start (rather than
1812 it->current which is wrong if first char on line is invisible).
1813 When done, reseat it->start to it->current (= start of next row).
1814 (expose_area): Fix exposure of text area when first char (e.g. TAB)
1815 is only partially visible.
1816
1817 * dispextern.h (struct it): New member start.
1818
854c1a59
SM
18192003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
1820
455316e2
SM
1821 * alloc.c (make_float, Fcons): Clear the markbit at init time.
1822 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
1823 of block_index outside of the macro call.
1824 (Fgarbage_collect): Remove null code.
1825
1826 * m/amdx86-64.h: Don't redefine XPNTR.
1827
854c1a59
SM
1828 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
1829 of VALMASK.
1830
1831 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
1832 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
1833 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
1834
1835 * lisp.h (VALMASK): Only define for non-union type.
1836 (MARKBIT): Remove.
1837 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
1838 (XTYPE): Define unconditionally.
1839 (XSETTYPE): Remove one more remnant.
1840 (EQ): Define differently for the union and non-union cases.
1841 (INTMASK): New bit mask.
1842 (struct Lisp_Marker): Move down to prepare for upcoming patch.
1843 (GC_EQ): Delegate to EQ.
1844
1845 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
1846
a0c6ef2d
JD
18472003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1848
1849 * xterm.c (x_window_to_scroll_bar): Move check of display to
1850 where window_id is compared.
1851
859492c4
KS
18522003-11-17 Kim F. Storm <storm@cua.dk>
1853
1854 * dispextern.h (struct it): New member first_vpos.
1855
1856 * xdisp.c (start_display): Set it->first_vpos.
1857 (try_window_id): Use first_vpos to start display in first _text_
1858 line if no reusable lines at start of window with header line.
1859
810f2256
JD
18602003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1861
7c402969 1862 * w32fns.c (XPutPixel):
854c1a59
SM
1863 * w32bdf.c (w32_init_bdf_font):
1864 * sunfns.c (sel_read):
1865 * process.c (Fmake_network_process):
1866 * frame.c (store_frame_param):
1867 * fontset.c (Fset_fontset_font):
1868 * emacs.c (shut_down_emacs):
a64387ee 1869 * ccl.c (ccl_driver): Remove period at end of error message.
7c402969 1870
a32e9bfd
JD
1871 * config.in: Regenerate.
1872
810f2256
JD
1873 * xfns.c (x_window_to_frame, x_any_window_to_frame)
1874 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
1875 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
1876 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
1877 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
1878
1879 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
1880
1881 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
1882 (XTmouse_position, handle_one_xevent): Pass Display* to
1883 x_window_to_scroll_bar.
1884 (x_window_to_scroll_bar): Take a Display* argument.
1885 Check that display for frame is equal to Display* argument.
854c1a59 1886 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
810f2256
JD
1887 x_display_info_for_display instead. Use Display in xev instead
1888 of GDK_DISPLAY.
1889 (x_dispatch_event): Call x_display_info_for_display.
1890 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
1891 (x_connection_closed): Call xg_display_close for GTK.
1892 (x_term_init): Call xg_display_open for additional displays.
1893 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
1894 for GTK.
1895
1896 * xmenu.c (single_menu_item, mouse_position_for_popup)
1897 (x_activate_menubar): Formatting adjustments.
1898
1899 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
1900 adjustments.
1901
1902 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
1903 (xg_display_close, xg_create_default_cursor)
1904 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
1905 handling.
854c1a59
SM
1906 (xg_left_ptr_cursor): Remove.
1907 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
810f2256
JD
1908 cursor here.
1909 (xg_win_to_widget): Take Display* argument, call
1910 gdk_xid_table_lookup_for_display.
1911 (xg_create_frame_widgets, xg_get_file_name, create_menus)
1912 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
1913 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
1914 in FRAME_X_DISPLAY_INFO.
1915 (xg_get_scroll_id_for_window): Take Display* argument.
1916 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
854c1a59 1917 (xg_initialize): Remove xg_left_ptr_cursor.
810f2256
JD
1918
1919 * gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
1920 Display* argument also. Declare xg_display_open,
1921 xg_display_close, xg_create_default_cursor.
1922
0b03cc78
JD
19232003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1924
1925 * xterm.c (x_detect_focus_change): Do not change focus frame for
1926 Enter/LeaveNotify if the current focus frame has explicit focus.
1927
77e688fa
KS
19282003-11-14 Kim F. Storm <storm@cua.dk>
1929
1930 * dispnew.c (update_text_area): Fix redisplay error when hscroll
1931 is active and first glyph is only partially visible.
854c1a59 1932
dd429b03
KH
19332003-11-13 Kenichi Handa <handa@m17n.org>
1934
1935 * xdisp.c (select_frame_for_redisplay): New function.
1936 (redisplay_internal): Record also selected_frame for
1937 unwind_redisplay. Call select_frame_for_redisplay before
1938 redrawing each frame.
1939 (unwind_redisplay): Argument changed to a cons.
1940
6d9266f4
LT
19412003-11-12 Luc Teirlinck <teirllm@auburn.edu>
1942
1943 * fns.c (Fstring_to_multibyte): Doc fix.
1944
80060eb3
KH
19452003-11-11 Kenichi Handa <handa@m17n.org>
1946
1947 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
1948
74305183
JD
19492003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1950
1951 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
1952 program specified positions.
1953
cfda993e
JD
19542003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1955
1956 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
1957
df211069
KH
19582003-11-08 Kenichi Handa <handa@m17n.org>
1959
1960 * Makefile.in (lisp): Add kannada.el.
1961 (shortlisp): Likewise.
1962
4307d534
KH
19632003-11-07 Kenichi Handa <handa@m17n.org>
1964
854c1a59
SM
1965 * coding.c (coding_allocate_composition_data):
1966 Reset coding->composing to COMPOSITION_NO.
4307d534
KH
1967 (coding_restore_composition): Detect invalid composition data.
1968 Give Fstring and Fvector a Lispy integer, not C int.
1969
854c1a59
SM
19702003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
1971
1972 * floatfns.c (Flogb): Don't use VALMASK.
1973
1974 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
1975 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
1976
1977 * lisp.h (XINT): Move the cast to clarify what is going on.
1978 (GCTYPEMASK, XSETTYPE): Remove.
1979 (XGCTYPE): Make it an alias of XTYPE.
1980
d04103a1
JD
19812003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1982
1983 * xterm.c (x_term_init): Fix formatting.
1984
da18b5ac
JD
19852003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1986
1987 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
1988 and xg_did_tearoff.
1989
1990 * gtkutil.c: Remove variable xg_did_tearoff.
1991 (xg_have_tear_offs): New function.
1992 (tearoff_remove): Just decrease xg_detached_menus.
1993 (tearoff_activate): Increase xg_detached_menus and call
1994 tearoff_remove when tearoff is removed.
854c1a59 1995 (xg_keep_popup): Remove function.
da18b5ac
JD
1996 (create_menus): Give add_tearoff_p as argument to recursive
1997 call to create_menus.
1998 (xg_create_widget): Use variables instead of multiple
1999 strcmp. Tell create_menus to create tear off only for
2000 menu bar menus.
2001 (xg_update_menubar): Change title for a detached menu also.
2002 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
2003 of deep_p.
2004 (xg_initialize): Initialize xg_detached_menus, remove
2005 initialization of xg_did_tearoff.
2006
2007 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
2008 xg_have_tear_offs returns non-zero.
2009 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
2010 call to xg_keep_popup.
2011
64d4923e
AC
20122003-11-01 Andrew Choi <akochoi@shaw.ca>
2013
2014 * macterm.c (XTread_socket): Handle menubar selection and grow
2015 window only for mouseDown events.
854c1a59 2016
6cc8bc07
JD
20172003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2018
2019 * xterm.c (x_term_init): For GTK part, increase x_initialized
2020 to check for more than one display. Use error instead of return 0.
2021
043131c4
AC
20222003-10-31 Andrew Choi <akochoi@shaw.ca>
2023
854c1a59 2024 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
043131c4
AC
2025 (copy_dysymtab): Call it.
2026
bdda99a1
LT
20272003-10-31 Luc Teirlinck <teirllm@auburn.edu>
2028
2029 * eval.c (Fdefvaralias): Doc fix.
2030
800f42ff 20312003-10-26 Luc Teirlinck <teirllm@auburn.edu>
0d11571e
LT
2032
2033 * data.c (Fsetplist): Doc fix.
2034
ef35b389
LK
20352003-10-14 Lute Kamstra <lute@gnu.org>
2036
2037 * window.c (Fset_window_fringes): Clarify docstring.
07107abc 2038
ef35b389 20392003-10-14 Kim F. Storm <storm@cua.dk>
854c1a59 2040
07107abc
KS
2041 * window.c (Fset_window_margins): Simplify arg checking.
2042
f7005886
RS
20432003-10-13 Richard M. Stallman <rms@gnu.org>
2044
2045 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
2046 (print_partial_compiled_pattern): Replace assert with a printout.
2047 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
2048
2049 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
2050
2051 * window.c (Fset_window_margins): Allow only integers as args.
2052 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
2053 Doc fixes.
2054
9c0c2af5
LK
20552003-10-13 Lute Kamstra <lute@gnu.org>
2056
2057 * window.c (Fset_window_fringes): Elaborate docstring.
2058
3f080e4e
AC
20592003-10-12 Andrew Choi <akochoi@shaw.ca>
2060
854c1a59 2061 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
a4887377 2062
3f080e4e
AC
2063 * s/darwin.h (GC_MARK_STACK): Define.
2064
0aa513ed
JD
20652003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2066
2067 * window.c (shrink_windows): New function.
2068 (size_window): Call shrink_windows to calculate window sizes when
2069 shrinking frame with more than one window.
2070
6aa8858a
KS
20712003-10-12 Kim F. Storm <storm@cua.dk>
2072
2073 * xdisp.c (compute_fringe_widths): Doc fix.
2074
c2164d91
KH
20752003-10-08 Kenichi Handa <handa@m17n.org>
2076
854c1a59 2077 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
c2164d91 2078
f82ac129
KH
20792003-10-07 Kenichi Handa <handa@m17n.org>
2080
2081 * coding.c (Qcoding_system_define_form): New variable.
2082 (syms_of_coding): Intern and staticpro it.
2083 (Fcheck_coding_system): Try to autoload the definition of
2084 CODING-SYSTEM.
2085
9296c947
LT
20862003-10-05 Luc Teirlinck <teirllm@auburn.edu>
2087
2088 * fns.c (Frequire): Doc fix.
2089
c1f0671a
JD
20902003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2091
3d8c3826
JD
2092 * xfns.c (Fx_send_client_event): New function as a base for
2093 manipulating extended window manager hints.
6dc15d98 2094 (Fx_send_client_event): Remove unused variable s.
3d8c3826 2095
068ae0fd
JD
2096 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
2097 that function is removed.
2098
2099 * xterm.c (x_set_offset): Use move_offset_left/top instead of
2100 x/y_pixels_outer_diff.
2101 (x_check_expected_move): Calculate move_offset_left/top.
2102
2103 * xterm.h (struct x_output): New members: move_offset_top/left.
2104
854c1a59 2105 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
068ae0fd
JD
2106 call x_set_offset directly.
2107
2108 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
2109
96f09305
JD
2110 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
2111
2112 * xterm.c (x_delete_display): Free font names and font_encoder
2113 in dpyinfo->font_table.
2114
854c1a59
SM
2115 * xfns.c (Fx_close_connection): Only call XFreeFont here.
2116 Move xfree of font names to x_delete_display.
96f09305 2117
c1f0671a
JD
2118 * xterm.h (struct x_display_info): New member, wm_type.
2119 (struct x_output): New members, expected_top/left and
2120 check_expected_move.
2121
2122 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
2123 is received.
854c1a59
SM
2124 (handle_one_xevent): Rename x_check_expected_move from
2125 x_check_fullscreen_move.
c1f0671a
JD
2126 (x_set_offset): Only add WM decoration sizes to modified_top/left
2127 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
854c1a59 2128 (x_check_expected_move): Rename from x_check_fullscreen_move.
c1f0671a
JD
2129 Removed fullscreen specific code. Use check_expected_move,
2130 expected_left/top instead. Also, set wm_type.
2131 (x_term_init): Initialize wm_type to unknown.
2132
2133 * frame.c (x_fullscreen_move): Remove addition of WM decoration
2134 sizes to move_x/y.
2135
be2fdba9
KH
21362003-10-03 Kenichi Handa <handa@m17n.org>
2137
2138 * macterm.c (x_load_font): Clear all members of FONTP before start
2139 filling them.
2140
21412003-10-02 Kenichi Handa <handa@m17n.org>
2142
2143 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
2144 before calling find_ccl_program_func. Call find_ccl_program_func
2145 only when fontp->font_encoder is not NULL.
2146
2147 * xterm.c (x_load_font): Clear all members of FONTP before start
2148 filling them.
2149
26a6e439
JPW
21502003-10-03 John Paul Wallington <jpw@gnu.org>
2151
2152 * keymap.c (map_keymap): Don't abort when binding is a vector.
2153
0d4c2dc2
JR
21542003-10-02 Jason Rumney <jasonr@gnu.org>
2155
854c1a59
SM
2156 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
2157 Sync dependencies with Makefile.in.
a63cf46f
JR
2158 (alloca.o): Remove.
2159
0d4c2dc2
JR
2160 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
2161 filling them.
2162
2163 * w32bdf.c (w32_load_bdf_font): Likewise.
2164
ab8f7d5c
RS
21652003-09-30 Richard M. Stallman <rms@gnu.org>
2166
2167 * term.c (set_tty_color_mode): Calculate current_mode_spec
2168 regardless of value of VAL.
2169
854c1a59 2170 * intervals.c (graft_intervals_into_buffer):
ab8f7d5c
RS
2171 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
2172 Handle over_used when splitting UNDER.
2173
a64387ee 21742003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ab8f7d5c
RS
2175
2176 * regex.c (regex_compile): Free the stack when returning from function.
2177
3413f972
KH
21782003-09-28 Kenichi Handa <handa@m17n.org>
2179
2180 * fontset.c (Finternal_char_font): Change return value to
2181 cons (FONT-NAME . GLYPH-CODE).
2182
40409f05
EZ
21832003-09-28 Eli Zaretskii <eliz@elta.co.il>
2184
2185 * term.c (tty_setup_colors): Treat any negative argument as -1.
2186
f98ddc99
KH
21872003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
2188
2189 * process.c (send_process): Delete unused temp_buf.
2190
66c8f1a8
DL
21912003-09-26 Dave Love <fx@gnu.org>
2192
2193 * xterm.c (x_bitmap_mask): Declare.
2194
ca716c26
DL
21952003-09-25 Dave Love <fx@gnu.org>
2196
2197 * Makefile.in (fns.o): Depend on md5.h.
2198
fbe57420
KS
21992003-09-25 Kim F. Storm <storm@cua.dk>
2200
2201 * window.c (set_window_buffer): Fix redisplay problems when
2202 switching between buffers with different display margin widths.
2203
ef6ae4ff
KS
22042003-09-23 Kim F. Storm <storm@cua.dk>
2205
2206 * process.c (set_socket_option): Fix :bindtodevice option.
2207 (Fset_network_process_option): Update process contact list when
2208 setting option succeeds.
2209 (Fmake_network_process): Doc fix.
2210
68e03c1c
DL
22112003-09-23 Dave Love <fx@gnu.org>
2212
7146d1c1 2213 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
68e03c1c 2214
2f809aae
EZ
22152003-09-22 Eli Zaretskii <eliz@elta.co.il>
2216
2217 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
2218 color mode is an integer number (it could be -1).
2219
8fe7d8c8
RS
22202003-09-22 Richard M. Stallman <rms@gnu.org>
2221
2222 * intervals.c (graft_intervals_into_buffer): Correct the main loop
2223 in the case where OVER is longer than UNDER.
2224
2f71b5ea
MY
22252003-09-22 Masatake YAMATO <jet@gyve.org>
2226
7146d1c1 2227 * window.c (Fset_window_scroll_bars): Validate the value of
2f71b5ea 2228 `vertical_type'.
7146d1c1 2229
0c4da023
KS
22302003-09-21 Kim F. Storm <storm@cua.dk>
2231
2232 * frame.c (Vdefault_frame_scroll_bars): New variable.
2233 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
2234 (syms_of_frame): DEFVAR_LISP it, and initialize according to
2235 window-system default scroll bar position.
2236
b648413b
KS
2237 * window.c (Fwindow_scroll_bars): Doc fix.
2238
8f5b9e34
JD
22392003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2240
854c1a59 2241 * xterm.c (x_set_offset): Take window manager decorations into account.
8f5b9e34 2242
b0f23edf
RS
22432003-09-19 Richard M. Stallman <rms@gnu.org>
2244
2245 * atimer.h: Don't include lisp.h.
2246 (P_): Define it here (as well as elsewhere).
2247
2248 * print.c (Fprin1_to_string): Move the PRINTPREPARE
2249 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
2250
2251 * data.c (Fvariable_binding_locus): New function.
2252 (syms_of_data): defsubr it.
2253 (Flocal_variable_p): Delete duplicate call to indirect_variable.
2254
e1283999
DL
22552003-09-18 Dave Love <fx@gnu.org>
2256
ad5f3636
DL
2257 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
2258
e1283999
DL
2259 * process.c (Fnetwork_interface_info): Fix type error.
2260 (Fnetwork_interface_list): Doc fix.
2261 (read_process_output, read_process_output): Delete unused var.
2262
b8c7fd71
KS
22632003-09-17 Kim F. Storm <storm@cua.dk>
2264
2265 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
2266 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
2267 (Fnetwork_interface_info): Check that ifreq struct has required
2268 fields before accessing them; this requires that those fields are
2269 defined as macros, which may be too restrictive on some platforms,
2270 but it is better than failing on other platforms.
2271 (syms_of_process): Only defsubr above fns when included.
2272
11e0a411
DL
22732003-09-17 Dave Love <fx@gnu.org>
2274
2275 * unexalpha.c: Don't include varargs.h.
2276
e9c50801
KS
22772003-09-17 Kim F. Storm <storm@cua.dk>
2278
2279 * process.c (Fset_process_sentinel): Add sentinel to childp plist
2280 for network process.
2281 (socket_options): Add `:' prefix to option names. Add optbit field.
2282 (set_socket_option): Remove no_error arg and special handling of s < 0.
2283 Return 1<<optbit for known option, 0 for unknown.
2284 Do not interpret 0 as false for boolean option (only nil).
2285 Pass failed option and value to report_file_error.
7146d1c1 2286 (Fset_network_process_options): Replace by Fset_network_process_option.
e9c50801
KS
2287 (Fset_network_process_option): New function to set just one option.
2288 (Fmake_network_process): Allow :coding arg to be a cons.
2289 Allow :server arg to be an integer specifying backlog size.
2290 Remove :options arg, and allow options to be specified directly
2291 as :KEY, VALUE pairs. Parse these options before binding socket.
2292 As before, :reuseaddr t is default for a server process, but this
2293 can now be disabled by specifying :reuseaddr nil.
2294 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
2295 (init_process): Availability of network options is now checked with
2296 simpler syntax (featurep 'make-network-process :OPTION); use loop to
2297 setup features.
2298 (syms_of_process): Fix defsubr's for the replaced functions.
2299
a0fc3644
DL
23002003-09-16 Dave Love <fx@gnu.org>
2301
2302 * Makefile.in: Depend on coding.h.
2303
6df2a645
KS
23042003-09-14 Kim F. Storm <storm@cua.dk>
2305
2306 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
2307 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
2308 (syms_of_process): Defsubr them.
2309
2310 * config.in: Regenerate.
7146d1c1
SM
2311
23122003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
2313
2314 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
2315 * m/news-r6.h (XUNMARK): Remove.
2316 * m/mips.h (XUNMARK): Remove.
2317 * m/mips-siemens.h (XUNMARK): Remove.
2318 * m/iris4d.h (XUNMARK): Remove.
2319 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
2320
0930c1a1
SM
23212003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
2322
31003b9e
SM
2323 * lisp.h (VALBITS): Don't remove 1 for the markbit.
2324 (union Lisp_Object): Use unsigned int for types. Remove markbit.
2325 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
2326 (XTYPE): Use unsigned right-shift.
2327 (XMARKBIT, XMARK, XUNMARK): Remove.
2328
0930c1a1
SM
2329 * alloc.c (init_intervals, init_symbol, init_marker):
2330 Don't preallocate anything.
2331 (Fgarbage_collect, mark_object): Ignore the markbit.
2332
2333 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
2334
19bb0fcd 23352003-09-08 Lute Kamstra <lute@gnu.org>
5df034de
LK
2336
2337 * xdisp.c (pint2hrstr): New function.
2338 (decode_mode_spec): Add `%i' and `%I' specs.
2339 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
2340 for `mode-line-format'.
2341
03bb6a06
AS
23422003-09-07 Andreas Schwab <schwab@suse.de>
2343
2344 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
2345 avoid warning.
2346
2063d89c
EZ
23472003-09-07 Eli Zaretskii <eliz@elta.co.il>
2348
0930c1a1 2349 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
2063d89c 2350
ed159bbf
KS
23512003-09-03 Kim F. Storm <storm@cua.dk>
2352
2353 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
2354 change (superseded by 2002-08-30 change); the default blink-off
2355 cursor is now again "no cursor".
2356
fe64a394
JR
23572003-09-01 Jason Rumney <jasonr@gnu.org>
2358
2359 * makefile.w32-in (alloca.o): Remove.
2360 (coding.o): Depend on intervals.h
2361 (emacs.o, bytecode.o): Depend on window.h
2362
c0175e24
DL
23632003-09-01 Dave Love <fx@gnu.org>
2364
2365 * Makefile.in (alloca.o): Remove commands.
2366 (coding.o): Depend on intervals.h composite.h window.h.
2367 (emacs.o): Depend on window.h keyboard.h keymap.h.
2368 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
2369 (bytecode.o): Depend on window.h.
2370
a24d4cb2
JR
23712003-08-31 Jason Rumney <jasonr@gnu.org>
2372
4bc2315e
JR
2373 * w32term.c (w32_per_char_metric): Allow cached metrics to be
2374 returned even when font_type is unknown.
2375
a24d4cb2
JR
2376 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
2377
9d35adc7
JD
23782003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2379
2380 * xterm.c (x_term_init): Initialize new fields in x_display_info.
2381
2382 * xterm.h (struct x_display_info): Add red/green/blue_bits and
2383 *_offset.
2384
2385 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
2386 calculate pixel value.
2387
6f68b035
GM
23882003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
2389
0930c1a1
SM
2390 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
2391 Don't tell redisplay display is accurate when it's actually been
2392 paused for pending input.
6f68b035 2393
4828b4d7
RS
23942003-08-29 Richard M. Stallman <rms@gnu.org>
2395
2396 * dispnew.c (adjust_glyph_matrix): Call window_box
2397 whenever W is nonzero.
2398
2399 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
2400 (Fkill_local_variable, Fmake_variable_frame_local)
0930c1a1 2401 (Flocal_variable_p, Flocal_variable_if_set_p):
4828b4d7
RS
2402 Use indirect_variable to trace thru variable aliases.
2403
2404 * config.in: Updated.
2405
2406 * callint.c (Fcall_interactively): Save and restore
2407 Vthis_command, Vthis_original_command, real_this_command,
2408 and current_kboard->Vlast_command.
2409
2410 * abbrev.c (Fexpand_abbrev): Insert before deleting.
2411
e019878d
GM
24122003-08-29 Gerd Moellmann <gerd@gnu.org>
2413
2414 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
2415
85478bc6
KH
24162003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
2417
0930c1a1 2418 * coding.c (decode_coding_iso2022): Initialize local variable c2.
85478bc6
KH
2419 (decode_coding_sjis_big5): Likewise.
2420
07ce82d3
JR
24212003-08-27 Jason Rumney <jasonr@gnu.org>
2422
d3703de3
JR
2423 * w32.c (sys_pipe): Protect against file descriptor overflow.
2424
ee4a01d1
JR
2425 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
2426
07ce82d3
JR
2427 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
2428
a64387ee 24292003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
72d19c66
LK
2430
2431 * xfns.c (Vgtk_version_string): New variable.
2432 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
2433
5459e42a
EZ
24342003-08-24 Eli Zaretskii <eliz@elta.co.il>
2435
0930c1a1 2436 * term.c (term_init): Remove `const' from buffer_size's declaration.
3d8714e7 2437
5459e42a
EZ
2438 * Makefile.in (msdos.o): Depend on intervals.h.
2439
0930c1a1 2440 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
5459e42a 2441
231d6cfb
JD
24422003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2443
2444 * xterm.h (struct x_display_info): New fields: client_leader_window
2445 and Xatom_wm_client_leader.
2446
2447 * xterm.c (x_initialize): Move call to x_session_initialize to ...
2448 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
2449
2450 * xsmfns.c (create_client_leader_window): New function.
2451 (x_session_initialize): Call create_client_leader_window, take
2452 dpyinfo as argument.
2453
2454 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
2455
2456 * Makefile.in (xsmfns.o): Add more depenedencies.
2457
afa88464
DL
24582003-08-21 Dave Love <fx@gnu.org>
2459
2460 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
2461
f730033e
KH
24622003-08-21 Kenichi Handa <handa@m17n.org>
2463
2464 * term.c (term_init): Fix previous change; don't rely on the
2465 length of `buffer' if TERMINFO is defined.
2466
6dca786c
DL
24672003-08-20 Dave Love <fx@gnu.org>
2468
2469 * atimer.h: Include lisp.h.
2470
2471 * lisp.h (EMACS_LISP_H): New.
2472 (popup_activated_flag): Don't declare.
2473
2474 * alloca.c: Some merging with gnulib. Change logic and doc
2475 concerning (x)malloc/(x)free -- no longer Emacs-specific.
2476 [DO_BLOCK_INPUT]: Don't include lisp.h.
2477 (xmalloc, xfree): Declare.
2478 (malloc): Don't declare.
2479
0930c1a1 2480 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
6dca786c
DL
2481 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
2482 atimer.h, blockinput.h.
2483
2484 * alloc.c (lisp_align_malloc): Change type of `aligned'.
2485
2486 * alloca.s: Removed.
2487
3a06a6d9
RS
24882003-08-19 Gerd Moellmann <gerd@gnu.org>
2489
2490 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
2491 use -lncurses.
2492
2493 * term.c (term_init): Use a buffer of size 4096 for tgetent since
2494 FreeBSD returns something longer than 2044. Abort if the end of
2495 the buffer is overwritten.
2496
27eeee55
MB
24972003-08-19 Miles Bader <miles@gnu.org>
2498
2499 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
2500
2f297815
GM
25012003-08-19 Gerd Moellmann <gerd@gnu.org>
2502
f4446bbf
GM
2503 * alloc.c (lisp_align_malloc): Check for memory full when
2504 allocating ablocks, which also avoids freeing a pointer into an
2505 ablocks structure.
2506
2507 * puresize.h (BASE_PURESIZE): Increase to 1100000.
2508
0930c1a1 2509 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
2f297815 2510
0e7d7aae
RS
25112003-08-16 Richard M. Stallman <rms@gnu.org>
2512
2513 * editfns.c (Fencode_time): Doc fix.
2514
25152003-08-16 David Ponce <david@dponce.com>
2516
2517 * fileio.c (Fwrite_region): Fix conditional expression to issue
2518 the right message.
2519
25202003-08-16 Juri Linkov <juri@jurta.org> (tiny change)
2521
2522 * syntax.c (Fforward_word): Argument changed to optional.
0930c1a1 2523 Set default value to 1.
0e7d7aae 2524
5d551295
KH
25252003-08-15 Kenichi Handa <handa@m17n.org>
2526
2527 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
2528 what autoscaled.
2529 (best_matching_font): Once we find a better scalable font, set
2530 non_scalable_has_exact_height_p to 1.
2531 (try_font_list): Call try_alternative_families to try any family
2532 with the given registry.
2533
1661e56b
AS
25342003-08-09 Andreas Schwab <schwab@suse.de>
2535
f29181dc
AS
2536 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
2537
1661e56b
AS
2538 * print.c (print_string): Fix printing of multibyte string with
2539 nontrivial printcharfun.
2540
465aa50a
JD
25412003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2542
2543 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
2544
2545 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
2546
e430e5ba
KH
25472003-07-31 Kenichi Handa <handa@m17n.org>
2548
2549 * process.c (read_process_output): Return the actually read bytes
2550 instead of the result of decoding.
2551
97e7188e
KH
25522003-07-31 Kenichi Handa <handa@m17n.org>
2553
2554 * xterm.h (struct x_bitmap_record): New member have_mask.
2555
2556 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
2557 to 0.
2558 (x_create_bitmap_from_file): Likewise.
2559 (x_destroy_bitmap): Check have_mask member before freeing a mask.
2560 (x_destroy_all_bitmaps): Likewise.
2561 (x_create_bitmap_mask): Set have_mask member to 1.
2562
b53094d6
RS
25632003-07-30 Richard M. Stallman <rms@gnu.org>
2564
2565 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
2566
631f2082
JD
25672003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2568
2569 * gtkutil.c (xg_mark_data): Update calls to mark_object.
2570
c855f2ca
RS
25712003-07-29 Richard M. Stallman <rms@gnu.org>
2572
2573 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
2574 Conditionalize XIM code on HAVE_XIM.
2575
2576 * fns.c (Fclear_string): New function.
2577 (syms_of_fns): defsubr it.
2578
17e6d491
KH
25792003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
2580
0930c1a1 2581 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
17e6d491 2582
29ea8ae9
SM
25832003-07-22 Stefan Monnier <monnier@cs.yale.edu>
2584
2585 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
2586
2587 * buffer.c (delete_all_overlays): New function.
2588 * buffer.h (delete_all_overlays): Declare.
2589 * coding.c (run_pre_post_conversion_on_str):
2590 * print.c (temp_output_buffer_setup):
2591 * fileio.c (Finsert_file_contents):
2592 * minibuf.c (get_minibuffer): Use it.
2593
1dd7ccf2
AC
25942003-07-22 Andrew Choi <akochoi@shaw.ca>
2595
2596 * unexmacosx.c (unexec_regions_sort_compare):
2597 (unexec_regions_merge): New functions. Sort and merge unexec
2598 regions before dumping them.
2599
f57bd967
DL
26002003-07-22 Dave Love <fx@gnu.org>
2601
2602 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
2603
7cdee936
SM
26042003-07-21 Stefan Monnier <monnier@cs.yale.edu>
2605
2606 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
2607 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
2608 MARKBIT as the gcmarkbit for strings.
2609
e50886d3
RS
26102003-07-21 Richard M. Stallman <rms@gnu.org>
2611
2612 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
2613
29ea8ae9 2614 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
e50886d3
RS
2615 (syms_of_fns): Corresponding change.
2616
2617 * alloc.c (syms_of_alloc): Doc fixes.
2618
26192003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
2620
2621 * s/netbsd.h: Use -Wl syntax.
2622
fdc39b59
RS
26232003-07-17 Richard M. Stallman <rms@gnu.org>
2624
2625 * xterm.c (xim_initialize): Redo 6/24 change.
2626
9c53385f
SM
26272003-07-15 Stefan Monnier <monnier@cs.yale.edu>
2628
2629 * buffer.c (copy_overlays): Use EMACS_INT for positions.
2630 (Fswitch_to_buffer): Don't signal an error when switching to the same
2631 buffer in a dedicated window.
2632
2633 * alloc.c: Use bitmaps for cons, as was done for floats.
2634 (init_float, init_cons): Let the normal code allocate the first block.
2635 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
2636 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
2637 New macros.
2638 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
2639 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
2640 (live_cons_p): Check the pointer is not past the `conses' array.
2641 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
2642 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
2643 (survives_gc_p): Use CONS_MARKED_P and simplify.
2644 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
2645
dde13196
PE
26462003-07-13 Paul Eggert <eggert@twinsun.com>
2647
2648 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
2649 puts it into BSS instead, at least on Solaris 8 and 9.
2650 This is a valid optimization, and it may occur on other platforms,
2651 so Emacs should not assume that initializing a static variable to
2652 zero puts it into data.
2653 * alloc.c (pure, staticvec):
2654 Initialize these arrays to nonzero, so that they're not
2655 put into BSS by that optimization.
2656
a801bc34
SM
26572003-07-13 Stefan Monnier <monnier@cs.yale.edu>
2658
2659 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
2660 (lisp_align_malloc): Use posix_memalign is available.
2661 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
2662 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
2663 for consistency. Update users.
2664
0c8b2afa
RS
26652003-07-13 Richard M. Stallman <rms@gnu.org>
2666
2667 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
2668
668c2ab0
JB
26692003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
2670
2671 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
2672 and use the Gtk+ function gtk_window_icon_from_file if available.
2673
2674 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
2675 handle mask of bitmaps.
2676 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
2677 mask property.
2678 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
2679
2680 * xterm.h (xg_set_icon): New function.
2681
800bebe3
RS
26822003-07-12 Paul Eggert <eggert@twinsun.com>
2683
2684 * unexelf.c (unexec): Consider a section to precede the .bss
2685 section if its addresses overlap that of .bss.
2686
69e38995
RS
26872003-07-12 Richard M. Stallman <rms@gnu.org>
2688
2689 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
2690
2691 * config.in (HAVE_CRTIN): Add #undef.
2692 (INLINE): Really inline only if OPTIMIZE is defined.
2693
2694 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
2695 END_FILES_1.
2696 (START_FILES_1, END_FILES_1): New macros (conditional).
a801bc34 2697 (LD_SWITCH_SYSTEM_TEMACS): Define.
69e38995
RS
2698
2699 * s/openbsd.h: Don't include bsd4-3.h.
a801bc34
SM
2700 (TERMINFO): Define.
2701 (LIBS_TERMCAP): Define.
2702 (LD_SWITCH_SYSTEM): Define (two definitions).
69e38995
RS
2703
2704 * xfns.c: Include libpng/png.h instead of png.h.
2705
f1d0c238
AS
27062003-07-11 Andreas Schwab <schwab@suse.de>
2707
2708 * buffer.c (modify_overlay): Update prototype.
2709 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
2710 Likewise.
2711
5f6bf5fe
SM
27122003-07-09 Stefan Monnier <monnier@cs.yale.edu>
2713
2714 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
2715 (struct interval): Move to intervals.h.
2716 (struct Lisp_Marker): Use EMACS_INT for position info.
2717 (forward_point): Remove prototype of defunct function.
2718 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
2719 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
2720 (syms_of_textprop, set_text_properties): Remove prototypes that are
2721 already in intervals.h.
2722
2723 * intervals.h (struct interval): Move from lisp.h.
2724 Use EMACS_INT for position and size info.
2725
2726 * coding.c: Include intervals.h for Fset_text_properties.
2727
2728 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
2729 position and length information.
2730
2765b457
SM
27312003-07-09 Stefan Monnier <monnier@cs.yale.edu>
2732
2733 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
2734 position and length information.
2735
2410d73a
SM
27362003-07-09 Stefan Monnier <monnier@cs.yale.edu>
2737
2738 Change overlays_after and overlays_before so the overlays themselves
2739 are linked into lists, rather than using cons cells. After all each
2740 Lisp_Misc already occupies 5 words, so we can add a `next' field to
2741 Lisp_Overlay for free and save up one cons cell per overlay (not
2742 to mention one indirection when traversing the list of overlay).
2743
2744 * lisp.h (struct Lisp_Overlay): New field `next'.
2745
2746 * buffer.h (struct buffer): Change overlays_before and overlays_after
2747 from Lisp lists of overlays to pointers to overlays.
2748
2749 * buffer.c (overlay_strings, recenter_overlay_lists):
2750 Fix typo in eassert in last commit.
2751 (unchain_overlay): New function.
2752 (add_overlay_mod_hooklist): Use AREF.
2753 (copy_overlays, reset_buffer, overlays_at, overlays_in)
2754 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
2755 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
2756 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
2757 (report_overlay_modification, evaporate_overlays, init_buffer_once):
2758 Adjust to new type of overlays_(before|after).
2759
2760 * alloc.c (mark_object): Mark the new `next' field of overlays.
2761 (mark_buffer): Manually mark the overlays_(after|before) fields.
2762
2763 * coding.c (run_pre_post_conversion_on_str):
2764 * editfns.c (overlays_around):
2765 * xdisp.c (load_overlay_strings):
2766 * fileio.c (Finsert_file_contents):
2767 * indent.c (current_column):
2768 * insdel.c (signal_before_change, signal_after_change):
2769 * intervals.c (set_point_both):
2770 * print.c (temp_output_buffer_setup): Use new type for
2771 overlays_(before|after).
2772
04812929
SM
27732003-07-08 Stefan Monnier <monnier@cs.yale.edu>
2774
2775 * buffer.c (report_overlay_modification): Don't run hooks while
2776 traversing the list of overlays.
2777
2778 * buffer.h (struct buffer): Use an int for overlay_center.
2779 (overlays_at, evaporate_overlays, recenter_overlay_lists)
2780 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
2781
2782 * buffer.c (reset_buffer, recenter_overlay_lists)
2783 (adjust_overlays_for_insert, adjust_overlays_for_delete)
2784 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
2785 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
2786 (overlays_at, evaporate_overlays, recenter_overlay_lists)
2787 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
2788
2789 * xdisp.c (fast_find_position): Remove unused var.
2790
2791 * cmds.c (Qexpand_abbrev): New sym.
2792 (syms_of_cmds): Initialize it.
2793 (internal_self_insert): Use it to call expand-abbrev.
2794
2e7ecf15
KS
27952003-07-09 Kim F. Storm <storm@cua.dk>
2796
2797 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if emacs
2798 was configured with --without-xim.
42f81f64 2799 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
2e7ecf15 2800
c6de56a0
RS
28012003-07-07 Richard M. Stallman <rms@gnu.org>
2802
2803 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
2804
2805 * alloc.c (Fgarbage_collect): Doc fix.
2806
b93fb365
KH
28072003-07-07 Nozomu Ando <nand@mac.com> (tiny change)
2808
2809 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
2810
bfe1a3f7
SM
28112003-07-06 Stefan Monnier <monnier@cs.yale.edu>
2812
04812929
SM
2813 * minibuf.c (read_minibuf): UNGCPRO before returning.
2814 (Ftry_completion, Fall_completions): Doc fix.
2815
bfe1a3f7
SM
2816 * alloc.c (live_float_p): Check that p is not past the `floats' array,
2817 now that `floats' is not the last element of the struct any more.
2818
ee79d1aa
JR
28192003-07-06 Jason Rumney <jasonr@gnu.org>
2820
2821 * w32term.h (ClipboardSequence_Proc): New type.
2822
2823 * w32fns.c (clipboard_sequence_fn): New variable.
2824 (globals_of_w32fns): Initialize it.
2825
2826 * w32select.c (last_clipboard_sequence_number): New variable.
2827 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
2828 number if possible.
2829
49723c04
SM
28302003-07-06 Stefan Monnier <monnier@cs.yale.edu>
2831
4698665f
SM
2832 * m/amdx86-64.h (MARKBIT):
2833 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
2834 MARKBIT and ARRAY_MARK_FLAG any more.
2835
2836 * m/hp800.h (XSETMARKBIT):
2837 * m/sr2k.h (XSETMARKBIT):
2838 * lisp.h (XSETMARKBIT): Remove unused macro.
2839
49723c04
SM
2840 * lisp.h (mark_object): Change prototype.
2841
2842 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
2843 (last_marked): Change accordingly.
2844 (mark_interval, mark_maybe_object, mark_maybe_pointer)
2845 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
2846 (mark_buffer): Update calls to mark_object.
2847
2848 * bytecode.c (mark_byte_stack):
2849 * fns.c (sweep_weak_table):
2850 * keyboard.c (mark_kboards): Update calls to mark_object.
2851
1d660eca
JR
28522003-07-06 Jason Rumney <jasonr@gnu.org>
2853
2854 * alloc.c (struct ablock): Only include padding when there is some.
2855
618b5ae4
SM
28562003-07-04 Stefan Monnier <monnier@cs.yale.edu>
2857
2858 * alloc.c (ALIGN): Add casts to simplify usage.
2859 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
2860 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
2861 (struct ablock, struct ablocks): New types.
2862 (free_ablock): New global var.
2863 (lisp_align_malloc, lisp_align_free): New functions.
2864 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
2865 (struct float_block): Reorder and add gcmarkbits.
2866 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
2867 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
2868 (init_float, make_float): Use lisp_align_malloc.
2869 (free_float, live_float_p): Don't use `type' any more.
2870 (make_float): Use FLOAT_UNMARK to access to mark bit.
2871 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
2872 Use FLOAT_MARKED_P to access the mark bit.
2873 (pure_alloc): Simplify use of ALIGN.
2874 (mark_object): Use FLOAT_MARK to access the mark bit.
2875 (gc_sweep): Use new macros to access the float's mark bit.
2876 (init_alloc_once): Init free_ablock.
2877
2878 * lisp.h (struct Lisp_Float): Remove unused field `type'.
2879
3ef06d12
SM
28802003-06-27 Stefan Monnier <monnier@cs.yale.edu>
2881
2882 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
2883 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
2884 (allocate_buffer): Move.
2885 (string_bytes): Don't mask markbit of `size_byte'.
2886 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
2887 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
2888 Use the `size' field of buffers (rather than the `name' field) for
2889 the mark bit, as is done for all other vectorlike objects.
2890 Use the new macros to access the mark bit of vectorlike objects.
2891
e81043aa
RS
28922003-06-26 Richard M. Stallman <rms@gnu.org>
2893
2894 * puresize.h (BASE_PURESIZE): Increment base size.
2895
2896 * xdisp.c (fast_find_position): Enable Gerd's new definition.
2897
2898 * xterm.c (xim_initialize): Undo previous change.
2899
2d0834cc
SM
29002003-06-26 Stefan Monnier <monnier@cs.yale.edu>
2901
2902 * alloc.c (survives_gc_p): Simplify.
2903
2904 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
2905
2906 * window.c (Fset_window_dedicated_p): Simplify.
2907 (display_buffer_1): Don't raise the win from which minibuf was entered.
2908 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
2909 (Fminibuffer_selected_window): Simplify.
2910
2911 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
2912
2913 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
2914 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
2915
2916 * insdel.c (check_markers, adjust_markers_for_delete)
2917 (adjust_markers_for_insert, adjust_markers_for_replace)
2918 (prepare_to_modify_buffer, RESTORE_VALUE):
2919 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
2920 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
2921 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
2922 * alloc.c (Fmake_marker, free_marker, gc_sweep):
2923 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
2924 * editfns.c (save_excursion_restore, transpose_markers):
2925 * window.c (delete_window):
2926 * xdisp.c (message_dolog): Update for new types.
2927
d54ae3d8
JD
29282003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2929
a5f696ac
JD
2930 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
2931 (realize_default_face): Use default_face_done_p for the force_p
2d0834cc 2932 argument to set_lface_from_font_name. Set default_face_done_p to one.
a5f696ac
JD
2933
2934 * frame.c (make_frame): Initialize default_face_done_p.
2935
2936 * frame.h (struct frame): Add default_face_done_p.
2937
d54ae3d8
JD
2938 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
2939 will be defined.
2940
2336fe58
SM
29412003-06-25 Stefan Monnier <monnier@cs.yale.edu>
2942
2943 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
2944 Initialize the new field `gcmarkbit'.
2945 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
2946 (mark_interval_tree): Don't mark the tree separately from the nodes.
2947 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
2948 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
2949 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
2950
2951 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
2952 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
2953 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
2954 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
2955 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
2956
bcea31c2
DL
29572003-06-24 Dave Love <fx@gnu.org>
2958
2959 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
2960
2961 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
2962 from gnulib.
2963
2601f59e
RS
29642003-06-21 Richard M. Stallman <rms@gnu.org>
2965
2966 * fileio.c (Fwrite_region): Alternate messages
2967 for append and partial write.
2968
2969 * keyboard.c (read_key_sequence): When converting upcase fn key to
2970 downcase, update fkey and keytran so `backspace' gets translated.
2971
2972 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
2973
2974 * process.c (wait_reading_process_input): Don't signal SIGIO
2975 in batch mode.
2976
b5d2c621
KH
29772003-06-17 Kenichi Handa <handa@m17n.org>
2978
2979 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
2980 composite.h.
2981
2982 * xselect.c: Don't include charset.h, coding.h, composite.h.
2983 (Qforeign_selection): New variable.
2984 (syms_of_xselect): Intern and static it.
2985 (selection_data_to_lisp_data): Return a unibyte string made from
2986 data with `foreign-selection' text property.
2987
6793bc63
SM
29882003-06-15 Stefan Monnier <monnier@cs.yale.edu>
2989
2990 * termhooks.h (EVENT_INIT): New macro.
2991
2992 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
2993
2994 * alloc.c (mark_kboards): Move to keyboard.c.
2995
2996 * keyboard.c (record_asynch_buffer_change, read_avail_input):
2997 * xterm.c (x_dispatch_event):
2998 * xmenu.c (find_and_call_menu_selection):
2999 * xdisp.c (handle_tool_bar_click):
3000 * w32menu.c (menubar_selection_callback):
3001 * sysdep.c (kbd_input_ast, read_input_waiting):
3002 * msdos.c (dos_rawgetc):
3003 * macterm.c (mac_check_for_quit_char):
3004 * macmenu.c (menubar_selection_callback):
3005 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
3006 data to kbd_buffer_store_event.
3007
b3ea810c
KS
30082003-06-15 Kim F. Storm <storm@cua.dk>
3009
3010 * xdisp.c (x_fix_overlapping_area): Always use area relative X
6793bc63 3011 to fix redisplay problem with tall characters (such as \e,AC\e(B).
b3ea810c 3012
b8f75eda
KG
30132003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
3014
3015 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
3016
ba92ce48
KH
30172003-06-12 Kenichi Handa <handa@m17n.org>
3018
3019 * fileio.c (Fwrite_region): Save and restore restriction.
3020
b80263be
DL
30212003-06-12 Dave Love <fx@gnu.org>
3022
3023 * alloca.c (alloca): Declare arg as size_t.
3024
6793bc63
SM
3025 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
3026 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
b80263be 3027
b23c0a83
DL
30282003-06-11 Dave Love <fx@gnu.org>
3029
3030 * search.c (shrink_regexp_cache): Use xrealloc.
3031 (syms_of_search): Use xmalloc.
3032
700e47c2
KS
30332003-06-10 Kim F. Storm <storm@cua.dk>
3034
3035 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
3036 Adjust phys_cursor.x to be relative to window box, rather than
3037 text area before checking -- to ensure cursor is redrawn when
3038 exposing window.
3039 Note: This also fixes a similar (older) bug if display margins
3040 are present.
3041
f11aa0b2
KH
30422003-06-06 Kenichi Handa <handa@m17n.org>
3043
3044 * coding.c (encoding_buffer_size): If coding->type is
3045 coding_type_ccl, double magnification on CRLF encoding.
3046
3d143690
JR
30472003-06-06 Jason Rumney <jasonr@gnu.org>
3048
3049 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
3050 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
3051
3052 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
3053 Mac too.
3054
f16205ca
DL
30552003-06-05 Dave Love <fx@gnu.org>
3056
b23c0a83
DL
3057 * strftime.c: Merge changes from gnulib.
3058
f16205ca
DL
3059 * mktime.c (__mktime_internal): Merge changes from gnulib
3060 involving year 69 and dst2.
3061
3062 Changes to merge with gnulib version and be consistent with the
3063 autoconf test:
3064
6793bc63
SM
3065 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
3066 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
f16205ca
DL
3067 [HAVE_LOCALE_H]: Include locale.h.
3068 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
3069
9b87a0bc
KS
30702003-06-05 Kim F. Storm <storm@cua.dk>
3071
3072 * window.c (coordinates_in_window): Convert X and Y to window
3073 relative coordinates inside mode-line and header-line parts.
3074 Convert X and Y to margin area relative coordinates inside left
3075 and right display margin parts.
3076
5a8a15ec
JR
30772003-06-05 Jason Rumney <jasonr@gnu.org>
3078
3079 * w32fns.c (add_system_logical_colors_to_map): New function.
3080 (Fx_open_connection): Use it.
3081
01ed8ff1
SM
30822003-06-04 Stefan Monnier <monnier@cs.yale.edu>
3083
3084 * process.c (allocate_pty): Revert part of the previous patch.
3085 (Faccept_process_output): Simplify.
3086
b427b65d
JR
30872003-06-04 Jason Rumney <jasonr@gnu.org>
3088
3089 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
3090
3091 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
3092 (lispy_mouse_wheel_names): Remove.
3093 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
3094 Always define drag_and_drop_syms.
3095
3096 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
3097 WHEEL_EVENT events.
3098
914a8c47
SM
30992003-06-03 Stefan Monnier <monnier@cs.yale.edu>
3100
01ed8ff1
SM
3101 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
3102
914a8c47
SM
3103 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
3104
adcb132c
JD
31052003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3106
3107 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
3108 menu item label.
3109
be781fa7
RS
31102003-06-03 Richard M. Stallman <rms@gnu.org>
3111
3112 * window.c (Fwindow_edges): Doc fix.
3113 (Fwindow_pixel_edges, Fwindow_inside_edges)
3114 (Fwindow_inside_pixel_edges): New functions.
3115 (syms_of_window): defsubr them.
3116
3117 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
3118 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
3119
914a8c47
SM
31202003-06-02 Stefan Monnier <monnier@cs.yale.edu>
3121
3122 * dispnew.c (Fsit_for): Don't lie about the number of args.
3123
5b07197a
DL
31242003-06-02 Dave Love <fx@gnu.org>
3125
3126 * callproc.c: Use HAVE_FCNTL_H, not USG5.
3127 (syms_of_callproc) <process-environment>: Doc fix.
3128
3129 * doc.c: Use HAVE_FCNTL_H, not USG5.
3130
3131 * xfaces.c (font_rescale_ratio): Fix for K&R.
3132
3133 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
3134
3135 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
3136
3137 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
3138
3139 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
3140 (xg_create_frame_widgets): Use ENCODE_UTF_8.
3141
d7107586 3142 * xterm.c (Qutf_8): Move to coding.c
5b07197a
DL
3143
3144 * xmenu.c (ENCODE_MENU_STRING): New.
3145 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
3146 Use it.
3147
3148 * coding.h (ENCODE_UTF_8): New.
3149 (Qutf_8): Declare.
3150
3151 * coding.c (Qutf_8): New.
3152 (syms_of_coding): Intern it.
3153
3154 * fns.c: Doc fixes.
3155
7335b336
KH
31562003-06-02 Kenichi Handa <handa@m17n.org>
3157
3158 * buffer.c (Fset_buffer_multibyte): Fix previous change.
3159
914a8c47
SM
31602003-06-01 Stefan Monnier <monnier@cs.yale.edu>
3161
3162 * lread.c (openp): Make sure STR is a string.
3163
9862c135
JR
31642003-06-01 David Ponce <david@dponce.com>
3165
3166 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
3167 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
3168
3169 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
3170 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
3171 (discard_mouse_events): Discard WHEEL_EVENT events too.
3172 (lispy_wheel_names, wheel_syms): New.
3173 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
3174 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
3175 defined.
914a8c47 3176 (make_lispy_event): Add WHEEL_EVENT handler.
9862c135
JR
3177
3178 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
3179 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
3180 WHEEL_EVENT events.
3181
f984e73e
JPW
31822003-05-31 John Paul Wallington <jpw@gnu.org>
3183
3184 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
3185 timer are in lisp/emacs-lisp.
3186
1efcd78f
KH
31872003-05-31 Kenichi Handa <handa@m17n.org>
3188
458c8af4
KH
3189 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
3190 region when a buffer is changed to unibyte.
3191
1efcd78f
KH
3192 * charset.h (VALID_LEADING_CODE_P): New macro.
3193 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
3194
778e2804
KH
3195 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
3196 is nonzero, accept multibyte form of eight-bit-control chars.
3197 (decode_composition_emacs_mule): Likewise.
3198 (decode_coding_emacs_mule): Likewise.
3199 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
3200 multibyte form of eight-bit-control chars.
3201
3202 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
3203 (Finsert_file_contents): If coding-system-for-read is bound to
3204 Qauto_save_coding, use the coding system emacs-mule with special
3205 setting for recovering a file.
3206 (choose_write_coding_system): On auto saving, use the coding
3207 system emacs-mule with special setting for auto saving.
3208 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
3209
034060e4
KH
32102003-05-30 Kenichi Handa <handa@m17n.org>
3211
3212 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
3213 properly before calling ccl_driver.
3214
778e2804 3215 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
034060e4
KH
3216
3217 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
3218 nonzero.
3219 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
3220 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
3221
595f5aa5
GM
32222003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
3223
3224 * xfaces.c (realize_default_face): Do not abort if lface is
3225 non-existent - reverts change from 2003-05-19.
3226
103e0180
KH
32272003-05-29 Kenichi Handa <handa@m17n.org>
3228
3229 * coding.c (decode_coding_iso2022): Pay attention to the byte
3230 sequence of CTEXT extended segment, and retain those bytes as is.
3231
32322003-05-28 Kenichi Handa <handa@m17n.org>
3233
3234 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
3235 of CODING_REPLACEMENT_CHARACTER.
3236 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
3237 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
3238 check this flag on encoding.
3239 (encode_coding_sjis_big5): Check
3240 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
3241 (Fset_terminal_coding_system_internal): Set
3242 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
3243 instead of setting CODING_FLAG_ISO_SAFE flag in
3244 terminal_coding.flags.
3245
3246 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
3247 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
3248 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
3249
ff6a3bfb 32502003-05-28 Richard M. Stallman <rms@gnu.org>
45f266dc 3251
ff6a3bfb
RS
3252 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
3253
3254 * eval.c (unbind_to): Move init of this_binding to separate statement.
45f266dc 3255
1963c428
KS
32562003-05-28 Kim F. Storm <storm@cua.dk>
3257
3258 * xdisp.c (expose_window): Fix error in calculation of
3259 window relative coordinates of area to redisplay.
3260
2b5d4601
JR
32612003-05-27 Jason Rumney <jasonr@gnu.org>
3262
3263 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
3264
1c64a4a2
JB
32652003-05-27 David Ponce <david@dponce.com>
3266
3267 Handle W32 mouse wheel events as mouse click events, like in X.
3268
3269 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
3270 MOUSE_WHEEL_EVENT anymore.
3271
3272 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
3273 Scrolling down/up the mouse wheel is respectively mapped to mouse
3274 button 4 and 5.
3275 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
3276 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
3277 WM_MOUSEWHEEL events.
3278
2d031b89
AS
32792003-05-27 Andreas Schwab <schwab@suse.de>
3280
20464fdf
AS
3281 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
3282
2d031b89
AS
3283 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
3284 partially visible line.
3285
3286 * alloc.c (Fgarbage_collect): Fix last change.
3287
97bc76d4
JPW
32882003-05-26 John Paul Wallington <jpw@gnu.org>
3289
3290 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
3291
56613f06
SM
32922003-05-25 Stefan Monnier <monnier@cs.yale.edu>
3293
3294 * window.c (Fset_window_buffer): Add type of `keep_margins'.
3295 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
3296
3297 * window.h (window_box_text_cols): Declare.
3298
3299 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
3300 (x_draw_vertical_border): Remove unused var `f'.
3301
3302 * xfaces.c (build_scalable_font_name): Remove `unused var
3303 pixel_size' warning.
3304
3305 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
3306
3307 * unexelf.c (unexec): Remove `unused var n' warning.
3308
3309 * strftime.c (my_strftime_localtime_r): Remove `defined but
3310 unused' warning.
3311
3312 * process.c (allocate_pty): Remove `unused var stb' and
3313 `cp might be used uninitialized' warnings.
3314
3315 * dispnew.c (mode_line_string): Remove unused var `f'.
3316
3317 * coding.c (find_safe_codings): Remove unused var `i'.
3318
3319 * bytecode.c (Fbyte_code): Remove `unused val' warning.
3320
3321 * buffer.c (Fkill_buffer): Remove unused var `list'.
3322
3323 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
3324
93421a1f
JD
33252003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3326
3327 * frame.c (make_frame): Condition want_fullscreen with
3328 HAVE_WINDOW_SYSTEM.
3329
c4b8aebc
JB
33302003-05-25 Juanma Barranquero <lektu@terra.es>
3331
3332 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
3333 (Fwindow_scroll_bars): Fix typo in docstring.
3334
0416870b
KS
33352003-05-24 Kim F. Storm <storm@cua.dk>
3336
3337 The following changes serve several purposes:
3338
3339 1) Swap the position of fringes and display margins in windows, i.e.
3340 the fringes are now displayed between the margins and the text area
3341 (by default).
3342
3343 2) Allow fringe and scroll bar parameters to be set per-buffer and
3344 per-window (like display margins). Such settings are now stored
3345 in window configurations, preserved when frames are resized, and
9018a88e 3346 copied when windows are split vertically or horizontally.
0416870b
KS
3347 Several bugs related to display margins have been fixed.
3348
3349 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
9018a88e 3350
0416870b
KS
3351 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
3352 rather than FRAME_WIDTH (FRAME_FONT (f)).
3353
3354 5) Introduce a consistent naming of variables, members and macros
3355 depending on whether their value is measured in pixels or in
3356 canonical columns/lines. Pixel dimensions are named *_width and
3357 *_height, while canonical columns/lines are named *_cols and
3358 *_lines. Pixel positions are named *_x and *_y, while column/line
3359 positions are named *_col and *_line.
3360
3361 6) Consolidate more of the X, W32, and MAC gui code by moving
3362 common data into struct frame, and generalize it for the non-gui
3363 case by using suitable defaults.
3364
3365 7) Cleanup and consolidate the macros controlling frame and window
3366 layout into frame.h and window.h, and generalize the use of the
3367 various window_box_* functions (enhanced to handle the new fringe
3368 position and the per-window fringe and scroll bar settings).
3369
3370 * frame.h (struct frame): Rename members height to text_lines,
3371 width to text_cols, window_height to total_lines, window_width to
3372 total_cols, new_height to new_text_lines, new_width to
3373 new_text_cols. All uses changed.
3374 (struct frame): New members which consolidate common members of
3375 x_output, w32_output, and mac_output structures: left_pos,
3376 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
3377 win_gravity, size_hint_flags, border_width, internal_border_width,
3378 line_height, fringe_cols, left_fringe_width, right_fringe_width,
3379 want_fullscreen. All uses changed.
3380 (struct frame): New member column_width contaning the canonical
3381 column width, analogue to line_height. All uses changed.
3382 (struct frame): Rename members scroll_bar_pixel_width to
3383 config_scroll_bar_width, and scroll_bar_cols to
3384 config_scroll_bar_cols. All uses changed.
3385 (struct frame): New member scroll_bar_actual_width which
3386 consolidates and renames the vertical_scroll_bar_extra member of
3387 x_output, w32_output, and mac_output structures. All uses changed.
3388 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
3389 from x/w32/macterm.h files. All uses changed. Also change code
3390 which referred to f->output_data...->pixel_height.
3391 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
3392 from x/w32/macterm.h files. All uses changed. Also change code
3393 which referred to f->output_data...->pixel_width.
3394 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
3395 Also change code which referred to f->height.
3396 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
3397 Also change code which referred to f->width.
3398 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
3399 to update new_text_lines and new_text_cols members directly.
3400 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
3401 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
3402 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
3403 FRAME_SCROLL_BAR_COLS. All uses changed.
3404 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
3405 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
3406 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
3407 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
3408 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
3409 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
3410 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
3411 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
3412 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
3413 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
3414 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
3415 return line_height member (it now has proper value also for
3416 non-window frames).
3417 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
3418 return new column_width member (rather than the default font width).
3419 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
3420 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
3421 from x/w32/macterm.h files. Unconditionally return corresponding
3422 member of frame structure (they now have proper values also for
3423 non-window frames).
3424 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
3425 Calculate return value from left and right widths.
3426 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
3427 internal_border_width member (has proper value for non-window frame).
3428 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
3429 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
3430 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
3431 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
3432 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
3433 consolidated from xterm.h, macterm.h, and w32term.h.
3434 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
3435 consolidated from xterm.h, macterm.h, and w32term.h.
3436 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
3437 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
3438 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
3439 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
3440 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
3441 consolidated from x/mac/w32term.h.
3442 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
3443 consolidated from x/mac/w32term.h.
3444 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
3445 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
3446 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
3447 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
3448
3449 * window.h (struct window): Rename members left to left_col,
3450 top to top_line, height to total_lines, width to total_cols,
3451 left_margin_width to left_margin_cols, right_margin_width to
3452 right_margin_cols, orig_height to orig_total_lines, orig_top to
3453 orig_top_line. All uses changed.
3454 (struct window): New members left_fringe_width, right_fringe_width,
3455 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
3456 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
3457 New macros primarily used to simplify other macros.
3458 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
3459 referred to XINT (w->width).
3460 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
3461 referred to XINT (w->height).
3462 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
3463 referred to XINT (w->width) * canon_x_unit.
3464 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
3465 referred to XINT (w->height) * canon_y_unit.
3466 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
3467 referred to XINT (w->left).
3468 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
3469 all uses and code that referred to XINT (w->left) + XINT (w->width).
3470 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
3471 referred to XINT (w->top).
3472 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
3473 referred to XINT (w->top) + XINT (w->height).
3474 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
3475 referred to XINT (w->left) * canon_x_unit.
3476 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
3477 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
3478 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
3479 referred to XINT (w->top) * canon_y_unit.
3480 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
3481 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
3482 (WINDOW_LEFTMOST_P): New macro.
3483 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
3484 All uses changed.
3485 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
3486 All uses changed.
3487 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
3488 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
3489 Do not exclude left fringe width.
3490 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
3491 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
3492 Do not exclude fringe widths.
3493 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
3494 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
3495 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
3496 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
3497 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
3498 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
3499 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
3500 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
3501 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
3502 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
3503 New macros. Change code which referenced corresponding
3504 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
3505 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
3506 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
3507 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
3508 allow per-window scroll-bar settings.
3509 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
3510 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
3511 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
3512 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
3513 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
3514 FRAME_SCROLL_BAR_WIDTH.
3515 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
9018a88e 3516 (WINDOW_SCROLL_BAR_AREA_X): New macros.
0416870b
KS
3517 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
3518 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
3519 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
3520 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
3521 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
3522 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
3523 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
3524 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
3525 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
3526 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
3527 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
3528 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
3529 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
3530 (window_from_coordinates): Update prototype.
3531 (Fset_window_buffer): Update EXFUN.
3532 (set_window_buffer): Update prototype.
9018a88e 3533
0416870b 3534 * dispextern.h (struct glyph_matrix): Rename members window_left_x
9018a88e 3535 to window_left_col, window_top_y to window_top_line. All uses
0416870b
KS
3536 changed.
3537 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
3538 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
3539 internal_border_width is now set to 0 for non-window frames.
3540 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
3541 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
3542 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
3543 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
3544 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
3545 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
3546 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
3547 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
3548 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
9018a88e 3549 Move to window.h and renamed [see window.h changes].
0416870b
KS
3550 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
3551 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
9018a88e
SM
3552 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
3553 Use WINDOW_TOTAL_LINES.
0416870b
KS
3554 (frame_update_line_height): Remove prototype.
3555
3556 * buffer.h (struct buffer): Rename members measured in columns:
3557 left_margin_width to left_margin_cols, right_margin_width to
3558 right_margin_cols. All uses changed.
3559 New members left_fringe_width, right_fringe_width,
3560 fringes_outside_margins for per-buffer fringe settings.
3561 New members scroll_bar_width and vertical_scroll_bar_type for
3562 per-buffer scroll bar settings.
3563
3564 * buffer.c (init_buffer_once): Set buffer_defaults and
3565 buffer_local_flags for new buffer-local variables
3566 left_fringe_width, right_fringe_width, fringes_outside_margins,
3567 scroll_bar_width, and vertical_scroll_bar_type.
3568 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
3569 default-* variables for them.
3570
3571 * dispnew.c: Make (many) trivial substitutions for renamed and
3572 new macros in dispextern.h, frame.h and window.h.
3573 (mode_line_string): No need to adjust width for mode lines, as it
3574 is already adjusted by the caller.
3575 (marginal_area_string): Handle fringes inside/outside margins.
9018a88e 3576
0416870b
KS
3577 * frame.c: Make (many) trivial substitutions for renamed and
3578 new macros in dispextern.h, frame.h and window.h.
3579 (make_frame): Initialize left_fringe_width, right_fringe_width,
3580 fringe_cols, scroll_bar_actual_width, border_width,
3581 internal_border_width, column_width, line_height, x_pixels_diff,
3582 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
3583 members with values suitable for a non-window frames.
3584
3585 * gtkutil.c: Make (many) trivial substitutions for renamed and
3586 new macros in dispextern.h, frame.h and window.h.
9018a88e 3587
0416870b
KS
3588 * indent.c: Make (few) trivial substitutions for renamed and
3589 new macros in dispextern.h, frame.h and window.h.
3590
3591 * keyboard.c: Make (many) trivial substitutions for renamed and
3592 new macros in dispextern.h, frame.h and window.h.
3593 (make_lispy_event): Use window positions returned from
3594 window_from_coordinates when constructing the lisp event for
3595 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
3596 (incorrect) values locally.
3597 (make_lispy_movement): Use window positions returned from
3598 window_from_coordinates when constructing the lisp event, rather
3599 than calculating (incorrect) values locally.
3600
3601 * scroll.c: Make (some) trivial substitutions for renamed and
3602 new macros in dispextern.h, frame.h and window.h.
3603
3604 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
3605 scroll-bars.
3606
3607 * sysdep.c: Make (few) trivial substitutions for renamed and
3608 new macros in dispextern.h, frame.h and window.h.
3609
3610 * term.c: Make (some) trivial substitutions for renamed and
3611 new macros in dispextern.h, frame.h and window.h.
3612
3613 * widget.c: Make (few) trivial substitutions for renamed and
3614 new macros in dispextern.h, frame.h and window.h.
3615
3616 * window.c: Make (many) trivial substitutions for renamed and
3617 new macros in dispextern.h, frame.h and window.h.
3618 (make_window): Initialize new members
3619 left_margin_cols, right_margin_cols, left_fringe_width,
3620 right_fringe_width, fringes_outside_margins, scroll_bar_width,
3621 and vertical_scroll_bar_type.
3622 (coordinates_in_window): Adapted to new fringe/margin positions
9018a88e 3623 and per-window fringes and scroll-bars.
0416870b 3624 Fix bug related to incorrectly adjusting coordinates by
9018a88e 3625 frame's internal_border_width (the effect normally negible since
0416870b
KS
3626 the internal_border_width is typically 0 or 1 pixel, but very
3627 noticeable for an internal_border_width of e.g. 25 pixels).
3628 Upon successful return (other than ON_NOTHING), the coordinates
3629 are now always properly converted to window relative for the
3630 given display element.
3631 (window_from_coordinates): Add new parameters wx and wy to
3632 return the window relative x and y position in the returned
3633 window and part. A null arg means, don't return the position.
3634 All callers changed.
3635 (adjust_window_margins): New function which may reduce the width
3636 of the display margins if a window's text area is too small after
3637 resizing or splitting windows.
3638 (size_window): Fix bug that did not account for display margin
3639 widths when checking the minimum width of a window; use
3640 adjust_window_margins.
3641 (set_window_buffer): Call Fset_window_fringes and
3642 Fset_window_scroll_bars to setup per-window elements.
3643 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
3644 existing display margin, fringe widths, and scroll bar settings
9018a88e
SM
3645 (e.g. after splitting a window or resizing the frame).
3646 All callers changed.
0416870b
KS
3647 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
3648 (Fsplit_window): Duplicate original window's display margin,
3649 fringe, and scroll-bar settings; then call Fset_window_buffer with
3650 KEEP_MARGINS non-nil. This fixes a bug which caused a split
3651 window to only preserve the display margins in one of the windows.
c4b8aebc 3652 When splitting horizontally, call adjust_window_margins on both
0416870b
KS
3653 windows to ensure that the text area of the new windows is non too
3654 narrow. This fixes a bug which could cause emacs to trap if the
3655 width of the split window was less than the width of the display
3656 margins.
9018a88e
SM
3657 (window_box_text_cols): Renamed from window_internal_width.
3658 All uses changed. Adapt to per-window fringes and scroll bars.
0416870b
KS
3659 Fix bug that caused vertical separator to be subtracted also on
3660 window frames. Fix another bug that did not reduce the returned
3661 value by the columns used for display margins.
3662 (window_scroll_line_based): Fix bug related to scrolling too much
3663 when display margins are present (implicitly fixed by the fix to
3664 window_box_text_cols).
3665 (scroll_left, scroll_right): Fix bug related to scrolling too far
3666 by default when display margins are present (implicitly fixed by
3667 the fix to window_box_text_cols).
3668 (struct saved_window): Rename members left to left_col, top to
3669 top_line, width to total_cols, height to total_lines, orig_top to
3670 orig_top_line, orig_height to orig_total_lines. All uses changed.
3671 New members left_margin_cols, right_margin_cols,
3672 left_fringe_width, right_fringe_width, fringes_outside_margins,
3673 scroll_bar_width, and vertical_scroll_bar_type for saving
3674 per-window display elements.
3675 (Fset_window_configuration): Restore display margins, fringes,
3676 and scroll bar settings. This fixes a bug which caused display
3677 margins to be discarded when saving and restoring a window
3678 configuration.
3679 (save_window_save): Save display margins, fringes, and scroll bar
3680 settings. This fixes a bug which caused display margins to be
3681 discarded when saving and restoring a window configuration.
3682 (Fset_window_margins): Do nothing if display margins are not
3683 really changed. Otherwise, call adjust_window_margins to ensure
3684 the text area doesn't get too narrow. This fixes a bug which
3685 could cause emacs to trap if setting display margins wider than
3686 the width of the window.
3687 (Fset_window_fringes): New defun to allow user to specifically set
3688 this window's fringe widths and position vs. display margins.
3689 (Fwindow_fringes): New defun to return window's actual fringe
3690 settings.
3691 (Fset_window_scroll_bars): New defun to allow user to specifically
3692 set this window's scroll bar width and position.
3693 (Fwindow_scroll_bars): New defun to return window's actual scroll
3694 bar settings.
3695 (compare_window_configurations): Also compare display margins,
3696 fringes, and scroll bar settings.
3697 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
3698
3699 * xdisp.c: Make (many) trivial substitutions for renamed and
3700 new macros in dispextern.h, frame.h and window.h.
3701 (window_box_width): Adapt to per-window fringes and scroll bars,
3702 and new fringe vs. display margin position. Note that returned
3703 value is no longer guaranteed to be a whole multiple of the frame
3704 column width, since per-window fringes may now be any width.
3705 (window_box_left_offset): New function like window_box_left, but
3706 value is relative to left border of window (rather than frame).
3707 (window_box_right_offset): New function like window_box_right,
3708 but value is relative to left border of window.
3709 (window_box_left): Adapt to per-window fringes and scroll bars,
3710 and new fringe vs. display margin position. Simplify by using
3711 WINDOW_LEFT_EDGE_X and window_box_left_offset.
3712 (window_box): Allow null args for unnecessary return values;
3713 change/simplify relevant callers.
3714 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
9018a88e
SM
3715 and new fringe vs. display margin position.
3716 Use window_box_left_offset and window_box_right_offset
0416870b 3717 (get_glyph_string_clip_rect): Adapt to per-window fringes and
9018a88e
SM
3718 scroll bars, and new fringe vs. display margin position.
3719 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
0416870b
KS
3720 (draw_fringe_bitmap): Rework to handle per-window fringes and new
3721 fringe vs. display margin position.
3722 (hscroll_window_tree): Use window_box_width instead of window_box.
a64387ee
JB
3723 (redisplay_window): Adapt to per-window scroll bars.
3724 (draw_glyphs): Rework to handle per-window fringes and scroll
9018a88e
SM
3725 bars, and new fringe vs. display margin position.
3726 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
a64387ee 3727 (x_clear_end_of_line): Adapt to per-window fringes and scroll
0416870b
KS
3728 bars, and new fringe vs. display margin position. Fix bug which
3729 increased total width of full_width rows by width of scroll bars
3730 although window's total width already includes that.
3731 (x_fix_overlapping_area): Simplify using window_box_left_offset.
3732 (expose_area): Simplify using window_box_left_offset.
3733 (x_draw_vertical_border): Handle per-window scroll bar settings,
3734 mixing windows with left, right and no scroll bars.
3735
3736 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
3737 where it's used in x_list_fonts (for clarity).
3738 (frame_update_line_height): Remove unused function; functionality
3739 is now done directly when setting the default font in x_set_font.
3740
3741 * xfns.c: Make (many) trivial substitutions for renamed and
3742 new macros in dispextern.h, frame.h and window.h.
3743
3744 * xmenu.c: Make (some) trivial substitutions for renamed and
3745 new macros in dispextern.h, frame.h and window.h.
3746
3747 * xterm.h (struct x_output): Move members left_pos, top_pos,
3748 border_width, pixel_height, pixel_width, line_height,
3749 internal_border_width, vertical_scroll_bar_extra,
3750 left_fringe_width, right_fringe_width, fringe_cols,
3751 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
3752 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
3753 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
3754 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
3755 (PIXEL_WIDTH, PIXEL_HEIGHT)
3756 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
3757 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
3758 frame.h and renamed [see frame.h changes].
3759 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
3760 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
3761 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
3762 and renamed [see frame.h changes].
9018a88e 3763
0416870b
KS
3764 * xterm.c: Make (several) trivial substitutions for renamed and
3765 new macros in dispextern.h, frame.h and window.h.
3766 (x_draw_glyph_string_box): Adapt to per-window fringes and
3767 scroll-bars.
3768 (scroll_run): Adapt to new fringe position.
3769 (glyph_rect): Use window coordinates returned from
3770 window_from_coordinates rather than frame_to_window_pixel_xy.
3771 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
3772 scroll-bars.
3773 (handle_one_xevent): Simplify a USE_GTK conditional.
3774 (x_clip_to_row): Remove superfluous whole_line_p arg and code
3775 (fringes are now inside margins, i.e. always in the clipping area).
3776 All callers changed.
3777 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
3778 directly, then call compute_fringe_widths. Don't call
3779 frame_update_line_height.
3780
3781 * w32term.h (struct w32_output): Move members left_pos, top_pos,
3782 border_width, pixel_height, pixel_width, line_height,
3783 internal_border_width, vertical_scroll_bar_extra,
3784 left_fringe_width, right_fringe_width, fringe_cols,
3785 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
3786 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
3787 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
3788 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
3789 (PIXEL_WIDTH, PIXEL_HEIGHT)
3790 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
3791 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
3792 frame.h and renamed [see frame.h changes].
3793 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
3794 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
3795 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
3796 and renamed [see frame.h changes].
9018a88e 3797
0416870b
KS
3798 * w32term.c: Make (several) trivial substitutions for renamed and
3799 new macros in dispextern.h, frame.h and window.h.
3800 (x_draw_glyph_string_box): Adapt to per-window fringes and
3801 scroll-bars.
3802 (glyph_rect): Use window coordinates returned from
3803 window_from_coordinates rather than frame_to_window_pixel_xy.
3804 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
3805 scroll-bars.
3806 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
3807 (fringes are now inside margins, i.e. always in the clipping area).
3808 All callers changed.
3809 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
3810 directly, then call compute_fringe_widths. Don't call
3811 frame_update_line_height.
3812
3813 * w32console.c: Make (few) trivial substitutions for renamed and
3814 new macros in dispextern.h, frame.h and window.h.
3815
3816 * w32fns.c: Make (many) trivial substitutions for renamed and
3817 new macros in dispextern.h, frame.h and window.h.
3818
3819 * w32menu.c: Make (few) trivial substitutions for renamed and
3820 new macros in dispextern.h, frame.h and window.h.
3821
3822 * macterm.h (struct mac_output): Move members left_pos, top_pos,
3823 border_width, pixel_height, pixel_width, line_height,
3824 internal_border_width, vertical_scroll_bar_extra,
3825 left_fringe_width, right_fringe_width, fringe_cols,
3826 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
3827 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
3828 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
3829 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
3830 (PIXEL_WIDTH, PIXEL_HEIGHT)
3831 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
3832 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
3833 frame.h and renamed [see frame.h changes].
3834 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
3835 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
3836 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
3837 and renamed [see frame.h changes].
9018a88e 3838
0416870b
KS
3839 * macterm.c: Make (several) trivial substitutions for renamed and
3840 new macros in dispextern.h, frame.h and window.h.
3841 (x_draw_glyph_string_box): Adapt to per-window fringes and
3842 scroll-bars.
3843 (glyph_rect): Use window coordinates returned from
3844 window_from_coordinates rather than frame_to_window_pixel_xy.
3845 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
3846 scroll-bars.
3847 (x_clip_to_row): Remove superfluous whole_line_p arg and code
3848 (fringes are now inside margins, i.e. always in the clipping area).
3849 All callers changed.
3850 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
3851 directly, then call compute_fringe_widths. Don't call
3852 frame_update_line_height.
3853
3854 * macfns.c: Make (several) trivial substitutions for renamed and
3855 new macros in dispextern.h, frame.h and window.h.
9018a88e 3856 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
0416870b
KS
3857
3858 * macmenu.c: Make (few) trivial substitutions for renamed and
3859 new macros in dispextern.h, frame.h and window.h.
3860
3861 * msdos.h (struct x_output): Remove members left_pos, top_pos,
3862 and line_height, and use corresponding new members in struct
3863 frame. All uses changed.
3864 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
3865 superseeded by corresponding macros in frame.h.
3866
3867 * msdos.c: Make (several) trivial substitutions for renamed and
3868 new macros in dispextern.h, frame.h and window.h.
3869 (IT_note_mouse_highlight): Use updated window coordinates returned
9018a88e 3870 by window_from_coordinates, rather than adjusting them locally.
0416870b
KS
3871 (internal_terminal_init): No need to initialize line_height here;
3872 it now defaults to 1.
3873
9018a88e
SM
38742003-05-24 Stefan Monnier <monnier@cs.yale.edu>
3875
3876 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
3877 dropping `down' events.
3878
016bd3c0
AS
38792003-05-24 Andreas Schwab <schwab@suse.de>
3880
3881 * coding.c (find_safe_codings): Fix last change.
3882
4dacadcc
TTN
38832003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
3884
3885 * xfns.c (x_window): Fix typo from 2003-05-21 change.
3886
319830ce
SM
38872003-05-23 Stefan Monnier <monnier@cs.yale.edu>
3888
9018a88e
SM
3889 * xdisp.c (display_mode_element): Increase max depth.
3890 Simplify the error handling code. Use a different error string
3891 for the case where we hit the depth limit.
3892
319830ce
SM
3893 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
3894
3895 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
3896
38972003-05-21 Stefan Monnier <monnier@cs.yale.edu>
3898
3899 * intervals.c (get_local_map): Don't get char-property of previous
3900 point any more: get_pos_property already does it and better.
3901
c67de8ba
DL
39022003-05-21 Dave Love <fx@gnu.org>
3903
3904 [Merged from unicode branch.]
3905
3906 * xfns.c (x_window, x_window): Use use_xim.
3907
3908 * xterm.c (use_xim): Initialize.
3909 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
3910 (x_term_init): Maybe set use_xim.
3911
3912 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
3913
edd3ff1d
JR
39142003-05-21 Jason Rumney <jasonr@gnu.org>
3915
3916 * unexw32.c (_start): Remove _fmode initialization.
3917
3918 * emacs.c (main) [WINDOWSNT]: Move it here.
3919
463f55ee
DL
39202003-05-20 Dave Love <fx@gnu.org>
3921
3922 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
3923
af253914
RS
39242003-05-19 Richard M. Stallman <rms@gnu.org>
3925
3926 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
3927 as value for QCfont attribute.
3928 (realize_default_face): lface should already exist; crash if not.
3929 Specify 0 for FORCE_P when calling set_lface_from_font_name.
3930
3931 * frame.c (Fignore_event): Doc fix.
3932
1d211019
KH
39332003-05-19 Kenichi Handa <handa@m17n.org>
3934
3935 * coding.c (decode_coding_string): Handle post-read-conversion
3936 even if the coding doesn't require decoding.
3937
4dd68254
RS
39382003-05-18 Richard M. Stallman <rms@gnu.org>
3939
3940 * callproc.c (Fcall_process_region): Doc fix.
3941
14d87dc9
SM
39422003-05-17 Stefan Monnier <monnier@cs.yale.edu>
3943
deca5d96
SM
3944 * lread.c (Fload): Print a message if package is obsolete.
3945
14d87dc9
SM
3946 * window.c (Fselect_window): Add optional `norecord' arg.
3947 (select_window_1): Fold into Fselect_window.
3948 (select_window_norecord): New function.
3949 (temp_output_buffer_show): Use it. Preserve current buffer.
3950
3951 * window.h (Fselect_window): Update declaration.
3952
3953 * window.c (delete_window, Fother_window, Fset_window_configuration):
3954 * minibuf.c (read_minibuf):
3955 * macterm.c (x_new_focus_frame):
3956 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
3957 * callint.c (Fcall_interactively):
3958 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
3959
3960 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
3961
78f52183
DK
39622003-05-17 David Kastrup <dak@gnu.org>
3963
3964 * process.c (read_process_output): Back out change from 2003-03-09.
3965
14d87dc9
SM
39662003-05-17 Stefan Monnier <monnier@cs.yale.edu>
3967
3968 * editfns.c (get_pos_property): Don't assume that `object' = nil.
3969
3970 * textprop.c (text_property_stickiness): New arg `buffer'.
3971
3972 * intervals.h (text_property_stickiness): New arg `buffer'.
3973 (get_pos_property): Declare.
3974
3975 * intervals.c (get_local_map): Use get_pos_property, to obey
3976 stickiness and empty overlays.
3977 (create_root_interval, graft_intervals_into_buffer): Use BEG.
3978 (merge_properties, intervals_equal, merge_properties_sticky):
3979 Use XCAR, XCDR.
3980 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
3981
1fd1cc2f
RS
39822003-05-17 Richard M. Stallman <rms@gnu.org>
3983
4f9f637a
RS
3984 * minibuf.c (read_minibuf): If buffer is empty, record the default
3985 in the history.
3986 (Fminibuffer_complete_word): When deleting the overlap, take account
3987 of its real position.
3988
3989 * fns.c (map_char_table): Fix previous change.
3990
1fd1cc2f
RS
3991 * syntax.c (find_defun_start):
3992 When open_paren_in_column_0_is_defun_start,
3993 return beginning of buffer.
3994
3995 * lisp.h (map_char_table): Declare added arg.
3996
3997 * fns.c (map_char_table): New arg TABLE gets the master table.
3998 All calls changed.
3999 Process default and inheritance, resorting to Faref if necessary.
4000
4001 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
4002 (Faccessible_keymaps): Pass new arg to map_char_table.
4003
4004 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
4005
4006 * casetab.c (set_case_table): Pass new arg to map_char_table.
4007
4008 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
4009
4010 * lisp.h (specbinding_func): New typedef.
4011 (struct specbinding): Use specbinding_func, to put the `volatile'
4012 in the right place.
4013
4014 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
4015 to avoid GCC warning.
14d87dc9 4016
b4bd27c5
RS
40172003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org> (tiny change)
4018
14d87dc9 4019 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
b4bd27c5 4020
35fb885d
SM
40212003-05-15 Stefan Monnier <monnier@cs.yale.edu>
4022
4023 * keyboard.c (apply_modifiers): Don't fill the other cache.
4024
9a274fbd
SM
40252003-05-14 Stefan Monnier <monnier@cs.yale.edu>
4026
c55b5fad
SM
4027 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
4028
9a274fbd
SM
4029 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
4030 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
4031 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
4032 (Fset_window_configuration, Fcurrent_window_configuration)
4033 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
4034 (Fpos_visible_in_window_p, mark_window_cursors_off)
4035 (window_internal_height, window_internal_width, Frecenter)
4036 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
4037 (replace_buffer_in_all_windows, init_window_once, init_window)
4038 (syms_of_window, keys_of_window): Move from lisp.h.
4039 * lisp.h: Move window.c declarations to window.h.
4040
4041 * bytecode.c: Include window.h.
4042 * emacs.c: Include window.h.
4043
14d87dc9 4044 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
9a274fbd
SM
4045 (keyremap): Add `parent' field.
4046 (keyremap_step): Use it. Remove `parent' argument.
4047 (read_key_sequence): Setup and use the new `parent' field.
4048
fd93e331
SM
40492003-05-11 Stefan Monnier <monnier@cs.yale.edu>
4050
4051 * keyboard.c (adjust_point_for_property): Ensure termination.
4052
1c4001a1
SM
40532003-05-10 Stefan Monnier <monnier@cs.yale.edu>
4054
4055 * keyboard.c (follow_key): Remove dead variable `did_meta'.
4056 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
4057 duplicated handling of function-key-map and key-translation-map
4058 in read_key_sequence.
4059 (read_key_sequence): Use them.
4060
4061 * keyboard.c (adjust_point_for_property): Try harder to move point
4062 to the non-sticky end of an invisible property.
4063
4064 * xdisp.c (single_display_prop_intangible_p): Make `space' display
4065 property intangible as well.
4066
780379b1
AS
40672003-05-10 Andreas Schwab <schwab@suse.de>
4068
4069 * xmenu.c (single_menu_item): Change last parameter to void* to
4070 avoid warning.
4071
ca2de342
RS
40722003-05-09 Richard M. Stallman <rms@gnu.org>
4073
4074 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
4075 Bind Qinhibit_modification_hooks to t so there will be no GC.
4076 Rename local `tem' to `save_deactivate_mark'.
4077
4078 * eval.c (specpdl_ptr): Declare volatile.
4079 (unbind_to): Copy the whole binding and decrement specpdl_ptr
4080 before doing the work of unbinding it.
4081
4082 * lisp.h (struct specbinding): Declare elements volatile.
4083 (specpdl_ptr): Declare volatile.
4084
4085 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
4086
4087 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
4088 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
4089
347003be
DL
40902003-05-08 Dave Love <fx@gnu.org>
4091
4092 * coding.c (Vlast_coding_system_used): Doc fix.
4093
5adcec23
JR
40942003-05-07 Jason Rumney <jasonr@gnu.org>
4095
4096 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
4097 when system does not support them.
4098
5fe3b8a4
SM
40992003-05-05 Stefan Monnier <monnier@cs.yale.edu>
4100
4101 * fileio.c (Qwrite_region_annotate_functions): New var.
4102 (build_annotations): Use it to process the global part of the hook.
4103 (syms_of_fileio): Init and staticpro it.
4104
4105 * keyboard.c (safe_run_hooks_error): Display a message instead of
4106 silently ignoring the error.
4107
41082003-05-03 Stefan Monnier <monnier@cs.yale.edu>
4109
4110 * keyboard.c (input_available_signal): Mark static.
4111 (menu_bar_items): Use map_keymap.
4112 (menu_bar_one_keymap): Remove.
4113 (menu_bar_item): Adjust arglist (for use in map_keymap).
4114 Properly hide a second binding when not both are keymaps.
4115
4116 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
4117 (single_keymap_panes): Use it and map_keymap.
4118 (single_menu_item): Use skp as well.
4119
4120 * keymap.h (map_keymap_function_t): New type.
4121 (map_keymap): Declare.
4122
4123 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
4124 (map_keymap_call, Fmap_keymap): New functions.
4125 (syms_of_keymap): Defsubr map-keymap.
4126
4b1b4443
JD
41272003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4128
4129 * gtkutil.c (create_dialog, make_widget_for_menu_item)
4130 (make_menu_item, create_menus, xg_update_menu_item): Don't call
4131 ..._with_mnemonic functions for menu items.
4132
1f816871
KH
41332003-05-01 Kenichi Handa <handa@m17n.org>
4134
4135 * coding.c (coding_system_accept_latin_extra_p): Delete this
4136 function.
4137 (find_safe_codings): Pay attention to
4138 the property tranlsation-table-for-encode of each codings.
4139 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
4140
5ed6ba5b
SM
41412003-05-01 Stefan Monnier <monnier@cs.yale.edu>
4142
4143 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
4144
32c06229
SM
41452003-04-30 Stefan Monnier <monnier@cs.yale.edu>
4146
4147 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
4148
4149 * lisp.h (CHECK): Wrap args in parenthesis.
4150 (specbind): Fix doc: symbol = Qnil is not supported any more.
4151
4152 * bytecode.c (Fbyte_code) <unwind-protect>:
4153 Use Fprogn rather than 0 and Qnil.
4154
4155 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
4156 `double', and `triple' modifiers as well.
4157
ed3c3314
RS
41582003-04-30 Richard M. Stallman <rms@gnu.org>
4159
4160 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
4161
4162 * alloc.c (abort_on_gc): New variable.
4163 (Fgarbage_collect): Abort if abort_on_gc is set.
4164
4165 * lisp.h (abort_on_gc): Add decl.
4166
4167 * eval.c (Fsignal): Clear abort_on_gc.
4168
4169 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
32c06229 4170 Reinit FORMAT_START and END before second scan.
ed3c3314
RS
4171
4172 * xdisp.c (move_it_vertically_backward): Do the final big else
4173 even if nlines is 0.
4174
4175 * xdisp.c (redisplay_internal): Finish the per-frame loop
4176 even if redisplay is suspended by input.
4177
0b325c12
AC
41782003-04-24 Andrew Choi <akochoi@shaw.ca>
4179
4180 * macterm.c (x_list_fonts): Return all fonts that match if
4181 maxnames = -1.
4182
4e837cd0
KH
41832003-04-25 Kenichi Handa <handa@m17n.org>
4184
4185 * syntax.c (skip_chars): Fix previous change.
4186
9af7511a
KH
41872003-04-24 Kenichi Handa <handa@m17n.org>
4188
4189 * syntax.c (skip_chars): Make the code faster by using the common
4190 technique of *p, *stop, and *endp.
4191
e3b2c21f
JD
41922003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4193
4194 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
32c06229 4195 tool_bar_items so GTK tool bar expose callback does not access items
e3b2c21f
JD
4196 being updated.
4197
32c06229
SM
41982003-04-19 Stefan Monnier <monnier@cs.yale.edu>
4199
4200 * eval.c (Fapply): Undo last change and add a comment about why.
4201
c6464167
MB
42022003-04-18 Miles Bader <miles@gnu.org>
4203
4204 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
4205 pickier PARSE_MULTIBYTE_SEQ.
4206
e509f168
SM
42072003-04-17 Stefan Monnier <monnier@cs.yale.edu>
4208
4209 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
4210 Use XCDR, XCAR, CONSP.
4211 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
4212 (Fapply): Remove unnecessary GCPRO.
4213
4214 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
4215
4216 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
4217
4218 * buffer.h: Don't hardcode BEG==1.
4219
4220 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
4221
5ceea398
RS
42222003-04-16 Richard M. Stallman <rms@gnu.org>
4223
4224 * xdisp.c (try_window, try_window_reusing_current_matrix):
4225 When at end of window, set window_end_pos to Z-ZV.
4226
4227 * buffer.c (Foverlay_recenter): Doc fix.
4228
e509f168
SM
42292003-04-14 Stefan Monnier <monnier@cs.yale.edu>
4230
4231 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
4232
d243e605
AC
42332003-04-14 Andrew Choi <akochoi@shaw.ca>
4234
4235 * macterm.c (mac_check_for_quit_char): Don't check more often than
4236 once a second.
4237
6901b111
SM
42382003-04-11 Stefan Monnier <monnier@cs.yale.edu>
4239
4240 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
4241 specially, so that they can't hide an implicit switch-frame event.
4242 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
4243 (head_table): Use switch-frame as event_kind for select-window.
4244 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
4245
4246 * editfns.c (Fformat): Lisp_Object/int mixup.
4247 (format2): Remove unused var numargs.
4248
e301806f 42492003-04-11 Kenichi Handa <handa@m17n.org>
aa95b710 4250
6901b111 4251 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
aa95b710
KH
4252 (Qafter_insert_file_set_coding): New variable.
4253 (syms_of_fileio): Initialize and staticpro it. Delete declaration
4254 for after-insert-file-adjust-coding-function.
4255 (Finsert_file_contents): Call Qafter_insert_file_set_coding
4256 instead of Vafter_insert_file_adjust_coding_function.
4257
38914424
KH
42582003-04-11 Kenichi Handa <handa@m17n.org>
4259
4260 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
4261
4262 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
4263 string. Callers changed.
4264
42652003-04-10 Kenichi Handa <handa@m17n.org>
a288d979 4266
6901b111 4267 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
a288d979 4268 (syms_of_fileio): Declare it as a lisp variable.
6901b111
SM
4269 (Finsert_file_contents):
4270 Call Vafter_insert_file_adjust_coding_function before calling
a288d979
KH
4271 decode-format.
4272
f979dc05
JD
42732003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4274
4275 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
4276 get GtkAdjustment as widget now is a GtkRange.
4277
4278 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
4279 GtkRange to avoid memory leak.
4280
f8c6b4c2 42812003-04-09 Kenichi Handa <handa@m17n.org>
cb98871c 4282
50ebc53d
KH
4283 * xfaces.c (Vface_font_rescale_alist): New variable.
4284 (struct font_name): New member rescale_ratio.
4285 (font_rescale_ratio): New function.
6901b111 4286 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
50ebc53d
KH
4287 (better_font_p): On comparing point sized, pay attention to
4288 recale_ratio member of fonts.
4289 (build_scalable_font_name): Reflect font->rescale_ratio in the
4290 font name.
6901b111 4291 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
50ebc53d 4292
cb98871c
KH
4293 * lread.c (read1): Before calling index, check if the 2nd
4294 arguemnt is in ASCII range.
4295
4773b8ca
RS
42962003-04-08 Richard M. Stallman <rms@gnu.org>
4297
b0ada147
RS
4298 * fileio.c (Ffile_symlink_p): Doc fix.
4299
4300 * editfns.c (Fformat): Translate positions of text properties
4301 in the format string to apply them to the result.
4302
4773b8ca
RS
4303 * fileio.c (Finsert_file_contents): Doc fix.
4304 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
4305
43062003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6901b111 4307
4773b8ca
RS
4308 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
4309
e8f25745 43102003-04-08 Steven Tamm <steventamm@mac.com>
b0ada147 4311
e8f25745
ST
4312 * mac.c (init_mac_osx_environment): Switch libexec and bin so
4313 that self-contained application finds libexec files.
4314
f8c6b4c2 43152003-04-08 Kenichi Handa <handa@m17n.org>
2310d84c 4316
6901b111
SM
4317 * coding.c (code_convert_region_unwind):
4318 Set Vlast_coding_system_used to the argument.
2310d84c
KH
4319 (code_convert_region): If post-read-conversion function changed
4320 the value of last-coding-sytem, keep the new value in
4321 coding->symbol so that it won't be overridden.
4322 (run_pre_post_conversion_on_str): Likewise.
7c086845
KH
4323 (coding_system_accept_latin_extra_p): New function.
4324 (find_safe_codings): Pay attention to characters registered in
4325 latin-extra-code-table.
2310d84c 4326
39c9a034
TTN
43272003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
4328
4329 * Makefile.in (md5.o): Add missing dependency info.
4330
eb67c5d6
RS
43312003-04-06 Richard M. Stallman <rms@gnu.org>
4332
4333 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
4334
4335 * marker.c (verify_bytepos): New function.
4336
4337 * intervals.c (set_intervals_multibyte_1): When becoming
4338 multibyte, adjust right and left child sizes to a whole set of
4339 characters. If an interval gets zero total-length, delete it.
4340 If an interval consists of just its children, delete one of them.
4341
4342 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
4343 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
39c9a034 4344
eb67c5d6
RS
4345 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
4346 All calls deleted.
4347 (lisp_malloc): Do the work here directly.
4348
b1f81fc5
JB
43492003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
4350
4351 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
4352 char tables.
4353
43542003-04-04 Kenichi Handa <handa@m17n.org>
aa8b70ae
KH
4355
4356 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
4357 destructively change "%S" to "%s".
4358
774666fb
MB
43592003-04-03 Miles Bader <miles@gnu.org>
4360
4361 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
4362 always set.
4363
19c37f01
DL
43642003-04-01 Dave Love <fx@gnu.org>
4365
4366 * xfns.c (xpm_lookup_color): Grok "opaque".
4367
2f4b24c3
AC
43682003-03-31 Andrew Choi <akochoi@shaw.ca>
4369
4370 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
4371 parent window ID.
4372
4373 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
4374
4375 * macterm.h (struct mac_output): Define x_pixels_diff and
4376 y_pixels_diff.
b1f81fc5 4377
9443fcf6
JB
43782003-03-31 Juanma Barranquero <lektu@terra.es>
4379
4380 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
4381 blockinput.h and files included from it.
4382
e072891b
KS
43832003-03-31 Kim F. Storm <storm@cua.dk>
4384
4385 The following changes consolidates the common code related to
4386 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
4387 files into frame.c.
9443fcf6 4388
e072891b
KS
4389 * frame.c: Include blockinput.h.
4390 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
4391 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
4392 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
4393 related vars here.
4394 (struct frame_parm_table, frame_parms): New table for describing
4395 frame parameters and their associated Q-variable.
4396 The order of the parameters corresponds to the sequence of the
4397 frame_parm_handlers table in redisplay_interface.
4398 (x_fullscreen_move, x_set_frame_parameters)
4399 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
4400 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
4401 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
4402 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
4403 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
4404 Generic functions for processing of frame parameters.
4405 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
4406 (display_x_get_resource, x_get_resource_string): Functions for
4407 generic access to X resources.
4408 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
4409 (x_default_parameter, Fx_parse_geometry): Functions for generic
4410 access to frame parameters.
6901b111
SM
4411 (x_figure_window_size): Generic calculation of frame size.
4412 Fixed to add space needed for tool bar. Also setup size_hint_flags.
e072891b
KS
4413 (syms_of_frame): Intern and staticpro frame parameter variables.
4414 Defvar_lisp Vx_resource_class and Vx_resource_name here.
4415 Defsubr Sx_get_resource and Sx_parse_geometry.
9443fcf6 4416
e072891b
KS
4417 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
4418 parameter related vars defined in frame.c.
4419 (EMACS_CLASS): Define here.
4420 (enum FULLSCREEN_*): Define here.
4421 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
4422 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
4423 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
4424 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
4425 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
4426 (x_set_visibility, x_set_autoraise, x_set_autolower)
4427 (x_set_unsplittable, x_set_vertical_scroll_bars)
4428 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
4429 (x_figure_window_size): Add prototypes.
4430
4431 * dispextern.h (frame_parm_handler): New typedef.
4432 (struct redisplay_interface): New member frame_parm_handlers.
4433 (enum resource_types): Move declaration here.
4434 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
4435 (x_default_parameter): Add prototypes.
4436
4437 * window.c: Remove extern decl for frame parameter vars.
4438 (change_window_heights): New generic function;
4439 replaces x_change_window_heights. All users changed.
4440
4441 * window.h (change_window_heights): Add prototype.
4442
4443 * xfaces.c: Remove extern decl for frame parameter vars.
4444
4445 * xterm.h (EMACS_CLASS): Remove. Use generic define.
4446 (struct w32_display_info): Fix type of xrdb member.
4447 (enum FULLSCREEN_*): Remove.
4448 Remove prototypes for generic functions (in frame.h).
4449
4450 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
4451 parameters now defined in frame.h and frame.c.
4452 (Vx_resource_name): Remove. Use generic var.
4453 (enum x_frame_parms): Remove (bogus, unused enum).
4454 (check_x_display_info): Make non-static (for frame.c).
4455 (struct x_frame_parm_table, x_frame_parms): Remove.
4456 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
4457 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
4458 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
4459 (x_change_window_heights, x_set_autoraise, x_set_autolower)
4460 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
4461 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
4462 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
4463 Remove. Use generic functions instead.
4464 (enum resource_types): Remove.
4465 (x_set_scroll_bar_default_width): New global function (for frame.c).
4466 (Fx_create_frame): Depend on x_figure_window_size to add space for
4467 toolbar and setup size_hint_flags.
4468 (x_frame_parm_handlers): New table for redisplay_interface.
4469 (syms_of_xfns): Don't intern/staticpro removed vars.
9443fcf6 4470
e072891b
KS
4471 * xterm.c: Remove unnecessary extern declarations.
4472 (x_fullscreen_adjust): Remove. Use generic instead.
4473 (x_redisplay_interface): Add x_frame_parm_handlers member.
4474
4475 * w32gui.h (XrmDatabase): New (dummy) typedef.
4476
4477 * w32term.h (EMACS_CLASS): Remove. Use generic define.
4478 (struct w32_display_info): Fix type of xrdb member.
4479 (enum FULLSCREEN_*): Remove.
4480 (x_fullscreen_adjust): Remove prototype.
4481
4482 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
4483 parameters now defined in frame.h and frame.c.
4484 (Vx_resource_name): Remove. Use generic var.
4485 (enum x_frame_parms): Remove (bogus, unused enum).
4486 (check_x_display_info): Make non-static (for frame.c).
4487 (struct x_frame_parm_table, x_frame_parms): Remove.
4488 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
4489 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
4490 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
4491 (x_change_window_heights, x_set_autoraise, x_set_autolower)
4492 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
4493 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
4494 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
4495 Remove. Use generic functions instead.
4496 (enum resource_types): Remove.
4497 (x_set_scroll_bar_default_width): New global function (for frame.c).
4498 (Fx_create_frame): Depend on x_figure_window_size to add space for
4499 toolbar and setup size_hint_flags.
4500 (w32_frame_parm_handlers): New table for redisplay_interface.
4501 (syms_of_w32fns): Don't intern/staticpro removed vars.
9443fcf6 4502
e072891b
KS
4503 * w32term.c: Remove unnecessary extern declarations.
4504 (x_fullscreen_adjust): Remove. Use generic instead.
4505 (x_redisplay_interface): Add w32_frame_parm_handlers member.
4506
4507 * w32reg.c (x_get_string_resource): Use XrmDatabase.
4508
4509 * macgui.h (XrmDatabase): New (dummy) typedef.
4510
4511 * macterm.h (EMACS_CLASS): Remove.
4512 (struct mac_display_info): Add xrdb member.
4513 (struct mac_output): Add want_fullscreen member.
4514
4515 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
4516 parameters now defined in frame.h and frame.c.
4517 (Vx_resource_name): Remove. Use generic var.
4518 (check_x_display_info): Make non-static (for frame.c).
4519 (struct x_frame_parm_table, x_frame_parms): Remove.
4520 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
4521 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
4522 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
4523 (x_change_window_heights, x_set_autoraise, x_set_autolower)
4524 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
4525 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
4526 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
4527 Remove. Use generic functions instead.
4528 (enum resource_types): Remove.
4529 (x_set_scroll_bar_default_width): New global function (for frame.c).
4530 (mac_frame_parm_handlers): New table for redisplay_interface.
4531 (syms_of_macfns): Don't intern/staticpro removed vars.
9443fcf6 4532
e072891b
KS
4533 * macterm.c: Remove unnecessary extern declarations.
4534 (x_redisplay_interface): Add mac_frame_parm_handlers member.
4535
3e6a560b
KS
4536 * Makefile.in (frame.o): Add dependency on blockinput.h and files
4537 included from it (atimer.h and systime.h).
4538
7b7b454e
AS
45392003-03-30 Andreas Schwab <schwab@suse.de>
4540
4541 * xdisp.c (x_insert_glyphs): Fix swapped width and height
4542 parameters for shift_glyphs_for_insert.
4543
4544 * macterm.c (x_redisplay_interface): Add missing entry for
4545 draw_vertical_window_border.
4546
beb402de
KG
45472003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
4548
4549 * fileio.c (Fexpand_file_name): In the no-handler case, after
4550 expanding, look again for a handler and invoke it. This is needed
4551 for filenames like "/foo/../user@host:/bar/../baz" -- the first
4552 expansion produces "/user@host:/bar/../baz" which needs to be
4553 expanded again for the finame result "/user@host:/baz".
4554
b676f356
JD
45552003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4556
4557 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
4558 of area to be redrawn for better performance.
4559
3c671a56
SM
45602003-03-28 Stefan Monnier <monnier@cs.yale.edu>
4561
4562 * xterm.c (take_vertical_position_into_account): Remove.
4563 (xt_action_hook): Call set_vertical_scroll_bar if needed.
4564 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
4565 (xm_scroll_callback, x_create_toolkit_scroll_bar)
4566 (x_set_toolkit_scroll_bar_thumb): Simplify.
4567 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
4568 (XTread_socket): Remove unused var.
4569 (x_make_frame_invisible): Replace goto with else.
4570
4571 * xdisp.c (set_vertical_scroll_bar): New fun.
4572 (redisplay_window): Use it.
4573
84f2e615
RS
45742003-03-26 Richard M. Stallman <rms@gnu.org>
4575
4576 * xdisp.c (update_tool_bar): Recompute tool bar if
4577 update_mode_lines is set. Set w->update_mode_line
4578 only if the tool bar contents actually change.
4579 (update_menu_bar): Undo previous change.
4580
70b6104c
JD
45812003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4582
5fd6f727
JD
4583 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
4584 (xg_frame_set_char_size): Calculate scroll bar width before frame
4585 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
4586 (xg_separator_p): Check for all documented separator types.
4587 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
4588 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
4589
70b6104c
JD
4590 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
4591 so tool bar gets updated.
4592
d9b36d19
SM
45932003-03-26 Stefan Monnier <monnier@cs.yale.edu>
4594
4595 * data.c (store_symval_forwarding): Re-instate part of the code
4596 that was deleted with too much enthusiasm.
4597
45982003-03-25 Stefan Monnier <monnier@cs.yale.edu>
4599
4600 * data.c (store_symval_forwarding): Delete special read-only
4601 hack for type == -1, since we now use ->constant instead.
4602 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
4603
4604 * buffer.c (overlays_in): Declare static.
4605 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
4606 `constant' field rather than the variable's `type' field.
4607
365fa1b3
AC
46082003-03-24 Andrew Choi <akochoi@shaw.ca>
4609
4610 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
4611
4612 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
4613
4614 * fns.c [MAC_OSX]: Do not redefine vector.
4615
4616 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
4617
4618 * macgui.h: Remove definition of No_Cursor.
4619
d9b36d19 4620 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
365fa1b3
AC
4621
4622 * xdisp.c: Define No_Cursor.
4623 (x_write_glyphs, notice_overwritten_cursor)
4624 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
4625 (note_mouse_highlight): Remove Mac-specific code.
4626 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
d9b36d19 4627
c0bcce6f
JPW
46282003-03-24 John Paul Wallington <jpw@gnu.org>
4629
4630 * xdisp.c (redisplay_window): If mini window's buffer is not
4631 empty, then redisplay it like other windows.
4632
a526b96c
KS
46332003-03-23 Kim F. Storm <storm@cua.dk>
4634
4635 * w32term.c (w32_draw_window_cursor): Fix last change.
4636
37ab321e
KH
46372003-03-23 Kenichi Handa <handa@m17n.org>
4638
a526b96c
KS
4639 * alloc.c (make_string_from_bytes, make_specified_string):
4640 Add `const' for the arg CONTENTS.
37ab321e
KH
4641
4642 * lisp.h (make_string_from_bytes, make_specified_string):
4643 Prototypes adjusted.
4644
7863d625
JD
46452003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4646
a526b96c 4647 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
fd4c9408 4648
7863d625
JD
4649 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
4650 (XG_SB_RANGE): New define.
4651
4652 * gtkutil.c (xg_fixed_handle_expose): New function.
4653 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
4654 expose events.
4655 (xg_update_scrollbar_pos): Take two more arguments, left and width
4656 of scroll bar including borders.
4657 Clear left and right part outside scroll bar separately as some
4658 themes have bars that are not an even number of pixels.
d9b36d19 4659 Don't set reallocate_redraws, don't call
7863d625
JD
4660 gdk_window_process_all_updates.
4661 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
4662 so no need to change it. Calculate size and value with XG_SB_RANGE.
4663
d9b36d19
SM
4664 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
4665 Pass left and width of scroll bar including borders to
7863d625
JD
4666 xg_update_scrollbar_pos.
4667
af0ad939
TTN
46682003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
4669
4670 * Makefile.in: Make sure space precedes end-of-line backslashes.
4671
b22139fd
KS
46722003-03-22 Kim F. Storm <storm@cua.dk>
4673
4674 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
4675 Add generic versions here. Remove system specific versions
4676 defined elsewhere.
4677
4678 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
4679 Add prototypes.
4680
6e6410cf
KS
4681 * xterm.h (STORE_NATIVE_RECT): New macro.
4682
5c9cc435
KS
46832003-03-21 Kim F. Storm <storm@cua.dk>
4684
00c64fab
SM
4685 * xdisp.c (get_glyph_string_clip_rect):
4686 Use FRAME_INTERNAL_BORDER_WIDTH.
5c9cc435
KS
4687
4688 * dispextern.h (struct redisplay_interface): Add active_p
4689 argument to draw_window_cursor member. All uses changed.
4690
acd37560
KS
46912003-03-21 Kim F. Storm <storm@cua.dk>
4692
4693 The following changes consolidate code related to writing and
4694 inserting glyphs, exposing frame, the tool bar, the mouse face,
4695 the output cursor, and help echo from xterm.c, w32term.c and
4696 macterm.c into xdisp.c. It also generalizes the use of the
4697 window_part enum instead of using numeric values throughout.
af0ad939 4698
acd37560
KS
4699 * xdisp.c: Consolidate gui-independent code here.
4700 Include keymap.h.
4701 (Qhelp_echo): Import.
4702 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
4703 (help_echo_string, help_echo_window, help_echo_object)
4704 (previous_help_echo_string, help_echo_pos): Declare here.
4705 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
4706 (estimate_mode_line_height): Define here. Handle windowing
4707 systems directly (without using estimate_mode_line_height_hook).
4708 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
4709 (update_window_cursor, update_cursor_in_window_tree)
4710 (fast_find_position, fast_find_string_pos)
4711 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
4712 (expose_area, expose_line, expose_overlaps, expose_window)
4713 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
4714 declared static as they are only used locally in xdisp.c.
4715 (draw_glyphs): Rename from x_draw_glyphs and make static.
4716 (tool_bar_item_info, notice_overwritten_cursor): Make static.
4717 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
4718 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
af0ad939 4719 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
acd37560
KS
4720 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
4721 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
4722 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
4723 (note_mouse_highlight, x_clear_window_mouse_face)
4724 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
4725 (x_intersect_rectangles): New generic functions for use by xdisp.c
4726 and GUI front-ends.
4727 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
4728 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
4729
4730 * dispextern.h (Display_Info): Generic typedef for *_display_info.
4731 (NativeRectangle): Generic typedef for rectangle type.
4732 (enum window_part): Move here from window.c.
4733 (struct redisplay_interface): New members flush_display_optional,
4734 define_frame_cursor, clear_frame_area, draw_window_cursor,
4735 draw_vertical_window_border, shift_glyphs_for_insert.
4736 Rename member clear_mouse_face to clear_window_mouse_face.
4737 (estimate_mode_line_height_hook): Remove hook.
4738 (auto_raise_tool_bar_buttons_p): Don't declare extern.
4739 (tool_bar_item_info): Remove prototype.
4740 (help_echo_string, help_echo_window, help_echo_object)
4741 (previous_help_echo_string, help_echo_pos)
4742 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
4743 (x_stretch_cursor_p, output_cursor): Declare extern.
4744 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
4745 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
4746 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
4747 (display_and_set_cursor, set_output_cursor, x_cursor_to)
4748 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
4749 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
4750 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
4751 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
4752 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
4753 Add prototypes.
4754 (mode_line_string, marginal_area_string): Fix prototypes.
4755
4756 * window.c (enum window_part): Move to dispextern.h.
4757 (coordinates_in_window): Use enum window_part member names
4758 instead of numbers to describe return value.
4759 (struct check_window_data): Change part member to window_part.
4760 (check_window_containing): Return window_part unaltered.
4761 (window_from_coordinates): Change part arg from int to enum
4762 window_part. Allow part arg to be null. All users changed.
4763
4764 * window.h (window_from_coordinates): Fix prototype.
4765
4766 * term.c (estimate_mode_line_height): Move to xdisp.c.
4767
4768 * keyboard.c (make_lispy_event): Use enum window_part.
4769
4770 * dispnew.c (mode_line_string, marginal_area_string): Use enum
4771 window_part instead of int in arg list. Users changed.
4772
4773 * xterm.h (No_Cursor): Declare as None for X.
4774 (struct mac_output): Replace member cross_cursor by hand_cursor.
af0ad939 4775
acd37560
KS
4776 * xterm.c: Remove consolidated defines and code.
4777 (BETWEEN): Remove unused macro.
4778 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
4779 (x_define_frame_cursor, x_clear_frame_area)
4780 (x_draw_window_cursor): New X-specific functions for RIF.
4781 (x_redisplay_interface): Add new members.
4782
4783 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
4784
4785 * w32term.h (struct w32_output): Remove cross_cursor member.
4786
4787 * w32term.c: Remove consolidated defines and code.
4788 (BETWEEN): Remove unused macro.
4789 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
4790 (w32_define_frame_cursor, w32_clear_frame_area)
4791 (w32_draw_window_cursor): New W32-specific functions for RIF.
4792 (w32_redisplay_interface): Add new members.
4793
a64387ee 4794 * w32gui.h (No_Cursor): Define as 0 for W32.
acd37560
KS
4795 (XRectangle): Add X compatible rectangle type.
4796 (NativeRectangle): Declare as RECT for W32.
4797 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
4798
4799 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
4800
4801 * w32console.c: Remove consolidated defines and code.
af0ad939 4802
acd37560
KS
4803 * msdos.h (Display_Info): Add generic typedef.
4804
4805 * msdos.c: Remove consolidated defines and code.
4806 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
4807
4808 * macterm.h (struct mac_output): Replace member cross_cursor by
4809 hand_cursor.
4810 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
4811
4812 * macterm.c: Remove consolidated defines and code.
4813 (BETWEEN): Remove unused macro.
4814 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
4815 (mac_define_frame_cursor, mac_clear_frame_area)
4816 (mac_draw_window_cursor): New Mac-specific functions for RIF.
4817 (x_redisplay_interface): Add new members.
4818
4819 * macgui.h (No_Cursor): Define as 0 for Mac.
4820 (XRectangle): Add X compatible rectangle type.
4821 (NativeRectangle): Declare as Rect for Mac.
4822 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
4823
204ccab1
KS
4824 * macfns.c (x_set_mouse_color): Setup hand_cursor.
4825 (x_set_cursor_color): Use x_display_and_set_cursor.
acd37560 4826
9443fcf6 4827 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
acd37560
KS
4828 included from it. Add dependency on keymap.h.
4829
4830 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
4831
8ba01a70 48322003-03-21 Kenichi Handa <handa@m17n.org>
3f817c73
KH
4833
4834 * fileio.c (Fexpand_file_name): Fix previous change.
4835
8ba01a70 48362003-03-19 Kenichi Handa <handa@m17n.org>
4f497b0a
KH
4837
4838 * fileio.c (Ffile_name_directory): Reconstruct file name by
4839 make_specified_string.
4840 (Ffile_name_nondirectory, Ffile_name_as_directory)
4841 (Fdirectory_file_name, Fexpand_file_name)
4842 (Fsubstitute_in_file_name): Likewise.
4843 (Fread_file_name): Compare decoded homedir with DIR and
4844 DEFAULT_FILENAME.
4845
4846 * alloc.c (make_specified_string): If NCHARS is negative, count
4847 the number of characters.
4848
19536747
JD
48492003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4850
de38ae5a
JD
4851 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
4852 all widgets.
4853
19536747
JD
4854 * gtkutil.h: Removed xg_ignore_next_thumb.
4855
37ab321e 48562003-03-18 Kenichi Handa <handa@m17n.org>
cb0d4562
KH
4857
4858 * coding.c (Vchar_coding_system_table): Remove this variable.
4859 (Vcoding_system_safe_chars): New variable.
4860 (intersection): Remove this function.
4861 (find_safe_codings): Don't use Vchar_coding_system_table, but try
4862 all codings in SAFE_CODINGS.
00c64fab 4863 (Ffind_coding_systems_region_internal): Adjust for the change of
cb0d4562
KH
4864 find_safe_codings. Get generic coding systems from
4865 Vcoding_system_safe_chars.
4866 (Fdefine_coding_system_internal): New function.
4867 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
4868 Initialize and staticpro Vcoding_system_safe_chars.
4869
17097258
JD
48702003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4871
2a2071c3
JD
4872 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
4873 equal old values before updating.
4874
17097258
JD
4875 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
4876
4877 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
4878
48792003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4880
4881 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
4882 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
4883 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
4884 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
4885 (xg_create_scroll_bar): Pass bar to button event callback.
4886 (xg_find_top_left_in_fixed): New function.
4887 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
4888 whole scroll bar area. Get old position with
4889 xg_find_top_left_in_fixed, calculate and only clear needed areas.
4890 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
4891 dragging is in progress. Calculate whole as for Motif.
4892 Remove code that saved last values. Call gtk_range functions to
4893 set scroll bar sizes.
4894
4895 * gtkutil.h: Removed xg_ignore_next_thumb.
4896
8cb9dfbf
JB
48972003-03-17 Juanma Barranquero <lektu@terra.es>
4898
4899 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
4900 and files included from it.
4901
00c64fab
SM
49022003-03-18 Stefan Monnier <monnier@cs.yale.edu>
4903
4904 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
4905 multiple occurrences of the same keymap under different prefixes.
4906 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
4907
c45bb3b2
JR
49082003-03-16 Jason Rumney <jasonr@gnu.org>
4909
4910 * w32gui.h: Use HDC for Display.
4911
4912 * w32term.c (w32_encode_char): Prevent double-byte chars from
4913 crashing Emacs.
4914
4915 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
4916 as binary.
4917
2a6d0874
JB
49182003-03-16 Juanma Barranquero <lektu@terra.es>
4919
4920 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
4921
03eb5fab
KS
49222003-03-16 Kim F. Storm <storm@cua.dk>
4923
4924 The following changes consolidate some of the gui-independent
4925 parts of the processing and drawing of "glyph strings" from
4926 xterm.c, w32term.c, and macterm.c into xdisp.c.
2a6d0874 4927
03eb5fab
KS
4928 * dispextern.h (struct glyph): Reduce face_id member from 22 to
4929 21 bits (this reduces number of faces from 4M to 2M).
4930 Replace W32 specific w32_font_type member (2 bits) by generic
4931 font_type member (3 bits) for portability.
4932 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
4933 (enum draw_glyphs_face): Define here.
4934 (struct glyph_string): Define here. Merge W32 and X versions.
4935 (struct redisplay_interface): New members per_char_metric,
4936 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
4937 (VCENTER_BASELINE_OFFSET): Define here.
4938 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
4939 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
4940
4941 * xdisp.c: Consolidate gui-independent "glyph string" code here.
4942 (dump_glyph_string): Moved here.
4943 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
4944 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
4945 (fill_composite_glyph_string, fill_glyph_string)
4946 (fill_image_glyph_string, fill_stretch_glyph_string)
4947 (left_overwritten, left_overwriting, right_overwritten)
4948 (right_overwriting, get_char_face_and_encoding)
4949 (set_glyph_string_background_width, compute_overhangs_and_x)
4950 (append_glyph, append_composite_glyph, produce_image_glyph)
4951 (take_vertical_position_into_account, append_stretch_glyph)
4952 (produce_stretch_glyph): New generic functions (based on X version).
4953 Call platform specific functions through rif.
4954 (INIT_GLYPH_STRING): New macro, hides W32 details.
4955 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
4956 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
4957 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
4958 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
4959 (notice_overwritten_cursor):
4960 Generic functions exported to platform modules. Users changed.
4961
4962 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
4963 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
4964 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
fad49844 4965 New macros for consolidated code.
2a6d0874 4966
03eb5fab
KS
4967 * xterm.c: Remove consolidated defines and code.
4968 (x_per_char_metric, x_encode_char)
4969 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
4970 (x_redisplay_interface): Add new members.
4971
4972 * w32gui.h (Display): Add dummy typedef for consolidation.
4973 (XChar2b): Define alias for wchar_t for consolidation.
4974 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
4975
4976 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
2a6d0874 4977 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
03eb5fab
KS
4978 New macros for consolidation.
4979
fad49844 4980 * w32term.c: Remove consolidated defines and code.
03eb5fab
KS
4981 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
4982 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
4983 (w32_per_char_metric): Change font_type arg to int for RIF.
4984 (w32_encode_char): Return int according to RIF requirements.
4985 (w32_compute_glyph_string_overhangs): Adapt to RIF.
4986 (w32_get_glyph_overhangs): New function for RIF. Uses generic
4987 x_get_glyph_overhangs.
4988 (w32_redisplay_interface): Add new members.
4989
4990 * macgui.h (XChar2b): Move typedef here for consolidation.
4991 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
4992
4993 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
4994 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
4995 consolidation.
4996
4997 * macterm.c: Remove consolidated defines and code.
4998 (mac_per_char_metric): New function for RIF.
00c64fab 4999 (mac_encode_char): Adapt to new RIF requirements.
03eb5fab
KS
5000 (mac_compute_glyph_string_overhangs): Adapt for RIF.
5001 (x_redisplay_interface): Add new members.
5002
00c64fab
SM
50032003-03-15 Stefan Monnier <monnier@cs.yale.edu>
5004
5005 * keymap.c (Vmenu_events): New var.
5006 (syms_of_keymap): Initialize it.
5007 (where_is_internal): Check more carefully what is a menu event.
5008
225c7a07
RS
50092003-03-14 Richard M. Stallman <rms@gnu.org>
5010
5011 * lread.c (read1): After #!, exit loop on eof.
5012
cea9be54
JD
50132003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5014
9ea0e54d
JD
5015 * gtkutil.h: Add declaration for xg_frame_cleared.
5016
0cb35f4e
JD
5017 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
5018
cea9be54
JD
5019 * gtkutil.c (struct xg_last_sb_pos): New structure.
5020 (handle_fixed_child): New function.
5021 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
5022 and force a redraw on them.
5023 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
5024 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
5025 so we can avoid unneeded redraws.
5026 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
5027 and force a redraw on the scroll bar.
5028 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
5029 if xg_last_sb_pos shows the positions are up to date.
0cb35f4e 5030 (xg_frame_cleared): New function.
cea9be54 5031
20b853f3
KH
50322003-03-13 Kenichi Handa <handa@m17n.org>
5033
5034 * coding.c (Fdetect_coding_region): Fix docstring.
5035 (Fdetect_coding_string): Fix docstring.
5036
7a555aff
AS
50372003-03-13 Andreas Schwab <schwab@suse.de>
5038
25cc0080
AS
5039 * gtkutil.c: Add prototype for create_menus.
5040
30225431
AS
5041 * data.c (long_to_cons): Fix type of top.
5042
5043 * xselect.c (selection_data_to_lisp_data): Use int instead of
5044 long for an integer of size 4.
5045
7a555aff 5046 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
30225431 5047 (xg_tool_bar_help_callback): Likewise.
7a555aff 5048
a3e4741f
AS
50492003-03-12 Andreas Schwab <schwab@suse.de>
5050
5051 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
5052
9668be7c
KS
50532003-03-12 Kim F. Storm <storm@cua.dk>
5054
03eb5fab 5055 The following changes consolidate the fringe handling from
9668be7c 5056 xterm.c, w32term.c, and macterm.c into xdisp.c.
00a88f32 5057
9668be7c
KS
5058 * xdisp.c: Consolidate fringe handling code here.
5059 (left_bits, right_bits, continued_bits, continuation_bits)
5060 (ov_bits, zv_bits): Define fringe bitmaps.
5061 (fringe_bitmaps): New array holding fringe bitmaps.
5062 (draw_fringe_bitmap): Draw a specific bitmap; call display
5063 specific drawing routine via rif->draw_fringe_bitmap.
5064 (draw_row_fringe_bitmaps): Generic replacement for
5065 x_draw_row_fringe_bitmaps; all callers changed.
5066 (compute_fringe_widths): Generic replacement for
5067 x_compute_fringe_widths; all callers changed.
5068
5069 * dispextern.h (enum fringe_bitmap_type): Define here.
5070 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
5071 (fringe_bitmaps): Declare extern.
5072 (struct redisplay_interface): New member draw_fringe_bitmap.
5073 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
5074
5075 * xterm.c: Remove generic fringe code.
5076 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
5077 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
5078
5079 * w32term.c: Remove generic fringe code.
5080 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
5081 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
00a88f32 5082
9668be7c
KS
5083 * macterm.c: Remove generic fringe code.
5084 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
5085 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
5086
00a88f32
SM
50872003-03-11 Stefan Monnier <monnier@cs.yale.edu>
5088
5089 * print.c (Fprin1_to_string): Return unibyte string if possible.
5090
1d1de695
DK
50912003-03-09 David Kastrup <dak@gnu.org>
5092
5093 * process.c (read_process_output): We have allocated enough space
5094 for readmax and carryover, so actually use the alloted space.
5095
257f40f2
JD
50962003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5097
5098 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
5099 toolkit scrollbar click.
5100
5101 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
5102 for USE_GTK.
5103 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
5104 also.
5105 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
5106 scrollbar and control is pressed, call x_scroll_bar_handle_click.
00a88f32 5107
257f40f2
JD
5108 * gtkutil.h: Declare xg_get_scroll_id_for_window.
5109
5110 * gtkutil.c (xg_get_scroll_id_for_window): New function.
5111 (xg_tool_bar_item_expose_callback): New function.
5112 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
5113 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
5114 on the tool bar widget.
5115 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
5116 to expose on the tool bar item widgets.
5117
15213141
JD
51182003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5119
26b74a0b 5120 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
00a88f32 5121 struct image* when deciding to update (struct image* may have been
26b74a0b
JD
5122 deleted from the image cache).
5123
15213141
JD
5124 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
5125 the event isn't for a frame (i.e. for dialogs).
5126
20b853f3 51272003-03-07 Kenichi Handa <handa@m17n.org>
cb681b34
KH
5128
5129 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
5130 composition components reaches the limit, terminate composing.
5131 (COMPOSITION_OK): New macro.
00a88f32 5132 (detect_coding_iso2022): Use it if an escape sequence for
cb681b34
KH
5133 composition is found.
5134 (coding_restore_composition): Adjust the number of composition
5135 components if it is not sane.
5136
c9029fe5
JB
51372003-03-06 Juanma Barranquero <lektu@terra.es>
5138
5139 * w32term.h (struct w32_display_info): Add xrdb member to support
5140 passing resources via -xrm on Windows.
5141
5142 * w32term.c (w32_make_rdb): New function.
5143 (w32_term_init): Use it to initialize xrdb member of w32_display_info
5144 struct. Delete leftover code.
5145
5146 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
5147 for resources passed on the command line.
5148
5149 * w32reg.c (w32_get_rdb_resource): New function.
5150 (x_get_string_resource): Use it, so resources passed with -xrm
5151 supercede the ones in the registry.
5152
9d00001f
JD
51532003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5154
5155 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
5156 instead of x_top_window_to_frame.
5157
ca2417b9
JD
51582003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5159
5160 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
5161 when restarting Emacs.
5162
5b20caf0
RS
51632003-03-03 Richard M. Stallman <rms@gnu.org>
5164
5165 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
5166 to run kill-buffer-query-functions.
5167 (Qkill_buffer_query_functions): New var.
5168 (syms_of_buffer): Init and staticpro it.
5169
58e91b77
JD
51702003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5171
5172 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
5173
932357b4
KS
51742003-02-25 Kim F. Storm <storm@cua.dk>
5175
5176 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
5177 If centering point failed to make whole line visible and vscroll
5178 is non-zero, disable vscroll and try centering point again.
5179
5180 * lread.c (read1): Accept `single space' syntax like (? x).
5181
bb8db7e1
JD
51822003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5183
5184 * keyboard.c (cancel_hourglass_unwind): Surround with
5185 #ifdef HAVE_X_WINDOWS
5186
47d77aab
KH
51872003-02-25 Kenichi Handa <handa@m17n.org>
5188
5189 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
5190 process only when "subprocesses" is defined.
5191
6a097c0c
SM
51922003-02-24 Stefan Monnier <monnier@cs.yale.edu>
5193
5194 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
5195
0b063c27
JB
51962003-02-24 Juanma Barranquero <lektu@terra.es>
5197
d1135afc
JB
5198 * callint.c (fix_command): Declare as static void and move before
5199 Fcall_interactively.
5200
0b063c27
JB
5201 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
5202 (syms_of_xdisp): Don't initialize Qwhen.
5203
0af912f0
JD
52042003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5205
5206 * keyboard.c (cancel_hourglass_unwind): New function.
5207 (command_loop_1): Cancel hourglass with unwind-protect.
5208
120d0a23
RS
52092003-02-23 Richard M. Stallman <rms@gnu.org>
5210
5211 * callint.c (fix_command): New subroutine, from Fcall_interactively.
5212 Detect (when ... (region-beginning)) etc.
5213 (Fcall_interactively): Call fix_command.
5214 (Qif, Qwhen): New variables.
5215 (syms_of_callint): Init and staticpro them.
0b063c27 5216
120d0a23
RS
5217 * regex.c (print_partial_compiled_pattern): Output to stderr.
5218
4ece81a6
KG
52192003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
5220
5221 * dired.c (directory_files_internal): Don't expand directory.
5222 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
5223 instead. From Lars Hansen <larsh@math.ku.dk>.
5224
e52bd6b7
SM
52252003-02-22 Stefan Monnier <monnier@cs.yale.edu>
5226
5227 * fns.c (string_to_multibyte): Remove unused var i.
5228 (Flanginfo): Fix int/Lisp_Object mixup.
5229 (void_call2): New fun.
5230 (Fmap_char_table): Use it in place of call2.
5231
5232 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
5233
5234 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
5235
5236 * keymap.c (copy_keymap_1): Make it static.
5237
5238 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
5239
c33ef7c4
JB
52402003-02-22 David Ponce <david@dponce.com>
5241
5242 * lread.c (Fload): Don't check STRING_MULTIBYTE.
5243
16782258
JD
52442003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5245
5246 * process.h: Removed subtty field from struct Lisp_Process.
5247
5248 * process.c (create_process): Remove setting of subtty.
5249 (emacs_get_tty_pgrp): New function.
e52bd6b7
SM
5250 (Fprocess_running_child_p, process_send_signal):
5251 Call emacs_get_tty_pgrp instead of ioctl.
16782258
JD
5252 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
5253
3abeca61
KG
52542003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
5255
5256 * keymap.c (Fdefine_key): Doc fix.
5257
92a8ce63
JB
52582003-02-21 Juanma Barranquero <lektu@terra.es>
5259
5260 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
5261
5262 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
5263 POLLING_PROBLEM_IN_SELECT.
5264
5265 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
5266 Delete #undef of POLLING_PROBLEM_IN_SELECT.
5267
5268 * s/hpux10-20.h: New file.
5269
e52bd6b7
SM
5270 * process.c (wait_reading_process_input):
5271 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
92a8ce63 5272
20f1ef2e
KH
52732003-02-20 Kenichi Handa <handa@m17n.org>
5274
32d0a9dc
KH
5275 * fontset.c (check_fontset_name): If NAME is nil, return the
5276 default fontset.
5277 (override_font_info): New function.
e52bd6b7 5278 (Fset_fontset_font): Document that NAME nil means the default fontset.
32d0a9dc
KH
5279 (Ffontset_info): If FONTSET is not the default fontset, merge
5280 FONTSET onto the copy of the default fontset, and work on that
5281 copy. Document that NAME nil means the default fontset.
5282 (Ffontset_font): Document that NAME nil means the default fontset.
5283
20f1ef2e
KH
5284 * process.c (setup_process_coding_systems): If the process's
5285 in/out descriptor is -1, do nothing.
5286
77d1daf2
AS
52872003-02-19 Andreas Schwab <schwab@suse.de>
5288
e52bd6b7
SM
5289 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
5290 Add prototypes.
77d1daf2 5291
f9a45bb3
KH
52922003-02-19 Kenichi Handa <handa@m17n.org>
5293
5294 * xfaces.c (try_alternative_families): Try all scalable fonts if
5295 Vscalable_fonts_allowed is not Qt.
5296
72ecb43c
JD
52972003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5298
5299 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
5300
ee5be7c3
JD
53012003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5302
5303 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
5304 names.
5305
5306 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
e52bd6b7 5307 (sorted_font_list): Move allocation of struct font_name to
ee5be7c3
JD
5308 x_face_list_fonts.
5309 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
5310 (Fx_list_fonts): Set maxnames to -1 to get all font names.
5311
4cd519a7
KS
53122003-02-18 Kim F. Storm <storm@cua.dk>
5313
068f9882
KS
5314 * lread.c (read1): Fix last change.
5315 "`" is not always special. Allow "?" after a character constant.
4cd519a7 5316
7290a344
AC
53172003-02-18 Andrew Choi <akochoi@shaw.ca>
5318
5319 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
5320
1f7fa69b
AS
53212003-02-18 Andreas Schwab <schwab@suse.de>
5322
5323 * window.c (window_scroll_pixel_based): Move outside a
5324 multi-glyph character before setting new window start.
5325
5326 * xdisp.c (in_display_vector_p): New function.
5327 * dispextern.h (in_display_vector_p): Declare.
5328
23e21195
KS
53292003-02-18 Kim F. Storm <storm@cua.dk>
5330
5331 * lread.c (read1): Fix and relax read syntax.
5332 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
5333 Only recognize "," after dotted-pair dot if inside backquote.
5334 Never include "`" or "," (inside backquote) in a symbol.
5335 Allow dotted-pair dot after a character constant.
5336 Allow "`" and "," (inside backquote) after a character constant.
92a8ce63 5337
f098b121
JD
53382003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5339
5340 * gtkutil.c (xg_tool_bar_expose_callback): New function.
5341 (xg_create_tool_bar): Force style of tool bar to be horizontal with
5342 icons. Set name of tool bar to emacs-toolbar.
5343 (update_frame_tool_bar): Connect expose event to
5344 xg_tool_bar_expose_callback.
5345
63020c46
RS
53462003-02-17 Richard M. Stallman <rms@gnu.org>
5347
5348 * keyboard.c (this_command_key_count_reset): New variable.
5349 Initiatize to 0 where this_command_key_count is set.
5350 (read_char): Save and restore this_command_key_count_reset
5351 around input method code.
5352 (read_char): If this_command_key_count_reset, echo reread commands.
5353 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
5354
fb4452cc
KH
53552003-02-17 Kenichi Handa <handa@m17n.org>
5356
5357 * fns.c (string_to_multibyte): Always return a multibyte string.
5358
bd11cc09
JR
53592003-02-16 Jason Rumney <jasonr@gnu.org>
5360
e52bd6b7
SM
5361 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
5362 Negative max_fonts parameter means list all.
bd11cc09 5363
4cdf4bde
DL
53642003-02-14 Dave Love <fx@gnu.org>
5365
5366 * fns.c (Flanginfo): Doc fix.
5367
023b93f6
KS
53682003-02-13 Kim F. Storm <storm@cua.dk>
5369
37cd4238
KS
5370 * lread.c (read_escape): Interpret \s as a SPACE character, except
5371 for \s-X in a character constant which still is the super modifier.
5372 (read1): Signal an `invalid read syntax' error if a character
5373 constant is immediately followed by a digit or symbol character.
5374
140a6b7e
KS
5375 * search.c (Fmatch_data): Doc fix. Explicitly state that
5376 match-data is undefined if last search failed.
5377
023b93f6
KS
5378 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
5379 All uses changed.
5380
7d5c86e5
JB
53812003-02-12 Juanma Barranquero <lektu@terra.es>
5382
5383 * eval.c (Fdefmacro): Fix typo.
5384
295fff2c
KS
53852003-02-12 Kim F. Storm <storm@cua.dk>
5386
5387 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
5388 macro is a string, convert meta modifiers in string when copying
5389 the string into a vector.
5390
60f3202d
KS
53912003-02-11 Kim F. Storm <storm@cua.dk>
5392
5393 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
5394
61cb0b53
KH
53952003-02-11 Kenichi Handa <handa@m17n.org>
5396
5397 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
5398
7392e23c
KS
53992003-02-10 Kim F. Storm <storm@cua.dk>
5400
5401 * process.c: Doc fixes.
5402 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
5403
ce4254bd
KH
54042003-02-10 Kenichi Handa <handa@m17n.org>
5405
9c7a329a
KH
5406 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
5407
ce4254bd
KH
5408 * process.c (QCfilter_multibyte): New variable.
5409 (setup_process_coding_systems): New function.
e52bd6b7
SM
5410 (Fset_process_buffer, Fset_process_filter):
5411 Call setup_process_coding_systems.
ce4254bd
KH
5412 (Fstart_process): Initialize the member `filter_multibyte' of
5413 struct Lisp_Process.
5414 (create_process): Call setup_process_coding_systems.
5415 (Fmake_network_process): New keyward `:filter-multibyte'.
5416 Initialize the member `filter_multibyte' of struct Lisp_Process.
5417 Call setup_process_coding_systems.
5418 (server_accept_connection): Call setup_process_coding_systems.
5419 (read_process_output): If the process has a filter, decide the
5420 multibyteness of a string to given to the filter by
5421 `filter_multibyte' member of the process. If the process doesn't
5422 have a filter and the result of conversion is unibyte, use
5423 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
5424 multibyte form.
5425 (Fset_process_coding_system): Call setup_process_coding_systems.
5426 (Fset_process_filter_multibyte): New function.
5427 (Fprocess_filter_multibyte_p): New function.
5428 (syms_of_process): Intern and staticpro QCfilter_multibyte.
5429 Defsubr Sset_process_filter_multibyte and
5430 Sprocess_filter_multibyte_p.
5431
5432 * process.h (struct Lisp_Process): New member filter_multibyte.
5433
5434 * lisp.h (setup_process_coding_systems): Add prototype.
5435
5436 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
5437 process, update coding systems for the process.
5438
b08d5f59
KH
54392003-02-09 Kenichi Handa <handa@m17n.org>
5440
5441 * fns.c (string_to_multibyte): New function.
5442 (Fstring_to_multibyte): New function.
5443 (syms_of_fns): Defsubr it.
5444
0dfd93c0
AS
54452003-02-08 Andreas Schwab <schwab@suse.de>
5446
5447 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
5448 instead of the substitution.
5449
7b76ca1c
JD
54502003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5451
5452 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
5453
5454 * xmenu.c (menu_position_func): Adjust menu popup position so that
5455 the menu is fully visible.
7b76ca1c 5456
2436a4e4
JD
54572003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5458
5459 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
e52bd6b7
SM
5460 (x_make_frame_invisible, x_wm_set_icon_position):
5461 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
2436a4e4
JD
5462
5463 * xfns.c (x_set_name, x_set_title): Ditto.
5464
37d1e680
RS
54652003-02-04 Richard M. Stallman <rms@gnu.org>
5466
5467 * keyboard.c (echo_now): Update before_command_echo_length.
5468 (Freset_this_command_lengths): Reset this_command_key_count etc.
5469 immediately rather than arranging to do it later.
5470 (before_command_key_count_1, before_command_echo_length_1)
5471 (before_command_restore_flag): Vars deleted.
5472 (add_command_key): Don't handle before_command_restore_flag.
5473 (read_char, record_menu_key): Don't update before_command_key_count or
5474 before_command_echo_length.
5475 (read_char): Don't handle before_command_restore_flag.
5476
5477 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
5478 in direct-output clauses if it wouldn't be called in the ordinary case.
5479
578846a3
KS
54802003-02-04 Kim F. Storm <storm@cua.dk>
5481
5482 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
5483
49853a4d
JD
54842003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5485
5486 * gtkutil.c (remove_from_container): Copying list is not needed.
5487 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
5488 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
5489 on list returned from gtk_container_get_children to avoid memory leak.
5490
8b53dc06
JR
54912003-02-01 Jason Rumney <jasonr@gnu.org>
5492
5d54d177
JR
5493 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
5494 local malloc.
5495 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
5496 definitions in xpm.h.
5497 (init_xpm_functions): New function.
5498 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
5499 (init_external_image_libraries): Try to load libXpm.dll.
5500
8b53dc06
JR
5501 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
5502 timestamp.
5503
b222e415
DL
55042003-01-31 Dave Love <fx@gnu.org>
5505
5506 * syntax.c (Fskip_chars_forward)
5507 (open-paren-in-column-0-is-defun-start): Doc fix.
5508
c60ee5e7
JB
55092003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
5510
5511 * fileio.c: Support // at start of name for Cygwin (just added proper
5512 preprocessor tests).
5513
5514 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
5515
5516 * Makefile.in: Use @EXEEXT@ for Cygwin.
5517
5518 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
5519
5520 * s/cygwin.h: Added for Cygwin port.
5521
53b37591
JB
55222003-01-31 Juanma Barranquero <lektu@terra.es>
5523
5524 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
5525 when including gif_lib.h.
fe929957
JB
5526 (init_gif_functions, init_tiff_functions): New functions.
5527 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
5528 Windows. Disable color table lookups. Call library functions
53b37591 5529 through pointers determined at runtime.
fe929957
JB
5530 (init_external_image_libraries): Try to load libungif.dll and
5531 libtiff.dll.
53b37591 5532
45415a8f
KH
55332003-01-31 Kenichi Handa <handa@m17n.org>
5534
5535 * xdisp.c (SKIP_GLYPHS): New macro.
e52bd6b7 5536 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
45415a8f 5537
a97e4138
JD
55382003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5539
e52bd6b7 5540 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
a97e4138 5541
6eed9bed
DL
55422003-01-30 Dave Love <fx@gnu.org>
5543
5544 * alloc.c (Vgc_elapsed, gcs_done): New variables.
5545 (Fgarbage_collect): Use them.
5546 (init_alloc, syms_of_alloc): Set them up.
5547
100dcd40
JB
55482003-01-30 Juanma Barranquero <lektu@terra.es>
5549
5550 * w32fns.c (init_external_image_libraries): Add missing operator.
5551
fbd852af
JR
55522003-01-29 Jason Rumney <jasonr@gnu.org>
5553
5554 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
5555 an alternative name for jpeg.dll.
5556
8a2d8020
KH
55572003-01-29 Kenichi Handa <handa@m17n.org>
5558
5559 * xdisp.c (set_cursor_from_row): Pay attention to string display
5560 properties.
5561
058c18c7
AC
55622003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
5563
5564 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
5565 <escape>.
5566 (keycode_to_xkeysym_table): Reformat and add more comments.
5567 (XTread_socket): Drop special case for backspace.
5568
385f11cf
AC
55692003-01-28 Andrew Choi <akochoi@shaw.ca>
5570
5571 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
5572 values in old-style RGB specs.
5573
c922a224
JB
55742003-01-27 Juanma Barranquero <lektu@terra.es>
5575
5576 * w32fns.c (init_external_image_libraries): Try alternate names for the
5577 jpeg dll.
5578
0a1d6de0
JD
55792003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5580
5581 * gtkutil.c (create_dialog, xg_separator_p)
5582 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
5583 before calling strcmp or strlen.
5584
a97e4138 55852003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1d1885fc
JD
5586
5587 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
5588 and handle image load failure.
5589
28908312
JR
55902003-01-26 Jason Rumney <jasonr@gnu.org>
5591
5592 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
5593 New functions.
5594 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
5595 Disable color table lookups. Call jpeg library functions
5596 through pointers determined at runtime.
5597 (init_external_image_libraries): Try to load jpeg.dll.
5598
84e47416
RS
55992003-01-25 Richard M. Stallman <rms@gnu.org>
5600
5601 * lisp.h: Declare format2 instead of format1.
5602
5603 * fileio.c (barf_or_query_if_file_exists):
5604 Call format2 instead of format1.
5605
5606 * editfns.c (format2): New function, replaces format1
5607 but takes exactly two Lisp Objects as format args.
5608
5609 * buffer.c (Fkill_buffer): Call format2 instead of format1.
5610
a97e4138 56112003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1fcfb866
JD
5612
5613 * xterm.h: Change to return value of x_dispatch_event to int.
5614
5615 * xterm.c (x_filter_event): New function.
5616 (event_handler_gdk, XTread_socket): Call x_filter_event.
5617 (x_dispatch_event): Change to return value of finish.
5618 (event_handler_gdk): Use return value from x_dispatch_event.
5619
5620 * xfns.c (x_window): Call create_frame_xic for GTK version to
5621 initialize input methods.
5622
5623 * gtkutil.h: Add (void) prototypes.
5624
5625 * gtkutil.c (create_menus): Remove code that puts the help menu to
5626 the right.
5627
54eefef1
JR
56282003-01-25 Jason Rumney <jasonr@gnu.org>
5629
5630 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
5631 [HAVE_PNG]: Sync with xfns.c version.
5632 (png_load): Adjust colors for Windows. Use Windows
5633 bitmaps. Disable color table lookups.
c262430d
JR
5634 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
5635 (init_png_functions): New function.
5636 (png_read_from_memory, png_load): Call png library functions
5637 through pointers determined at runtime.
5638 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
5639 (init_external_image_libraries): New function.
5640 (init_xfns): Call it.
54eefef1 5641
1a9e275b
AS
56422003-01-24 Andreas Schwab <schwab@suse.de>
5643
5644 * minibuf.c (Fminibuffer_message): Verify type of parameter.
5645
a97e4138 56462003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
81e302ef
JD
5647
5648 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
5649 of static initializer.
5650
422eec7e
DL
56512003-01-24 Dave Love <fx@gnu.org>
5652
5653 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
5654 architectures.
5655
5656 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
5657 Use __alignof__.
5658
2a026b04
KH
56592003-01-24 Kenichi Handa <handa@m17n.org>
5660
5661 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
e52bd6b7 5662 It it is nonzero, don't pretend that an invisible area doesn't exist.
2a026b04
KH
5663 (command_loop_1): Call adjust_point_for_property with proper
5664 second arg.
5665
a18bb28d
JR
56662003-01-22 Jason Rumney <jasonr@gnu.org>
5667
5668 Sync changes with xterm.c and xfns.c.
5669
5670 * w32term.c (x_draw_glyph_string_foreground)
5671 (x_draw_composite_glyph_string_foreground): Implement overstriking.
5672
5673 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
5674 phys_cursor's hpos is overwritten. This is still not completely
5675 correct, as it doesn't really make sense to use hpos at all to
5676 get the cursor glyph (as that is relative to the width of the
5677 characters on the line, which may have changed during the update).
5678
5679 * w32term.c (notice_overwritten_cursor): Handle the special case
5680 of the cursor being in the first blank non-text line at the
5681 end of a window.
5682
5683 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
5684 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
5685 Compute from the x position returned by x_draw_glyphs.
5686
5687 (x_display_and_set_cursor): Don't set phys_cursor_width here,
5688 except for NO_CURSOR and system caret, to make phys_cursor_width
5689 contain what its name suggests.
5690 (notice_overwritten_cursor): Consider the cursor image erased if
5691 the output area intersects the cursor image in y-direction.
5692
6a097c0c
SM
5693 * w32term.c (note_mode_line_or_margin_highlight): Rename from
5694 note_mode_line_highlight and extend.
a18bb28d
JR
5695
5696 * w32term.c (last_window): New variable.
5697 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
5698 (note_mouse_movement): Remove reimplemented code in #if 0.
5699
5700 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
5701 not update_mode_lines, and always set it to 1.
5702
ac6e47ef
JR
57032003-01-21 Jason Rumney <jasonr@gnu.org>
5704
5705 * w32fns.c (IDC_HAND): Define it if system headers don't.
5706
57072003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
5708
5709 * w32term.h (struct w32_output): New member hand_cursor.
5710 (WM_EMACS_SETCURSOR): New message definition.
5711
5712 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
5713 function w32_define_cursor.
5714 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
5715 position, change member name output_data.x to output_data.w32 and
5716 add function w32_define_cursor.
5717 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
5718 and change member name output_data.x to output_data.w32.
e52bd6b7
SM
5719 (w32_initialize_display_info):
5720 Setup dpyinfo->vertical_scroll_bar_cursor.
ac6e47ef
JR
5721
5722 * w32fns.c (Vx_hand_shape): New variable.
5723 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
5724 WM_EMACS_SETCURSOR.
5725 (x-create-frame): Setup Cursor types.
5726
ceb39a17
JB
57272003-01-21 David Ponce <david@dponce.com>
5728
ac6e47ef
JR
5729 * w32term.c (w32_encode_char): For DIM=1 charset, set
5730 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
5731 x_encode_char change by Kenichi Handa <handa@m17n.org> on
ceb39a17 5732 2002-09-30.)
ac6e47ef
JR
5733 (w32_draw_relief_rect): Declare all args.
5734 (w32_define_cursor): New.
5735
5736 * w32fns.c (w32_load_cursor): New function.
5737 (w32_init_class): Use it.
5738 (x_put_x_image): Declare all args.
5739
46cf0bed
JB
57402003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
5741
5742 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
5743
a97e4138 57442003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e8794476
JD
5745
5746 * gtkutil.c: Must include stdio.h before termhooks.h
5747
83fc9c63
DL
57482003-01-21 Dave Love <fx@gnu.org>
5749
5750 * alloc.c (Fgc_status): Print zombie list.
5751 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
5752 Fix assignment of zombies.
5753 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
5754 Don't take car of non-cons.
5755
5756 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
5757
5758 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
5759
fe04b8c8
JR
57602003-01-20 David Ponce <david@dponce.com>
5761
5762 * w32menu.c (digest_single_submenu): Declare all args.
5763
5764 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
5765 changes in xmenu.c:
5766
5767 (parse_single_submenu): Use individual keymap's prompt
5768 string as pane name, if there is one.
5769 (set_frame_menubar): Save menu_items_n_panes from each call to
5770 parse_single_submenu and use it when calling digest_single_submenu.
5771
539e69a9
ST
57722003-01-20 Steven Tamm <steventamm@mac.com>
5773
5774 * macterm.c (XTread_socket): Checks for valid, visible window
5775 before sending a scroll-wheel event.
5776
675d000f
RS
57772003-01-20 Richard M. Stallman <rms@gnu.org>
5778
5779 * xdisp.c (redisplay_window): If mini window's buffer is not
5780 a minibuffer, then redisplay it like other windows.
5781
a97e4138 57822003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22174d10
JD
5783
5784 * gtkutil.c (xg_create_frame_widgets): Check if there is an
5785 external tool bar before setting tool bar height.
5786
048addec
JD
57872003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5788
5789 * xterm.c (handle_one_xevent): Surround popup_activated
5790 with #ifdef:s for non-toolkit version.
5791
5792 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
5793 (gtkutil.o): New file.
5794 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
5795 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
5796
5797 * gtkutil.c: New file for GTK version.
5798
5799 * gtkutil.h: New file for GTK version.
5800
5801 * xterm.h: Add xt_or_gtk_widget.
5802 Include gtk files for USE_GTK.
5803 (struct x_output): Add toolbar_height.
5804 (struct x_output): Add GTK widgets and Gdk size_hints.
5805 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
5806 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
5807 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
5808
5809 * xterm.c: Include gtkutil.h for USE_GTK.
5810 Declare extern void free_frame_menubar for USE_GTK.
5811 (note_mouse_highlight): Check popup_activated for USE_GTK.
5812 (xt_action_hook): Don't compile if USE_GTK.
5813 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
5814 (xg_scroll_callback): New function.
5815 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
5816 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
5817 for USE_GTK.
5818 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
5819 xg_show_scroll_bar for USE_GTK.
5820 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
5821 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
5822 (event_handler_gdk): New function for USE_GTK.
5823 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
5824 (handle_one_xevent): Make sure widget is mapped before
5825 calling x_real_positions for USE_GTK.
5826 (XTread_socket): Add GTK event loop for USE_GTK.
5827 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
5828 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
5829 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
5830 (x_iconify_frame): Add code for USE_GTK.
5831 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
5832 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
5833 is in gtkutil.c.
5834 (x_term_init): Add initialization for GTK.
5835 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
5836
5837 * xmenu.c: Include gtkutil.h for USE_GTK.
5838 (Fx_popup_menu): Use current position if x and y is NIL.
6bdb309a
SM
5839 (single_menu_item, single_menu_item, Fx_popup_dialog):
5840 Check for USE_GTK.
048addec
JD
5841 (popup_widget_loop): New function for USE_GTK.
5842 (x_activate_menubar): Add code for USE_GTK.
5843 (popup_activate_callback, popup_deactivate_callback)
6bdb309a
SM
5844 (menu_highlight_callback, menubar_selection_callback):
5845 Add USE_GTK versions.
048addec
JD
5846 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
5847 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
5848 (free_frame_menubar): Only compile if not USE_GTK. GTK version
5849 is in gtkutil.c.
5850 (popup_selection_callback): New version for USE_GTK.
5851 (create_and_show_popup_menu): New fuction, one USE_GTK version and
6bdb309a 5852 one USE_X_TOOLKIT version.
048addec
JD
5853 (xmenu_show): Call create_and_show_popup_menu.
5854 (dialog_selection_callback): New version for USE_GTK.
5855 (create_and_show_dialog): New fuction, one USE_GTK version and
6bdb309a 5856 one USE_X_TOOLKIT version.
048addec
JD
5857 (xdialog_show): Call create_and_show_dialog.
5858
5859 * xfns.c: Include gtkutil for USE_GTK.
5860 (x_window_to_frame, x_any_window_to_frame)
5861 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
5862 (x_top_window_to_frame): Add code for USE_GTK.
5863 (x_set_background_color): Call xg_set_background_color for GTK.
5864 (x_set_menu_bar_lines): Check for USE_GTK.
5865 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
5866 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
5867 (x_window): Call xg_create_frame_widgets for USE_GTK.
5868 (Fx_create_frame): Check for USE_GTK
5869 (Fx_file_dialog): New implementation for USE_GTK.
5870
5871 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
5872 (update_menu_bar): Add check for USE_GTK.
5873 (update_tool_bar): Add check for USE_GTK and external tool bar.
5874 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
5875 (redisplay_internal): Add check for USE_GTK and popup_activated.
5876 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
5877 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
5878 (display_menu_bar): Add check for USE_GTK
5879
5880 * lisp.h: Declare Vx_resource_name extern.
5881
a64387ee 5882 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
048addec
JD
5883 for USE_GTK.
5884 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
5885
5886 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
5887 (FRAME_EXTERNAL_TOOL_BAR): New macro.
5888 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
5889
5890 * fileio.c (Fread_file_name): Add check for USE_GTK.
5891
6bdb309a
SM
5892 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
5893 Add check for USE_GTK.
048addec
JD
5894
5895 * config.in: Added HAVE_GTK
5896
5897 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
5898
58992003-01-18 Stefan Monnier <monnier@cs.yale.edu>
5900
5901 * charset.h (Funibyte_char_to_multibyte): Export.
5902
59032003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5904
5905 * xmenu.c (mouse_position_for_popup): New function.
5906 (Fx_popup_menu): Call mouse_position_for_popup for X and
5907 mouse_position_hook for others.
5908
59092003-01-17 Kim F. Storm <storm@cua.dk>
5910
5911 * editfns.c (Finsert): Mention `string-make-multibyte' and
5912 `string-as-multibyte' in doc string.
5913
59142003-01-17 Kenichi Handa <handa@m17n.org>
5915
5916 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
3c02a6f5 5917
048addec
JD
5918 * editfns.c (Fformat): Convert an unibyte char argument that is
5919 formatted by "%c" to multibyte if the total result must be a
5920 multibyte string.
cd7df9c0 5921
048addec 59222003-01-16 Kim F. Storm <storm@cua.dk>
cd7df9c0 5923
048addec
JD
5924 * process.c (set-process-filter): Document unibyte/multibyte-ness
5925 of string argument.
56210ecd 5926
048addec 59272003-01-16 Kenichi Handa <handa@m17n.org>
56210ecd 5928
048addec 5929 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
56210ecd 5930
048addec
JD
5931 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
5932 (re_search_2): Likewise.
6df8b9fe 5933
048addec 59342003-01-15 Kenichi Handa <handa@m17n.org>
6df8b9fe 5935
048addec
JD
5936 * xdisp.c (message_dolog): Fix bug of the case that *Message*
5937 buffer is unibyte.
292ddc31 5938
048addec 59392003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
292ddc31 5940
048addec 5941 * fns.c (Fsubstring): Clarify doc string.
292ddc31 5942
048addec
JD
5943 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
5944 (Fprevious_char_property_change)
5945 (Fnext_single_char_property_change)
5946 (Fprevious_single_char_property_change, Fnext_property_change)
5947 (Fnext_single_property_change, Fprevious_property_change)
5948 (Fprevious_single_property_change, Fadd_text_properties)
5949 (Fput_text_property, Fset_text_properties)
5950 (Fremove_text_properties, Fremove_list_of_text_properties)
5951 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
63e4e4c6 5952
048addec 59532003-01-14 Kim F. Storm <storm@cua.dk>
63e4e4c6 5954
048addec
JD
5955 * process.h (struct Lisp_Process): New member plist replaces old
5956 member private_vars. All uses changed.
63e4e4c6 5957
048addec 5958 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
6bdb309a 5959 (QCplist): Rename from QCvars. Change all uses.
048addec 5960 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
6bdb309a 5961 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
048addec 5962 (syms_of_process): Intern, staticpro, defsubr these.
6bdb309a 5963 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7ed16567 5964
048addec 59652003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7ed16567 5966
6bdb309a 5967 * m/delta.h: Remove (obsolete).
e833850f 5968
048addec 59692003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
e833850f 5970
048addec
JD
5971 * fileio.c (Fdelete_directory, Fdelete_file): Document the
5972 behaviour in front of symlinks.
5973 (Fdelete_file): Raise an error on directories.
817cb127 5974
048addec 59752003-01-13 Dave Love <fx@gnu.org>
817cb127 5976
048addec 5977 * fns.c (Freverse): Use QUIT.
3e8cf2ea 5978
048addec 59792003-01-13 Richard M. Stallman <rms@gnu.org>
3e8cf2ea 5980
048addec
JD
5981 * minibuf.c (minibuffer_completion_contents):
5982 Error if point is inside prompt.
3e8cf2ea 5983
048addec
JD
5984 * keyboard.c (command_loop_1): Don't redisplay directly
5985 if there's a post-command-hook.
3e8cf2ea 5986
048addec
JD
5987 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
5988 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
2c10f029 5989
048addec 59902003-01-12 Kim F. Storm <storm@cua.dk>
94e8ffca 5991
048addec 5992 * process.h (struct Lisp_Process): New member private_vars.
94e8ffca 5993
048addec
JD
5994 * process.c (QCvars): New variable.
5995 (syms_of_process): Intern and staticpro it.
5996 (Fset_process_contact): Removed function.
5997 (Fprocess_variable, Fset_process_variable): New functions.
5998 (syms_of_process): Defsubr them.
5999 (Fstart_process): Initialize private_vars plist to nil.
6000 (Fmake_network_process): New arg :vars to setup the private
6001 variables for new network process.
6002 (server_accept_connection): Copy server's private variables to
6003 client process.
2c10f029 6004
048addec
JD
6005 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
6006 crashes). Code rewritten and simplified. Now directly aligns the
6007 pointer and recalculates pure_bytes_used, rather than aligning the
6008 size and adjusting the pointer.
b8a76c6c 6009
048addec 60102003-01-11 Kim F. Storm <storm@cua.dk>
b8a76c6c 6011
048addec
JD
6012 * process.c (Fset_process_contact): New function.
6013 (syms_of_process): defsubr it.
6014 (make-network-process): Update doc.
3a8d0899 6015
048addec 60162003-01-10 Andreas Schwab <schwab@suse.de>
3a8d0899 6017
048addec
JD
6018 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
6019 Reported by Berthold Gunreben <b.gunreben@web.de>.
4abc7470 6020
048addec 60212003-01-10 Dave Love <fx@gnu.org>
4abc7470 6022
048addec 6023 * composite.c (syms_of_composite): Make composition_hash_table weak.
b809d662 6024
048addec 60252003-01-09 Kim F. Storm <storm@cua.dk>
b809d662 6026
048addec
JD
6027 * process.c (Fmake_network_process): Convert new port number
6028 to host byte order for `:service t' case. From Mario Lang.
bf338245 6029
048addec 60302003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
bf338245 6031
048addec
JD
6032 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
6033 instead of XtAppProcessEvent.
bf338245 6034
048addec
JD
6035 * xterm.c (handle_one_xevent): New function.
6036 (x_dispatch_event): New function.
6037 (XTread_socket): Call handle_one_xevent.
bf338245 6038
048addec 6039 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
e833850f 6040
048addec
JD
6041 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
6042 call XQueryPointer to get coordinates.
6043 (popup_get_selection): Do not set popup_activated_flag to zero,
6044 let popup_deactivate_callback do that. Needed for Motif.
6045 Call x_dispatch_event instead of XtDispatchEvent.
6046 (xmenu_show): Calculate root coordinate from frame top/left position.
c4af2bce 6047
048addec 60482003-01-08 Kim F. Storm <storm@cua.dk>
c4af2bce 6049
6bdb309a 6050 * process.c (server_accept_connection): Fix recording of new
048addec
JD
6051 connection's local address in :local property of contact info.
6052 (Fmake_network_process): Record local network address for new
6053 client processes in :local property of contact info.
6bdb309a 6054 (format-network-address): Add arg OMIT-PORT. Change callers.
00e3ab56 6055
048addec 60562003-01-07 Dave Love <fx@gnu.org>
00e3ab56 6057
048addec 6058 * Makefile.in (fns.o): Depend on coding.h.
f387e1fd 6059
048addec 60602003-01-07 Markus Rost <rost@math.ohio-state.edu>
f387e1fd 6061
048addec 6062 * minibuf.c (Fread_variable): Doc fix.
f387e1fd 6063
048addec
JD
6064 * eval.c (Fuser_variable_p): Doc change. For custom variables,
6065 use the same test as for custom-variable-p.
8c6d74c6 6066
048addec 60672003-01-05 Richard M. Stallman <rms@gnu.org>
e833850f 6068
048addec
JD
6069 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
6070 Count LAST_LINE_MISFIT in scroll margin for end of window.
6071 Move label too_near_end before setting SCROLL_MARGIN_POS.
6072 Set LAST_LINE_MISFIT before jumping there.
8c6d74c6 6073
048addec
JD
6074 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
6075 scroll_conservatively case. If scrolling that much doesn't change
6076 STARTP, move it down one line.
e833850f 6077
048addec
JD
6078 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
6079 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8c6d74c6 6080
048addec
JD
6081 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
6082 selected frame.
8c6d74c6 6083
048addec
JD
6084 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
6085 (syms_of_keymap): staticpro them.
6086 (Fapropos_internal): Initialize them and clear them out.
6087 Don't GCPRO them.
8c6d74c6 6088
048addec
JD
6089 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
6090 Doc fixes.
8c6d74c6 6091
048addec
JD
6092 * lisp.h: New misc type Lisp_Save_Value.
6093 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
6094 (XSAVE_VALUE): New macro.
6095 (struct Lisp_Save_Value): New data type.
6096 (union Lisp_Misc): Add u_save_value alternative.
6097 (make_save_value): Declared.
8c6d74c6 6098
048addec 6099 * alloc.c (make_save_value): New function.
8c6d74c6 6100
048addec
JD
6101 * xterm.c (x_catch_errors): Save dpy using make_save_value.
6102 (x_catch_errors_unwind): Call XSync.
8c6d74c6 6103
048addec 61042003-01-01 Richard M. Stallman <rms@gnu.org>
8c6d74c6 6105
048addec 6106 * window.c (window_scroll_pixel_based): Partially undo last change.
8c6d74c6 6107
048addec
JD
6108 * keyboard.c (command_loop_1): Call adjust_point_for_property
6109 in direct action cases for Qforward_char and Qbackward_char.
6110 Set already_adjusted so it won't be done twice.
8c6d74c6 6111
048addec 61122002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
8c6d74c6 6113
048addec
JD
6114 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
6115 type definition of size_t.
8c609cff 6116
048addec 61172003-01-02 Steven Tamm <steventamm@mac.com>
8c609cff 6118
048addec
JD
6119 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
6120 distinguish Carbon GUI builds from X11 builds on darwin.
b37113a1 6121
048addec 61222002-12-30 Steven Tamm <steventamm@mac.com>
b37113a1 6123
048addec
JD
6124 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
6125 to default to t.
fa634a5e 6126
048addec 61272002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
fa634a5e 6128
048addec 6129 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
ce0669d4 6130
048addec 61312002-12-28 Steven Tamm <steventamm@mac.com>
ce0669d4 6132
048addec
JD
6133 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
6134 allow building in a different directory than source. Uses some
6135 GNU Make extensions, but there is no other make on Mac OS X.
2308af15 6136
048addec 61372002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
2308af15 6138
048addec
JD
6139 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
6140 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
6141 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
6142 (Fstring_to_number): Mention the returned value in the doc strings.
2155ecf3 6143
048addec 61442002-12-23 Richard M. Stallman <rms@gnu.org>
2155ecf3 6145
048addec
JD
6146 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
6147 <scroll-down-aggressively>: Doc fix.
2155ecf3 6148
048addec
JD
6149 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
6150 string as pane name, if there is one.
6151 (set_frame_menubar): Save menu_items_n_panes from each call to
6152 parse_single_submenu and use it when calling digest_single_submenu.
2155ecf3 6153
048addec
JD
6154 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
6155 Don't try to make last line fully visible if it is past end of window.
61f1d295 6156
048addec 61572002-12-22 Steven Tamm <steventamm@mac.com>
61f1d295 6158
048addec
JD
6159 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
6160 (mac_menu_show): Add support for hierarchical popup menus.
6161 (add_menu_item): Remove indentation support.
6162 (fill_submenu, fill_menu): Create hierarchical menus
6163 instead of using indentation.
0b17a217 6164
048addec 61652002-12-22 Richard M. Stallman <rms@gnu.org>
0b17a217 6166
048addec
JD
6167 * xdisp.c (try_cursor_movement): Don't call try_window here.
6168 (redisplay_window): Never redisplay minibuffer when inactive.
0b17a217 6169
048addec 6170 * window.c (select_window_1): Undo 9/21 change.
402e4f8b 6171
048addec 61722002-12-22 Steven Tamm <steventamm@mac.com>
402e4f8b 6173
048addec
JD
6174 * macterm.c (XTread_socket): Call KeyTranslate for control and
6175 meta to deal correctly shifted non-alpha characters, like C-S-5
6176 being treated like C-%. Does not look for shift key to deal
6177 with masking off control-key with mac-reverse-ctrl-meta.
f02cac82 6178
048addec 61792002-12-21 Richard M. Stallman <rms@gnu.org>
f02cac82 6180
048addec
JD
6181 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
6182 If it is non-nil, run timers. Use an unwind-protect to requeue
6183 the events that were read ahead.
6184 (popup_get_selection_unwind): New subroutine.
6185 (popup_get_selection_queue): File-scope variable now holds that queue.
6186 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
6187 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
6188 Use an unwind-protect to pop down the dialog box.
6189 (xdialog_show_unwind): New subroutine implements that.
f02cac82 6190
048addec
JD
6191 * xdisp.c (row_containing_pos): Change exit test using last_y.
6192 (try_window_id): Abort if row_containing_pos returns null.
f02cac82 6193
048addec
JD
6194 * lread.c (load_error_handler): New function.
6195 (Fload): Handle errors in Fsubstitute_in_file_name.
6196 Don't expect Fsignal to return.
f02cac82 6197
048addec
JD
6198 * eval.c: Errors and throws work right with interrupt blocking.
6199 (struct catchtag): New elt interrupt_input_blocked.
6200 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
6201 (internal_catch, Fcondition_case, internal_condition_case)
6202 (internal_condition_case_1, internal_condition_case_2): Save it.
6203 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
f02cac82 6204
048addec 6205 * editfns.c (Fformat): Add parens.
f02cac82 6206
048addec
JD
6207 * dired.c (file_name_completion): Fix that change.
6208 Delete special quit-handling code; just use QUIT.
f02cac82 6209
048addec 62102002-12-21 Tak Ota <Takaaki.Ota@am.sony.com> (tiny change)
f02cac82 6211
048addec
JD
6212 * dired.c (file_name_completion): Close directory on error
6213 just as in directory_files_internal.
1a590729 6214
048addec 62152002-12-19 David Kastrup <David.Kastrup@t-online.de>
1a590729 6216
048addec
JD
6217 * window.c (Fset_window_configuration): Set old_point to correct
6218 value when new_current_buffer == current_buffer.
f02cac82 6219
048addec 62202002-12-17 Ben Key <bkey1@tampabay.rr.com>
2308af15 6221
048addec
JD
6222 Revisited my earlier fix for the following entry in etc/PROBLEMS:
6223 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
6224 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9785d95b 6225
048addec
JD
6226 These changes were in part based upon suggestions made by Peter
6227 'Luna' Runestig [peter@runestig.com].
9785d95b 6228
048addec
JD
6229 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
6230 g_b_init_get_token_information, g_b_init_lookup_account_sid,
6bdb309a 6231 g_b_init_get_sid_identifier_authority ): Add several static
048addec 6232 global variables.
9785d95b 6233
048addec
JD
6234 * w32.c (globals_of_w32): New function. Used to initialize those
6235 global variables that must always be initialized on startup even
6236 when the global variable initialized is non zero. Its primary
6237 purpose at this time is to set the global variables
6238 g_b_init_is_windows_9x, g_b_init_open_process_token,
6239 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
6240 g_b_init_get_sid_identifier_authority to 0 on startup.
6241 Called from main.
9785d95b 6242
048addec
JD
6243 * w32.c (is_windows_9x): Perform initialization only if
6244 g_b_init_is_windows_9x is equal to 0. On initialization set
6245 g_b_init_is_windows_9x equal to 1.
2308af15 6246
048addec
JD
6247 * w32.c (open_process_token): Perform initialization only if
6248 g_b_init_open_process_token is equal to 0. On initialization set
6249 g_b_init_open_process_token equal to 1.
2308af15 6250
048addec
JD
6251 * w32.c (get_token_information): Perform initialization only if
6252 g_b_init_get_token_information is equal to 0. On initialization
6253 set g_b_init_get_token_information equal to 1.
9785d95b 6254
048addec
JD
6255 * w32.c (lookup_account_sid): Perform initialization only if
6256 g_b_init_lookup_account_sid is equal to 0. On initialization
6257 set g_b_init_lookup_account_sid equal to 1.
9785d95b 6258
048addec
JD
6259 * w32.c (get_sid_identifier_authority): Perform initialization
6260 only if g_b_init_get_sid_identifier_authority is equal to 0.
6261 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
9785d95b 6262
048addec
JD
6263 * w32fns.c (globals_of_w32fns): New function. Used to initialize
6264 those global variables that must always be initialized on startup
6265 even when the global variable initialized is non zero.
6266 Its primary purpose at this time is to initialize the global variable
6267 track_mouse_event_fn.
9785d95b 6268
a64387ee 6269 * w32fns.c (w32_wnd_proc): Remove initialization of
048addec 6270 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
9785d95b 6271
048addec 6272 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
9785d95b 6273
a64387ee 6274 * w32menu.c (globals_of_w32menu): New function. Used to
048addec
JD
6275 initialize those global variables that must always be initialized
6276 on startup even when the global variable initialized is non zero.
6277 Its primary purpose at this time is to initialize the global
6278 variables get_menu_item_info and set_menu_item_info.
9785d95b 6279
048addec
JD
6280 * w32menu.c (initialize_frame_menubar): Remove initialization of
6281 get_menu_item_info and set_menu_item_info.
9785d95b 6282
048addec 6283 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
9785d95b 6284
048addec
JD
6285 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
6286 Declare them.
9785d95b 6287
048addec
JD
6288 * emacs.c (main): Call globals_of_w32 prior to calling
6289 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
6290 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
6291 is defined.
9785d95b 6292
048addec
JD
6293 * w32term.c (x_update_window_begin): Fix Windows API error
6294 detected by BoundsChecker. Test to determine if
6295 w32_system_caret_hwnd is NULL prior to attempting to use
6296 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
2308af15 6297
048addec
JD
6298 * w32term.c (x_update_window_end): Fix Windows API error
6299 detected by BoundsChecker. Test to determine if
6300 w32_system_caret_hwnd is NULL prior to attempting to use
6301 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
b6da19ef 6302
048addec 63032002-12-17 Kenichi Handa <handa@m17n.org>
b6da19ef 6304
048addec
JD
6305 * coding.c (coding_system_require_warning): New variable.
6306 (syms_of_coding): DEFVAR it.
b6da19ef 6307
048addec 6308 * coding.h (coding_system_require_warning): Extern it.
b6da19ef 6309
048addec
JD
6310 * fileio.c (choose_write_coding_system): Even if
6311 Vcoding_system_for_write is non-nil, if
6312 coding_system_require_warning is nonzero, call
6313 Vselect_safe_coding_system_function.
bfcf6dbe 6314
048addec 63152002-12-17 Markus Rost <rost@math.ohio-state.edu>
bfcf6dbe 6316
048addec
JD
6317 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
6318 (lisp): Add font-core.
2c568af5 6319
048addec 63202002-12-13 Stefan Monnier <monnier@cs.yale.edu>
2c568af5 6321
048addec
JD
6322 * textprop.c (text_read_only): New arg `propval'.
6323 (get_char_property_and_overlay): Remove unused var `next_overlay'.
6324 (verify_interval_modification): Use text_read_only's new arg.
b8c6225c 6325
048addec 63262002-12-13 Kenichi Handa <handa@m17n.org>
b8c6225c 6327
048addec 6328 * coding.c (Funencodable_char_position): Set pend correctly.
706ddb8f 6329
048addec 63302002-12-12 Jason Rumney <jasonr@gnu.org>
706ddb8f 6331
048addec
JD
6332 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
6333 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
6334 Be more careful about when help_events are generated.
96720f09 6335
048addec 63362002-12-12 Steven Tamm <steventamm@mac.com>
96720f09 6337
048addec
JD
6338 * macterm.c (mac_check_for_quit_char): Correctly set the
6339 modifiers of the event to 0.
6340 * mac.c (sys_select): Duplicate rfds before calling select to
6341 ensure that rfds survive the while loop.
e5ae1c49 6342
048addec 63432002-12-11 Kim F. Storm <storm@cua.dk>
e5ae1c49 6344
048addec
JD
6345 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
6346 row_containing_pos returned NULL.
2eb46b2d 6347
048addec 63482002-12-10 Steven Tamm <steventamm@mac.com>
2eb46b2d 6349
6bdb309a 6350 * mac.c (sys_read): Fix sys_read to not call select if IO is
048addec 6351 non-blocking.
6bdb309a 6352 (sys_select): Fix sys_select to not use a timeout larger than
048addec 6353 the one given.
b11f1d8a 6354
048addec 63552002-12-10 Juanma Barranquero <lektu@terra.es>
b11f1d8a 6356
048addec 6357 * editfns.c (Fformat): Use alloca, not _alloca.
d8528226 6358
048addec 63592002-12-09 Richard M. Stallman <rms@gnu.org>
d8528226 6360
048addec
JD
6361 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
6362 as the last thing.
a4ac5b17 6363
048addec 63642002-12-09 Dave Love <fx@gnu.org>
a4ac5b17 6365
048addec 6366 * s/sol2-8.h: Removed. (Not necessary.)
ac42d7b9 6367
048addec 63682002-12-09 Matthew Swift <swift@alum.mit.edu>
ac42d7b9 6369
048addec
JD
6370 * editfns.c (Fformat): Handle precision in string conversion
6371 specifiers like libc functions do (ie, print at most that many
6372 characters).
85cce843 6373
048addec 63742002-12-08 Richard M. Stallman <rms@gnu.org>
85cce843 6375
048addec
JD
6376 * xdisp.c (row_containing_pos): Check more carefully
6377 whether charpos is really in the row before returning it.
0d4d26a7 6378
048addec 63792002-12-07 Steven Tamm <steventamm@mac.com>
0d4d26a7 6380
048addec 6381 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
b11f1d8a 6382
048addec
JD
6383 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
6384 each stack frame. This may change as it could be time consuming.
0d4d26a7 6385
048addec
JD
6386 * macterm.c (mac_check_for_quit_char, quit_char_comp)
6387 (init_quit_char_handler, mac_determine_quit_char_modifiers)
6bdb309a 6388 (mac_initialize): Add code to check for pressing of quit_char
048addec 6389 in the OS event queue.
b11f1d8a 6390
048addec
JD
6391 * mac.c (sys_select): Call mac_check_for_quit_char every second
6392 while blocking on select.
0d4d26a7 6393
048addec
JD
6394 * mac.c (sys_read): Use sys_select to test for input first
6395 before calling read, to allow C-g to break.
9252f7bc 6396
048addec 63972002-12-07 Richard M. Stallman <rms@gnu.org>
9252f7bc 6398
048addec 6399 * minibuf.c (Fcompleting_read): Doc fix.
9252f7bc 6400
048addec 6401 * lread.c (syms_of_lread) <load-history>: Doc fix.
9252f7bc 6402
048addec 6403 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9252f7bc 6404
048addec
JD
6405 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
6406 autoload.
9252f7bc 6407
048addec 6408 * data.c (Fdefalias): Record in load-history redefining an autoload.
9252f7bc 6409
048addec 6410 * alloca.c: Undo ifdef change accidentally made on 12-04.
bfa261c0 6411
048addec 64122002-12-06 Francesco Potorti` <pot@gnu.org>
bfa261c0 6413
048addec 6414 * xfns.c (png_load): Avoid double gamma correction for PNG images.
c5992177 6415
048addec 64162002-12-04 Richard M. Stallman <rms@gnu.org>
c5992177 6417
048addec 6418 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 6419
048addec 6420 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 6421
048addec 6422 * alloca.c: Don't use #error.
02d588e2 6423
048addec 64242002-12-03 Dave Love <fx@gnu.org>
02d588e2 6425
048addec
JD
6426 * buffer.c (Qucs_set_table_for_input): New.
6427 (Fget_buffer_create): Use it.
6428 (Qset_buffer_major_mode_hook): Deleted.
6429 (Fset_buffer_major_mode): Revert previous change.
6430 (init_buffer_once): Intern ucs-set-table-for-input.
6431 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
6432 Add &Qucs_set_table_for_input.
451e2697 6433
048addec 64342002-12-03 Andreas Schwab <schwab@suse.de>
451e2697 6435
048addec
JD
6436 * callint.c (Fcall_interactively): Use next_event only if less
6437 than key_count.
72742a99 6438
048addec 64392002-12-02 Andrew Choi <akochoi@shaw.ca>
72742a99 6440
048addec
JD
6441 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
6442 names to 255 characters.
72742a99 6443
048addec
JD
6444 * macterm.c (XTread_socket): If all frames have been collapsed,
6445 expand the first one before handling drag-and-drop events.
72742a99 6446
048addec
JD
6447 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
6448 which is detected by autoconf.
40e6ff95 6449
048addec 64502002-12-01 Steven Tamm <steventamm@mac.com>
40e6ff95 6451
048addec
JD
6452 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
6453 offset in two hints table to allow prebinding to be redone and
6454 allow the executable to be stripped.
c02138c6 6455
048addec 64562002-11-29 Dave Love <fx@gnu.org>
c02138c6 6457
048addec
JD
6458 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
6459 already provided.
0e47bbf7 6460
048addec 64612002-11-29 Richard M. Stallman <rms@gnu.org>
0e47bbf7 6462
048addec
JD
6463 * xdisp.c (start_display): Check more intelligently for
6464 whether the line is continued.
6465 (move_it_vertically_backward): Clear it->continuation_lines_width.
44129dcb 6466
048addec 64672002-11-28 Dave Love <fx@gnu.org>
44129dcb 6468
048addec
JD
6469 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
6470 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
f707342d 6471
048addec 64722002-11-27 Steven Tamm <steventamm@mac.com>
f707342d 6473
048addec
JD
6474 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
6475 more descriptive error output from lread.c:Fload upon most require
6476 cycles during boostrapping.
1637fd2c 6477
048addec 64782002-11-27 Jason Rumney <jasonr@gnu.org>
1637fd2c 6479
048addec
JD
6480 * fileio.c (Finsert_file_contents): Give a more appropriate error
6481 for files bigger than 2Gb when off_t is 32 bit.
1637fd2c 6482
048addec
JD
6483 * dired.c (Ffile_attributes): Don't return negative file sizes for
6484 files bigger than 2Gb when off_t is 32 bit.
540c2788 6485
048addec 64862002-11-27 Dave Love <fx@gnu.org>
6b2fd6ea 6487
048addec 6488 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6b2fd6ea 6489
048addec
JD
6490 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
6491 Test GETPGRP_VOID instead.
6492 [BSD_TERMIOS]: Remove definitions (never used).
6b2fd6ea 6493
048addec
JD
6494 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
6495 Don't define.
6496 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
540c2788 6497
048addec 6498 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8cc03716 6499
048addec 65002002-11-25 Jason Rumney <jasonr@gnu.org>
8cc03716 6501
048addec
JD
6502 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
6503 supported.
4042a81a 6504
048addec 65052002-11-25 Dave Love <fx@gnu.org>
4042a81a 6506
048addec 6507 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
4042a81a 6508
048addec 6509 * Makefile.in (TEMACS_LDFLAGS): Update last change.
be4ee72f 6510
048addec 65112002-11-25 Andreas Schwab <schwab@suse.de>
be4ee72f 6512
048addec 6513 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
82122254 6514
048addec 65152002-11-24 Steven Tamm <steventamm@mac.com>
82122254 6516
048addec
JD
6517 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
6518 determine the size of pointers alloced in unexed space instead
6519 of using possibly invalid emacs_zone pointers. This fixes the
6520 binary incompatibility problems caused by updates to libSystem.B.
c1ee53bc 6521
048addec 65222002-11-24 Richard M. Stallman <rms@gnu.org>
c1ee53bc 6523
048addec 6524 * search.c (Fstring_match): Doc fix.
c1ee53bc 6525
048addec
JD
6526 * callint.c (Fcall_interactively): If a command fails because
6527 `*' detects a read-only buffer, but RECORD_FLAG is set,
6528 record it anyway if the args don't actually do tty input.
5598c32e 6529
048addec 65302002-11-22 Dave Love <fx@gnu.org>
5598c32e 6531
048addec 6532 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
5598c32e 6533
048addec
JD
6534 * keyboard.c (interrupt_signal): Provide forward declaration.
6535 (kbd_buffer_store_event): Don't declare interrupt_signal.
5598c32e 6536
048addec 6537 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
97b14e22 6538
048addec 65392002-11-21 Richard M. Stallman <rms@gnu.org>
97b14e22 6540
048addec
JD
6541 * eval.c (interactive_p): Skip any number of bytecode
6542 and special form frames, in any order.
516eea8e 6543
048addec 65442002-11-20 Jason Rumney <jasonr@gnu.org>
516eea8e 6545
048addec
JD
6546 * w32fns.c (convert_mono_to_color_image): New function.
6547 (xbm_load, xbm_load_image): Use it when foreground or background
6548 is explicitly set.
04dbfa08 6549
048addec 65502002-11-19 Dave Love <fx@gnu.org>
04dbfa08 6551
048addec 6552 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
b4aebae3 6553
048addec 65542002-11-18 Jason Rumney <jasonr@gnu.org>
b4aebae3 6555
048addec
JD
6556 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
6557 (XPutPixel): Swap blue and red.
6558 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
6559 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
6560 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
6561 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
1998560a 6562
048addec 65632002-11-18 Dave Love <fx@gnu.org>
d824beee 6564
048addec 6565 * m/orion105.h (HAVE_ALLOCA): Don't define.
d824beee 6566
048addec 6567 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
d824beee 6568
048addec 6569 * m/intel386.h: Don't include alloca.h or define alloca.
d824beee 6570
048addec
JD
6571 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
6572 malloc, realloc, calloc.
d824beee 6573
048addec
JD
6574 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
6575 (bcmp): Don't define.
d824beee 6576
048addec 6577 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
d824beee 6578
048addec 6579 * m/amdahl.h: Don't define LIB_STANDARD.
d824beee 6580
048addec 6581 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
d824beee 6582
048addec 6583 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
d824beee 6584
048addec
JD
6585 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
6586 Don't include alloca.h.
d824beee 6587
048addec 6588 * s/aix3-2.h (HAVE_FSYNC): Don't define.
1998560a 6589
048addec 6590 * regex.c (_GNU_SOURCE): Don't define.
1998560a 6591
048addec 6592 * process.c (_GNU_SOURCE): Don't define.
1998560a 6593
048addec 6594 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8704a6ab 6595
048addec 65962002-11-18 Markus Rost <rost@math.ohio-state.edu>
8704a6ab 6597
048addec 6598 * s/sol2-8.h: Include sol2-6.h.
6ae2cd57 6599
048addec 66002002-11-18 Miles Bader <miles@gnu.org>
6ae2cd57 6601
048addec
JD
6602 * dispextern.h (struct face): Add `overstrike' field.
6603 * xterm.c (x_draw_glyph_string_foreground)
6604 (x_draw_composite_glyph_string_foreground): Implement overstriking.
6605 * xfaces.c (load_face_font): Set `face->overstrike' based on
6606 result from choose_face_font.
6607 (best_matching_font, choose_face_font): Add `needs_overstrike'
6608 argument, and use it to return whether overstriking is desirable
6609 for this face/font combo.
6610 (set_font_frame_param: Pass new argument to choose_face_font.
6ae2cd57 6611
048addec 66122002-11-17 Ben Key <BKey1@tampabay.rr.com>
3582b6a3 6613
048addec
JD
6614 This change is my fix for the following entry in etc/PROBLEMS:
6615 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
6616 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
f60ae425 6617
048addec
JD
6618 * w32.c: Added wrapper functions around the win32 API functions
6619 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
6620 GetSidIdentifierAuthority. These wrapper functions serve two
6621 purposes:
6622 1. They ensure that the wrapped function can never be called
6623 when Emacs is running on an operating system on which they are
6624 not supported (Microsoft Windows 95 / 98 / ME).
6625 2. They call the wrapped functions via function pointers rather
6626 than calling them directly. This avoids taking advantage of the
6627 undocumented fact that although these functions are not supported
6628 in the 9x branch of Microsoft Windows, the functions do exist in
6629 the version of advapi32.dll that is found in the 9x branch of
6630 Microsoft Windows.
f60ae425 6631
6bdb309a 6632 * w32.c (init_user_info): Replace the calls to the win32 API
048addec
JD
6633 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
6634 and GetSidIdentifierAuthority with calls to the newly added
6635 wrapper functions.
f60ae425 6636
048addec
JD
6637 * w32.h: Added extern declarations for the following functions:
6638 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
6639 syms_of_w32menu, and void syms_of_fontset.
f60ae425 6640
6bdb309a 6641 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
048addec
JD
6642 function pointer track_mouse_event_fn in the handler for the
6643 WM_SETFOCUS message.
3582b6a3 6644
6bdb309a 6645 * w32menu.c (initialize_frame_menubar): Add code to
048addec
JD
6646 reinitialize the function pointers set_menu_item_info and
6647 get_menu_item_info.
f60ae425 6648
048addec 66492002-11-17 Ben Key <BKey1@tampabay.rr.com>
f60ae425 6650
048addec
JD
6651 * sound.c: Added a partial implementation of play-sound-internal
6652 for Microsoft Windows. Added various #ifdef / #else / #endif
6653 code blocks to separate the code that will compile under
6654 Microsoft Windows from the code that is specific to Gnu/Linux.
6655 Moved several blocks of code around to make this separation of code
6656 into Windows compatible and Gnu/Linux compatible code blocks easier.
f60ae425 6657
048addec 6658 * makefile.w32-in: Include sound.c and link with WinMM.lib.
a0f0878d 6659
048addec
JD
6660 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
6661 added support for play-sound-internal under Windows would be
6662 included in the build of Emacs.
517f42a0 6663
048addec 66642002-11-16 Jason Rumney <jasonr@gnu.org>
517f42a0 6665
048addec 6666 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
517f42a0 6667
048addec 6668 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
a0f0878d 6669
048addec 66702002-11-15 Stefan Monnier <monnier@cs.yale.edu>
a0f0878d 6671
048addec
JD
6672 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
6673 (adjust_point_for_property): Move out of display and invisible even if
6674 we were already inside before (in case a property was added while
6675 we weren't looking). Be more careful when handling invisible props.
6676 Skip invisible text as if it really wasn't there at all.
aab83f91 6677
048addec 66782002-11-15 Jason Rumney <jasonr@gnu.org>
aab83f91 6679
048addec
JD
6680 * w32term.c (x_draw_image_foreground)
6681 (w32_draw_image_foreground_1): Use standard copy and invert
6682 operations to draw images.
aab83f91 6683
048addec
JD
6684 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
6685 depth of 1.
6686 (xbm_read_bitmap_data): Invert bits as xbm is read in.
6687 (XPutPixel): Don't invert bits here.
a4478a76 6688
048addec 66892002-11-15 Jason Rumney <jasonr@gnu.org>
a4478a76 6690
048addec
JD
6691 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
6692 (w32_draw_image_foreground_1): Handle image masks.
6693 (x_draw_image_glyph_string): Don't BitBlt transparently.
a4478a76 6694
048addec
JD
6695 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
6696 (x_from_xcolors): Adjust RGB values for W32.
6697 (image_background, image_background_transparent)
6698 (postprocess_image, x_to_xcolors, x_disable_image)
6699 (x_build_heuristic_mask): Adapt for W32 and enable.
6700 (x_create_x_image_and_pixmap): Mark images with palettes as such.
6701 (xbm_load): Remove unused variable.
03670a65 6702
048addec 67032002-11-14 Richard M. Stallman <rms@gnu.org>
03670a65 6704
048addec 6705 * buffer.c (syms_of_buffer): Doc fix.
59daa29a 6706
048addec 67072002-11-14 Dave Love <fx@gnu.org>
59daa29a 6708
048addec 6709 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
59daa29a 6710
048addec
JD
6711 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
6712 * xmenu.c (unuse_menu_items, digest_single_submenu):
6713 * xfns.c (x_put_x_image):
6714 * xdisp.c (message2_nolog, set_message):
6715 * undo.c (record_point):
6716 * terminfo.c (tparam):
6717 * syntax.c (scan_sexps_forward):
6718 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
6719 * composite.c (update_compositions):
6720 * cm.c (calccost, cmgoto):
6721 * charset.c (c_string_width): Declare all args (per C99).
59daa29a 6722
048addec 6723 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
59daa29a 6724
048addec
JD
6725 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
6726 Don't declare.
59daa29a 6727
048addec 6728 * emacs.c (main) [!VMS]: Avoid third arg.
59daa29a 6729
048addec
JD
6730 * fns.c (Fcopy_sequence): Doc fix.
6731 (Fmap_char_table): Cast `call2'.
3947677c 6732
048addec
JD
67332002-11-14 Francesco Potorti` <pot@gnu.org>
6734
6735 * s/sol2-8.h: New file.
6736
67372002-11-14 Kim F. Storm <storm@cua.dk>
6738
6739 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
6740 dependency on `risky-local-variable' and the :propertize form.
6741
67422002-11-12 Stefan Monnier <monnier@cs.yale.edu>
6743
6744 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
6745
6746 * syntax.c (scan_sexps_forward): Undo last patch.
6747 Use a more obvious fix: check eob before updating the syntax table.
6748
67492002-11-09 Stefan Monnier <monnier@cs.yale.edu>
6750
6751 * syntax.c (scan_sexps_forward): Update syntax table before reading
6752 a char rather than after so we don't update the table past eob.
6753
67542002-11-09 Dave Love <fx@gnu.org>
6755
6756 * buffer.c (Fset_buffer_major_mode): Fix last change.
6757
6758 * regex.c (regexec): Fix pmatch declaration.
6759
6760 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
6761
6762 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
6763 to self-inserting characters.
6764 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
6765
6766 * coding.c (Vtranslation_table_for_input): New.
6767 (syms_of_coding): DEFVAR it.
6768
67692002-11-08 Juanma Barranquero <lektu@terra.es>
6770
6771 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
6772 window.
6773
67742002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6775
6bdb309a 6776 * process.c (Fformat_network_address): Remove unused locals p,
048addec
JD
6777 cp, and i.
6778
67792002-11-06 Dave Love <fx@gnu.org>
6780
6781 * buffer.c (Qset_buffer_major_mode_hook): New.
6782 (Fset_buffer_major_mode): Use it.
6783
67842002-11-06 Richard M. Stallman <rms@gnu.org>
6785
6786 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
6787 and stop_polling.
6788
6789 * process.c (wait_reading_process_input):
6790 Test POLLING_PROBLEM_IN_SELECT, not hpux.
6791 Avoid initialization for auto Lisp_Object var.
6792
6793 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
6794
6795 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
6796
67972002-11-05 Richard M. Stallman <rms@gnu.org>
6798
6799 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
6800
6801 * callint.c (Fcall_interactively): New local filter_specs.
6802 (Fcall_interactively): Check for progn as well as let.
6803 Add a gcpro.
6804 (Qprogn): New variable.
6805 (syms_of_callint): Staticpro and init Qprogn.
6806
68072002-11-04 John Paul Wallington <jpw@shootybangbang.com>
6808
6809 * lread.c (Feval_buffer): Doc fix.
6810
68112002-11-04 Dave Love <fx@gnu.org>
6812
6813 * keyboard.c (read_char): Always translate iff
6814 Vkeyboard_translate_table is a char table and c is valid.
6815
6816 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
6817 and fix C types.
6818
68192002-11-03 Stefan Monnier <monnier@cs.yale.edu>
6820
6821 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
6822
6823 * editfns.c (get_pos_property): Don't hardcode Qfield.
6824
6825 * keyboard.c (adjust_point_for_property): Handle `display' prop on
6826 overlays. Also handle `invisible' prop.
6827
68282002-11-02 Stefan Monnier <monnier@cs.yale.edu>
6829
6830 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
6831 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
6832
68332002-11-01 Andreas Schwab <schwab@suse.de>
6834
6835 * editfns.c (Fmessage): Revert last change to properly handle %%.
6836
68372002-11-01 Stefan Monnier <monnier@cs.yale.edu>
6838
6839 * xmenu.c (unuse_menu_items): New fun.
6840 (menu_items_inuse): New var.
6841 (syms_of_xmenu): Initialize it.
6842 (init_menu_items): Use it to detect re-entrance.
6843 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
6844 (Fx_popup_menu): Remove spurious XSETFRAME.
6845
6846 * editfns.c (find_field): Make an exception for nil fields.
6847
68482002-11-01 Dave Love <fx@gnu.org>
6849
6850 * m/gec63.h: Deleted.
6851
68522002-10-31 Dave Love <fx@gnu.org>
6853
6854 * xterm.c (XTread_socket): Fix last change.
6855 (xaw_scroll_callback): Cast call_data to long to avoid warning.
6856
68572002-10-31 Stefan Monnier <monnier@cs.yale.edu>
6858
6859 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
6860
68612002-10-30 Stefan Monnier <monnier@cs.yale.edu>
6862
6863 * editfns.c (overlays_around, get_pos_property): New funs.
6864 (find_field): Use them.
6865 Also be careful not to modify POS before its last use.
6866 (Fmessage): Don't Fformat if there's nothing to format.
6867
68682002-10-30 Dave Love <fx@gnu.org>
6869
6870 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
6871 [HAVE_PTY_H]; Include pty.h.
6872
6873 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
6874
6875 * xterm.c (Qeql): Declare.
6876 (Vx_keysym_table): New.
6877 (syms_of_xterm): Initialize it.
6878 (XTread_socket): Use it. Deal with ASCII keysyms.
6879 (XSetIMValues) [HAVE_X11R6]: Prototype.
6880
6881 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
6882 (lispy_kana_keys): Comment out.
6883 (make_lispy_event) [XK_kana_A]: Comment out.
6884 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
6885 Fix sprintf call.
6886
6887 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
6888 regexp.h change).
6889 (TERMINFO, LIBS_TERMCAP): Define.
6890
6891 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
6892 (bcmp): Define conditional on HAVE_BCMP.
6893 (NO_SIOCTL_H): Don't define.
6894 (TIOCSIGSEND): Don't make conditional on IRIX6.
6895
6896 * s/sol2-5.h: Don't include strings.h.
6897 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
6898
6899 * s/irix6-0.h (IRIX6): Don't define.
6900 (bcopy, bcmp, bzero): Don't undef.
6901
6902 * s/irix6-5.h: Don't include strings.h.
6903 (IRIX6): Don't define.
6904 (bcopy, bcmp, bzero): Don't undef.
6905
6906 * syntax.c (Fforward_comment): Doc fix.
6907
69082002-10-29 Kim F. Storm <storm@cua.dk>
6909
6910 * process.c (Fsignal_process): Allow PROCESS to be specified by
6911 name in addition to pid (as integer or string).
6912
69132002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
6914
6915 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
6916 environments.
6917
69182002-10-27 Kim F. Storm <storm@cua.dk>
6919
6920 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
6921
6922 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
6923
6924 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
6925
6926 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
6927
69282002-10-26 Richard M. Stallman <rms@gnu.org>
6929
6930 * editfns.c (Fformat): Detect invalid format letters for floats.
6931
69322002-10-25 Kenichi Handa <handa@m17n.org>
6933
6934 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
6935 (x_set_title): Likewise.
6936
69372002-10-25 Juanma Barranquero <lektu@terra.es>
6938
6939 * macgui.h:
6940 * w32gui.h: Remove definition of XColor.
6941
6942 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
6943
69442002-10-24 Kim F. Storm <storm@cua.dk>
6945
6946 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
6947 Callers changed (supply dummy arg).
6948
6949 * lisp.h (get_window_cursor_type): Update prototype.
6950
6951 * w32term.c (x_display_and_set_cursor): Get active_cursor from
6952 get_window_cursor_type to track system caret.
6953
69542002-10-24 Kim F. Storm <storm@cua.dk>
6955
6956 * process.c (Fformat_network_address): New function.
6957 (syms_of_process): Defsubr it.
6958 (list_processes_1): Use it to format :local/:remote address if
6959 service/host is not set; before emacs would crash in that case.
6960 (Fmake_network_process): Don't use Ffind_operation_coding_system
6961 to setup coding system if host or service is not set.
6962
69632002-10-23 Juanma Barranquero <lektu@terra.es>
6964
6965 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
6966
6967 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
6968 COLORREF.
6969
6970 * macgui.h:
6971 * w32gui.h: Add definition of XColor.
6972
6973 * macfns.c:
6974 * w32fns.c:
6975 * xfaces.c: Remove definition of XColor.
6976
69772002-10-22 Stefan Monnier <monnier@cs.yale.edu>
6978
6979 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
6980
6981 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
6982 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
6983 window if it is dedicated.
6984 (Fshrink_window): Add preserve_before as was done for enlarge_window.
6985 (Vspecial_display_function): Update docstring.
6986
6987 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
6988 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
6989 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
6990
69912002-10-21 Stefan Monnier <monnier@cs.yale.edu>
6992
6993 * casefiddle.c (casify_region): Don't treat a prefix char as part
6994 of a word when at the beginning.
6995
69962002-10-17 Juanma Barranquero <lektu@terra.es>
6997
6998 * lread.c (syms_of_lread): Fix typos.
6999
70002002-10-17 Dave Love <fx@gnu.org>
7001
7002 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
7003
70042002-10-16 Richard M. Stallman <rms@gnu.org>
7005
7006 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
7007
70082002-10-14 Juanma Barranquero <lektu@terra.es>
7009
7010 * w16select.c (syms_of_win16select): Fix docstring for
7011 `selection-coding-system'.
7012
7013 * w32select.c (syms_of_w32select): Likewise.
7014
70152002-10-14 Stefan Monnier <monnier@cs.yale.edu>
7016
7017 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
7018 a backslash-quoted char.
7019 (scan_lists, scan_sexps_forward): Pacify the compiler.
7020
70212002-10-13 Richard M. Stallman <rms@gnu.org>
7022
7023 * window.c (window_scroll): Set immediate_quit.
7024
7025 * print.c (print): When backquote form is the car of a list,
7026 output in old style. Use old_backquote_output to output all
7027 comma forms inside it in old style too.
7028
7029 * buffer.h (struct buffer): Move `undo_list' down below `name'.
7030
70312002-10-11 Markus Rost <rost@math.ohio-state.edu>
7032
7033 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
7034 batch mode).
7035
7036 * lread.c (Fload): Doc fix (load-suffixes).
7037
70382002-10-10 Steven Tamm <steventamm@mac.com>
7039
7040 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
7041 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
7042 Also switch the default to Qnil from Qt.
7043
70442002-10-08 Kenichi Handa <handa@m17n.org>
7045
7046 * coding.c (code_convert_region): When we need more GAP for
7047 conversion, pay attention to the case that coding->produced is not
7048 greater than coding->consumed.
7049
70502002-10-07 Richard M. Stallman <rms@gnu.org>
7051
7052 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
7053
70542002-10-06 Andrew Choi <akochoi@shaw.ca>
7055
7056 * macmenu.c (mac_menu_show): Add j to count menu items; match
7057 menu_item_selection to it to find selected item.
7058
70592002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7060
7061 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
7062 cases. The correct fix is to pass ReparentNotify to Xt.
7063 The shell widget interprets ConfigureNotify differently depending
7064 on if it has been reparented or not.
7065
70662002-10-05 Markus Rost <rost@math.ohio-state.edu>
7067
7068 * editfns.c (Fformat_time_string): Doc fix.
7069
70702002-10-05 John Paul Wallington <jpw@shootybangbang.com>
7071
7072 * fns.c (Flength): Doc fix.
7073
70742002-10-04 Stefan Monnier <monnier@cs.yale.edu>
7075
7076 * keyboard.c (keyremap): New struct.
7077 (read_key_sequence): Use it: globally replace keytran_foo with
7078 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
7079 keytran_next and fkey_next to just `next'.
7080
70812002-10-04 Steven Tamm <steventamm@mac.com>
7082
7083 * macterm.c (keycode_to_xkeysym_table): Change return to be
7084 treated like an X keysym.
7085
70862002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7087
7088 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
7089 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
7090 This is to also handle x/y changes that occur because of a resize.
7091
70922002-10-02 John Paul Wallington <jpw@shootybangbang.com>
7093
7094 * frame.c (Vdelete_frame_functions): New variable.
7095 (syms_of_frame): Initialize and defvar it.
7096 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
7097 it when frame's `tooltip' parameter is non-nil.
7098
7099 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
7100
7101 * w32fns.c (x_create_tip_frame): Likewise.
7102
7103 * macfns.c (x_create_tip_frame): Likewise.
7104
71052002-09-30 Kenichi Handa <handa@m17n.org>
7106
7107 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
7108 -1 before calling ccl_driver.
7109
7110 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
7111 Only when it is non-nil, handle composition sequence.
7112 (setup_coding_system) <0>: Don't force composition handling.
7113
7114 * Makefile.in (lisp, shortlisp): Add utf-16.elc
7115
71162002-09-29 Richard M. Stallman <rms@gnu.org>
7117
7118 * search.c (Freplace_match): Adjust match data for the substitution
7119 just made in the buffer.
7120
7121 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
7122 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
7123
71242002-09-27 Richard M. Stallman <rms@gnu.org>
7125
7126 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
7127 (read_char): Use them. Do all exits thru the end of the function.
7128
71292002-09-27 Kenichi Handa <handa@etl.go.jp>
7130
7131 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
7132 is nil.
7133
71342002-09-26 Richard M. Stallman <rms@gnu.org>
7135
7136 * regex.h (__restrict_arr): Don't define if already defined.
7137
7138 * coding.c (run_pre_post_conversion_on_str):
7139 Save and restore Vdeactivate_mark.
7140
71412002-09-26 John Paul Wallington <jpw@shootybangbang.com>
7142
7143 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
7144
71452002-09-26 Kenichi Handa <handa@etl.go.jp>
7146
7147 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
7148 nonzero, try face's family at first. Otherwise try FAMILY at first.
7149 (choose_face_font): If C is a single byte char or latin-1, call
7150 try_font_list with PREFER_FACE_FAMILY 1.
7151
71522002-09-21 Richard M. Stallman <rms@gnu.org>
7153
7154 * window.c (select_window_1): Don't select frame.
7155 Set frame's selected window only when frame itself is selected.
7156 (Fselect_window): Doc fix.
7157
71582002-09-18 Kim F. Storm <storm@cua.dk>
7159
7160 * process.c (make-network-process): Doc fix (there is no
7161 network-server-log-function hook).
7162
71632002-09-18 Richard M. Stallman <rms@gnu.org>
7164
7165 * print.c (print): Clear out the unused parts of Vprint_number_table.
7166 (syms_of_print): Doc fix for `print-number-table'.
7167
7168 * unexelf.c (unexec): Undo previous change.
7169
71702002-09-17 Andreas Schwab <schwab@suse.de>
7171
7172 * m/alpha.h [LINUX]: Don't define DATA_START.
7173
71742002-09-16 Dave Love <fx@gnu.org>
7175
7176 * unexelf.c (unexec): Deal with .got, reinstating change from
7177 25-08-1999.
7178
71792002-09-13 Richard M. Stallman <rms@gnu.org>
7180
7181 * s/sol2-6.h (UNEXEC): Comment out definition.
7182
7183 * unexsol.c (unexec): Don't downcase first letter of error msg.
7184
7185 * xfaces.c (Fcolor_supported_p): Just one arg is required.
7186
71872002-09-12 Markus Rost <rost@math.ohio-state.edu>
7188
7189 * unexsol.c: Include buffer.h, charset.h, coding.h.
7190
71912002-09-11 Richard M. Stallman <rms@gnu.org>
7192
7193 * unexsol.c: Don't use report_file_error; do it by hand
7194 using dlerror.
7195
7196 * process.c (wait_reading_process_input, both versions):
7197 Before calling turn_on_atimers, call stop_polling.
7198
7199 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
7200
7201 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
7202 we go to too_near_end, call clear_glyph_matrix.
7203 (redisplay_window): After make_cursor_line_fully_visible,
7204 call clear_glyph_matrix and bypass `goto done'.
7205
7206 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
7207 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
7208
72092002-09-10 Richard M. Stallman <rms@gnu.org>
7210
7211 * fileio.c (Fdo_auto_save): Catch error making directory.
7212 Only call push_message if we need to.
7213 At the same time, make an unwind-protect to pop it.
7214 Rename local message_p to old_message_p.
7215 (do_auto_save_make_dir, do_auto_save_eh): New functions.
7216 (do_auto_save_unwind): Don't call pop_message.
7217
7218 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
7219
7220 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
7221
7222 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
7223
7224 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
7225
72262002-09-10 Stefan Monnier <monnier@cs.yale.edu>
7227
7228 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
7229 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
7230 (re_match_2_internal): Be more careful with infinite loops.
7231
72322002-09-10 Kim F. Storm <storm@cua.dk>
7233
7234 * macros.c (end_kbd_macro): New function.
7235 (Fend_kbd_macro): Use it.
7236
7237 * macros.h (end_kbd_macro): Declare extern.
7238
7239 * keyboard.c (Fdiscard_input): If defining keyboard macro,
7240 end and save it instead of discarding it.
7241
72422002-09-09 Markus Rost <rost@math.ohio-state.edu>
7243
7244 * s/sol2-6.h: Fix typo. Add comment.
7245
72462002-09-09 Richard M. Stallman <rms@gnu.org>
7247
7248 * regex.c (regnum_t): Use signed int, not unsigned int.
7249
7250 * s/sol2-6.h: New file.
7251
7252 * s/sol2-5.h (UNEXEC): Definition deleted.
7253
72542002-09-08 Kim F. Storm <storm@cua.dk>
7255
7256 * macros.c (executing_macro_index): Change type to EMACS_INT.
7257 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
7258
7259 * macros.h (executing_macro_index): Change type to EMACS_INT.
7260
72612002-09-06 Richard M. Stallman <rms@gnu.org>
7262
7263 * casetab.c (set_case_table): Make canon table point to eqv table.
7264
72652002-09-06 Juanma Barranquero <lektu@terra.es>
7266
7267 * coding.c (syms_of_coding): Fix spacing.
7268
7269 * composite.c (Fcompose_region_internal)
7270 (Fcompose_string_internal): Likewise.
7271
7272 * data.c (Flsh): Likewise.
7273
7274 * fontset.c (Fset_fontset_font): Likewise.
7275
7276 * macfns.c (Fx_server_max_request_size): Likewise.
7277
7278 * w16select.c (syms_of_win16select): Likewise.
7279
7280 * w32select.c (syms_of_w32select): Likewise.
7281
7282 * xselect.c (syms_of_xselect): Likewise.
7283
72842002-09-05 Richard M. Stallman <rms@gnu.org>
7285
7286 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
7287 call EXTEND_RANGE_TABLE and return a proper value.
7288 (set_image_of_range): Don't call set_image_of_range_1
7289 if no TRANSLATE or if range includes all of Latin-1.
7290 Only call it for the Latin-1 part of the range.
7291 For other cases, make two separate ranges,
7292 one for the original specified characters and one for
7293 their case-conversions.
7294
72952002-09-04 Richard M. Stallman <rms@gnu.org>
7296
7297 * s/sol2-5.h (UNEXEC): Use unexsol.o.
7298
7299 * window.c (displayed_window_lines): Correct for one-off bug
7300 in HEIGHT on non-window displays.
7301
7302 * regex.c (set_image_of_range_1): New function.
7303 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
7304 Return a value to indicate running out of memory.
7305 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
7306 (extend_range_table_work_area): New subroutine.
7307 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
7308 Different calling conventions, and used from set_image_of_range{,_1}.
7309 (IMMEDIATE_QUIT_CHECK): Definitions moved.
7310
73112002-09-04 Juanma Barranquero <lektu@terra.es>
7312
7313 * makefile.w32-in: All dependencies updated.
7314
73152002-09-01 Richard M. Stallman <rms@gnu.org>
7316
7317 * unexsol.c: New file.
7318
7319 * xfns.c (Qbox): Declare external, don't define.
7320
7321 * xdisp.c (redisplay_window) <force-start case>:
7322 If point is on semi-visible last line, reposition
7323 it at previous line.
7324
7325 * alloc.c (display_malloc_warning): Use display-warning.
7326 (malloc_warning_1): Function deleted.
7327
7328 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
7329
7330 * lread.c (read1): Handle #! by skipping the line.
7331
73322002-08-31 Richard M. Stallman <rms@gnu.org>
7333
7334 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
7335 Don't include LDFLAGS.
7336 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
7337
73382002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
7339
7340 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
7341 member of x_display_info unless we compile for some window system.
7342
73432002-08-31 Kim F. Storm <storm@cua.dk>
7344
7345 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
7346 (get_window_cursor_type): Don't use them.
7347 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
7348
73492002-08-30 Kenichi Handa <handa@etl.go.jp>
7350
7351 * xdisp.c (get_next_display_element): Fix previous change.
7352
73532002-08-30 Andrew Choi <akochoi@shaw.ca>
7354
7355 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
7356 (expose_window): Use it to fix the display of overlapping
7357 rows (merge code from xterm.c).
7358
7359 * macfns.c (Qbox): Add extern declaration.
7360
73612002-08-30 Juanma Barranquero <lektu@terra.es>
7362
7363 * w32fns.c (Qbox): Make extern.
7364 (syms_of_w32fns): Remove initialization of Qbox.
7365
73662002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
7367
7368 * xfns.c (Fx_open_connection): Fix error message.
7369
73702002-08-30 Kim F. Storm <storm@cua.dk>
7371
7372 The following changes consolidates the handling of the cursor
7373 type in xdisp.c, moving duplicate code and functionality from
7374 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
7375
7376 * frame.h (enum text_cursor_kinds): Consolidated here.
7377 Added DEFAULT_CURSOR value.
7378 (struct frame) <desired_cursor, cursor_width>
7379 <blink_off_cursor, blink_off_cursor_width>: New fields.
7380 Consolidated from output_x, output_w32 and output_mac structs.
7381 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
7382 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
7383
7384 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
7385 Variables consolidated here.
7386 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
7387 (Vcursor_in_non_selected_windows): Renamed from
7388 cursor_in_non_selected_windows and changed to Lisp_Object.
7389 (syms_of_xdisp): Define and staticpro new and moved variables.
7390 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
7391 consolidated here. Recognize Qhollow setting.
7392 (set_frame_cursor_types): New function to set frame cursor types
7393 based on the frame parameters.
7394 (get_window_cursor_type): New function to calculate new cursor
7395 type and width for the specified window. Based on duplicated
7396 code consolidated here.
7397 Enhancements: cursor-in-non-selected-windows may be a cursor type,
7398 check buffer-local alternate-cursor-type and blink-cursor-alist
7399 before using built-in blink off methods.
7400
7401 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
7402
7403 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
7404 (get_specified_cursor_type, get_window_cursor_type)
7405 (set_frame_cursor_types): Added prototypes.
7406
7407 * macfns.c (x_specified_cursor_type): Removed.
7408 (x_set_cursor_type): Use set_frame_cursor_types.
7409 (Qbar, Qbox): Removed.
7410 (syms_of_macfns): Don't intern or staticpro them.
7411
7412 * macterm.c (x_specified_cursor_type): Remove prototype.
7413 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
7414 (x_display_and_set_cursor): Use get_window_cursor_type.
7415 Remove unused local variables cursor_non_selected, active_cursor.
7416 Redraw cursor if hbar cursor width changes.
7417 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
7418
7419 * macterm.h (enum text_cursor_kinds): Removed.
7420 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
7421 <blink_off_cursor, blink_off_cursor_width>: Members removed.
7422 (FRAME_DESIRED_CURSOR): Macro removed.
7423
7424 * w32fns.c (Vblink_cursor_alist): Removed.
7425 (Qbar, Qhbar, Qbox, Qhollow): Removed.
7426 (syms_of_w32fns): Don't intern, staticpro, or define them.
7427 (x_specified_cursor_type): Removed.
7428 (x_set_cursor_type): Use set_frame_cursor_types.
7429
7430 * w32term.c (x_specified_cursor_type): Remove prototype.
7431 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
7432 (x_display_and_set_cursor): Use get_window_cursor_type.
7433 Remove unused local variables cursor_off_state.
7434 Redraw cursor if hbar cursor width changes.
7435 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
7436
7437 * w32term.h (enum text_cursor_kinds): Removed.
7438 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
7439 <blink_off_cursor, blink_off_cursor_width>: Members removed.
7440 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
7441 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
7442 (struct w32_display_info) <x_highlight_frame>: Renamed member from
7443 w32_highlight_frame.
7444
7445 * xfns.c (Vblink_cursor_alist): Removed.
7446 (Qbar, Qhbar, Qbox, Qhollow): Removed.
7447 (syms_of_xfns): Don't intern, staticpro, or define them.
7448 (x_specified_cursor_type): Removed.
7449 (x_set_cursor_type): Use set_frame_cursor_types.
7450
7451 * xterm.c (x_specified_cursor_type): Remove prototype.
7452 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
7453 (x_display_and_set_cursor): Use get_window_cursor_type.
7454 Remove unused local variables cursor_off_state.
7455 Redraw cursor if hbar cursor width changes.
7456
7457 * xterm.h (enum text_cursor_kinds): Removed.
7458 (struct output_x) <current_cursor, desired_cursor, cursor_width>
7459 <blink_off_cursor, blink_off_cursor_width>: Members removed.
7460 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
7461 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
7462 (x_specified_cursor_type): Remove prototype.
7463
74642002-08-28 Richard M. Stallman <rms@gnu.org>
7465
7466 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
7467 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
7468 (Vblink_cursor_alist): New variable.
7469 (syms_of_w32fns): Initialize and defvar it.
7470 (x_specified_cursor_type): Recognize Qbox for filled box.
7471 Exceptions are hollow boxes.
7472 (Qbox, Qhollow): New variables.
7473 (syms_of_w32fns): Initialize and staticpro them.
7474
7475 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
7476 New macros.
7477 (struct w32_output): New fields blink_off_cursor,
7478 blink_off_cursor_width.
7479 (FRAME_CURSOR_WIDTH): New macro.
7480
7481 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
7482 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
7483
7484 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
7485 for bar cursor.
7486
7487 * w32term.c (expose_overlaps): New function.
7488 (expose_window): Use it to fix the display of overlapping rows.
7489
74902002-08-28 Simon Josefsson <jas@extundo.com>
7491
7492 * xfns.c (Fx_open_connection): Improve help when X connection
7493 fails, xhost is insecure and xauth is better.
7494
74952002-08-28 Juanma Barranquero <lektu@terra.es>
7496
7497 * makefile.w32-in: Add missing dependencies on w32term.h and
7498 composite.h.
7499
7500 * emacs.c (USAGE1): Add missing newline.
7501
75022002-08-27 Andrew Choi <akochoi@shaw.ca>
7503
7504 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
7505
75062002-08-27 Richard M. Stallman <rms@gnu.org>
7507
7508 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
7509 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
7510 (Vblink_cursor_alist): New variable.
7511 (syms_of_xfns): Initialize and defvar it.
7512 (x_specified_cursor_type): Recognize Qbox for filled box.
7513 Exceptions are hollow boxes.
7514 (Qbox, Qhollow): New variables.
7515 (syms_of_xfns): Initialize and staticpro them.
7516
7517 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
7518 New macros.
7519 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
7520
7521 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
7522 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
7523
7524 * emacs.c (main): Handle --script.
7525 (USAGE1): Mention --script.
7526 (standard_args): Define sort order for --script.
7527
75282002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
7529
7530 * xdisp.c (redisplay_updating_p): Variable removed.
7531 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
7532 New variables.
7533 (init_iterator): Don't free realized faces if
7534 inhibit_free_realized_faces is set.
7535 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
7536 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
7537 initialize Qinhibit_free_realized_faces.
7538
7539 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
7540 when iterator is adding glyphs to a glyph matrix.
7541
75422002-08-27 Kenichi Handa <handa@etl.go.jp>
7543
7544 * xdisp.c (get_next_display_element): In unibyte case, don't use
7545 octal form for such eight-bit characters that can be converted to
7546 multibyte char.
7547
75482002-08-26 Kim F. Storm <storm@cua.dk>
7549
7550 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize foreground
7551 and background colors. From Joe Buehler (tiny change).
7552
75532002-08-26 Miles Bader <miles@gnu.org>
7554
7555 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
7556
75572002-08-25 Andrew Choi <akochoi@shaw.ca>
7558
7559 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
7560 defined instead of MAC_OSX.
7561
7562 * s/darwin.h (select): Define select to sys_select only if
7563 HAVE_CARBON is defined.
7564 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
7565 (DONT_REOPEN_PTY): #def it.
7566
7567 * macterm.c (XTread_socket): Remove code to call
7568 SendEventToEventTarget for keys with command modifiers when
7569 mac_command_key_is_meta is nil.
7570
75712002-08-24 Andreas Schwab <schwab@suse.de>
7572
7573 * eval.c (Fdefvar): Fix last change.
7574
75752002-08-23 Richard M. Stallman <rms@gnu.org>
7576
7577 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
7578 Record variables in load history as (defvar . VAR).
7579 (Fdefvar): Don't record in load history if no initial value.
7580 (Qdefvar): New variable.
7581 (syms_of_eval): Init and staticpro it.
7582
7583 * lread.c (syms_of_lread): Doc fix.
7584 (build_load_history): Use Fmember to see if a definition
7585 is already in the Vload_history element.
7586
7587 * process.c (Fstart_process): Remove /: from program name.
7588
7589 * emacs.c (decode_env_path): Don't add /: if file name handler
7590 has a `safe-magic' property.
7591
7592 * callproc.c (Fcall_process): Remove /: from program name.
7593
75942002-08-23 Stefan Monnier <monnier@cs.yale.edu>
7595
7596 * regex.c (PATFETCH): Remove the translating fetch.
7597 (PATFETCH_RAW): Rename to PATFETCH.
7598 (set_image_of_range): New fun.
7599 (SET_RANGE_TABLE_WORK_AREA): Use it.
7600 (regex_compile): Don't translate the pattern chars so eagerly.
7601 Only do it when inserting an `exactn' bytecode or when handling
7602 a char-range.
7603 (mutually_exclusive_p): Avoid empty statement.
7604
76052002-08-22 Kim F. Storm <storm@cua.dk>
7606
7607 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
7608 end up on a partially visible line; this reverts a specific part
7609 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
7610 display error which has been reported several times now.
7611 However it introduces the problem that changes was supposed to fix.
7612 See my comments in the source if you want to debug this further.
7613
76142002-08-20 Kenichi Handa <handa@etl.go.jp>
7615
7616 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
7617
76182002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
7619
7620 * msdos.c (croak): Add `void' to definition.
7621
7622 * sysdep.c [MSDOS] (request_sigio, unrequest_sigio):
7623 Don't define them, they are defined in msdos.c.
7624
7625 * mem-limits.h [MSDOS]: Declare etext.
7626
7627 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
7628 `const' since CORRECT_DIR_SEPS modifies its target.
7629
76302002-08-19 Kim F. Storm <storm@cua.dk>
7631
7632 * keyboard.c (Fclear_this_command_keys): Added optional arg
7633 KEEP-RECORD to avoid clearing lossage when we just want to clear
7634 the current key sequence (kmacro needs this).
7635
76362002-08-19 Kenichi Handa <handa@localhost>
7637
7638 * composite.c (run_composition_function): Call FUNC if it is fboundp.
7639
7640 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
7641 cons, return Qnil.
7642
76432002-08-17 Richard M. Stallman <rms@gnu.org>
7644
7645 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
7646
7647 * sysdep.c [!VMS]: Include sys/files.h.
7648
7649 * editfns.c (save_restriction_restore): Defend from unchained marker.
7650
7651 * buffer.c (overlays_at): Handle extending vec uniformly.
7652 (overlays_in): Handle extending vec from length 0 as in overlays_at.
7653
76542002-08-15 Andrew Choi <akochoi@shaw.ca>
7655
7656 * mac.c (init_mac_osx_environment): New function.
7657
7658 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
7659
76602002-08-14 Kim F. Storm <storm@cua.dk>
7661
7662 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
7663 executing macro before appending to it (when used from Lisp).
7664 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
7665 which is called prior to each iteration of macro (for kmacro.el).
7666 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
7667
7668 * lisp.h (Fexecute_kbd_macro): Update prototype.
7669
7670 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
7671
76722002-08-14 Kenichi Handa <handa@etl.go.jp>
7673
7674 * xselect.c (QUTF8_STRING): New variable.
7675 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
7676 (x_atom_to_symbol): Likewise.
7677 (x_get_local_selection): New argument local_request. If it is
7678 nonzero, call handler_fn with the second arg nil.
7679 (x_handle_selection_request): Call x_get_local_selection with
7680 local_request 0.
7681 (lisp_data_to_selection_data): Don't encode the string here.
7682 (Fx_get_selection_internal): Call x_get_local_selection with
7683 local_request 1.
7684 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
7685
7686 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
7687
7688 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
7689
76902002-08-13 Richard M. Stallman <rms@gnu.org>
7691
7692 * minibuf.c (Fminibufferp): New function.
7693 (syms_of_minibuf): Defsubr it.
7694 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
7695
76962002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
7697
7698 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
7699
77002002-08-12 Richard M. Stallman <rms@gnu.org>
7701
7702 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
7703 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
7704 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
7705 already.
7706
7707 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
7708
77092002-08-11 Andrew Choi <akochoi@shaw.ca>
7710
7711 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
7712 (Vmac_pass_command_to_system): New variable.
7713 (Vmac_pass_control_to_system): New variable.
7714 (do_mouse_moved): Check wp with is_emacs_window.
7715 (XTread_socket): Check window_ptr with is_emacs_window.
7716 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
7717 events back to Mac Toolbox for processing, depending on values of
7718 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
7719 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
7720 Vmac_pass_control_to_system.
7721
77222002-08-10 Kenichi Handa <handa@etl.go.jp>
7723
7724 * coding.c (unencodable_char_position): New function.
7725 (Funencodable_char_position): New function.
7726 (syms_of_coding): Defsubr Funencodable_char_position.
7727
77282002-08-10 Andrew Choi <akochoi@shaw.ca>
7729
7730 * mac.c (sys_select) [MAC_OSX]: New function.
7731
7732 * macterm.c (MakeMeTheFrontProcess): New function.
7733 (mac_initialize): Call MakeMeTheFrontProcess.
7734
7735 * s/darwin.h: Define select to sys_select.
7736
77372002-08-09 Richard M. Stallman <rms@gnu.org>
7738
7739 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
7740
77412002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
7742
7743 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
7744 end of the buffer.
7745
77462002-08-08 Ken Raeburn <raeburn@mit.edu>
7747
7748 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
7749
7750 * puresize.h (BASE_PURESIZE): Increase to 910000.
7751
77522002-08-08 Kenichi Handa <handa@etl.go.jp>
7753
7754 * coding.c (Ffind_operation_coding_system): For write-region, if
7755 VISIT is a filename, make it the target.
7756
77572002-08-07 Richard M. Stallman <rms@gnu.org>
7758
7759 * alloc.c (mark_object): Detect long lists for debugging.
7760 (mark_object_loop_halt): New variable.
7761
7762 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
7763
7764 * data.c (Fmake_variable_frame_local): Doc fix.
7765
77662002-08-01 David Ponce <david@dponce.com>
7767
7768 * w32menu.c (local_heap, local_alloc, local_free): New macros.
7769 (malloc_widget_value, free_widget_value)
7770 (w32_free_submenu_strings): Use them.
7771
7772 (push_submenu_start, push_submenu_end, push_left_right_boundary)
7773 (push_menu_pane, push_menu_item, single_keymap_panes)
7774 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
7775 (single_submenu, set_frame_menubar)
7776 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
7777
7778 (Fx_popup_menu): Don't show pop up menu until preceding one is
7779 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
7780
7781 * w32menu.c: Changes adapted from xmenu.c
7782 (set_frame_menubar): First parse all submenus,
7783 then make widget_value trees from them.
7784 Don't allocate any widget_value objects
7785 until we are done with the parsing.
7786 (parse_single_submenu): New function.
7787 (digest_single_submenu): New function.
7788 (single_submenu): Function deleted, replaced by those two.
7789
77902002-08-04 Andrew Choi <akochoi@shaw.ca>
7791
7792 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
7793 returns a valid window pointer before proceeding for keyDown and
7794 autoKey events.
7795
77962002-08-03 Andrew Choi <akochoi@shaw.ca>
7797
7798 * macterm.c (USE_CARBON_EVENTS): New macro.
7799 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
7800 (x_iconify_frame): Call CollapseWindow.
7801 (Vmac_reverse_ctrl_meta): New variable.
7802 (Vmac_wheel_button_is_mouse_2): New variable.
7803 (init_mac_drag_n_drop): New function.
7804 (mac_do_receive_drag): New function.
7805 (mac_handle_service_event): New function.
7806 (init_service_handler): New function.
7807 (mac_to_emacs_modifiers): New function.
7808 (mac_event_to_emacs_modifiers): New function.
7809 (mac_get_mouse_btn): New function.
7810 (mac_convert_event_ref): New function.
7811 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
7812 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
7813 mac_get_mouse_btn.
7814 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
7815
7816 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
7817 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
7818 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
7819 TOOL_BAR_EVENT for MAC_OS as well.
7820 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
7821 as for WINDOWS_NT.
7822 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
7823
7824 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
7825
78262002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
7827
7828 * xdisp.c (forward_to_next_line_start): Fix a condition that
7829 lead to a newline being skipped.
7830
78312002-08-02 Andrew Choi <akochoi@shaw.ca>
7832
7833 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
7834
78352002-08-01 Richard M. Stallman <rms@gnu.org>
7836
7837 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
7838
78392002-07-31 Andrew Choi <akochoi@shaw.ca>
7840
7841 * macfns.c: #undef init_process before #define-ing it.
7842
7843 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
7844 HAVE_CARBON is defined.
7845
78462002-07-31 Richard M. Stallman <rms@gnu.org>
7847
7848 * xmenu.c (set_frame_menubar): First parse all submenus,
7849 then make widget_value trees from them.
7850 Don't allocate any widget_value objects
7851 until we are done with the parsing.
7852 (parse_single_submenu): New function.
7853 (digest_single_submenu): New function.
7854 (single_submenu): Function deleted, replaced by those two.
7855
78562002-07-30 Juanma Barranquero <lektu@terra.es>
7857
7858 * w32proc.c (syms_of_ntproc): Fix docstring of
7859 `w32-get-true-file-attributes'.
7860
78612002-07-28 Richard M. Stallman <rms@gnu.org>
7862
7863 * s/hpux8.h (HPUX8): Define this before including hpux.h.
7864 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
7865
7866 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
7867
7868 * keyboard.c (make_lispy_event):
7869 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
7870 Explicitly clear up_modifier in event->modifiers.
7871
78722002-07-27 Richard M. Stallman <rms@gnu.org>
7873
7874 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
7875
7876 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
7877 for bar cursor.
7878
78792002-07-26 Kenichi Handa <handa@etl.go.jp>
7880
7881 * coding.c (detect_coding_iso2022): While checking a byte sequence
7882 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
7883 it in the normal loop.
7884
78852002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
7886
7887 * xterm.c (expose_overlaps): New function.
7888 (expose_window): Use it to fix the display of overlapping rows.
7889
7890 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
7891
78922002-07-23 Ken Raeburn <raeburn@gnu.org>
7893
7894 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
7895 since it only depends on XUINT.
7896
7897 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
7898 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
7899 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
7900 Macros deleted.
3947677c 7901
77d1daf2
AS
7902 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
7903 its value over other approaches.
7904 * sysdep.c (start_of_data): Don't define the function if a macro
7905 form has been defined.
8a8e19a3 7906
048addec
JD
79072002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
7908
7909 * xdisp.c (redisplay_updating_p): New variable.
7910 (init_iterator): Don't free realized faces when
7911 redisplay_updating_p is set.
7912 (redisplay_internal): Set redisplay_updating_p while updating
7913 the display.
7914
79152002-07-23 Richard M. Stallman <rms@gnu.org>
7916
7917 * editfns.c (Fmessage): Treat "" like nil.
7918
79192002-07-23 Kenichi Handa <handa@etl.go.jp>
7920
7921 * xdisp.c (face_before_or_after_it_pos):
7922 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
7923
79242002-07-22 Juanma Barranquero <lektu@terra.es>
7925
7926 * callproc.c (init_callproc) [DOS_NT]:
7927 Initialize Vshared_game_score_directory to nil.
7928 (syms_of_callproc) [DOS_NT]: Likewise.
7929
79302002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
7931
7932 * xdisp.c (display_line): Replace an abort with xassert.
7933
79342002-07-21 Richard M. Stallman <rms@gnu.org>
7935
7936 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
7937 and END_UNCHANGED when setting buffer_unchanged_p.
7938 Use current_matrix_up_to_date_p to decide whether to use
7939 try_cursor_movement.
7940
7941 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
7942
7943 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
7944
7945 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
7946 Set to nil if dir does not exist.
7947 (syms_of_callproc): Init unconditionally and simply.
7948
7949 * buffer.c (Fbuffer_list): Doc fix.
7950
79512002-07-21 Ken Raeburn <raeburn@gnu.org>
7952
7953 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
7954
7955 * buffer.c (mmap_realloc): When shrinking, make sure number of
7956 pages to unmap is rounded towards zero.
7957
7958 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
7959 (XSETINT): Deleted.
7960
7961 * m/att3b.h (XINT): Don't define.
7962 (VALBITS, VALMASK, XTYPE): Deleted.
7963 (DATA_SEG_BITS): Define.
7964 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
7965 ARRAY_MARK_FLAG): Deleted.
7966 (DATA_SEG_BITS): Define.
7967 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
7968 (DATA_SEG_BITS): Define.
7969
79702002-07-20 Richard M. Stallman <rms@gnu.org>
7971
7972 * print.c (print_error_message): New args CONTEXT and CALLER.
7973 Calls changed.
7974
7975 * lisp.h (print_error_message): Declare new args.
7976
7977 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
7978 and CONTEXT to print_error_message, don't print them here.
7979 For a Quit, don't use Vsignaling_function.
7980 Call message_log_maybe_newline.
7981
7982 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
7983
79842002-07-20 Kim F. Storm <storm@cua.dk>
7985
7986 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
7987
79882002-07-19 Ken Raeburn <raeburn@gnu.org>
7989
7990 * bytecode.c (struct byte_stack): Pointers into byte string now
7991 point to const.
7992 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
7993 const.
7994 * charset.h (BCOPY_SHORT): Source pointer now points to const.
7995 * coding.c (encode_eol, detect_coding, detect_eol):
7996 (decode_coding, encode_coding, detect_coding_system):
7997 Source strings now treated as const.
7998 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
7999 modify Lisp string contents.
8000 * coding.h (decode_coding, encode_coding, detect_coding,
8001 detect_eol): Declarations updated.
8002 * composite.c (compose_chars_in_text): Treat Lisp string contents
8003 as const.
8004 * dispnew.c (safe_bcopy): Source pointer now points to const.
8005 * lisp.h (STRING_COPYIN): New macro.
8006 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
8007 (internal_with_output_to_temp_buffer): Declarations updated.
8008 * print.c (temp_output_buffer_setup):
8009 (internal_with_output_to_temp_buffer): Buffer name argument is now
8010 pointer to const.
8011 * sound.c (struct sound_device): Function pointer field "write"
8012 buffer argument now points to const.
8013 (vox_write): Buffer argument points to const.
8014 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
8015 contents as const.
8016 * sysdep.c (emacs_write): Buffer pointer now const.
8017 * term.c (encode_terminal_code): Buffer pointer now const.
8018 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
8019 (x_face_list_fonts, x_update_menu_appearance):
8020 (hash_string_case_insensitive): Treat Lisp string contents as const.
8021
80222002-07-19 Juanma Barranquero <lektu@terra.es>
8023
8024 * fileio.c (Ffile_name_as_directory): Fix argument name in docstring.
8025 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
8026
8027 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
8028
8029 * fileio.c (syms_of_fileio): Likewise.
8030
80312002-07-18 Richard M. Stallman <rms@gnu.org>
8032
8033 * data.c (Fdefalias): Doc fix.
8034
80352002-07-17 Dave Love <fx@gnu.org>
8036
8037 * intervals.h (text_property_stickiness): Use P_.
8038
8039 * ccl.c: Remove `emacs' conditionals.
8040 (ccl_backtrace_table): Fix size spec.
8041 (ccl_driver): Fix type errors.
8042
80432002-07-16 Ken Raeburn <raeburn@gnu.org>
8044
8045 * alloc.c (xstrdup, make_string, make_unibyte_string)
8046 (make_multibyte_string, build_string): String pointer args now
8047 point to const.
8048 * charset.c (find_charset_in_text, c_string_width):
8049 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
8050 * fileio.c (report_file_error):
8051 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
8052 (count_combining_before, count_combining_after, insert_1_both):
8053 (insert, insert_and_inherit, insert_string):
8054 (insert_before_markers, insert_before_markers_and_inherit):
8055 * lread.c (intern, oblookup, hash_string):
8056 * minibuf.c (temp_echo_area_glyphs):
8057 * search.c (fast_c_string_match_ignore_case):
8058 * sysdep.c (emacs_open, set_file_times):
8059 * xfaces.c (xstricmp):
8060 * xdisp.c (store_frame_title, string_char_and_length):
8061 (message_dolog, message2, message2_nolog, set_message): Likewise.
8062 (set_message_1): Cast message string argument to const pointer.
8063 * editfns.c (general_insert_function): Insertion function now
8064 takes pointer to const for input data.
8065 * charset.h (find_charset_in_text, c_string_width):
8066 (parse_str_as_multibyte): Declarations updated.
8067 * dispextern.h (xstricmp): Declaration updated.
8068 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
8069 (count_size_as_multibyte, count_combining_before):
8070 (count_combining_after, insert_1, insert_1_both, message_dolog):
8071 (insert, insert_and_inherit, insert_before_markers)
8072 (insert_before_markers_and_inherit, set_message, message2):
8073 (message2_dolog, build_string, make_string, make_unibyte_string):
8074 (make_multibyte_string, intern, oblookup, report_file_error):
8075 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
8076 (emacs_open, xstrdup): Declarations updated.
8077 * systime.h (set_file_times): Declaration updated.
8078
8079 * charset.c (find_charset_in_text, lisp_string_width): Use const
8080 for pointer to lisp string data.
8081 * charset.h (FETCH_STRING_CHAR_ADVANCE):
8082 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
8083 * coding.c (Ffind_coding_systems_region_interval):
8084 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
8085 (Fmake_directory_internal, Fdelete_directory):
8086 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
8087 * fontset.c (font_family_registry, fs_query_fontset):
8088 (list_fontsets):
8089 * frame.c (Fframe_parameter):
8090 * keyboard.c (cmd_error_internal):
8091 * keymap.c (Fdescribe_buffer_bindings):
8092 * lread.c (complete_filename_p, openp):
8093 * minibuf.c (Fminibuffer_complete_word):
8094 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
8095 (face_before_or_after_it_pos, next_element_from_string):
8096 (get_overlay_arrow_glyph_row, display_mode_element):
8097 (decode_mode_spec_coding):
8098 * xterm.c (same_x_server): Likewise.
8099
8100 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
8101 settings of non-existent fields.
8102
8103 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
8104 copy a lisp value.
8105
8106 * lread.c (Fintern_soft): Use string macros instead of
8107 Lisp_String fields.
8108 * keyboard.c (echo_char, parse_modifiers_uncached):
8109 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
8110 * textprop.c (validate_interval_range, interval_of): Likewise.
8111
8112 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
8113
8114 * charset.h (FETCH_STRING_CHAR_ADVANCE)
8115 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
8116 XSTRING()->size_byte.
8117
8118 * lisp.h (SDATA, SREF): Produce rvalue.
8119 (SSET): New macro.
8120 * alloc.c (make_event_array): Use SSET for storing into a string.
8121 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
8122 a string.
8123 * casefiddle.c (casify_object): Use SSET.
8124 * charset.h (FETCH_STRING_CHAR_ADVANCE)
8125 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
8126 address of string contents.
8127 * data.c (Faref): Use SDATA.
8128 (Faset): Use SDATA, SSET.
8129 * dired.c (directory_files_internal): Use SSET.
8130 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
8131 (Fread_file_name): Use SREF, SSET.
8132 * fns.c (concat): Use SSET.
8133 (concat, Fdelete): Use SDATA.
8134 * insdel.c (insert_from_string_1): Use SDATA.
8135 * keyboard.c (Fevent_convert_list): Use SREF.
8136 * lread.c (Fload): Use SDATA, SSET.
8137 * macfns.c (validate_x_resource_name): Use SSET.
8138 * process.c (status_message): Use SSET.
8139 * search.c (wordify): Use SDATA.
8140 (Freplace_match): Use SREF.
8141 * w32fns.c (validate_x_resource_name): Use SSET.
8142 * xfns.c (validate_x_resource_name): Use SSET.
8143 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
8144
81452002-07-16 Richard M. Stallman <rms@gnu.org>
8146
8147 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
8148
8149 * xdisp.c (reconsider_clip_changes):
8150 Don't test prevent_redisplay_optimizations_p.
8151 (redisplay_internal): Test prevent_redisplay_optimizations_p
8152 along with clip_changed in some cases.
8153 (try_window_id): Likewise.
8154 (redisplay_window): New local var buffer_unchanged_p.
8155
8156 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
8157
8158 * process.c (create_process): Test USG_SUBTTY_WORKS.
8159 (process_send_signal): Clean up handling of GID.
8160 Detect errors in ioctls meant to set GID.
8161
8162 * window.c (temp_output_buffer_show):
8163 Don't set prevent_redisplay_optimizations_p.
8164
81652002-07-15 Juanma Barranquero <lektu@terra.es>
8166
8167 * eval.c (Fdefvaralias): Add docstring argument.
8168
81692002-07-15 Ken Raeburn <raeburn@gnu.org>
8170
8171 * lisp.h (STRING_INTERVALS): Produce rvalue.
8172 (STRING_SET_INTERVALS): New macro.
8173 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
8174 * fns.c (Fstring_as_multibyte): Likewise.
8175 * intervals.c (balance_possible_root_interval, delete_interval)
8176 (create_root_interval, copy_intervals_to_string): Likewise.
8177 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
8178 instead of 0.
8179
81802002-07-14 Ken Raeburn <raeburn@gnu.org>
8181
8182 * lisp.h (STRING_SET_CHARS): New macro.
8183 (SCHARS, SBYTES): Produce rvalues.
8184 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
8185 * fns.c (concat): Likewise.
8186 * lread.c (read_vector): Likewise.
8187
8188 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
8189 (STRING_SET_UNIBYTE): New macro.
8190 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
8191 length of -1) changed to use STRING_SET_UNIBYTE.
8192 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
8193 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
8194 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
8195 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
8196 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
8197 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
8198 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
8199 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
8200 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
8201 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
8202 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
8203 STRING_BYTES or indirection changed to SCHARS, SBYTES,
8204 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
8205 unchanged for now.
8206
82072002-07-13 Kim F. Storm <storm@cua.dk>
8208
8209 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
8210
82112002-07-12 Richard M. Stallman <rms@gnu.org>
8212
8213 * fileio.c (Fwrite_region): Doc fix.
8214
8215 * print.c (print_error_message): Don't handle Vsignaling_function here.
8216
8217 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
8218 (command_loop_1): Avoid certain actions after memory-full error.
8219
8220 * eval.c (Fsignal): Don't call cancel_hourglass.
8221 For a memory-full error, don't call Vsignal_hook_function
8222 and don't set Vsignaling_function.
8223
8224 * process.c (process_send_signal): Add abort call.
8225
82262002-07-11 Markus Rost <rost@math.ohio-state.edu>
8227
8228 * keymap.c (Fkey_binding): Fix typo.
8229
82302002-07-11 Richard M. Stallman <rms@gnu.org>
8231
8232 * alloc.c (Vmemory_full): New variable.
8233 (Vmemory_signal_data): Renamed from memory_signal_data.
8234 Uses changed.
8235 (syms_of_alloc): Defvar them.
8236 (memory_full, buffer_memory_full): Set Vmemory_full.
8237
8238 * lisp.h (Vmemory_full): Add declaration.
8239 (current_column, indented_beyond_p): Change declaration.
8240
8241 * indent.c (last_known_column): Declare as double, not float.
8242 (current_column, current_column_1, string_display_width)
8243 (position_indentation): Return `double'.
8244 (indented_beyond_p): Arg `column' is `double'. Callers changed.
8245
8246 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
8247 (back_to_previous_visible_line_start)
8248 (reseat_at_next_visible_line_start, next_element_from_buffer):
8249 Use `double', not `float', when calling indented_beyond_p.
8250
8251 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
8252
8253 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
8254
82552002-07-11 Juanma Barranquero <lektu@terra.es>
8256
8257 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
8258 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
8259 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
8260 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
8261 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
8262 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
8263
82642002-07-10 Juanma Barranquero <lektu@terra.es>
8265
8266 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE. All callers
8267 changed.
8268
82692002-07-09 Stefan Monnier <monnier@cs.yale.edu>
8270
8271 * data.c (Fdefalias): Add an optional `docstring' argument.
8272 (set_internal, Fsetq_default): Use XCAR/XCDR.
8273
8274 * composite.c (HASH_VALUE, HASH_KEY):
8275 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
8276
82772002-07-09 Kenichi Handa <handa@etl.go.jp>
8278
8279 * callproc.c (Fcall_process): Fix previous change.
8280
82812002-07-07 Stefan Monnier <monnier@cs.yale.edu>
8282
8283 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
8284 Add support for hash-tables.
8285 (Ftry_completion): Return t even if the string appears multiple times.
8286
8287 * fns.c (Fnconc): Use XCDR.
8288 (Fprovide): Use CONSP and XCDR.
8289 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
8290 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
8291 (Fmake_hash_table): Accept `:size nil'.
8292 (Fmakehash): Delete: moved to subr.el.
8293 (syms_of_fns): Don't defsubr makehash.
8294
8295 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
8296 (HASH_TABLE_SIZE): Move from fns.c.
8297
82982002-07-07 Richard M. Stallman <rms@gnu.org>
8299
8300 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
8301 Instead just return 0 when there is something to be done.
8302 (try_scrolling): If make_cursor_line_fully_visible returns 0,
8303 retry scrolling as if cursor were off the bottom.
8304 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
8305 return CURSOR_MOVEMENT_MUST_SCROLL.
8306 (redisplay_window): If make_cursor_line_fully_visible returns 0,
8307 go to try_to_scroll.
8308
8309 * buffer.c (Fbuffer_local_value): Store current value into its binding
8310 so we get the up-to-date value for the binding that is loaded.
8311
8312 * eval.c (Fdefmacro): Doc fix.
8313
83142002-07-05 Dave Love <fx@gnu.org>
8315
8316 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
8317 correctly.
8318
8319 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
8320 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
8321 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
8322 CCL_LookupCharConstTbl.
8323 (syms_of_ccl): Defvar translation-hash-table-vector.
8324
83252002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8326
8327 * xdisp.c: Remove unused variable `face'.
8328
83292002-07-04 Juanma Barranquero <lektu@terra.es>
8330
8331 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
8332 obsolescence information.
8333
83342002-07-03 Andrew Choi <akochoi@shaw.ca>
8335
8336 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
8337 pattern. Search cache first.
8338 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
8339 for Japanese font.
8340 (XLoadQueryFont): Use it.
8341
83422002-07-02 Richard M. Stallman <rms@gnu.org>
8343
8344 * keymap.c (Fdefine_key): Doc fix.
8345
8346 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
8347
83482002-07-02 Juanma Barranquero <lektu@terra.es>
8349
8350 * keymap.c (syms_of_keymap): Fix typo.
8351
83522002-07-01 Andrew Choi <akochoi@shaw.ca>
8353
8354 * s/darwin.h: Define POSIX_SIGNALS.
8355
8356 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
8357 and FSRefMakePath to convert FSSpec returned with Apple Event to
8358 Posix pathname.
8359 (mac_initialize) [TARGET_API_MAC_CARBON]:
8360 Call init_required_apple_events and disable the `Quit' menu item
8361 provided automatically by the Carbon Toolbox.
8362
83632002-07-01 Dave Love <fx@gnu.org>
8364
8365 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
8366 for K&R.
8367
8368 * xterm.c: Fix prototype for K&R.
8369
8370 * term.c (costs_set): Declare static, non-initialized for pcc.
8371
83722002-07-01 Richard M. Stallman <rms@gnu.org>
8373
8374 * keyboard.c (timer_last_idleness_start_time): New variable.
8375 (timer_start_idle): Set that.
8376 (read_key_sequence): Use that to reset timer_idleness_start_time
8377 to previous value.
8378
8379 * window.c (Frecenter): With arg, set optional_new_start.
8380
8381 * xdisp.c (redisplay_internal): Make optional_new_start really work.
8382
8383 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
8384 buffer for completion.
8385
83862002-06-29 Ken Raeburn <raeburn@gnu.org>
8387
8388 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
8389
83902002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8391
8392 * keyboard.c (readable_filtered_events): New function that filters
8393 FOCUS_IN_EVENT depending on parameter.
8394 (readable_events): Calls readable_filtered_events, not filtering
8395 FOCUS_IN_EVENT.
8396 (get_filtered_input_pending): New function, filtering parameter passed
8397 to readable_filtered_events.
8398 (get_input_pending): Calls get_filtered_input_pending, not filtering
8399 FOCUS_IN_EVENT.
8400 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
8401 FOCUS_IN_EVENT.
8402
8403 * xterm.h (struct x_output): Add focus_state.
8404
8405 * xterm.c (x_focus_changed): New function.
8406 (x_detect_focus_change): New function.
8407 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
8408 EnterNotify and LeaveNotify to track X focus changes.
8409
84102002-06-28 Andreas Schwab <schwab@suse.de>
8411
8412 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
8413
84142002-06-27 Kim F. Storm <storm@cua.dk>
8415
8416 * xdisp.c: (mode_line_string_list, mode_line_string_face)
8417 (mode_line_string_face_prop): New variables.
8418 (store_mode_line_string): New function.
8419 (display_mode_element): Use store_mode_line_string to
8420 add mode-line string elements to mode_line_string_list
8421 when mode_line_string_list is non-nil.
8422 (Fformat_mode_line): Now returns propertized string by
8423 default. New arg NO-PROPS to ignore properties.
8424 (decode_mode_spec): Only add two dashes for %- in propertized
8425 mode-line string.
8426 (syms_of_xdisp): Init and staticpro mode_line_string_list.
8427
84282002-06-27 Stefan Monnier <monnier@cs.yale.edu>
8429
8430 * minibuf.c (minibuffer_completion_contents): Add return type.
8431
84322002-06-27 Juanma Barranquero <lektu@terra.es>
8433
8434 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
8435
84362002-06-26 Juanma Barranquero <lektu@terra.es>
8437
8438 * fileio.c (read_file_name_cleanup): Add missing return.
8439
84402002-06-26 Richard M. Stallman <rms@gnu.org>
8441
8442 * window.c (Frecenter): Don't set force_start flag.
8443
8444 * minibuf.c (do_completion, Fminibuffer_complete_word)
8445 (Fminibuffer_completion_help): Complete just the text before point.
8446 (minibuffer_completion_contents): New function.
8447
8448 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
8449
8450 * frame.c (frames_bury_buffer): Function deleted.
8451
84522002-06-25 Miles Bader <miles@gnu.org>
8453
8454 * callint.c (Fcall_interactively): When checking to see if doprnt hit
8455 the end of callint_message, allow for a terminating '\0'.
8456
84572002-06-24 Juanma Barranquero <lektu@terra.es>
8458
8459 * w32select.c: Include composite.h
8460
8461 * w16select.c: Likewise.
8462
84632002-06-24 Kenichi Handa <handa@etl.go.jp>
8464
8465 * callproc.c (Fcall_process): If code detection is necessary,
8466 call detect_coding directly here.
8467
8468 * coding.c (detect_eol): Preserve coding->cmp_data.
8469
8470 * w16select.c (Fw16_get_clipboard_data):
8471 * w32fns.c (w32_to_x_font):
8472 * w32select.c (Fw32_get_clipboard_data):
8473 * xselect.c (selection_data_to_lisp_data):
8474 * xterm.c (XTread_socket): Disable composition handling.
8475
84762002-06-24 Stefan Monnier <monnier@cs.yale.edu>
8477
8478 * print.c (temp_output_buffer_setup): Kill all local variables.
8479
84802002-06-22 Stefan Monnier <monnier@cs.yale.edu>
8481
8482 * lread.c (Fread): Remove redundant and imprecise declaration.
8483
8484 * xfns.c (check_x_display_info): Use check_x_frame.
8485
8486 * .gdbinit (xprintsym): Use the new `xname' field.
8487 (xsymbol): Use it.
8488
84892002-06-22 Jason Rumney <jasonr@gnu.org>
8490
8491 * w32fns.c (file_dialog_callback): New function.
8492 (Fx_file_dialog): Allow selecting directories as well as files.
8493
84942002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8495
8496 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
8497 OpenBSD. Add support for mipseb-*-netbsd* machines.
8498
84992002-06-17 Andrew Choi <akochoi@shaw.ca>
8500
8501 * macterm.c (mac_scroll_area): Set foreground and backcolor to
8502 black and white before scrolling. Restore frame background and
8503 foreground color after scrolling.
8504 (do_window_update): Call XClearWindow before calling expose_frame.
8505 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
8506 FRAME_FOREGROUND_PIXEL of frame.
8507
8508 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
8509 test Mac command key as <ALT> key.
8510
85112002-06-17 Stefan Monnier <monnier@cs.yale.edu>
8512
8513 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
8514
8515 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
8516 Lookup keys in function-key-map immediately so that key-translation-map
8517 can be applied earlier.
8518 Remove function_key_possible and key_translation_possible, replaced
8519 by checking `keytran_start < t'.
8520
8521 * .gdbinit (xsymbol): Use the new `xname' field.
8522
85232002-06-17 Andrew Choi <akochoi@shaw.ca>
8524
8525 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
8526 test Mac command key as <ALT> key.
8527
8528 * mac.c (do_applescript): Call initialize_applescript if necessary
8529 when first called. Dispose of result_desc only when there is no error.
8530 (Fdo_applescript): Use %d format specifier instead of %ld.
8531
85322002-06-16 Andrew Choi <akochoi@shaw.ca>
8533
8534 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
8535 of FrontWindow for cases keyDown and autoKey.
8536
8537 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
8538 Vdefault_fontset to Monaco with mac-roman coding.
8539
8540 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
8541 init_process before and after inclusion of Carbon/Carbon.h, resp.
8542
8543 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
8544 cursor_gc.
8545 (add_font_name_table_entry): New function.
8546 (init_font_name_table): Use add_font_name_table_entry; add italic,
8547 bold, and bold-italic entries for truetype fonts.
8548
8549 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
8550 for Mac too.
8551 (try_font_list) [MAC_OS]: If no font matches given registry, try
8552 fonts with any registry matching face_family.
8553 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
8554
8555 * s/darwin.h: If autoconf detects the Ncurses library, define
8556 LIBS_TERMCAP to -lncurses to use it.
8557
85582002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
8559
8560 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
8561
85622002-06-15 Richard M. Stallman <rms@gnu.org>
8563
8564 * window.c (Fset_window_configuration): Explicitly preserve
8565 the point value that new_current_buffer had at the start.
8566
85672002-06-14 Juanma Barranquero <lektu@terra.es>
8568
8569 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
8570 Fix typos.
8571
85722002-06-14 Kim F. Storm <storm@cua.dk>
8573
8574 * insdel.c (insert_1_both, insert_from_string_1)
8575 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
8576 insert happened in the end_unchanged region. Otherwise, the
8577 redisplay may be confused and duplicate the last line in the
8578 buffer [seen after save-buffer when require-final-newline==t].
8579
85802002-06-13 Jason Rumney <jasonr@gnu.org>
8581
8582 * w32.c (init_environment): Remove EMACSLOCKDIR.
8583 (stat): Swap _S_IFDIR and _S_IFREG.
8584
85852002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8586
8587 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
8588 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
8589 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
8590 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
8591 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
8592 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
8593 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
8594 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
8595 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
8596 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
8597 SELECTION_REQUEST_EVENT, selection_clear_event to
8598 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
8599 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
8600 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
8601 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
8602 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
8603 no_event to NO_EVENT.
8604
86052002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8606
8607 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
8608
86092002-06-12 Stefan Monnier <monnier@cs.yale.edu>
8610
8611 * intervals.c (textget): Don't forget to `return'.
8612 (lookup_char_property): Use XCAR/XCDR.
8613
86142002-06-12 Juanma Barranquero <lektu@terra.es>
8615
8616 * xdisp.c (Fformat_mode_line): Fix typo.
8617
86182002-06-12 Kim F. Storm <storm@cua.dk>
8619
8620 * xdisp.c (Fformat_mode_line): New function.
8621 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
8622 (store_frame_title_char, store_frame_title): Use unconditionally.
8623 (init_xdisp): Defsubr Fformat_mode_line.
8624 Initialize frame_title_buf etc. unconditionally.
8625
86262002-06-11 Stefan Monnier <monnier@cs.yale.edu>
8627
8628 * keyboard.c (read_key_sequence):
8629 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
8630 things through those maps after downcasing events.
8631 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
8632 applies after function-key-map.
8633 Make sure that keytran can be done in the middle in the sequence.
8634 Be careful not to throw away events past the one we downcase.
8635
8636 * lread.c (read_integer): Remove unused var `tem'.
8637 (read1): Fix int/Lisp_Object mixup.
8638
8639 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
8640
86412002-06-11 Richard M. Stallman <rms@gnu.org>
8642
8643 * keyboard.c (readable_events): Ignore any number of
8644 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
8645
86462002-06-09 Miles Bader <miles@gnu.org>
8647
8648 * xfaces.c (Ftty_supports_face_attributes_p): New function.
8649 (parse_rgb_list, tty_lookup_color): New functions.
8650 (tty_defined_color): Use `tty_lookup_color' to do all the work.
8651 (color_distance, Fcolor_distance): New functions.
8652 (TTY_SAME_COLOR_THRESHOLD): New macro.
8653 (Qtty_color_standard_values): New variable.
8654 (syms_of_xfaces): Initialize new vars & functions.
8655
86562002-06-08 Colin Walters <walters@verbum.org>
8657
8658 * textprop.c (Vchar_property_alias_alist): New variable.
8659 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
8660
8661 * intervals.c (lookup_char_property): New function for looking up
8662 overlay and text properties, created from textget.
8663 (textget): Use it.
8664
8665 * intervals.h (lookup_char_property): Declare.
8666 (Vchar_property_alias_alist): Declare.
8667
8668 * buffer.c (Foverlay_get): Use lookup_char_property.
8669
86702002-06-07 Sam Steingold <sds@gnu.org>
8671
8672 * xselect.c (lisp_data_to_selection_data): Fix last change:
8673 *data_ret is not a Lisp string, while unibyte_string is.
8674
86752002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
8676
8677 * xselect.c (lisp_data_to_selection_data): Fix last change:
8678 set size_ret.
8679
86802002-06-07 Andreas Schwab <schwab@suse.de>
8681
8682 * m/amdx86-64.h: New file.
8683
86842002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
8685
8686 * fns.c (Fstring_make_unibyte): Doc fix.
8687
8688 * xselect.c (lisp_data_to_selection_data): If the requested type
8689 is STRING, call string_make_unibyte to encode the selected text
8690 as a string.
8691
8692 * window.c (Fset_window_hscroll): Doc fix.
8693
86942002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8695
8696 * fileio.c (choose_write_coding_system):
8697 Call select-safe-coding-system properly.
8698
86992002-06-03 Richard M. Stallman <rms@gnu.org>
8700
8701 * xdisp.c (message_with_string): Error if STRING is not a string.
8702
8703 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
8704
8705 * fileio.c (choose_write_coding_system): Pass FILE arg to
8706 Vselect_safe_coding_system_function.
8707
87082002-06-03 Ken Raeburn <raeburn@gnu.org>
8709
8710 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
8711
87122002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
8713
8714 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
8715 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
8716 * keymap.c (describe_command): Likewise.
8717 * minibuf.c (read_minibuf): Likewise.
8718
8719 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
8720 Cast `current_column' return value to int.
8721 (back_to_previous_visible_line_start)
8722 (reseat_at_next_visible_line_start, next_element_from_buffer):
8723 Cast `indented_beyond_p' 3rd arg to float.
8724
8725 * indent.c (last_known_column): Now a float.
8726 (current_column_1, position_indentation, current_column)
8727 (string_display_width): Return float.
8728 (Fcurrent_column): Cast `current_column' return value to int.
8729 (Fcurrent_indentation): Cast `position_indentation' retval to int.
8730 (indented_beyond_p): Third arg now a float.
8731 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
8732
8733 * lisp.h (current_column): Now returns float.
8734 (indented_beyond_p): 3rd arg now a float.
8735
87362002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
8737
8738 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
8739 is Qcompound_text_with_extensions.
8740
8741 * xselect.c (lisp_data_to_selection_data): Always set selection
8742 type as string if x_encode_text returns streingp non-NULL.
8743
8744 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
8745
87462002-05-30 Richard M. Stallman <rms@gnu.org>
8747
8748 * window.c (Fset_window_configuration): Correct the handling
8749 of point in current buffer, to work with multiple windows.
8750
87512002-05-29 Colin Walters <walters@verbum.org>
8752
8753 * lread.c (Fread_from_string): Don't depend on order of evaluation
8754 for C function parameters.
8755
87562002-05-28 Richard M. Stallman <rms@gnu.org>
8757
8758 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
8759 way for blinked-off state and for a nonselected window.
8760
8761 * window.c (window_scroll_pixel_based): Don't call Fbolp;
8762 instead, see if the new start pos is at beginning of line.
8763
8764 * fileio.c (Fwrite_region): If START is a string, don't
8765 make any annotations.
8766
8767 * eval.c (syms_of_eval): Doc fix.
8768
87692002-05-28 Colin Walters <walters@debian.org>
8770
8771 * emacs.c (USAGE1): Add --no-splash.
8772 (standard_args): Ditto.
8773
87742002-05-28 Colin Walters <walters@gnu.org>
8775
8776 * lread.c (readchar_count): New variable.
8777 (readchar): Increment it.
8778 (unreadchar): Decrement it.
8779 (read_multibyte): Decrement it.
8780 (Vread_with_symbol_positions): New variable.
8781 (Vread_symbol_positions_list): New variable.
8782 (read_internal_start): New function, created from Fread and
8783 Fread_from_string. Handle Vread_symbol_positions_list and
8784 Vread_with_symbol_positions.
8785 (readevalloop, Fread, Fread_from_string): Use it.
8786 (read1): Use readchar_count to add symbol positions to
8787 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
8788 (syms_of_lread): DEFVAR_LISP and initialize them.
8789
8790 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
8791 (substitute_object_recurse, substitute_object_in_subtree)
8792 (substitute_in_interval): Prototype.
8793 (read_multibyte): Return c if it's less than zero.
8794
87952002-05-28 Kim F. Storm <storm@cua.dk>
8796
8797 * fileio.c (Fread_file_name_internal): Added brute-force
8798 speed up for using predicate file-directory-p.
8799
88002002-05-28 Kim F. Storm <storm@cua.dk>
8801
8802 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
8803 New variables.
8804 (syms_of_fileio): DEFVAR_LISP them.
8805 (read_file_name_cleanup): New unwind function.
8806 (Fread_file_name_internal): Only return completions satifying
8807 Vread_file_name_predicate. Temporarily unwind protect and rebind
8808 default-directory while checking completions against the predicate.
8809 (Fread_file_name): Added PREDICATE argument. Specbind it to
8810 Vread_file_name_predicate during completion.
8811 Call Vread_file_name_function to read the file name if non-nil.
8812
8813 * lisp.h (Fread_file_name): Now has 6 args.
8814
8815 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
8816 predicate for Fread_file_name when reading directory name.
8817 Supply Qnil for predicate in other calls to Fread_file_name.
8818
88192002-05-26 Miles Bader <miles@gnu.org>
8820
8821 * term.c (tty_capable_p): New function.
8822 * dispextern.h (tty_capable_p): New function declaration.
8823 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
8824 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
8825
88262002-05-23 Stefan Monnier <monnier@cs.yale.edu>
8827
8828 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
8829 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
8830 (Vwrite_region_annotate_functions): Docstring fix.
8831
88322002-05-23 Kim F. Storm <storm@cua.dk>
8833
8834 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
8835 phys_cursor's hpos is overwritten. This is still not completely
8836 correct, as it doesn't really make sense to use hpos at all to
8837 get the cursor glyph (as that is relative to the width of the
8838 characters on the line, which may have changed during the update).
8839
88402002-05-22 Jason Rumney <jasonr@gnu.org>
8841
8842 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
8843 Lisp_Object.
8844 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
8845 Use modified enumfont_t struct.
8846
8847 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
8848
8849 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
8850 Handle the `hbar' cursor type.
8851 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
8852
8853 * w32fns.c (Qhbar): New variable.
8854 (x_specified_cursor_type): Use it.
8855
88562002-05-21 Ken Raeburn <raeburn@gnu.org>
8857
8858 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
8859 now, when the address is needed.
8860
88612002-05-21 Colin Walters <walters@gnu.org>
8862
8863 * Makefile.in (shortlisp): Add font-core.el.
8864
88652002-05-20 Richard M. Stallman <rms@gnu.org>
8866
8867 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
8868
8869 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
8870 equivalent key bindings here.
8871
88722002-05-20 Ken Raeburn <raeburn@gnu.org>
8873
8874 Change symbol structure to contain a lisp object for the symbol
8875 name:
8876 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
8877 object field named "xname".
8878 (SYMBOL_NAME): New macro.
8879 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
8880 name field.
8881 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
8882 (mark_object, gc_sweep): Use symbol xname field and XSTRING
8883 instead of name field.
8884 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
8885 SYMBOL_NAME instead of XSYMBOL and name field.
8886 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
8887 instead of XSYMBOL and name field.
8888 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
8889 and SYMBOL_NAME instead of XSYMBOL and name field.
8890 * coding.c (Fread_coding_system, code_convert_region1)
8891 (code_convert_string1, code_convert_string_norecord)
8892 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
8893 XSYMBOL and name field.
8894 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
8895 (Fmake_variable_buffer_local, Fmake_local_variable)
8896 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
8897 of XSYMBOL and name field.
8898 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
8899 XSYMBOL and name field.
8900 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
8901 instead of XSYMBOL and name field.
8902 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
8903 XSYMBOL and name field.
8904 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
8905 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
8906 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
8907 instead of XSYMBOL and name field.
8908 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
8909 (parse_modifiers, apply_modifiers, Fevent_convert_list)
8910 (parse_solitary_modifier, Fexecute_extended_command):
8911 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
8912 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
8913 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
8914 of XSYMBOL and name field.
8915 (describe_command, describe_translation): Use SYMBOL_NAME and
8916 assignment instead of XSYMBOL and name field and XSETSTRING.
8917 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
8918 instead of XSYMBOL and name field.
8919 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
8920 name field and XSETSTRING.
8921 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
8922 of XSYMBOL and name field.
8923 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
8924 assignment instead of XSYMBOL and name field and XSETSTRING.
8925 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
8926 XSTRING instead of XSYMBOL and name field.
8927 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
8928 and XSTRING instead of XSYMBOL and name field.
8929 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
8930 and XSTRING instead of XSYMBOL and name field.
8931 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
8932 XSTRING instead of XSYMBOL and name field.
8933 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
8934 of XSYMBOL and name field.
8935 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
8936 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
8937
89382002-05-19 Ken Raeburn <raeburn@gnu.org>
8939
8940 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
8941 and XCDR real rvalues in most configurations.
8942
8943 * buffer.c (fix_overlays_in_range, fix_overlays_before):
8944 Don't take the address of the cdr part of a cons cell; instead, track
8945 the parent cell and call XSETCDR, or set the variable for the head
8946 of the list if we haven't started down the list yet.
8947
89482002-05-19 Richard M. Stallman <rms@gnu.org>
8949
8950 * doc.c (reread_doc_file): Don't ask for confirmation.
8951
89522002-05-18 Jason Rumney <jasonr@gnu.org>
8953
8954 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
8955 (xbm_load_image): Use it.
8956 (xbm_load): Ditto.
8957 (xbm_read_bitmap_data): Reverted to xfns.c version.
8958 From David Ponce <david@dponce.com>.
8959
89602002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
8961
8962 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
8963 2.02 and later.
8964
89652002-05-16 Juanma Barranquero <lektu@terra.es>
8966
8967 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
8968
89692002-05-15 Stefan Monnier <monnier@cs.yale.edu>
8970
8971 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
8972 meaningful test.
8973 (read_char_minibuf_menu_prompt): Fix typo.
8974
89752002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
8976
8977 * eval.c (Fcommandp): Doc fix.
8978
89792002-05-13 Stefan Monnier <monnier@cs.yale.edu>
8980
8981 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
8982 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
8983 (Fset_keymap_parent): Gcpro a bit more.
8984 (access_keymap): Gcpro around meta_map call and around the main loop.
8985 (get_keyelt): Gcpro when following indirect references.
8986 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
8987 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
8988 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
8989 Remove useless ad-hoc remap code.
8990
89912002-05-13 Richard M. Stallman <rms@gnu.org>
8992
8993 * search.c (search_buffer): Give up boyer moore search if inverse
8994 translation change charset_base.
8995
89962002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
8997
8998 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
8999 characters is carried over from the previous block of text, adjust
9000 coding->produced to account for the extra character.
9001
90022002-05-11 Andreas Schwab <schwab@suse.de>
9003
9004 * coding.c (intersection): Keep the elements of the returned list
9005 in the same order as in the first list.
9006
90072002-05-11 Kim F. Storm <storm@cua.dk>
9008
9009 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
9010 only update cmm_size if realloc actually succeeds.
9011 Testing with initial size of 2 elements revealed that using
9012 realloc on GNU/Linux would cause a random trap in xmalloc
9013 later on, so I rewrote the code to use malloc/bcopy/free instead
9014 of realloc.
9015
90162002-05-10 Jason Rumney <jasonr@gnu.org>
9017
9018 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
9019
90202002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
9021
9022 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
9023 parens, to ensure correct evaluation order.
9024
90252002-05-10 Kim F. Storm <storm@cua.dk>
9026
9027 * keymap.c (Vemulation_mode_map_alists): New variable.
9028 (syms_of_keymap): DEFVAR_LISP it.
9029 (current_minor_maps): Process keymap alists in that list before
9030 minor-mode-overriding-map-alist and minor-mode-map-alist.
9031
90322002-05-09 Richard M. Stallman <rms@gnu.org>
9033
9034 * search.c (Freplace_match): Doc fix.
9035
90362002-05-09 Kim F. Storm <storm@cua.dk>
9037
9038 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
9039 Enlarge cursor rectangle drawn around image with non-zero relief.
9040
9041 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
9042 Enlarge cursor rectangle drawn around image with non-zero relief.
9043
9044 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
9045 Enlarge cursor rectangle drawn around image with non-zero relief.
9046
90472002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
9048
9049 * xselect.c (lisp_data_to_selection_data): Don't set selection
9050 type if comes from the Lisp object's car. If the selection
9051 contains a pure ASCII text, always return QSTRING as its type.
9052
90532002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9054
9055 * mac.c (mac-cut-function): Doc fix.
9056
90572002-05-05 Richard M. Stallman <rms@gnu.org>
9058
9059 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
9060
90612002-05-04 Jason Rumney <jasonr@gnu.org>
9062
9063 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
9064 for event-click-count.
9065
9066 * process.c (init_process): Only add server subfeature if we can
9067 use non-blocking I/O.
9068
90692002-05-04 Andrew Choi <akochoi@shaw.ca>
9070
9071 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
9072 repeatedly.
9073
90742002-05-03 Jason Rumney <jasonr@gnu.org>
9075
9076 * process.c (Fmake_network_process): Only support server sockets
9077 when we can make them non-blocking.
9078
9079 * s/ms-w32.h (HAVE_SELECT): Define.
9080
9081 * w32.h (FILE_NDELAY): New flag.
9082
9083 * w32.c (sys_getpeername, fcntl): New functions.
9084 (_sys_read_ahead): Temporarily block on non-blocking sockets.
9085
9086 * w32proc.c: include sys/file.h.
9087
90882002-05-03 Colin Walters <walters@verbum.org>
9089
9090 * callproc.c (Vgame_score_directory): Renamed to
9091 Vshared_game_score_directory.
9092
90932002-04-30 Richard M. Stallman <rms@gnu.org>
9094
9095 * s/gnu.h [emacs]: Include stdio.h.
9096 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
9097
9098 * eval.c (do_autoload): Error if called while preparing to dump.
9099
9100 * fns.c (Frequire): Error if need to load while preparing to dump.
9101
91022002-04-28 Colin Walters <walters@verbum.org>
9103
9104 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
9105 Default to "~/.emacs.d/games".
9106
91072002-04-29 Stefan Monnier <monnier@cs.yale.edu>
9108
9109 * lread.c (openp): Change arg exec_only to predicate.
9110 (build_load_history): Use XCAR/XCDR.
9111 (Flocate_file_internal): New fun.
9112 (syms_of_lread): Defsubr it.
9113 (Fload): Update call to openp.
9114
9115 * lisp.h (openp): Update prototype.
9116
9117 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
9118 * w32proc.c (sys_spawnve):
9119 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
9120 * w32.c (check_windows_init_file):
9121 * sound.c (Fplay_sound_internal):
9122 * process.c (Fstart_process):
9123 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
9124 * mac.c (run_mac_command):
9125 * emacs.c (init_cmdargs):
9126 * callproc.c (Fcall_process): Update call to openp.
9127
9128 * textprop.c (remove_properties): Don't use XCAR without CONSP.
9129
9130 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
9131
91322002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9133
9134 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
9135 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
9136
91372002-04-28 Richard M. Stallman <rms@gnu.org>
9138
9139 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
9140
9141 * eval.c (Fcommandp): New arg for_call_interactively.
9142 * lisp.h (Fcommandp): Declare new arg.
9143
91442002-04-28 Jason Rumney <jasonr@gnu.org>
9145
9146 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
9147
9148 * w32.c (stat, fstat): Use file index information to generate
9149 inodes for directories where available.
9150
91512002-04-26 Andrew Choi <akochoi@shaw.ca>
9152
9153 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
9154 [HAVE_CARBON]: Include Mac object files.
9155
9156 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
9157 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
9158 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
9159 MAC_OSX, and MAC_OS instead of macintosh.
9160
9161 * editfns.c [MAC_OS8]: Include stdio.h.
9162
9163 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
9164
9165 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
9166 Apple Monaco.
9167
9168 * process.c: Declare QCfamily and QCfilter as extern.
9169 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
9170 calling select.
9171
9172 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
9173
9174 * tparam.c [MAC_OSX]: Don't define BC and UP.
9175
9176 * config.in [HAVE_CARBON]: Add.
9177
9178 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
9179 Move here from mac/src and mac/inc.
9180
9181 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
9182
91832002-04-26 Gerd Moellmann <gerd@gnu.org>
9184
9185 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
9186 Compute phys_cursor_width from the x position returned
9187 by x_draw_glyhs, which is cheaper.
9188 (x_display_and_set_cursor): Compute the buffer-local value
9189 of `cursor-in-non-selected-windows' only when needed.
9190
91912002-04-25 Gerd Moellmann <gerd@gnu.org>
9192
9193 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
9194 cursor on a stretch glyph has a width that depends on
9195 x_stretch_cursor_p.
9196
91972002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9198
9199 * abbrev.c (abbrev-start-location): Doc fix.
9200
9201 * indent.c (Fvertical_motion): Fix last change.
9202
92032002-04-25 Gerd Moellmann <gerd@gnu.org>
9204
9205 * indent.c (Fvertical_motion): Move to the start of the line
9206 containing PT before moving up or down.
9207
92082002-04-24 Gerd Moellmann <gerd@gnu.org>
9209
9210 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
9211 case of writing a whole row, more or less analogous to the case of
9212 writing only parts of a row.
9213
9214 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
9215 0 for NO_CURSOR.
9216
9217 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
9218
92192002-04-23 Colin Walters <walters@verbum.org>
9220
9221 * buffer.c (syms_of_buffer): Doc fix.
9222
92232002-04-23 Gerd Moellmann <gerd@gnu.org>
9224
9225 * xterm.c (notice_overwritten_cursor): Handle the special case
9226 of the cursor being in the first blank non-text line at the
9227 end of a window.
9228
9229 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
9230 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
9231 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
9232 bar cursors only, to make phys_cursor_width contain what its name
9233 suggests.
9234 (notice_overwritten_cursor): Consider the cursor image erased if
9235 the output area intersects the cursor image in y-direction.
9236
92372002-04-23 Simon Marshall <simon@gnu.org>
9238
9239 * xfns.c (x_set_mouse_color): Change default for cross_cursor
9240 to XC_hand2.
9241
92422002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9243
9244 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
9245
92462002-04-22 Kim F. Storm <storm@cua.dk>
9247
9248 * textprop.c (remove_properties): Fixed trap for malformed plist.
9249
92502002-04-22 Richard M. Stallman <rms@gnu.org>
9251
9252 * cmds.c (Fend_of_line): Handle intangible text in mid line.
9253
9254 * window.c (make_window): Initialize height_fixed_p,
9255 last_cursor_off_p, and p->cursor_off_p slots.
9256
92572002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9258
9259 * fns.c (use-dialog-box): Doc fix.
9260
92612002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9262
9263 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
9264 variables `row', `i' and `area'.
9265 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
9266 toolkit library.
9267
92682002-04-19 Stefan Monnier <monnier@cs.yale.edu>
9269
9270 * xfaces.c (clear_font_table): Don't free the default font of
9271 a frame even if it's on another display.
9272 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
9273 that could be Qt.
9274
92752002-04-19 Juanma Barranquero <lektu@terra.es>
9276
9277 * indent.c (Fmove_to_column): Remove unused local variable
9278 `next_boundary_byte'.
9279 (current_column_1): Likewise.
9280
92812002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
9282
9283 * msdos.c (Qhbar): New variable.
9284 (syms_of_msdos): Intern and staticpro it.
9285 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
9286 cursor type.
9287
92882002-04-19 Dave Lambert <dlambert@acm.org>
9289
9290 Theses change implement an underscore-like (`hbar') cursor.
9291
9292 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
9293
9294 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
9295 Handle the `hbar' cursor type.
9296 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
9297
9298 * xfns.c (Qhbar): New variable.
9299 (syms_of_xfns): Intern and staticpro it.
9300 (x_specified_cursor_type): Handle `hbar' cursor.
9301
9302 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
9303 not defined.
9304
93052002-04-18 Richard M. Stallman <rms@gnu.org>
9306
9307 * textprop.c (remove_properties): New arg LIST allows scanning
9308 either a list or a plist.
9309 (interval_has_some_properties_list): New function, like
9310 interval_has_some_properties using list instead of plist.
9311 All callers changed.
9312 (Fremove_list_of_text_properties): New function.
9313 (syms_of_textprop): Defsubr it.
9314
93152002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
9316
9317 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
9318
93192002-04-17 Juanma Barranquero <lektu@terra.es>
9320
9321 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
9322
93232002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
9324
9325 * window.c (coordinates_in_window): Don't report on margin area
9326 if its width is zero.
9327
93282002-04-16 Jason Rumney <jasonr@gnu.org>
9329
9330 * w32fns.c (Fx_file_dialog): Decode file name before using.
9331
9332 * w32term.c (construct_drag_n_drop): Likewise.
9333
93342002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
9335
9336 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
9337 store load-history in pure space.
9338
9339 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
9340
93412002-04-16 Stefan Monnier <monnier@cs.yale.edu>
9342
9343 * xterm.c (Qlatin_1, Qutf_8): New vars.
9344 (syms_of_xterm): Initialize them.
9345 (XTread_socket): Eliminate incorrect optimization that tried to avoid
9346 decoding the output of X*LookupString.
9347 Always use latin-1 to decode the output of XLookupString.
9348 Try Xutf8LookupString if XmbLookupString failed.
9349
9350 * region-cache.c (new_region_cache): Use BEG.
9351
93522002-04-16 Gerd Moellmann <gerd@gnu.org>
9353
9354 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
9355 configuration files.
9356 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
9357 returns 0.
9358
93592002-04-15 Andreas Schwab <schwab@suse.de>
9360
9361 * config.in: Regenerated using autoheader.
9362
9363 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
9364 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
9365 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
9366 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
9367 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
9368 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
9369 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
9370 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
9371 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
9372 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
9373 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
9374 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
9375 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
9376 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
9377 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
9378 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
9379 STACK_DIRECTION, now set by autoconf.
9380
93812002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9382
9383 * dispnew.c (marginal_area_string): Sort arguments.
9384
9385 * dispextern.h (marginal_area_string): Add prototype.
9386
93872002-04-13 Richard M. Stallman <rms@gnu.org>
9388
9389 * fileio.c (Finsert_file_contents):
9390 Don't call temp_output_buffer_setup--do just part, by hand.
9391
9392 * coding.c (run_pre_post_conversion_on_str):
9393 Don't call temp_output_buffer_setup--do just part, by hand.
9394
9395 * keyboard.c (command_loop_1): Don't call start_hourglass
9396 or cancel_hourglass when executing a macro.
9397
9398 * marker.c (count_markers): New function.
9399
9400 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
9401 grow without limit. Move recently used elements to the front.
9402
94032002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
9404
9405 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
9406
94072002-04-12 Gerd Moellmann <gerd@gnu.org>
9408
9409 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
9410 rows marginal areas.
9411 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
9412 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
9413
9414 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
9415
94162002-04-12 Dave Love <fx@gnu.org>
9417
9418 * dispnew.c (marginal_area_string): New.
9419
9420 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
9421 (Qleft_margin, Qright_margin): Declare.
9422 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
9423
9424 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
9425 note_mode_line_highlight and extended.
9426
9427 * keyboard.c (Qleft_margin, Qright_margin): Declare.
9428 (make_lispy_event): Deal with mouse events in margins.
9429
94302002-04-12 Stefan Monnier <monnier@cs.yale.edu>
9431
9432 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
9433
9434 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
9435 than deactivating the mark if tmm is set to `lambda'.
9436 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
9437 Use a single event for HELP_EVENT.
9438 (Fexecute_extended_command): Save last_point_position.
9439
94402002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9441
9442 * lisp.h (Fpropertize): Add prototype.
9443
9444 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
9445
94462002-04-10 Colin Walters <walters@verbum.org>
9447
9448 * config.in: Add HAVE_SHARED_GAME_DIR.
9449
9450 * callproc.c: (Vgame_score_directory): New variable.
9451 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
9452
94532002-04-10 Richard M. Stallman <rms@gnu.org>
9454
9455 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
9456
94572002-04-09 Stefan Monnier <monnier@cs.yale.edu>
9458
9459 * minibuf.c (read_minibuf): Use empty_string.
9460 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
9461 Short-circuit the search as soon as it "failed".
9462 (Fall_completions): Allow lambda forms and lists of strings for alist.
9463 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
9464 when require_match is nil.
9465 (Ftest_completion): Rename from `test_completion' and export to elisp.
9466 Call the predicate also when alist is a list.
9467 Obey Vcompletion_regexp_list.
9468 (do_completion, Fminibuffer_complete_and_exit): Use it.
9469 (Fassoc_string): Rename from `assoc_for_completion'.
9470 Allow list of strings as well and export to elisp.
9471
94722002-04-08 Stefan Monnier <monnier@cs.yale.edu>
9473
9474 * puresize.h (BASE_PURESIZE): Increase to 900KB.
9475
94762002-04-08 Juanma Barranquero <lektu@terra.es>
9477
9478 * w32.c (sys_accept): Don't hide variable `s'.
9479
94802002-04-05 Gerd Moellmann <gerd@gnu.org>
9481
9482 * callint.c (Fcall_interactively): Use INTEGERP instead of
9483 NUMBERP for checking Vhistory_length.
9484
94852002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9486
9487 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
9488 Doc fix to reflect it.
9489
94902002-04-04 Richard M. Stallman <rms@gnu.org>
9491
9492 * xdisp.c (display_mode_element): New arg RISKY.
9493 Disregard text props found or specified within a variable
9494 that isn't marked risky-local-variable.
9495 (Qrisky_local_variable): New variable.
9496 (syms_of_xdisp): Init and staticpro it.
9497
94982002-04-04 Stefan Monnier <monnier@cs.yale.edu>
9499
9500 * undo.c (record_point): New fun.
9501 (record_delete, record_insert): Use it.
9502
95032002-04-03 Juanma Barranquero <lektu@terra.es>
9504
9505 * doc.c (Fdocumentation): Add missing parentheses.
9506 (Fdocumentation_property): Likewise.
9507
95082002-04-03 Stefan Monnier <monnier@cs.yale.edu>
9509
9510 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
9511 data is 0, just return nil.
9512
95132002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
9514
9515 * msdos.c (syms_of_msdos): Fix last change with
9516 mouse_autoselect_window.
9517
95182002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9519
9520 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
9521 mouse_autoselect_window.
9522
95232002-04-02 Stefan Monnier <monnier@cs.yale.edu>
9524
9525 * keyboard.c (make_lispy_event): Handle unknown keysyms together
9526 with system-specific keysyms. Use it also for unknown function keys.
9527
9528 * doc.c (reread_doc_file): Return whether reload was attempted.
9529 (Fdocumentation, Fdocumentation_property): Don't try to reload
9530 if the doc is 0 and only ask once.
9531
9532 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
9533
95342002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
9535
9536 * keyboard.c (read_char): If the event was Qselect_window,
9537 restore timer_idleness_start_time to its previous value.
9538
9539 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
9540
95412002-04-01 Stefan Monnier <monnier@cs.yale.edu>
9542
9543 * region-cache.c (new_region_cache): Use BEG.
9544
9545 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
9546 Use BEG and BEG_BYTE.
9547
9548 * doc.c (get_doc_string): Return nil if the location is wrong.
9549 (reread_doc_file): New fun.
9550 (Fdocumentation, Fdocumentation_property):
9551 Call it if get_doc_string fails.
9552 (Fsnarf_documentation): Make it work for a dumped Emacs.
9553
9554 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
9555 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
9556
9557 * charset.c (Fstring): Allow 0 arguments.
9558
9559 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
9560
9561 * process.c (DATAGRAM_CONN_P, list_processes_1)
9562 (Fprocess_datagram_address, Fset_process_datagram_address)
9563 (Fset_network_process_options, server_accept_connection):
9564 Fix some int/Lisp_Object confusions (thank you union types).
9565
95662002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9567
9568 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
9569
9570 * w32term.c: Likewise.
9571 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
9572
9573 * keyboard.c (Qselect_window): New symbol.
9574 (head_table): Use it.
9575 (keys_of_keyboard): Bound select-window event to handle-select-window.
9576 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
9577
9578 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
9579 (last_window): New variable.
9580 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
9581 (note_mouse_movement): Remove reimplemented code in #if 0.
9582 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
9583 Emacs windows.
9584
9585 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
9586
95872002-03-31 Gerd Moellmann <gerd@gnu.org>
9588
9589 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
9590 Callers changed.
9591
95922002-03-30 Richard M. Stallman <rms@gnu.org>
9593
9594 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
9595 loop whenever it stops making progress.
9596
9597 * widget.c (set_frame_size): Don't call change_frame_size.
9598
95992002-03-30 Gerd Moellmann <gerd@gnu.org>
9600
9601 * dispnew.c (direct_output_for_insert):
9602 Call mark_window_display_accurate.
9603
96042002-03-29 Jason Rumney <jasonr@gnu.org>
9605
9606 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
9607
96082002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
9609
9610 * Makefile.in (lread.o): Depend on coding.h.
9611
9612 * lread.c (openp, Fload): Encode the file name before passing it
9613 to `stat', `access', and `emacs_open'.
9614 (openp): GCPRO the encoded file name. Don't recompute Lisp
9615 strings unnecessarily.
9616
96172002-03-29 Kim F. Storm <storm@cua.dk>
9618
9619 * fns.c (Flax_plist_put): Doc fix.
9620
96212002-03-28 Miles Bader <miles@gnu.org>
9622
9623 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
9624
96252002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9626
9627 * process.c (set-network-process-options): Add usage.
9628 (make-network-process): Doc fix.
9629
96302002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
9631
9632 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
9633
96342002-03-26 Richard M. Stallman <rms@gnu.org>
9635
9636 * fns.c (Fsubstring_no_properties): New function.
9637 (Flax_plist_get, Flax_plist_put): New functions.
9638 (syms_of_fns): defsubr them.
9639
9640 * xdisp.c (update_menu_bar): Test only update_mode_lines;
9641 don't test or alter w->update_mode_line.
9642
9643 * window.c (Fdisplay_buffer): Doc fix.
9644
96452002-03-24 Richard M. Stallman <rms@gnu.org>
9646
9647 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
9648
96492002-03-24 Gerd Moellmann <gerd@gnu.org>
9650
9651 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
9652 (Fdefmacro): Handle `(declare ...)'.
9653 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
9654 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
9655
96562002-03-24 Jason Rumney <jasonr@gnu.org>
9657
9658 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
9659 (xbm_file_p): Add prototypes.
9660 (xbm_format, xbm_image_p): Sync with xfns.c.
9661 (reflect_byte): New function.
9662 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
9663 (xbm_load_image): Create bitmaps with a depth of 1.
9664 (init_xfns): Enable XBM images.
9665
96662002-03-23 Jason Rumney <jasonr@gnu.org>
9667
9668 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
9669 correctly. Do not pass up_modifier to keyboard buffer.
9670
9671 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
9672
96732002-03-22 Stefan Monnier <monnier@cs.yale.edu>
9674
9675 * Makefile.in (bootstrapclean): New target.
9676 (bootstrap-temacs, bootstrap-doc): Remove.
9677 (bootstrap-emacs): Use a bog-standard `temacs'.
9678 Don't bother to build a DOC file.
9679
9680 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
9681
9682 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
9683 in temacs even if !CANNOT_DUMP.
9684 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
9685
9686 * alloc.c (check_pure_size): Only output a warning.
9687
96882002-03-22 Jason Rumney <jasonr@gnu.org>
9689
9690 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
9691 supported.
9692
9693 * w32term.c (zv_bits): Declare as short, for word alignment.
9694 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
9695 (syms_of_w32term): Define x-use-underline-position-properties.
9696
9697 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
9698 (clear_image_cache): Block input, fix logic, clear matrices in
9699 all frames that share this cache.
9700
97012002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
9702
9703 * emacs.c (main): Update the Copyright year in the blurb printed
9704 by "emacs --version".
9705
9706 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
9707
9708 * xterm.c (XTread_socket): If XK_ISO_Lock and
9709 XK_ISO_Last_Group_Lock are defined, handle keysyms between
9710 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
9711
97122002-03-21 Kim F. Storm <storm@cua.dk>
9713
9714 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
9715 menu-bar bindings in keymap and local-map properties _are_ used.
9716 But try keymap property first in accordance with 2002-01-03 patch.
9717 Added comment describing why this is not always reliable.
9718 (tool_bar_items): Ditto for tool-bar.
9719
97202002-03-21 Jason Rumney <jasonr@gnu.org>
9721
9722 * w32fns.c (x_clear_image_1): Disable color table code.
9723
97242002-03-21 Kim F. Storm <storm@cua.dk>
9725
9726 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
9727 removed the wrong version of the DEFUN macro; fixed it.
9728
9729 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
9730 Fmember rather than Fmemq).
9731 (Fprovide): Check that subfeatures is a list.
9732
9733 * process.c (QCfeature, QCdatagram): Removed variables.
9734 (QCtype, Qdatagram): New variables.
9735 (network_process_featurep): Removed function.
9736 (Fmake_network_process): Removed :feature check.
9737 Use :type 'datagram instead of :datagram t to create a datagram
9738 socket. This allows us to add other connection types (e.g. raw
9739 sockets) later in a consistent manner.
9740 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
9741 supported subfeatures for feature make-network-process.
9742 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
9743 Intern and staticpro QCtype and Qdatagram.
9744 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
9745
9746 * xfns.c: (QCtype): Remove duplicate declaration and
9747 initialization (is now declared in process.c).
9748
9749 * w32fns.c: (QCtype): Remove duplicate declaration and
9750 initialization (is now declared in process.c).
9751
97522002-03-21 Richard M. Stallman <rms@gnu.org>
9753
9754 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
9755 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
9756 when jumping to `fail' to avoid undoing reg changes in the
9757 last iteration of the loop.
9758 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
9759
9760 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
9761 Depend on process.h.
9762
97632002-03-20 Jason Rumney <jasonr@gnu.org>
9764
9765 Most of the following changes are still conditional on HAVE_IMAGES
9766 which is not set by default on Windows.
9767
9768 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
9769
9770 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
9771 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
9772 (four_corners_best, x_clear_image_1, x_clear_image)
9773 (x_alloc_image_color, postprocess_image)
9774 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
9775 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
9776 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
9777
9778 * w32gui.h (struct XImage): Define.
9779
9780 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
9781 extract mouse co-ordinates.
9782
97832002-03-20 Jason Rumney <jasonr@gnu.org>
9784
9785 * w32.c (init_winsock): Dynamically load new server and UDP
9786 socket functions.
9787 (socket_to_fd): New function.
9788 (sys_socket): Use it.
9789 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
9790 (sys_recvfrom, sys_sendto): New wrapper functions.
9791
9792 * process.c (QCfamily, QCfilter): Remove duplicate declaration
9793 and initialization.
9794
9795 * makefile.w32-in (LIBS): Remove $(WSOCK32).
9796
97972002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
9798
9799 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
9800 Don't use "sun" as a variable, it's a predefined constant on Sun
9801 machines.
9802
98032002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9804
9805 * bytecode.c (Fbyte_code): Revert last change.
9806
98072002-03-19 Kim F. Storm <storm@cua.dk>
9808
9809 * makefile.w32-in (LIBS): Add $(WSOCK32).
9810 From David Ponce <dponce@voila.fr>.
9811
98122002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9813
9814 * process.c (wait_reading_process_input): Move variables `pname'
9815 and `pnamelen' down where they are used.
9816
9817 * bytecode.c (Fbyte_code): Discard unused computed value to
9818 prevent gcc warning.
9819
9820 * lisp.h (Fplist_member): Add prototype.
9821
98222002-03-18 Kim F. Storm <storm@cua.dk>
9823
9824 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
9825 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
9826
9827 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
9828 Remove explicit GNU_LINUX settings for datagram support.
9829
98302002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9831
9832 * process.c (Fmake_network_process): Remove unused variable `sa'.
9833 Doc fix. Add usage:.
9834 (set_socket_options): Remove unused variables `optnum' and `opttype'.
9835
98362002-03-17 Richard M. Stallman <rms@gnu.org>
9837
9838 * xdisp.c (cursor_type_changed): New variable.
9839 (redisplay_internal): Redisplay all windows if cursor_type_changed.
9840 Clear it when clearing windows_or_buffers_changed.
9841 (try_cursor_movement, redisplay_window, try_window_id)
9842 (try_window_reusing_current_matrix): Test cursor_type_changed
9843 along with windows_or_buffers_changed.
9844
9845 * window.h (cursor_type_changed): New variable.
9846
9847 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
9848 not update_mode_lines, and always set it to 1.
9849
9850 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
9851 if no frames needed redrawing.
9852
98532002-03-17 Kim F. Storm <storm@cua.dk>
9854
9855 The following changes add support for network server processes,
9856 datagram connections, and local (unix) sockets.
9857
9858 * process.h (struct Lisp_Process): New member log.
9859 Doc fix: Member command used to indicate stopped network process.
9860 Doc fix: Member childp contains plist for network process.
9861 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
9862
9863 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
9864 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
9865 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
9866 New variables.
9867 (NETCONN1_P): New macro.
9868 (DATAGRAM_SOCKETS): New conditional symbol.
9869 (datagram_address): New array.
9870 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
9871 (status_message): Use concat3.
9872 (Fprocess_status): Add `listen' status to doc string. Return `stop'
9873 for a stopped network process.
9874 (Fset_process_buffer): Update contact plist for network process.
9875 (Fset_process_filter): Ditto. Don't enable input for stopped
9876 network processes. Server must listen, even if filter is t.
9877 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
9878 New functions.
9879 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
9880 (Fprocess_contact): Added KEY argument. Handle datagrams.
9881 (list_processes_1): Optionally show only processes with the query
9882 on exit flag set. Dynamically adjust column widths. Omit tty
9883 column if not needed. Report stopped network processes.
9884 Identify server and datagram network processes.
9885 (Flist_processes): New optional arg `query-only'.
9886 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
9887 (conv_lisp_to_sockaddr, set_socket_options)
9888 (network_process_featurep, unwind_request_sigio): New helper functions.
9889 (Fprocess_datagram_address, Fset_process_datagram_address):
9890 (Fset_network_process_options): New lisp functions.
9891 (Fopen_network_stream): Removed. Now defined in simple.el.
9892 (Fmake_network_process): New lisp function. Code is based on previous
9893 Fopen_network_stream, but heavily reworked with new property list based
9894 argument list, support for datagrams, server processes, and local
9895 sockets in addition to old client-only functionality.
9896 (server_accept_connection): New function.
9897 (wait_reading_process_input): Use it to handle incoming connects.
9898 Do not enable input on a new connection if process is stopped.
9899 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
9900 (send_process): Handle datagram sockets.
9901 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
9902 network process is indicated by setting command field to t .
9903 (Fprocess_send_eof): No-op if datagram connection.
9904 (Fstatus_notify): Don't read input for a stream server socket or a
9905 stopped network process.
9906 (init_process): Initialize datagram_address array.
9907 (syms_of_process): Intern and staticpro new variables, defsubr new
9908 functions.
9909
99102002-03-16 Jason Rumney <jasonr@gnu.org>
9911
9912 * w32fns.c (w32_to_all_x_charsets): Return correct type in
9913 startup case.
9914
99152002-03-16 Richard M. Stallman <rms@gnu.org>
9916
9917 * xdisp.c (redisplay_internal, redisplay_windows):
9918 Use list_of_error to call internal_condition_case_1.
9919 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
9920 so as to catch all errors with no possibility of debugger redisplay.
9921 (list_of_error): New variable.
9922 (syms_of_xdisp): Init and staticpro it.
9923
9924 * print.c (print_object): Delete `\ ' from printed rep of frame.
9925
99262002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
9927
9928 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
9929 until its implementation is fixed.
9930
99312002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9932
9933 * xfns.c (png_load): Remove unused variable `gamma_str'.
9934
99352002-03-14 Richard M. Stallman <rms@gnu.org>
9936
9937 * xfns.c (x_real_positions): Handle failure in XQueryTree.
9938
99392002-03-14 Miles Bader <miles@gnu.org>
9940
9941 * intervals.c (adjust_for_invis_intang): New function.
9942 (set_point_both): Use `adjust_for_invis_intang' to do most of the
9943 work for dealing with invisible+intangible regions. Do so before
9944 and after both forward and backward movements, to handle both
9945 front-sticky and rear-sticky cases.
9946 * textprop.c (text_property_stickiness): Function moved here from
9947 `editfns.c'.
9948 * intervals.h (text_property_stickiness): New declaration.
9949 * editfns.c (char_property_eq): Function removed.
9950 (text_property_stickiness): Function moved to `textprop.c'.
9951
99522002-03-13 Jason Rumney <jasonr@gnu.org>
9953
9954 * config.in: Add STRFTIME_NO_POSIX2.
9955
9956 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
9957 and %OX when underlying strftime does not.
9958
99592002-03-13 Stefan Monnier <monnier@cs.yale.edu>
9960
9961 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
9962 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
9963 line) to avoid annoying flicker.
9964 (xm_scroll_callback): Get rid of the now unnecessary kludge.
9965 (XTread_socket): Mark it static.
9966
9967 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
9968
99692002-03-13 Kim F. Storm <storm@cua.dk>
9970
9971 * puresize.h (BASE_PURESIZE): Increase to 775000.
9972
99732002-03-12 Juanma Barranquero <lektu@terra.es>
9974
9975 * editfns.c (syms_of_editfns): Fix typo.
9976
99772002-03-12 Gerd Moellmann <gerd@gnu.org>
9978
9979 * xsmfns.c: Include stdio.h because termhooks.h needs it.
9980 Include termopt.h for interrupt_input.
9981
99822002-03-11 Andreas Schwab <schwab@suse.de>
9983
9984 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
9985
99862002-03-11 Gerd Moellmann <gerd@gnu.org>
9987
9988 * xterm.c (note_mouse_movement): Put code for
9989 x_autoselect_window_p in #if 0.
9990
9991 * lread.c (Fload): Don't assume that message_with_string uses the
9992 string it is given like a C string.
9993
99942002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9995
9996 * xterm.h (x_session_check_input, x_session_initialize): Declared.
9997
9998 * xterm.c: (XTread_socket): Add call to x_session_check_input and
9999 x_session_have_connection.
10000 (x_initialize): Add call to x_session_initialize.
10001
10002 * termhooks.h (enum event_kind): Add save_session_event.
10003
10004 * keyboard.c: Add Emacs event save_session_event.
10005
10006 * emacs.c (main): Add call to syms_of_xsmfns.
10007
10008 * lisp.h: Declare syms_of_xsmfns as extern.
10009
10010 * config.in: Add HAVE_X_SM.
10011
10012 * Makefile.in (LIBXT): Add -lSM -lICE
10013 if HAVE_X_SM and not USE_X_TOOLKIT.
10014 (XOBJ): New file xsmfns.c added.
10015
10016 * xsmfns.c: New file for X session management.
10017
100182002-03-09 Jason Rumney <jasonr@gnu.org>
10019
10020 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
10021 read-only when setting modified time.
10022
100232002-03-08 Gerd Moellmann <gerd@gnu.org>
10024
10025 * xdisp.c (move_it_vertically_backward): At the end of the function,
10026 when moving forward by lines, treat terminal frames specially.
10027
10028 * keyboard.c (echo_char): Make sure to add a separator between
10029 keys even if echo_dash hasn't been called.
10030
10031 * xdisp.c: Use new string macros.
10032 (update_echo_area): Pass number of bytes to message3 instead of
10033 number of chars.
10034 (set_message_1): Don't access a string's size_byte directly.
10035 (decode_mode_spec_coding): Use number of bytes of eoltype string
10036 instead number of chars.
10037
10038 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
10039
100402002-03-08 Juanma Barranquero <lektu@terra.es>
10041
10042 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
10043 24-bit.
10044
100452002-03-06 Jason Rumney <jasonr@gnu.org>
10046
10047 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
10048
100492002-03-06 Gerd Moellmann <gerd@gnu.org>
10050
10051 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
10052 (cancel_echoing, echo_length, echo_truncate): Changed to
10053 work with new kboard definition.
10054 (echo_now): Use message3_nolog instead of message2_nolog.
10055
10056 * alloc.c (mark_kboards): Mark echo_string.
10057
10058 * keyboard.h (ECHOBUFSIZE): Removed.
10059 (struct kboard): Member echoptr removed, member echobuf renamed
10060 to echo_string.
10061
10062 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
10063 message3 instead of message2 to display the message using STRING's
10064 text properties.
10065
100662002-03-05 Andreas Schwab <schwab@suse.de>
10067
10068 * xdisp.c (hscroll_margin): Change to EMACS_INT.
10069
100702002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
10071
10072 * frame.c (default-frame-alist): Explain that setting it doesn't
10073 affect existing frames.
10074
100752002-03-05 Stefan Monnier <monnier@cs.yale.edu>
10076
10077 * indent.c (skip_invisible): Fix my brain fart.
10078
10079 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
10080
100812002-03-04 Stefan Monnier <monnier@cs.yale.edu>
10082
10083 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
10084 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
10085 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
10086 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
10087 and variables to use EMACS_INT instead of just int.
10088
10089 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
10090
100912002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
10092
10093 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
10094 environment, pass it down with corrected value.
10095
100962002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10097
10098 * lread.c (read_filtered_event): Do not call start_hourglass
10099 before returning.
10100
101012002-03-04 Juanma Barranquero <lektu@terra.es>
10102
10103 * w32term.c (x_display_and_set_cursor): Fix typo.
10104
101052002-03-03 Richard M. Stallman <rms@gnu.org>
10106
10107 * fileio.c (Fmake_temp_name): Doc fix.
10108
101092002-03-03 Gary Wong <gtw@gnu.org>
10110
10111 * termcap.c [!emacs]: Replace ospeed for building standalone
10112 libtermcap, for binary compatibility.
10113
10114 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
10115
101162002-03-03 Richard M. Stallman <rms@gnu.org>
10117
10118 * xrdb.c (file_p): Rename arg `path' to `filename'.
10119
10120 * abbrev.c (Fexpand_abbrev): Increment plist as use count
10121 only if it is an integer.
10122
10123 * xfns.c (png_load): Set screen_gamma based on f->gamma.
10124 If png_get_sRGB gives an answer, call png_set_gamma
10125 using the default image gamma value.
10126
10127 * lread.c (read1): When reading from a file, default string to
10128 multibyte only if it has some multibyte characters.
10129
10130 * print.c (print_object): Output multibyte chars 128...255
10131 using \x even if ! print_escape_multibyte.
10132
10133 * xdisp.c (display_mode_element): Move the places where
10134 bytepos, charpos, this, and lisp_string are set.
10135 Use lisp_string to set bytepos.
10136
10137 * xdisp.c (redisplay_internal):
10138 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
10139
10140 * xdisp.c (display_mode_element): Merge properties specified with
10141 :propertize onto those that come with the string.
10142
101432002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
10144
10145 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
10146 automatic-hscrolling. Users changed.
10147 <hscroll-margin>: Renamed from automatic-hscroll-margin.
10148 Users changed.
10149 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
10150
101512002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
10152
10153 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
10154
101552002-03-02 Kim F. Storm <storm@cua.dk>
10156
10157 * window.c (Fminibuffer_selected_window): New function.
10158 (syms_of_window): Defsubr it.
10159
101602002-03-01 Kim F. Storm <storm@cua.dk>
10161
10162 * window.h (struct window): New member phys_cursor_width.
10163
10164 * window.c (make_window, replace_window): Init phys_cursor_width.
10165
10166 * xterm.c (x_display_and_set_cursor): Blink box cursor using
10167 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
10168
10169 * w32term.c (x_display_and_set_cursor): Blink box cursor using
10170 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
10171
10172 * lisp.h (GCPRO6): New macro.
10173
10174 * process.c (Fopen_network_stream): Use GCPRO6.
10175
101762002-03-01 Kim F. Storm <storm@cua.dk>
10177
10178 * process.c (Qconnect, Qfailed): New variables.
10179 (syms_of_process): Intern and staticpro them.
10180 (Fprocess_status): Document connect and failed return values.
10181 [NON_BLOCKING_CONNECT]: New conditional.
10182 (connect_wait_mask, num_pending_connects): New variables.
10183 (status_message): Convert Qfailed status.
10184 (Fopen_network_stream): Added support for non-blocking connect.
10185 New optional args: filter, sentinel, non_blocking. Doc updated.
10186 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
10187 (deactivate_process): Handle pending non-blocking connect.
10188 (wait_reading_process_input): Poll for status of non-blocking
10189 connects. Exec sentinel directly when connect succeeds.
10190 (status_notify): Don't read process output if not yet connected.
10191
101922002-02-28 Kim F. Storm <storm@cua.dk>
10193
10194 * window.c: (minibuf_selected_window): Renamed from
10195 Vminibuf_selected_window. Users changed.
10196 (syms_of_window): Staticpro it.
10197
101982002-02-26 Kim F. Storm <storm@cua.dk>
10199
10200 The following changes add a new Vminibuf_selected_window variable
10201 which is similar to Vminibuf_scroll_window, but which is only set
10202 on entry to the minibuffer (from a non-minibuffer window):
10203
10204 * window.c: (Vminibuf_selected_window): New variable.
10205 (struct save_window_data): New member minibuf_selected_window.
10206 (Fset_window_configuration): Restore Vminibuf_selected_window.
10207 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
10208 Set minibuf_scroll_window member to nil if minibuf_level is 0.
10209 (compare_window_configurations): Compare minibuf_selected_window.
10210
10211 * window.h: (Vminibuf_selected_window): Declare extern.
10212
10213 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
10214 entry to minibuffer or on entry from a non-minibuffer window.
10215
10216 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
10217 Vminibuf_selected_window instead of Vminibuf_scroll_window.
10218
10219 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
10220 instead of Vminibuf_scroll_window when deciding in which window
10221 the region should be highlighted. Consequently, the region remains
10222 highlighteded even when a completion buffer is also displayed.
10223
102242002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
10225
10226 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
10227
10228 * xselect.c (Qcompound_text_with_extensions): Renamed from
10229 Qcompound_text_no_extensions.
10230 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
10231
102322002-02-26 Juanma Barranquero <lektu@terra.es>
10233
10234 * w32proc.c (syms_of_ntproc): Doc fix.
10235
102362002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10237
10238 * intervals.h: Include "dispextern.h" unconditionally.
10239
102402002-02-24 Jason Rumney <jasonr@gnu.org>
10241
10242 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
10243 and disp-table.elc.
10244 (lisp): Add emacs-lisp/backquote.elc.
10245
102462002-02-24 Kim F. Storm <storm@cua.dk>
10247
10248 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
10249 The validation of the event type was too strict as it didn't
10250 allow string events; buffer names are used in bindings for
10251 menu-bar-select-buffer (see `menu-bar-update-buffers').
10252
102532002-02-23 Kim F. Storm <storm@cua.dk>
10254
10255 The following changes rework my patch of 2002-02-06 which
10256 added command remapping by entering the commands directly into
10257 the keymaps. Now, command remapping uses an explicit `remap'
10258 prefix in the keymaps, i.e. [remap COMMAND].
10259
10260 * keymap.c (Qremap, remap_command_vector): New variables.
10261 (is_command_symbol): Removed function.
10262 (Fdefine_key): No longer accept a symbol for KEY.
10263 Added validation of [remap COMMAND] argument for KEY.
10264 The DEF is no longer required to be a symbol when remapping a command.
10265 (Fremap_command): New function to remap command through keymaps.
10266 (Flookup_key): Perform command remapping initiated by
10267 Fremap_command directly for speed.
10268 (Fkey_binding): Use Fremap_command for command remapping.
10269 (where_is_internal): Handle new command remapping representation.
10270 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
10271 staticpro them. Defsubr Fremap_command.
10272
10273 * keymap.h (Fremap_command): Declare extern.
10274 (is_command_symbol): Remove extern.
10275
10276 * keyboard.c (command_loop_1): Use Fremap_command for command
10277 remapping; now try command remapping for all symbols.
10278
102792002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
10280
10281 * coding.h (run_pre_post_conversion_on_str): Add prototype.
10282
102832002-02-23 Jason Rumney <jasonr@gnu.org>
10284
10285 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
10286 on the string before encoding it.
10287 (Fw32_get_clipboard_data): Run post-read-conversion on the string
10288 after decoding it.
10289
10290 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
10291
102922002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10293
10294 * w32term.c (enter_timestamp): Remove unused static variable to
10295 prevent warning.
10296
10297 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
10298
102992002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
10300
10301 * w16select.c (Fw16_get_clipboard_data): Fix last change.
10302
10303 * xselect.c (selection_data_to_lisp_data): Fix last change.
10304
103052002-02-22 Jason Rumney <jasonr@gnu.org>
10306
10307 * w32term.h (struct w32_output): New member menu_command_in_progress.
10308
10309 * w32menu.c (menubar_selection_callback): Free the menu and
10310 clear the menu_command_in_progress flag.
10311
10312 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
10313 (menu_free_timer): New variable.
10314 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
10315 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
10316 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
10317 menu command is in progress.
10318 <WM_COMMAND>: Set the menu_command_in_progress flag.
10319 Kill any menu_free_timer that is running.
10320
10321 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
10322 Call ExtTextOutA rather than ExtTextOut.
10323
103242002-02-22 Eli Zaretskii <eliz@gnu.org>
10325
10326 * puresize.h (BASE_PURESIZE): Increase to 755000.
10327
103282002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
10329
10330 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
10331 on the string before encoding it.
10332 (Fw16_get_clipboard_data): Run post-read-conversion on the string
10333 after decoding it.
10334
103352002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
10336
10337 Support for ICCCM Extended Segments in X selections:
10338
10339 * xselect.c <Qcompound_text_no_extensions>: New variable.
10340 (syms_of_xselect): Intern and staticpro it.
10341 (selection_data_to_lisp_data): Run post-read-conversion on decoded
10342 selection text.
10343 (lisp_data_to_selection_data): If next-selection-coding-system is
10344 compound-text-no-extensions, set the type of selection to be
10345 compound-text.
10346
10347 * xterm.h (x_encode_text): Update prototype.
10348
10349 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
10350 callers changed. If SELECTIONP is non-zero, run the
10351 pre-write-conversion function before encoding the selection text.
10352
103532002-02-21 Kim F. Storm <storm@cua.dk>
10354
10355 * frame.c (syms_of_frame): Change mouse-highlight default to t.
10356
10357 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
10358 Correct composing of language-change event.
10359
103602002-02-20 Kim F. Storm <storm@cua.dk>
10361
10362 * keyboard.c (menu_bar_items): Don't include keymap or local-map
10363 bindings at PT when building menu (the menu is not updated often
10364 enough for this to work reliable).
10365 (tool_bar_items): Likewise.
10366 (current_active_maps): Removed unused (and buggy) function.
10367
103682002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10369
10370 * xfns.c (gif_load): Use correct width and height for GIF images.
10371
103722002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
10373
10374 * floatfns.c (Fatan): Accept an optional second arg and call
10375 atan2 if passed 2 args.
10376
103772002-02-18 Jason Rumney <jasonr@gnu.org>
10378
10379 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
10380
103812002-02-17 Jason Rumney <jasonr@gnu.org>
10382
10383 * w32term.c (x_autoselect_window_p): New variable.
10384 (syms_of_w32term): DEFVAR_BOOL and initialize it.
10385 (note_mouse_movement): Use it.
10386
10387 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
10388
10389 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
10390
10391 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
10392 New variables.
10393 (syms_of_w32fns): Intern and staticpro them.
10394 (x_frame_parms) <"fullscreen">: New parameter.
10395 (x_fullscreen_move, x_set_fullscreen): New functions.
10396 (x_set_frame_parameters): Support Qfullscreen.
10397 (x_real_positions): Save x/y_pixels_diff frame params.
10398 (x_figure_window_size): Support full-screen frames.
10399 (Fx_create_frame): Default the fullscreen parameter.
10400
10401 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
10402 (x_fullscreen_adjust): New functions.
10403 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
10404 fullscreen. Call x_check_fullscreen_move, and set the
10405 want_fullscreen member of output_data.w32
10406 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
10407
10408 * w32term.h: New enum for FULLSCREEN_* constants.
10409 (struct w32_output): New members want_fullscreen, x_pixels_diff,
10410 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
10411 (x-fullscreen-adjust): New prototype.
10412
104132002-02-17 Kim F. Storm <storm@cua.dk>
10414
10415 * frame.c: (Vmouse_highlight): New variable.
10416 (syms_of_frame): DEFVAR_LISP it.
10417
10418 * frame.h: (Vmouse_highlight): Declare extern.
8a8e19a3 10419
048addec 10420 * xterm.h (struct x_display_info): Add mouse_face_hidden.
8a8e19a3 10421
048addec
JD
10422 * xterm.c (disable_mouse_highlight): Removed variable.
10423 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
10424 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
10425 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
10426 and on after keyboard input.
10427 (x_term_init): Initialize mouse_face_hidden.
8a8e19a3 10428
048addec 10429 * msdos.h (struct display_info): Add mouse_face_hidden.
8a8e19a3 10430
048addec
JD
10431 * msdos.c (disable_mouse_highlight): Removed variable.
10432 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
10433 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
10434 (internal_terminal_init): Initialize mouse_face_hidden.
10435 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
10436 and on after keyboard input.
4f1b1854 10437
048addec 10438 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
4f1b1854 10439
048addec
JD
10440 * w32term.c (disable_mouse_highlight): Removed variable.
10441 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
10442 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
10443 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
10444 and on after keyboard input.
10445 (w32_initialize_display_info): Initialize mouse_face_hidden.
4f1b1854 10446
048addec 104472002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
4f1b1854 10448
048addec
JD
10449 * msdos.c (last_mouse_window): New variable.
10450 (dos_rawgetc): Fix last change--if the mouse is in the same window
10451 as recorded in last_mouse_window, don't select this window.
5cb6905d 10452
048addec 10453 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
5cb6905d 10454
048addec
JD
10455 * msdos.c (x_autoselect_window_p): New variable.
10456 (syms_of_msdos): Defvar it.
10457 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
10458 which the last mouse movement occured, unless it is already selected.
437dfb9f 10459
048addec
JD
10460 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
10461 New variables.
10462 (syms_of_xdisp): DEVFAR them.
10463 (hscroll_window_tree): Use automatic_hscroll_margin and
10464 Vautomatic_hscroll_step to compute the amount of window scrolling.
437dfb9f 10465
048addec 104662002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9f696a00 10467
048addec
JD
10468 * xterm.c (x-autoselect-window): New variable.
10469 (note_mouse_movement): Use it.
9f696a00 10470
048addec 10471 * keyboard.c: Do not include "systime.h" twice.
d57966d7 10472
048addec 104732002-02-15 Andreas Schwab <schwab@suse.de>
d57966d7 10474
048addec 10475 * puresize.h (BASE_PURESIZE): Increase to 9/5.
d57966d7 10476
048addec 10477 * alloc.c (NSTATICS): Increase to 1280.
74779f52 10478
048addec 104792002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
74779f52 10480
048addec 10481 * alloc.c (NSTATICS): Bump to 1026.
a474d59c 10482
048addec
JD
10483 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
10484 (Vx_super_keysym): New variables.
10485 (syms_of_xterm): DEFVAR_LISP them.
10486 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
10487 variables to determine which keys to use for the various modifiers.
a474d59c 10488
048addec 104892002-02-13 Kim F. Storm <storm@cua.dk>
fbb70ad9 10490
048addec
JD
10491 * window.c: (Vmode_line_in_non_selected_windows): Removed.
10492 (mode_line_in_non_selected_windows): New variable.
10493 (syms_of_window): DEFVAR_BOOL it.
fbb70ad9 10494
048addec
JD
10495 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
10496 Use mode_line_in_non_selected_windows.
10497 (mode_line_in_non_selected_windows): Declare extern.
10498 (Vmode_line_in_non_selected_windows): Removed extern.
2d10309f 10499
048addec 105002002-02-13 Richard M. Stallman <rms@gnu.org>
2d10309f 10501
048addec
JD
10502 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
10503 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
10504 (Fclear_this_command_keys): Doc fixes.
2d10309f 10505
048addec
JD
10506 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
10507 (update_face_from_frame_parameter): Increment face_change_count
10508 and windows_or_buffers_changed to force redisplay using changed faces.
7f2cddf3 10509
048addec
JD
10510 * xdisp.c (QCpropertize): New variable.
10511 (mode_line_proptrans_alist): New variable.
10512 (display_mode_element): New arg PROPS; all calls changed.
10513 Implement this, for strings.
10514 Handle literal output of strings by sharing the
10515 main-line code for strings, using local var `literal'.
10516 Handle :propertize feature.
10517 (syms_of_xdisp): Initialze and staticpro QCpropertize and
10518 mode_line_proptrans_alist.
0b1e6b54 10519
048addec 105202002-02-11 Kim F. Storm <storm@cua.dk>
7f2cddf3 10521
048addec
JD
10522 * window.c: (Vmode_line_in_non_selected_windows): New variable.
10523 (syms_of_window): DEFVAR_LISP it.
7f2cddf3 10524
048addec
JD
10525 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
10526 (CURRENT_MODE_LINE_FACE_ID): Use it.
10527 (Vmode_line_in_non_selected_windows): Declare extern.
e17144de 10528
048addec
JD
10529 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
10530 to get mode line face.
e17144de 10531
048addec 105322002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 10533
048addec
JD
10534 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
10535 variables; cus-start.el doesn't need them anymore.
44368f8f 10536
048addec 105372002-02-09 Kim F. Storm <storm@cua.dk>
f884b6f4 10538
048addec
JD
10539 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
10540 reduction. This fixes a display problem where stray newlines were
10541 inserted in the window (corrected by C-l). Clarified code (IMHO).
6637c996 10542
048addec 105432002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 10544
048addec 10545 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
6637c996 10546
048addec 10547 * xdisp.c (display_mode_lines): Fix last change.
453c5510 10548
048addec 105492002-02-09 Jason Rumney <jasonr@gnu.org>
453c5510 10550
048addec
JD
10551 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
10552 match each other.
10553 (w32_load_system_font): Prevent Cleartype fonts from loading.
10554 (Fx_show_tip): Ensure tip frames are above other topmost windows.
d1d070e3 10555
048addec 105562002-02-09 Kim F. Storm <storm@cua.dk>
d1d070e3 10557
048addec
JD
10558 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
10559 (CURRENT_MODE_LINE_HEIGHT): Use it.
10560 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 10561
048addec
JD
10562 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
10563 (pos_visible_p, handle_face_prop): Likewise.
10564 (display_mode_lines): Likewise, but for the real selected window.
10565 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 10566
048addec
JD
10567 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
10568 in non-selected windows.
10569 (realize_basic_faces): Realize it.
10570 (syms_of_term): Intern and staticpro it.
308dd672 10571
048addec 105722002-02-08 Kim F. Storm <storm@cua.dk>
edde72f6 10573
048addec
JD
10574 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
10575 Changed mail addresses to emacs-devel@gnu.org.
308dd672 10576
048addec 105772002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
3c1e6b46 10578
048addec
JD
10579 * fileio.c (Fsubstitute_in_file_name): If the file name includes
10580 ~user, and there's no such user, don't discard everything before ~user.
03950b5b 10581
048addec 10582 * floatfns.c (Fround): Doc fix.
3c1e6b46 10583
048addec 105842002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c1e11810 10585
048addec 10586 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
c1e11810 10587
048addec 105882002-02-07 Stefan Monnier <monnier@cs.yale.edu>
1996baee 10589
048addec 10590 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
1996baee 10591
048addec 105922002-02-07 Kim F. Storm <storm@cua.dk>
0065bb74 10593
048addec
JD
10594 * keymap.c (where_is_internal): Only check whether definition is
10595 remapped if it fulfills is_command_symbol.
0065bb74 10596
048addec 105972002-02-07 Andreas Schwab <schwab@suse.de>
0065bb74 10598
048addec 10599 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
b5cb6072 10600
048addec 10601 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
b5cb6072 10602
048addec 106032002-02-06 Kim F. Storm <storm@cua.dk>
15fff01d 10604
048addec
JD
10605 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
10606 defining command remapping. Doc updated.
10607 (Flookup_key): Remap command through keymap if KEY is a symbol.
10608 (is_command_symbol): New function.
10609 (Fkey_binding): Use it. New optional argument NO-REMAP.
10610 Doc updated. Callers changed. Perform command remapping via
10611 recursive call unless that arg is non-nil.
10612 (where_is_internal): New argument no_remap. Callers changed.
10613 Call recursively to find original key bindings for a remapped
10614 comand unless that arg is non-nil.
10615 (Fwhere_is_internal): New optional argument NO-REMAP.
10616 Doc updated. Callers changed. Pass arg to where_is_internal.
0065bb74 10617
048addec
JD
10618 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
10619 (is_command_symbol): Added prototype.
0d8466cc 10620
048addec
JD
10621 * keyboard.c (Vthis_original_command): New variable.
10622 (syms_of_keyboard): DEFVAR_LISP it.
10623 (command_loop_1): Set it, and perform command remapping.
15fff01d 10624
048addec 106252002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2fae9111 10626
048addec 10627 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
2d6c1fc0 10628
048addec 106292002-02-06 Jason Rumney <jasonr@gnu.org>
07025a55 10630
048addec 10631 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
07025a55 10632
048addec 106332002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
07025a55 10634
048addec 10635 * charset.c (get_charset_id): Use if-else instead of ?:.
3a232704 10636
048addec 106372002-02-06 Richard M. Stallman <rms@gnu.org>
539e92ad 10638
048addec 10639 * filelock.c (S_ISLNK): Define if not defined.
3a232704 10640
048addec 106412002-02-03 Richard M. Stallman <rms@gnu.org>
0cb8bb48 10642
048addec 10643 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
539e92ad 10644
048addec
JD
10645 * lread.c (read1): Redesign strategy for force_multibyte and
10646 force_singlebyte. Now is_multibyte records whether read_buffer
10647 is multibyte. Encountering any multibyte character makes it so.
4e02881b 10648
048addec 106492002-02-02 Stefan Monnier <monnier@cs.yale.edu>
4e02881b 10650
048addec
JD
10651 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
10652 with the same sequence, map that sequence to f10 rather than f0.
1ab964d7 10653
048addec 106542002-02-03 Andreas Schwab <schwab@suse.de>
1ab964d7 10655
048addec
JD
10656 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
10657 latter never being defined on GNU/Linux.
749f499f 10658
048addec 106592002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
749f499f 10660
048addec
JD
10661 * xfaces.c (realize_default_face): Don't set the weight and slant of
10662 the default face to Qnormal, unless these attributes are unspecified.
b5d9aaba 10663
048addec 106642002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3a232704 10665
048addec
JD
10666 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
10667 Call cancel_hourglass unconditionally.
d0fd26dd 10668
048addec
JD
10669 * eval.c (Fsignal): Remove duplicated declaration of
10670 the variable `display_hourglass_p'.
b4c45162 10671
048addec 106722002-01-31 Richard M. Stallman <rms@gnu.org>
d0fd26dd 10673
048addec 10674 * editfns.c (region_limit): Nicer error message.
c95eaa61 10675
048addec
JD
10676 * coding.c (decode_composition_emacs_mule):
10677 Give up if NCOMPONENT gets too large to index `component'.
c95eaa61 10678
048addec
JD
10679 * callint.c (check_mark): New arg to specify clearer error message.
10680 Callers changed.
c95eaa61 10681
048addec 106822002-01-27 Richard M. Stallman <rms@gnu.org>
c95eaa61 10683
048addec 10684 * minibuf.c (Fcompleting_read): Doc fix.
c95eaa61 10685
048addec 106862002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c95eaa61 10687
048addec
JD
10688 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
10689 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
10690 Fix doc-strings.
c95eaa61 10691
048addec 106922002-01-26 Richard M. Stallman <rms@gnu.org>
c95eaa61 10693
048addec 10694 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
c95eaa61 10695
048addec
JD
10696 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
10697 and scroll_up_aggressively.
c95eaa61 10698
048addec 106992002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
31877e0a 10700
048addec 10701 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
31877e0a 10702
048addec 107032002-01-25 Stefan Monnier <monnier@cs.yale.edu>
e2c3786a 10704
048addec
JD
10705 * textprop.c (Fnext_property_change, Fnext_single_property_change)
10706 (Fprevious_property_change, Fprevious_single_property_change):
10707 Stay within the narrowed-buffer boundaries.
e2c3786a 10708
048addec 107092002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
c513fc03 10710
048addec
JD
10711 * term.c (Ftty_display_color_cells): New function.
10712 (syms_of_term): Defsubr it.
10713 (Ftty_display_color_cells, Ftty_display_color_p): Change the
10714 argument name to DISPLAY. Doc fix.
bf794306 10715
048addec
JD
10716 * dispextern.h: Add prototype for set_tty_color_mode and
10717 tty_setup_colors.
bf794306 10718
048addec 107192002-01-24 Jason Rumney <jasonr@gnu.org>
bf794306 10720
048addec
JD
10721 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
10722 If region left to draw is not what was expected, mark the frame as
10723 garbaged.
62582985 10724
048addec
JD
10725 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
10726 Combine the regions returned by BeginPaint and GetUpdateRect.
c513fc03 10727
048addec 107282002-01-23 Jason Rumney <jasonr@gnu.org>
3509a04c 10729
048addec
JD
10730 * w32term.c (x_update_window_begin): Only hide caret if
10731 w32_use_visible_system_caret is set.
10732 (x_update_window_end): Only show caret if
10733 w32_use_visible_system_caret is set.
10734 (syms_of_w32term): Handle SystemParametersInfo call failing.
3509a04c 10735
048addec 10736 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
3509a04c 10737
048addec 107382002-01-22 Richard M. Stallman <rms@gnu.org>
3509a04c 10739
048addec
JD
10740 * unexelf.c (unexec): Define n so as to cause compilation error
10741 for the code where people have often written n instead of nn.
1e9a6186 10742
048addec 10743 * .gdbinit (hookpost-run): Defined.
1e9a6186 10744
048addec 107452002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e4e34e31 10746
048addec 10747 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
e4e34e31 10748
048addec 107492002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4521d1fc 10750
048addec
JD
10751 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
10752 if fullscreen is being set.
7c75be36 10753
048addec 107542002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4521d1fc 10755
048addec
JD
10756 * minibuf.c (Fminibuffer_contents)
10757 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
10758 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
4521d1fc 10759
048addec 107602002-01-21 Richard M. Stallman <rms@gnu.org>
4521d1fc 10761
048addec 10762 * window.c (check_frame_size): Fix minimum height calculation.
93dec019 10763
048addec 107642002-01-20 Ken Raeburn <raeburn@gnu.org>
93dec019 10765
048addec
JD
10766 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
10767 height before comparison.
10768 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
905cc05a 10769
048addec 107702002-01-20 Jason Rumney <jasonr@gnu.org>
2ed06289 10771
048addec
JD
10772 * w32term.c (w32_system_caret_width): Remove.
10773 (w32_use_visible_system_caret): New user flag.
10774 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
10775 Windows reports a screen reader running.
10776 (x_update_window_begin): Hide the system caret.
10777 (x_update_window_end): Show the system caret.
10778 (x_display_and_set_cursor): Don't draw a cursor when
10779 w32_use_visible_system_caret is set. Do not adjust width.
0e79d667 10780
048addec
JD
10781 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
10782 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
10783 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
10784 the user requests it. Use system default width when creating.
10785 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
0e79d667 10786
048addec
JD
10787 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
10788 New window messages.
905cc05a 10789
048addec 107902002-01-20 Richard M. Stallman <rms@gnu.org>
82a7ab23 10791
048addec 10792 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
d75bec6a 10793
048addec 107942002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
52dcb476 10795
048addec 10796 * doprnt.c (doprnt1): Fix typos in error call.
82a7ab23 10797
048addec 107982002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
82a7ab23 10799
048addec 10800 * unexelf.c (unexec) [__sgi]: Support the .got sections.
82a7ab23 10801
048addec 108022002-01-20 Jason Rumney <jasonr@gnu.org>
4d0fa4f3 10803
048addec
JD
10804 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
10805 that Windows returns. If a double check fails, try to guess how
10806 ExtTextOut is going to act.
4d0fa4f3 10807
048addec
JD
10808 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
10809 in place of stricmp.
10810 (w32_list_synthesized_fonts): Removed.
10811 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
10812 (struct enumfont_t): New element; list.
10813 (enum_font_cb2): List all style and charset variations of a font.
10814 (Fw32_select_font): New optional argument; include_proportional.
10815 Exclude vertical fonts. Exclude proportional fonts unless
10816 include_proportional is non-nil.
10817 (w32_enable_synthesized_fonts): Change to a boolean.
10818 (Fw32_send_sys_command): Doc fix.
493faf20 10819
048addec 108202002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
493faf20 10821
048addec
JD
10822 * dispnew.c (update_frame): Move the variable `tem' to the block
10823 where it is used.
4971e491 10824
048addec 108252002-01-19 Jason Rumney <jasonr@gnu.org>
4971e491 10826
048addec
JD
10827 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
10828 call to face-set-after-frame-default.
4971e491 10829
048addec 108302002-01-18 Richard M. Stallman <rms@gnu.org>
d911a0fa 10831
048addec
JD
10832 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
10833 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
d911a0fa 10834
048addec 108352002-01-17 Richard M. Stallman <rms@gnu.org>
d911a0fa 10836
048addec
JD
10837 * window.c (enlarge_window): When exceeding size of parent,
10838 directly delete all the siblings instead of trying to resize it.
201c831a 10839
048addec 108402002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
201c831a 10841
048addec 10842 * term.c (set_tty_color_mode): Remove unused variable `tem'.
201c831a 10843
048addec 108442002-01-16 Henrik Enberg <henrik@enberg.org>
34e39c95 10845
048addec 10846 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
34e39c95 10847
048addec 108482002-01-16 Kim F. Storm <storm@cua.dk>
d77fbc16 10849
048addec
JD
10850 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
10851 is invisible. This can happen if cursor is on top line of a
10852 window, and we switch to a buffer with a header line.
d77fbc16 10853
048addec 10854 * w32term.c (x_erase_phys_cursor): Ditto.
61e3b944 10855
048addec 108562002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
61e3b944 10857
048addec
JD
10858 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
10859 `dont_resize' only when used.
61e3b944 10860
048addec 10861 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
70da46c3 10862
048addec 108632002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
70da46c3 10864
048addec
JD
10865 * xdisp.c (display_mode_element): When computing charpos, depend
10866 on multibyteness of elt, not the text in field.
8af01033 10867
048addec 108682002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8af01033 10869
048addec
JD
10870 * buffer.c (Fkill_all_local_variables):
10871 Increment `update_mode_lines' only once.
7363986a 10872
048addec 108732002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7363986a 10874
048addec
JD
10875 * lisp.h (adjust_after_replace_noundo)
10876 (Fupdate_coding_systems_internal): Add prototypes.
d9e6c4b1 10877
048addec 10878 * sound.c (Fplay_sound): Initialize header_size also for :data case.
d20fc48a 10879
048addec 108802002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
d9e6c4b1 10881
048addec
JD
10882 Support for the --color command-line argument and tty-color-mode
10883 frame parameter:
f1a85b89 10884
048addec
JD
10885 * term.c (tty_default_color_capabilities, tty_setup_colors)
10886 (set_tty_color_mode): New functions.
10887 (term_init): Call tty_default_color_capabilities.
10888 (Qtty_color_mode_alist): New variable.
10889 (syms_of_term): Intern and staticpro it.
f1a85b89 10890
048addec
JD
10891 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
10892 frames.
10893 (do_switch_frame): For termcap frames, switch the tty
10894 color mode as specified by the frame's parameters.
10895 (Qtty_color_mode): New variable.
10896 (syms_of_frame): Intern and staticpro it.
3a62677f 10897
048addec
JD
10898 * emacs.c (USAGE2): Add the --color option.
10899 (standard_args): Ditto.
72244db2 10900
048addec
JD
109012002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10902
10903 * xterm.h (struct x_output): New members want_fullscreen,
10904 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
10905 y_pixels_outer_diff.
10906 New enum for FULLSCREEN_* constants.
10907 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
10908 is NULL.
10909 (x_fullscreen_adjust): Add prototype.
3a62677f 10910
048addec
JD
10911 * emacs.c (USAGE2): Add the new full-screen arguments.
10912 (standard_args): Ditto.
3a62677f 10913
048addec
JD
10914 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
10915 New variables.
10916 (syms_of_xfns): Intern and staticpro them.
10917 (x_frame_parms) <"fullscreen">: New parameter.
10918 (x_fullscreen_move, x_set_fullscreen): New functions.
10919 (x_set_frame_parameters): Support for Qfullscreen.
10920 (x_real_positions): More accurate computation of the frame position.
10921 (x_figure_window_size): Support full-screen frames.
10922 (Fx_create_frame): Default the fullscreen parameter.
3a62677f 10923
048addec
JD
10924 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
10925 (XTread_socket) <Expose>: Call x_check_fullscreen.
10926 <ConfigureNotify>: Don't resize to fullscreen.
10927 Call x_check_fullscreen_move, and set the want_fullscreen member of
10928 output_data.x.
3a62677f 10929
048addec 109302002-01-13 Jason Rumney <jasonr@gnu.org>
9d113d9d 10931
048addec
JD
10932 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
10933 for mice with more than 3 buttons.
b8523839 10934
048addec
JD
10935 * w32term.c (parse_button): New parameter xbutton. Callers changed.
10936 (w32_read_socket): Handle new "XBUTTON" messages.
9464dea4 10937
048addec
JD
10938 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
10939 (syms_of_w32fns): DEFVAR_BOOL it.
10940 (w32_wnd_proc): Handle new "XBUTTON" messages.
9d113d9d 10941
048addec 109422002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
70ec1377 10943
048addec 10944 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
70ec1377 10945
048addec 109462002-01-13 Andreas Schwab <schwab@suse.de>
92f7dd37 10947
048addec 10948 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
92f7dd37 10949
048addec 109502002-01-12 Andreas Schwab <schwab@suse.de>
c93674bb 10951
048addec
JD
10952 * .gdbinit (xbuffer): Remove address operator since data is now a
10953 pointer.
c93674bb 10954
048addec 109552002-01-11 Richard M. Stallman <rms@gnu.org>
59b59892 10956
048addec 10957 * insdel.c (adjust_after_replace_noundo): New function.
59b59892 10958
048addec 10959 * coding.c (code_convert_region): Don't copy old text if undo disabled.
c6ea2775 10960
048addec 109612002-01-09 Jason Rumney <jasonr@gnu.org>
c6ea2775 10962
048addec
JD
10963 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
10964 when checking for multiple frames.
91175673 10965
048addec 109662002-01-08 Richard M. Stallman <rms@gnu.org>
91175673 10967
048addec
JD
10968 * window.c (delete_window): Rewrite the code for changing the
10969 selected window to handle the case where WINDOW is not a leaf.
91175673 10970
048addec 109712002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
e0fead5d 10972
048addec
JD
10973 * process.c (send_process): Set src_multibyte to 1 after the call
10974 top setup_coding_system, not before the call.
e0fead5d 10975
048addec 109762002-01-07 Jason Rumney <jasonr@gnu.org>
e0fead5d 10977
048addec
JD
10978 * xmenu.c (set_frame_menubar, xmenu_show):
10979 (xdialog_show): Initialize wv->help to Qnil.
c186cdb3 10980
048addec
JD
10981 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
10982 (w32_dialog_show): Initialize wv->help to Qnil.
c186cdb3 10983
048addec 109842002-01-06 Jason Rumney <jasonr@gnu.org>
c186cdb3 10985
048addec 10986 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
c186cdb3 10987
048addec 10988 * w32menu.c (w32_menu_display_help): Revert last change.
58cfce98 10989
048addec 10990 * xmenu.c (menu_highlight_callback): Revert last change.
58cfce98 10991
048addec 109922002-01-06 Andreas Schwab <schwab@suse.de>
62854fe2 10993
048addec
JD
10994 * insdel.c (make_gap_larger): Make sure buffer size does not
10995 overflow range of int.
62854fe2 10996
048addec 109972002-01-05 Jason Rumney <jasonr@gnu.org>
656f46bb 10998
048addec
JD
10999 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
11000 OVERLAPS_P.
656f46bb 11001
048addec 11002 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
656f46bb 11003
048addec
JD
11004 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
11005 to the left or to the right of the pointer, put it against
11006 the left screen edge.
11007 (x_frame_parms): Add missing braces around initializer.
036e218d 11008
048addec
JD
11009 * w32term.c (x_setup_relief_colors): Don't compute an image's
11010 background color if it doesn't have a Pixmap.
11011 (notice_overwritten_cursor): Don't depend on
11012 output_cursor and updated_area. Compare pixel coordinates with
11013 window's cursor pixel coordinates.
11014 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
11015 Call notice_overwritten_cursor with new arg list.
11016 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
11017 unconditionally.
11018 (x_draw_image_relief): Use predefined macro instead of
11019 constant when the value of `tool_bar_button_relief' is negative.
036e218d 11020
048addec 11021 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
7ddb2c16 11022
048addec 110232002-01-04 Richard M. Stallman <rms@gnu.org>
7ddb2c16 11024
048addec 11025 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
ace9b298 11026
048addec 110272002-01-03 Richard M. Stallman <rms@gnu.org>
90647b07 11028
048addec
JD
11029 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
11030 (Fkey_binding): Try the `keymap' property map first.
11031 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
11032 minor mode bindings.
90647b07 11033
048addec 110342002-01-03 Kim F. Storm <storm@cua.dk>
ace9b298 11035
048addec 11036 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
ace9b298 11037
048addec 110382002-01-02 Richard M. Stallman <rms@gnu.org>
ace9b298 11039
048addec
JD
11040 * keyboard.c (read_key_sequence): Handle the keymap property
11041 before minor mode maps.
9fbc32aa 11042
048addec
JD
11043 * editfns.c (Fformat): Update thissize from field_width
11044 based on the actual width, in the string case.
036e218d 11045
048addec 110462002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fbc32aa 11047
048addec
JD
11048 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
11049 when used as truth value to prevent gcc warnings.
9fbc32aa 11050
048addec
JD
11051 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
11052 * w32proc.c: Include <config.h>.
9fbc32aa 11053
048addec 110542002-01-01 Andreas Schwab <schwab@suse.de>
9fbc32aa 11055
048addec
JD
11056 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
11057 not EMACS_INT, to make them compatible with DEFVAR_INT.
11058 * lisp.h (max_specpdl_size): Adjust declaration.
9fbc32aa 11059
048addec 110602002-01-01 Richard M. Stallman <rms@gnu.org>
9fbc32aa 11061
048addec
JD
11062 * print.c (print_object): Test print_escape_nonascii only for
11063 unibyte strings.
11064 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
11065 when outputting to a multibyte buffer.
9fbc32aa 11066
048addec 110672001-12-29 Richard M. Stallman <rms@gnu.org>
9fbc32aa 11068
048addec
JD
11069 * print.c (print_object): In multibyte string, use hex escapes.
11070 Use octal only for unibyte strings.
11071 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
0142178a 11072
048addec
JD
11073 * lread.c (read_escape): New arg BYTEREP for reporting whether
11074 escape forces unibyte or multibyte.
11075 (read1): When reading a string, take note of that info.
0142178a 11076
048addec 110772001-12-29 Ken Raeburn <raeburn@gnu.org>
d4824a5d 11078
048addec
JD
11079 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
11080 comparison to test lisp value returned by Fget.
d4824a5d 11081
048addec 110822001-12-29 Richard M. Stallman <rms@gnu.org>
b1356234 11083
048addec 11084 * lisp.h (max_specpdl_size): Add declaration.
b1356234 11085
048addec 11086 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
3ce081f5 11087
048addec
JD
11088 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
11089 Handle modifier bits. Correct typo in error message.
99e380ee 11090
048addec 110912001-12-28 Richard M. Stallman <rms@gnu.org>
3ce081f5 11092
048addec
JD
11093 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
11094 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
11095 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
11096 Update calls to Fdefine_abbrev.
11097 (write_abbrev): Update for changed data format.
11098 Don't list "system" abbrevs.
11099 (Fexpand_abbrev): Update use count with new data format.
11100 (describe_abbrev): Update for changed data format.
11101 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
66458f32 11102
048addec 11103 * config.in (HAVE_MBSINIT): Add #undef.
66458f32 11104
048addec 11105 * strftime.c (mbsinit): Define as no-op if not available.
66458f32 11106
048addec
JD
11107 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
11108 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
59a86c99 11109
048addec
JD
11110 * keymap.c (Flookup_key): Error message if key has wrong data type.
11111 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
11112 (exclude_key): New variable.
59a86c99 11113
048addec 111142001-12-28 Gerd Moellmann <gerd@gnu.org>
eb77a5f4 11115
048addec
JD
11116 * xterm.c (x_setup_relief_colors): Don't compute an image's
11117 background color if it doesn't have a Pixmap.
eb77a5f4 11118
048addec
JD
11119 * xterm.c (notice_overwritten_cursor): Don't depend on
11120 output_cursor and updated_area. Compare pixel coordinates with
11121 window's cursor pixel coordinates.
11122 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
11123 Call notice_overwritten_cursor with new arg list.
11124 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
11125 unconditionally.
eb77a5f4 11126
048addec
JD
11127 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
11128 height of the cursor line to the amount to scroll.
eb77a5f4 11129
048addec 111302001-12-27 Richard M. Stallman <rms@gnu.org>
bb313871 11131
048addec
JD
11132 * intervals.c (set_point_both): The position after an invisible,
11133 intangible character is not an acceptable stopping point.
bb313871 11134
048addec 111352001-12-27 Ken Raeburn <raeburn@gnu.org>
55b43a63 11136
048addec
JD
11137 * window.c (enlarge_window): In new preserve_before code, convert
11138 CURBEG from lisp object to integer before doing arithmetic.
6052529b 11139
048addec 111402001-12-27 Richard M. Stallman <rms@gnu.org>
3ce081f5 11141
048addec 11142 * bytecode.c (Fbyte_code): Undo previous change.
3ce081f5 11143
048addec 111442001-12-26 Kim F. Storm <storm@cua.dk>
3ce081f5 11145
048addec
JD
11146 * keyboard.c (record_char): Ignore duplicate help-echo events only
11147 separated by mouse-movement. When tracking mouse, only record
11148 first and last mouse-movement event in same window.
11149 Don't record mouse-movement events in keyboard macros.
3ce081f5 11150
048addec 111512001-12-25 Richard M. Stallman <rms@gnu.org>
55b43a63 11152
048addec
JD
11153 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
11154 (Fenlarge_window): New arg PRESERVE_BEFORE.
111ed14e 11155
048addec
JD
11156 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
11157 instead of Fstring_as_unibyte.
9fabb2f5 11158
048addec 111592001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fabb2f5 11160
048addec 11161 The following changes remove mocklisp support:
9fabb2f5 11162
048addec 11163 * mocklisp.h, mocklisp.c: Files removed.
111ed14e 11164
048addec
JD
11165 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
11166 `Qmocklisp' and `Qmocklisp_arguments'.
11167 Remove prototype of syms_of_mocklisp.
2fa0eedf 11168
048addec 11169 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
d1420435 11170
048addec
JD
11171 * callint.c: Do not include mocklisp.h.
11172 (Fcall_interactively): Do not test for mocklisp case.
2fa0eedf 11173
048addec
JD
11174 * eval.c: Remove variables `Qmocklisp_arguments',
11175 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
11176 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
11177 Do not test for mocklisp case.
11178 (Fwhile): Remove unused variable `tem'.
11179 (syms_of_eval): Remove variable `moclisp-arguments'.
ebcbef4e 11180
048addec 11181 * data.c (wrong_type_argument): Remove mocklisp case.
5c131048 11182
048addec 11183 * doc.c (Fdocumentation): Remove mocklisp case.
5c131048 11184
048addec 11185 * emacs.c (main): Do not call syms_of_mocklisp.
5c131048 11186
048addec 111872001-12-21 Richard M. Stallman <rms@gnu.org>
96d276c3 11188
048addec
JD
11189 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
11190 to the left or to the right of the pointer, put it against
11191 the left screen edge.
6108b49c 11192
048addec 111932001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
96d276c3 11194
048addec
JD
11195 * Makefile.in (distclean): Remove .gdbinit if we are building
11196 outside the source tree.
5eea19a4 11197
048addec 111982001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
5eea19a4 11199
048addec 11200 * w32.c (emacs_root_dir): New function.
5eea19a4 11201
048addec 11202 * msdos.c (emacs_root_dir): New function.
5eea19a4 11203
048addec
JD
11204 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
11205 of the current drive as the fallback for default_directory.
438e57dd 11206
048addec
JD
11207 * dired.c (file_name_completion): Run the elements of
11208 completion-ignored-extensions through ENCODE_FILE.
438e57dd 11209
048addec
JD
11210 * lisp.h (scmp): Remove prototype, since it's now a static
11211 function private to dired.c.
c88e5347 11212
048addec 112132001-12-18 Richard M. Stallman <rms@gnu.org>
c88e5347 11214
048addec
JD
11215 * dired.c (scmp): Function moved from minibuf.c.
11216 Delete multibyte handling--used only on encoded strings.
59ce1461 11217
048addec 11218 * minibuf.c (scmp): Function moved to dired.c.
59ce1461 11219
048addec 11220 * fns.c (merge): Add QUIT call.
59ce1461 11221
048addec 112222001-12-18 Dave Love <fx@gnu.org>
8727d588 11223
048addec
JD
11224 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
11225 language/georgian.el.
8727d588 11226
048addec 112272001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
cc63037e 11228
048addec
JD
11229 * Makefile.in (lisp, shortlisp): Synchronize with changes to
11230 lisp/Makefile.in:DONTCOMPILE.
cc63037e 11231
048addec 112322001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
cc63037e 11233
048addec
JD
11234 * xdisp.c (window_box_height): Do not return negative values.
11235 From Gerd Moellmann <gerd@gnu.org>.
cc63037e 11236
048addec 11237 * keyboard.c (head_table): Add missing braces around initializer.
cc63037e 11238
048addec 11239 * term.c (keys): Likewise.
deece6f5 11240
048addec 11241 * xfns.c (x_frame_parms, visual_classes): Likewise.
deece6f5 11242
048addec 112432001-12-17 Sam Steingold <sds@gnu.org>
1b944d9c 11244
048addec
JD
11245 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
11246 patch (COMPOSING_P, not COMPOSING).
28ff4293 11247
048addec 112482001-12-17 Richard M. Stallman <rms@gnu.org>
a395ef6a 11249
048addec 11250 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
a395ef6a 11251
048addec
JD
11252 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
11253 before calling decode_coding.
9b46de40 11254
048addec 11255 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
9b46de40 11256
048addec
JD
11257 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
11258 instead of only for COMPOSITION_DISABLED.
9b46de40 11259
048addec 112602001-12-16 Richard M. Stallman <rms@gnu.org>
aff37336 11261
048addec 11262 * alloc.c (pure_alloc): After overflow, allocate just a small block.
aff37336 11263
048addec 11264 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
b9937f07 11265
048addec
JD
11266 * buffer.h (struct buffer): New field `display_error_modiff'.
11267 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
b9937f07 11268
048addec 11269 * window.c (Frecenter): Clear display_error_modiff field.
2cd23960 11270
048addec
JD
11271 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
11272 Call redisplay_window, but not if display_error_modiff field says no.
11273 (redisplay_window_error): New function.
11274 (displayed_buffer): New variable.
11275 (redisplay_internal, redisplay_windows): Call the new functions
11276 instead of redisplay_window directly.
2cd23960 11277
048addec 112782001-12-15 Richard M. Stallman <rms@gnu.org>
2cd23960 11279
048addec 11280 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
2cd23960 11281
048addec 112822001-12-14 Andrew Innes <andrewi@gnu.org>
a4184c1c 11283
048addec
JD
11284 * makefile.w32-in (EMACSLOADPATH): Define.
11285 ($(EMACS)): Run `list-load-path-shadows' after dumping emacs.
11286 (bootstrap-temacs): Remove dependency on bootstrap-clean.
a4184c1c 11287
048addec 112882001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
f6fa0866 11289
048addec
JD
11290 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
11291 parameter have a numeric value all the time.
f6fa0866 11292
048addec 11293 * w32fns.c (x_report_frame_params): Likewise.
f4ca4b00 11294
048addec 112952001-12-12 Richard M. Stallman <rms@gnu.org>
f4ca4b00 11296
048addec 11297 * fileio.c (Fwrite_region): Doc fix.
f4e25f94 11298
048addec
JD
11299 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
11300 (redisplay_internal): Call clear_image_cache only for window terminals.
f4e25f94 11301
048addec 113022001-12-12 Gerd Moellmann <gerd@gnu.org>
91c153e2 11303
048addec
JD
11304 * xdisp.c (move_it_vertically_backward): Change heuristic
11305 for the case that we didn't move far enough initially.
91c153e2 11306
048addec
JD
11307 * window.c (Frecenter): Simplify computation in the case of window
11308 system frames and ARG < 0; use window_box_height.
65b7d3e7 11309
048addec 113102001-12-11 Richard M. Stallman <rms@gnu.org>
65b7d3e7 11311
048addec
JD
11312 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
11313 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
6b5f6311 11314
048addec 113152001-12-11 Andrew Innes <andrewi@gnu.org>
6b5f6311 11316
048addec
JD
11317 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
11318 arg is negative.
be676094 11319
048addec 113202001-12-11 Richard M. Stallman <rms@gnu.org>
be676094 11321
048addec
JD
11322 * m/hp800.h: Split the __hpux conditional into the parts
11323 that are right for GNU/Linux too and the parts that are not.
11324 Use the former if GNU_LINUX.
11325 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
032a857d 11326
048addec 11327 * s/gnu-linux.h (GNU_LINUX): Defined.
032a857d 11328
048addec 113292001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
032a857d 11330
048addec
JD
11331 * macros.c, msdos.c, w16select.c: Change doc-string comments to
11332 `new style' [w/`doc:' keyword].
032a857d 11333
048addec 113342001-12-10 Jason Rumney <jasonr@gnu.org>
b6270150 11335
048addec
JD
11336 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
11337 before using.
b6270150 11338
048addec 113392001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
792e5cbd 11340
048addec
JD
11341 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
11342 keyword].
98cbb9fa 11343
048addec 113442001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
98cbb9fa 11345
048addec 11346 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
98cbb9fa 11347
048addec 11348 * s/hpux10.h (srand48): Don't undefine.
98cbb9fa 11349
048addec 113502001-12-09 Jason Rumney <jasonr@gnu.org>
792e5cbd 11351
048addec
JD
11352 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
11353 Add comment to explain where the struct came from.
11354 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
11355 (add_menu_item): Process pop-up menus first to avoid memory leak.
11356 (add_menu_item, w32_menu_display_help): Use `help' field as
11357 Lisp_Object.
11358 (w32_free_submenu_strings): Only free owner-drawn strings.
fa336b91 11359
048addec 113602001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
fa336b91 11361
048addec 11362 * COPYING: Moved back.
fa336b91 11363
048addec
JD
11364 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
11365 Add parentheses around && within ||.
077907d4 11366
048addec 11367 * indent.c (compute_motion): Likewise.
aa2af83a 11368
048addec 11369 * intervals.c (merge_properties_sticky): Likewise.
60a653f1 11370
048addec
JD
11371 * coding.c (setup_coding_system, shrink_encoding_region)
11372 (Fdecode_sjis_char): Likewise.
60a653f1 11373
048addec 113742001-12-07 Andreas Schwab <schwab@suse.de>
60a653f1 11375
048addec
JD
11376 * xdisp.c (display_mode_element): Don't read past end of string if
11377 it ends with '%'.
60a653f1 11378
048addec
JD
11379 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
11380 can hold.
60a653f1 11381
048addec
JD
11382 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
11383 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
11384 type changed to Lisp_Object.
11385 (syms_of_data): DEFVAR_LISP them.
60a653f1 11386
048addec 113872001-12-07 Richard M. Stallman <rms@gnu.org>
60a653f1 11388
048addec
JD
11389 * callproc.c (init_callproc): Set Vdata_directory based on the source
11390 location whenever Emacs was run uninstalled.
60a653f1 11391
048addec 113922001-12-06 Paul Eggert <eggert@twinsun.com>
60a653f1 11393
048addec
JD
11394 * config.in (HAVE_WORKING_VFORK): New #undefs.
11395 * process.c (create_process):
11396 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
11397 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
11398 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
11399 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
11400 * m/intel386.h (HAVE_VFORK): Likewise.
11401 * m/mips-siemens.h (HAVE_VFORK): Likewise.
11402 * m/mips.h (HAVE_VFORK): Likewise.
11403 * s/freebsd.h (vfork): Remove #define.
11404 * s/lynxos.h (HAVE_VFORK): Remove #undef.
11405 * s/usg5-4-2.h: Fix comment about vfork.
60a653f1 11406
048addec 114072001-12-06 Richard M. Stallman <rms@gnu.org>
60a653f1 11408
048addec
JD
11409 * s/hpux10.h (random): Add undef.
11410 (HAVE_RANDOM): Define it just once.
60a653f1 11411
048addec 114122001-12-06 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11413
048addec 11414 * eval.c: Undo last change: the standard syntax is not wanted.
60a653f1 11415
048addec 114162001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 11417
048addec
JD
11418 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
11419 scroll bars of the frame before deleting the frame itself. If the
11420 frame has a widget, delete the frame with XtDestroyWidget, and do
11421 not call XDestroyWindow before that.
60a653f1 11422
048addec 114232001-12-06 Kim F. Storm <storm@cua.dk>
60a653f1 11424
048addec 11425 * xfns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 11426
048addec 11427 * w32fns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 11428
048addec 114292001-12-05 Andrew Innes <andrewi@gnu.org>
60a653f1 11430
048addec
JD
11431 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
11432 excessively large.
60a653f1 11433
048addec
JD
11434 * insdel.c (make_gap_larger): New function.
11435 (make_gap_smaller): New function.
11436 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
11437 Call make_gap_smaller if arg is negative.
60a653f1 11438
048addec 114392001-12-04 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11440
048addec
JD
11441 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
11442 Pass a dummy argument when calling interrupt_signal.
11443 (parse_menu_item): Mark disabled items before checking for empty def.
11444 (read_char_minibuf_menu_prompt): Make safety more visible.
11445 (read_key_sequence): Add a `first_unbound' variable.
11446 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
11447 unbound prefix as soon as we can detect it.
60a653f1 11448
048addec
JD
11449 * doc.c (Fsnarf_documentation): Add prototype.
11450 (get_doc_string): Handle negative arguments.
11451 (Fdocumentation): Use AREF and ASIZE.
11452 Move the calls to get_doc_string to a single place.
11453 Don't confuse an interactive-spec for a docstring reference.
11454 (Fdocumentation_property): Take advantage of the fact that
11455 get_doc_string now ignores the sign of the docstring position.
60a653f1 11456
048addec 11457 * eval.c: Use standard syntax for usage in docstrings.
60a653f1 11458
048addec 114592001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11460
a64387ee 11461 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
60a653f1 11462
048addec 114632001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11464
048addec
JD
11465 * xterm.c (x_draw_image_relief): Use predefined macro instead of
11466 constant when the value of `tool_bar_button_relief' is negative.
60a653f1 11467
048addec 114682001-12-02 Richard M. Stallman <rms@gnu.org>
60a653f1 11469
048addec
JD
11470 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
11471 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
60a653f1 11472
048addec 11473 * fileio.c (read_non_regular): Delete Fsignal call.
60a653f1 11474
048addec 114752001-12-01 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11476
048addec 11477 * lisp.h (run_hook_list_with_args): Undo last change.
60a653f1 11478
048addec 114792001-12-01 Gerd Moellmann <gerd@gnu.org>
60a653f1 11480
048addec 11481 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
60a653f1 11482
048addec 114832001-12-01 Jason Rumney <jasonr@gnu.org>
60a653f1 11484
048addec 11485 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
60a653f1 11486
048addec
JD
11487 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
11488 [!WM_MOUSELEAVE]: Define.
60a653f1 11489
048addec
JD
11490 * w32menu.c (current_popup_menu, get_menu_item_info):
11491 (set_menu_item_info): New vars.
11492 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
11493 (w32_menu_show): Set current_popup_menu.
11494 (add_menu_item): Allocate new strings for owner-drawn menu items
11495 and help strings.
11496 Use owner-draw for disabled menu items again.
11497 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
11498 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
60a653f1 11499
048addec
JD
11500 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
11501 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
11502 <WM_EXITMENULOOP>: Free menu strings.
11503 <WM_MOUSELEAVE>: Stop tracking mouse.
11504 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
60a653f1 11505
048addec
JD
11506 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
11507 and mouse face.
60a653f1 11508
048addec 115092001-12-01 Kim F. Storm <storm@cua.dk>
60a653f1 11510
048addec
JD
11511 The following changes add left-fringe and right-fringe
11512 frame parameters to adjust fringe widths, or remove one or
11513 both fringes.
60a653f1 11514
048addec
JD
11515 * frame.h (struct frame): Remove trunc_area_pixel_width and
11516 trunc_area_cols fields.
11517 (Qleft_fringe, Qright_fringe): Declare.
11518 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
60a653f1 11519
048addec
JD
11520 * frame.c (Qleft_fringe, Qright_fringe): New vars.
11521 (syms_of_frame): Initialize them.
60a653f1 11522
048addec
JD
11523 * window.c (coordinates_in_window): Handle separate left and right
11524 fringe widths.
60a653f1 11525
048addec
JD
11526 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
11527 and fringe_cols fields.
11528 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
11529 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
11530 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
11531 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
11532 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
11533 (x_compute_fringe_widths): Add prototype.
60a653f1 11534
048addec
JD
11535 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
11536 fill fringe evenly with small dashes.
11537 (x_draw_fringe_bitmap): Clear background if necessary. Align and
11538 clip the new ZV bitmap to avoid jitter between rows.
11539 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
11540 background. Don't draw fringe bitmaps if fringe width is zero.
11541 (x_compute_fringe_widths): New function.
11542 (x_new_font, x_set_window_size_1): Use it.
60a653f1 11543
048addec
JD
11544 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
11545 (x_set_frame_parameters): Process `font' parameter before other
11546 parameters as fringe widths depend on it.
11547 (x_set_fringe_width): New function.
11548 (x_figure_window_size): Use x_compute_fringe_widths.
11549 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
11550 parameters.
60a653f1 11551
048addec
JD
11552 * widget.c (set_frame_size): Use x_compute_fringe_widths.
11553 (EmacsFrameSetCharSize): Ditto.
60a653f1 11554
048addec
JD
11555 * w32term.h: Merged changes from xterm.h.
11556 * w32term.c: Merged changes from xterm.c.
11557 * w32fns.c: Merged changes from xfns.c.
60a653f1 11558
048addec 115592001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11560
048addec 11561 * COPYING: Removed.
60a653f1 11562
048addec 115632001-11-29 Dave Love <fx@gnu.org>
60a653f1 11564
048addec
JD
11565 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
11566 extra extra slot.
11567 (detect_coding_mask): Fix call of detect_coding_iso2022.
60a653f1 11568
048addec 115692001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11570
048addec
JD
11571 * fileio.c (file-name-coding-system)
11572 (default-file-name-coding-system): Doc fix (links to referenced
11573 variables added).
60a653f1 11574
048addec 115752001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11576
048addec
JD
11577 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
11578 Add dummy uses of gcproN variables.
60a653f1 11579
048addec
JD
11580 * category.c (describe_category, describe_category_1)
11581 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
11582 (syms_of_category): Don't defsubr Sdescribe_categories.
60a653f1 11583
048addec 115842001-11-28 Richard M. Stallman <rms@gnu.org>
60a653f1 11585
048addec 11586 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
60a653f1 11587
048addec
JD
11588 * Makefile.in (lispdir): New variable, referring to build dir.
11589 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
60a653f1 11590
048addec 115912001-11-28 Andrew Innes <andrewi@gnu.org>
60a653f1 11592
048addec
JD
11593 * w32menu.c (w32_menu_display_help): Actually add the new argument
11594 OWNER.
60a653f1 11595
048addec 115962001-11-28 Jason Rumney <jasonr@gnu.org>
60a653f1 11597
048addec
JD
11598 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
11599 menu items. From David Ponce <dponce@wanadoo.fr>.
11600 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
11601 conditionally.
11602 (w32_menu_display_help): New argument OWNER. Rewritten to store a
11603 help event in the owner frame's keyboard buffer.
60a653f1 11604
048addec
JD
11605 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
11606 (Fx_show_tip): Don't subtract last width from row width.
11607
11608 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
11609 (w32_read_socket): Use EQ to compare frames.
60a653f1 11610
048addec 116112001-11-28 Gerd Moellmann <gerd@gnu.org>
60a653f1 11612
048addec
JD
11613 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
11614 OVERLAPS_P.
60a653f1 11615
048addec 116162001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11617
048addec
JD
11618 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
11619 `gcpro3' and `gcpro4'.
60a653f1 11620
048addec 11621 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
60a653f1 11622
048addec 116232001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11624
048addec 11625 * ccl.c: Use AREF and ASIZE.
60a653f1 11626
048addec 116272001-11-27 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11628
048addec
JD
11629 * lisp.h (run_hook_list_with_args): Remove.
11630 (LIST_END_P): Fix call to wrong_type_argument.
11631 (make_fixnum_or_float): Use EMACS_INT rather than int.
60a653f1 11632
048addec 116332001-11-26 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11634
048addec
JD
11635 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
11636 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
60a653f1 11637
048addec
JD
11638 * eval.c: Use AREF and ASIZE.
11639 (Ffetch_bytecode): Add the file name to the error message.
60a653f1 11640
048addec
JD
11641 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
11642 which match the end of the file-name.
11643 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
11644 is not a valid env var, but leave it as is instead.
60a653f1 11645
048addec
JD
11646 * keymap.c (access_keymap): Handle t bindings like nil bindings.
11647 Make nil bindings in char-tables transparent.
11648 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
60a653f1 11649
048addec 116502001-11-26 Richard M. Stallman <rms@gnu.org>
60a653f1 11651
048addec
JD
11652 * textprop.c (set_text_properties_1): Allow START, END in either order.
11653 Do nothing if range is empty.
60a653f1 11654
048addec 11655 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
60a653f1 11656
048addec
JD
11657 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
11658 (clean): Not here.
60a653f1 11659
048addec 116602001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11661
048addec
JD
11662 * textprop.c (set_text_properties_1): Clearly mark that the
11663 interval should not be empty.
60a653f1 11664
048addec
JD
11665 * intervals.c (graft_intervals_into_buffer):
11666 Don't call set_text_properties_1 on an empty interval.
60a653f1 11667
048addec 116682001-11-25 Richard M. Stallman <rms@gnu.org>
60a653f1 11669
048addec 11670 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
60a653f1 11671
048addec
JD
11672 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
11673 don't lose the data in it.
60a653f1 11674
048addec 116752001-11-25 Juanma Barranquero <lektu@terra.es>
60a653f1 11676
048addec 11677 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
60a653f1 11678
048addec 11679 * buffer.c (Fkill_buffer): Use Frun_hooks, not Vrun_hooks.
60a653f1 11680
048addec 11681 * print.c (temp_output_buffer_setup): Use Frun_hooks, not Vrun_hooks.
60a653f1 11682
048addec 116832001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11684
048addec 11685 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
60a653f1 11686
048addec 116872001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 11688
048addec
JD
11689 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
11690 Niemitalo <kon@iki.fi>.
60a653f1 11691
048addec 116922001-11-25 Jason Rumney <jasonr@gnu.org>
60a653f1 11693
048addec 11694 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
60a653f1 11695
048addec
JD
11696 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
11697 (Fx_show_tip): Block input during frame creation.
11698 (Fx_show_tip, Fx_hide_tip): Enable.
60a653f1 11699
048addec 117002001-11-24 Richard M. Stallman <rms@gnu.org>
60a653f1 11701
048addec
JD
11702 * lread.c (Fload): Detect recursive load error for more than 3
11703 nestings of the same file.
11704 (Vrecursive_load_depth_limit): Variable deleted.
11705 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
60a653f1 11706
048addec 117072001-11-24 Jason Rumney <jasonr@gnu.org>
60a653f1 11708
048addec
JD
11709 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
11710 mouse position if either left or top is not specified.
60a653f1 11711
048addec
JD
11712 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
11713 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
11714 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
11715 (my_create_tip_window): Assign tip_window.
11716 (x_create_tip_frame): Use same defaults as X.
11717 (compute_tip_xy): Remove unused variable. Use full screen width.
11718 (Fx_show_tip): Do not double height. Call ShowWindow directly.
60a653f1 11719
048addec
JD
11720 * w32term.c (x_after_update_window_line): Doc fix.
11721 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
11722 frames.
11723 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
60a653f1 11724
048addec
JD
11725 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
11726 for all Windowed systems.
60a653f1 11727
048addec 117282001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 11729
048addec
JD
11730 * msdos.c (IT_clear_screen): If the frame's faces are not yet
11731 realized, use the initial screen colors to clear the screen.
60a653f1 11732
048addec 117332001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11734
048addec
JD
11735 * textprop.c (Fset_text_properties): Remove unused variables
11736 `unchanged', `prev_changed', `s' and `len'.
60a653f1 11737
048addec
JD
11738 * search.c (Freplace_match): Remove unused variable `inslen'.
11739
11740 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
11741
117422001-11-22 Jason Rumney <jasonr@gnu.org>
11743
11744 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
11745 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
11746 (my_create_tip_window): New function.
11747 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
11748 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
11749
117502001-11-20 Jason Rumney <jasonr@gnu.org>
11751
11752 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
11753 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
11754
11755 * w32fns.c (Vw32_system_coding_system): Remove.
11756 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
11757
117582001-11-19 Stefan Monnier <monnier@cs.yale.edu>
11759
11760 * fileio.c (Fwrite_region): Move choose_write_coding_system to
11761 after build_annotations.
11762
11763 * syntax.c (describe_syntax): Add dummy arg.
11764 (describe_syntax_1): Update call to describe_vector.
11765
11766 * category.c (describe_category): Add dummy arg.
11767 (describe_category_1): Update call to describe_vector.
11768
11769 * keymap.c (Fdescribe_vector): Add `describer' parameter.
11770 (describe_command, describe_translation): Add dummy second param.
11771 (describe_map): Call elt_describer with two arguments.
11772 (describe_vector_princ): Add `fun' parameter.
11773 Call it instead of the hardcoded `princ'.
11774 (describe_vector): Add arg `args'.
11775 Pass it as a new second argument to elt_describer.
60a653f1 11776
048addec 11777 * keymap.h (describe_vector): Update prototype.
60a653f1 11778
048addec
JD
11779 * frame.c: Don't include keymap.h any more.
11780 (keys_of_frame): Remove.
60a653f1 11781
048addec 11782 * lisp.h (keys_of_frame): Remove declaration.
60a653f1 11783
048addec 11784 * emacs.c (main): Don't call `keys_of_frame' any more.
60a653f1 11785
048addec 117862001-11-14 Andreas Schwab <schwab@suse.de>
60a653f1 11787
048addec
JD
11788 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
11789 if defined, 0 otherwise.
11790 (MAP_FAILED): Define if not defined and use it to test mmap failure.
11791 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
60a653f1 11792
048addec 117932001-11-19 Richard M. Stallman <rms@gnu.org>
60a653f1 11794
048addec 11795 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
60a653f1 11796
048addec 117972001-11-18 Jason Rumney <jasonr@gnu.org>
60a653f1 11798
048addec
JD
11799 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
11800 (x_draw_bar_cursor): If the background color of the glyph under
11801 the cursor equals the frame's cursor color, use the glyph's
11802 foreground color for drawing the bar cursor.
11803 (x_after_update_window_line): Clear internal border in different
11804 circumstances.
11805 (w32_set_vertical_scroll_bar): Check for width and height > 0.
11806 (w32_draw_relief_rect): Correct relief by 1 pixel.
11807 (x_set_glyph_string_background_width):
11808 Set extends_to_end_of_line_p if the row's fill_line_p is set and
11809 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
11810 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
11811 if cursor_in_non_selected_windows is false.
11812 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
11813 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
11814 Notice if cursor gets overwritten.
11815 (notice_overwritten_cursor): Renamed from
11816 note_overwritten_text_cursor. Rewritten to take glyph widths
11817 into account, and to take X positions as parameters.
11818 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
11819 around call to x_draw_glyphs.
11820 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
11821 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
11822 color to use for image glyph reliefs.
11823 (x_draw_image_relief): Accept zero tool_bar_button_relief.
11824 (glyph_rect): Remove unused variable `area'.
60a653f1 11825
048addec
JD
11826 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
11827 some items.
11828 (x_set_internal_border_width): Set frame garbaged when window
11829 doesn't exist yet.
11830 (Fx_create_frame): Accept zero tool_bar_button_relief.
11831 (x_clear_image_1, four_corners_best, image_background)
11832 (image_background_transparent): New functions.
11833 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
11834 (gs_format): Add `:background' entry.
11835 (lookup_image): Set IMG's background color if specified.
11836 (pbm_load, xbm_load_image, png_load): Set IMG's background field
11837 when appropriate.
11838 (x_clear_image_1): Reset `background_valid' and
11839 `background_transparent_valid' fields.
11840 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
11841 calculating it here. Set IMG's background_transparent field.
11842 (enum xpm_keyword_index): Add XPM_BACKGROUND.
11843 (enum png_keyword_index): Add PNG_BACKGROUND.
11844 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
11845 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
11846 (enum gif_keyword_index): Add GIF_BACKGROUND.
11847 (enum gs_keyword_index): Add GS_BACKGROUND.
11848 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
11849 Pre-calculate image background color where necessary.
11850 (x_create_x_image_and_pixmap, xbm_load, gs_load):
11851 Use display info's n_cbits entry for screen depth.
11852 (Fx_show_tip): Remove unused variables `buffer', `top',
11853 `left', `max_width' and `max_height'.
60a653f1 11854
048addec 11855 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
60a653f1 11856
048addec 118572001-11-18 Gerd Moellmann <gerd@gnu.org>
60a653f1 11858
048addec 11859 * puresize.h (BASE_PURESIZE): Increase to 750000.
60a653f1 11860
048addec 118612001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11862
048addec 11863 * frame.c (Fframe_live_p): Doc fix.
60a653f1 11864
048addec 118652001-11-18 Richard M. Stallman <rms@gnu.org>
60a653f1 11866
048addec
JD
11867 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
11868 (message_dolog_marker3): New static variables hold three markers.
11869 (syms_of_xdisp): Initialize and staticpro them.
11870 (message_dolog): Use message_dolog_marker1..3 instead of
11871 allocating markers each time. Unchain them when done.
60a653f1 11872
048addec 118732001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 11874
048addec 11875 * doc.c (Fsnarf_documentation): Doc fix.
60a653f1 11876
048addec 118772001-11-17 Andreas Schwab <schwab@suse.de>
60a653f1 11878
048addec 11879 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
60a653f1 11880
048addec 118812001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 11882
048addec 11883 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
60a653f1 11884
048addec 118852001-11-17 Jason Rumney <jasonr@gnu.org>
60a653f1 11886
048addec 11887 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
60a653f1 11888
048addec 118892001-11-17 Gerd Moellmann <gerd@gnu.org>
60a653f1 11890
048addec
JD
11891 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
11892 with invalid position.
60a653f1 11893
048addec 118942001-11-16 Richard M. Stallman <rms@gnu.org>
60a653f1 11895
048addec 11896 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
60a653f1 11897
048addec
JD
11898 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
11899 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
11900 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
60a653f1 11901
048addec 11902 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
60a653f1 11903
048addec 119042001-11-16 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11905
048addec
JD
11906 * fileio.c (build_annotations): Split off the tail.
11907 (build_annotations_2): New fun. Extracted from build_annotations.
11908 (Fwrite_region): Split the call to build_annotations into two
11909 calls to build_annotations and build_annotations_2.
077907d4 11910
048addec 119112001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
1756e2fb 11912
048addec
JD
11913 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
11914 clear_waiting_for_input with argument.
1756e2fb 11915
048addec 11916 * xterm.h (x_update_cursor): Remove duplicated prototype.
06e8f738 11917
048addec 11918 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
06e8f738 11919
048addec 11920 * xterm.c (waiting_for_input): Remove unnecessary declaration.
fa336b91 11921
048addec 11922 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
fa336b91 11923
048addec 119242001-11-16 Stefan Monnier <monnier@cs.yale.edu>
fa336b91 11925
048addec
JD
11926 * fileio.c (choose_write_coding_system): New fun, extracted
11927 from Fwrite_region.
11928 (Fwrite_region): Use it.
fa336b91 11929
048addec
JD
11930 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
11931 (funcall_lambda, run_hook_with_args): Make static and add prototype.
11932 (ml_apply, find_handler_clause): Add prototype.
fa336b91 11933
048addec 119342001-11-16 Eli Zaretskii <eliz@gnu.org>
fa336b91 11935
048addec 11936 * config.in: Add #undef HAVE_COFF_H.
fa336b91 11937
048addec
JD
11938 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
11939 Required for ISC 4.1.
fa336b91 11940
048addec 119412001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
fa336b91 11942
048addec
JD
11943 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
11944 Andrew Wiseman <a.wiseman@btclick.com>.
fa336b91 11945
048addec 119462001-11-16 Kim F. Storm <storm@cua.dk>
fa336b91 11947
048addec
JD
11948 The following changes are made to clean up the various internal
11949 references to the fringes to actually use the term `fringe' for
11950 them. Previously, they were called `flags areas', `bitmap areas',
11951 `left/right side of windows', or implicitly as `flags' or
11952 `bitmaps':
fa336b91 11953
048addec
JD
11954 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
11955 Comments fixed. Use renamed symbols.
06e8f738 11956
048addec 11957 * dispnew.c: Comment fix. Use renamed symbols.
06e8f738 11958
048addec
JD
11959 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
11960 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
11961 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
9ce647f4 11962
048addec 11963 * msdos.c: Comment fix.
9ce647f4 11964
048addec 11965 * w32fns.c: Use renamed symbols.
9b784ab8 11966
048addec
JD
11967 * w32term.c: Comment fixes. Use renamed symbols.
11968 (fringe_bitmap_type): Renamed from bitmap_type.
11969 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
11970 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
11971 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
9f7e52b4 11972
048addec
JD
11973 * w32term.h: Comment fixes. Use renamed symbols.
11974 (fringes_extra): Renamed from flags_areas_extra.
11975 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
11976 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
11977 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
11978 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
11979 (FRAME_X_LEFT_FRINGE_WIDTH):
11980 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
11981 (FRAME_X_RIGHT_FRINGE_WIDTH):
11982 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
9f7e52b4 11983
048addec 11984 * widget.c: Use renamed symbols.
9f7e52b4 11985
048addec
JD
11986 * window.c: Comment fixes. Use renamed symbols.
11987 (coordinates-in-window-p): Doc fix.
fa336b91 11988
048addec 11989 * xdisp.c: Comment fixes. Use renamed symbols.
34e5d0af 11990
048addec 11991 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
9b784ab8 11992
048addec 11993 * xfns.c: Use renamed symbols.
89512fcd 11994
048addec
JD
11995 * xterm.c: Comment fixes. Use renamed symbols.
11996 (fringe_bitmap_type): Renamed from bitmap_type.
11997 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
11998 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
11999 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
89512fcd 12000
048addec
JD
12001 * xterm.h: Comment fixes. Use renamed symbols.
12002 (fringes_extra): Renamed from flags_areas_extra.
12003 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
12004 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
12005 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
12006 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
12007 (FRAME_X_LEFT_FRINGE_WIDTH):
12008 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
12009 (FRAME_X_RIGHT_FRINGE_WIDTH):
12010 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
12011
120122001-11-15 Jason Rumney <jasonr@gnu.org>
12013
12014 * w32menu.c (add-menu-item): Make help_echo and radio buttons
12015 work for most menu items. From David Ponce
12016 <david.ponce@wanadoo.fr>.
12017
120182001-11-15 Gerd Moellmann <gerd@gnu.org>
12019
12020 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
12021 Some x_set_* function expect to be called even if old and new
12022 value are equal.
12023
12024 * xdisp.c (build_desired_tool_bar_string): Accept zero
12025 tool_bar_button_relief.
12026
12027 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
12028
12029 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
12030
12031 * xterm.c (x_draw_bar_cursor): If the background color of the
12032 glyph under the cursor equals the frame's cursor color, use
12033 the glyph's foreground color for drawing the bar cursor.
12034
12035 * dispnew.c (direct_output_forward_char): Fix character/byte
12036 position comparison.
7d18891d 12037
048addec 120382001-11-15 Miles Bader <miles@gnu.org>
d2936d21 12039
048addec
JD
12040 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
12041 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
12042 Update arguments to find_field.
12043 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
12044 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
12045 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
12046 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
7d18891d 12047
048addec 120482001-11-14 Richard M. Stallman <rms@gnu.org>
7d18891d 12049
048addec 12050 * editfns.c (Fpropertize): Allow call with 1 arg.
7d18891d 12051
048addec
JD
12052 * dispextern.h (image_background, image_background_transparent):
12053 Conditionalize on HAVE_X_WINDOWS.
7d18891d 12054
048addec 120552001-11-13 Richard M. Stallman <rms@gnu.org>
7d18891d 12056
048addec 12057 * print.c (Fprin1_to_string): Doc fix.
7d18891d 12058
048addec 12059 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
7d18891d 12060
048addec 12061 * floatfns.c (Fceiling, Ffloor): Doc fixes.
7d18891d 12062
048addec 12063 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
7d18891d 12064
048addec 12065 * fileio.c (Ffile_accessible_directory_p): Doc fix.
7d18891d 12066
048addec 12067 * eval.c (syms_of_eval): Doc fix.
7d18891d 12068
048addec 12069 * coding.c (syms_of_coding): Doc fix.
7d18891d 12070
048addec 12071 * doc.c (Fsnarf_documentation): Doc fix.
7d18891d 12072
048addec 12073 * dispnew.c (syms_of_display): Doc fix.
9474c847 12074
048addec 12075 * category.c (Fget_unused_category): Doc fix.
9474c847 12076
048addec 12077 * buffer.c (syms_of_buffer): Doc fixes.
e3059a5d 12078
048addec 120792001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
e3059a5d 12080
048addec 12081 * print.c (prin1, print): Doc fix.
e3059a5d 12082
048addec 120832001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
b3700ae7 12084
048addec
JD
12085 * fontset.h: Remove declarations of variables
12086 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
b3700ae7 12087
048addec
JD
12088 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
12089 `Vclip_large_size_font'.
eae936e2 12090
048addec 120912001-11-13 Jason Rumney <jasonr@gnu.org>
4bb962be 12092
048addec 12093 * w32fns.c: Doc fix.
ddb67bdc 12094
048addec 120952001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3467c402 12096
048addec 12097 * xfaces.c (Fface_attributes_as_vector): Doc fix.
3467c402 12098
048addec 12099 * fns.c: Doc fix.
6e1b91d7 12100
048addec 12101 * emacs.c: Doc fix.
1c1d3d69 12102
048addec 12103 * coding.c: Doc fix.
1c1d3d69 12104
048addec
JD
12105 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
12106 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
12107 `new style' [w/`doc:' keyword].
b6f4c7ba 12108
048addec 121092001-11-12 Richard M. Stallman <rms@gnu.org>
b6f4c7ba 12110
048addec
JD
12111 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
12112 LeaveNotify events. Only FocusIn and FocusOut do that now.
12113 (x_display_and_set_cursor): Do display hollow cursors in active
12114 minibuffer windows when they are not selected.
b6f4c7ba 12115
048addec 121162001-11-12 Jason Rumney <jasonr@gnu.org>
a89f435d 12117
048addec
JD
12118 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
12119 * w32term.c: Change doc-string comments to `new style'.
12120 [w/`doc:' keyword]. Doc fixes.
a89f435d 12121
048addec
JD
12122 * w32fns.c: Don't define max.
12123 (Fx_open_connection): Only execute once.
a4cd0cd7 12124
048addec 121252001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
eafb659a 12126
048addec
JD
12127 * ccl.c: Change macros to use do-while block instead of if-else.
12128 Use braces to follow GNU Coding Standards.
eafb659a 12129
048addec 121302001-11-11 Richard M. Stallman <rms@gnu.org>
a4cd0cd7 12131
048addec 12132 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
a4cd0cd7 12133
048addec 12134 * lread.c (read_escape): Use end_of_file_error for reporting eof.
a4cd0cd7 12135
048addec
JD
12136 * insdel.c (replace_range): Use adjust_markers_for_replace
12137 instead of adjust_markers_for_delete and adjust_markers_for_insert.
a4cd0cd7 12138
048addec 12139 * intervals.h: Declare set_text_properties and set_text_properties_1.
a4cd0cd7 12140
048addec
JD
12141 * textprop.c (set_text_properties_1): New subroutine
12142 broken out of set_text_properties.
12143 (set_text_properties): Use set_text_properties_1.
91823618 12144
048addec
JD
12145 * intervals.c (graft_intervals_into_buffer):
12146 Use set_text_properties_1 to clear out properties.
91823618 12147
048addec
JD
12148 * search.c (Freplace_match): Use replace_range to insert
12149 and delete. Don't request property inheritance from
12150 surrounding text.
86928dfb 12151
048addec 121522001-11-10 Jason Rumney <jasonr@gnu.org>
86928dfb 12153
048addec
JD
12154 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
12155 vertical fonts. Allow them if face name is explicitly specified.
12156 Do not give up if we find a font that cannot be converted to an xlfd.
40ef1eda 12157
048addec 121582001-11-10 Gerd Moellmann <gerd@gnu.org>
ab8469eb 12159
048addec
JD
12160 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
12161 instead of malloc/free.
a78e0303 12162
048addec 121632001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
40ef1eda 12164
048addec
JD
12165 * xfaces.c (merge_face_vectors): Use braces to follow GNU
12166 Coding Standards.
12167 (Finternal_set_lisp_face_attribute): Likewise.
fabf4a91 12168
048addec 12169 * buffer.c (Fbury_buffer): Likewise.
0c99b139 12170
048addec 12171 * indent.c (current_column_1): Remove unused variable `prev_col'.
0c99b139 12172
048addec
JD
12173 * coding.c (encode_coding): Use precomputed value of `src'.
12174 (encode_coding): Remove unused variable `src_end'.
12175 (code_convert_region): Remove unused variables `count'.
830ddd77 12176
048addec 121772001-11-07 Jason Rumney <jasonr@gnu.org>
830ddd77 12178
048addec
JD
12179 * w32term.c (x_display_and_set_cursor): Do not move system caret
12180 if cursor_glyph is NULL.
55c6d645 12181
048addec 121822001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
55c6d645 12183
048addec 12184 * keymap.c (access_keymap): Fix compilation error.
5de38842 12185
048addec 121862001-11-07 Miles Bader <miles@gnu.org>
7a4564a4 12187
048addec 12188 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
5de38842 12189
048addec 121902001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4fa23df5 12191
048addec
JD
12192 * intervals.c (graft_intervals_into_buffer):
12193 Remove #ifdef'd-out code.
12194 (graft_intervals_into_buffer): Remove unused variable `middle'.
4fa23df5 12195
048addec
JD
12196 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
12197 code (eval-current-buffer).
12198 Change doc-string comments to `new style' [w/`doc:' keyword].
7a6a97d7 12199
048addec 122002001-11-06 Richard M. Stallman <rms@gnu.org>
c191d13c 12201
048addec 12202 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
7a6a97d7 12203
048addec 122042001-11-06 Stefan Monnier <monnier@cs.yale.edu>
44dc78e0 12205
048addec 12206 * lread.c (read1): Fix behavior with nested backquoting.
44dc78e0 12207
048addec
JD
12208 * keyboard.c (make_lispy_event): Check integerness and fix
12209 Lisp_Object/int mixup.
17893c65 12210
048addec 122112001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4d994a79 12212
048addec 12213 * fns.c (copy_hash_table): Remove unused variable `v'.
d5360cc7 12214
048addec
JD
12215 * fontset.c (fontset_font_pattern): Remove unused variable
12216 `family_registry'.
d5360cc7 12217
048addec 12218 * indent.c (current_column_1): Remove unused variable `prev_col'.
d5360cc7 12219
048addec 122202001-11-05 Richard M. Stallman <rms@gnu.org>
96238a5a 12221
048addec 12222 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
96238a5a 12223
048addec
JD
12224 * buffer.c (Fkill_buffer): Don't delete auto save file
12225 if buffer is modified.
d9d54213 12226
048addec 122272001-11-05 Andrew Innes <andrewi@gnu.org>
d9d54213 12228
048addec
JD
12229 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
12230 CHECK_NUMBER_CDR.
b116830b 12231
048addec 122322001-11-05 Richard M. Stallman <rms@gnu.org>
b116830b 12233
048addec 12234 * unexelf.c (unexec): Minor changes; clean up comments.
3297e2a1 12235
048addec 122362001-11-05 Sam Steingold <sds@gnu.org>
3297e2a1 12237
048addec 12238 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
6fb8339c 12239
048addec 122402001-11-05 Andreas Schwab <schwab@suse.de>
6fb8339c 12241
048addec 12242 * sound.c (sound_perror): Save errno from being clobbered.
7dd73b78 12243
048addec 122442001-11-05 Dale Hagglund <rdh@yottayotta.com>
7dd73b78 12245
048addec
JD
12246 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
12247 the program image directly.
982f6c7e 12248
048addec 122492001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d31053f9 12250
048addec 12251 * buffer.h (Fbuffer_local_value): Add prototype.
d31053f9 12252
048addec 122532001-11-04 Richard M. Stallman <rms@gnu.org>
d31053f9 12254
048addec
JD
12255 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
12256 and CHECK_BUFFER.
d31053f9 12257
048addec
JD
12258 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
12259 (record_char): Likewise.
d31053f9 12260
048addec
JD
12261 * keyboard.c (make_lispy_event): Don't insist a drag event must
12262 move to a different buffer position. Instead, check for moving at
12263 least double_click_fuzz.
982f6c7e 12264
048addec 12265 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
830047fd 12266
048addec 12267 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
b116830b 12268
048addec
JD
12269 * indent.c (current_column_1, Fmove_to_column): Separate the code
12270 for display-table glyphs from the code for buffer text, to fix
12271 bugs in the former.
830047fd 12272
048addec 122732001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
b116830b 12274
048addec
JD
12275 * buffer.c (Fbuffer_local_value): New function.
12276 (syms_of_buffer): Defsubr it.
2df5238c 12277
048addec
JD
12278 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
12279 value of `cursor-in-non-selected-windows'.
4e397688 12280
048addec
JD
12281 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
12282 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
12283 (syms_of_xdisp): Initialize it.
48b0f3ae 12284
048addec 122852001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2df5238c 12286
048addec 12287 * xfns.c (Fx_create_frame): Doc fix.
3ecaf7e5 12288
048addec
JD
12289 * coding.c: Change doc-string comments to `new style' [w/`doc:'
12290 keyword].
3ecaf7e5 12291
048addec
JD
12292 * eval.c (top_level_value, top_level_set): Remove commented and
12293 #ifdef'd-out code.
12294 (Fdefvar): Fix usage in doc-string.
3ecaf7e5 12295
048addec 122962001-11-03 Richard M. Stallman <rms@gnu.org>
3ecaf7e5 12297
048addec 12298 * xfns.c: Include unistd.h, if it exists.
8db2e33b 12299
048addec 12300 * editfns.c: Move the include of ctype.h after unistd.h.
8db2e33b 12301
048addec 12302 * gmalloc.c: Test BROKEN_PROTOTYPES.
aed29b97 12303
048addec 123042001-11-03 Ken Raeburn <raeburn@gnu.org>
aed29b97 12305
048addec
JD
12306 * lisp.h (CHECK_STRING_CAR): New macro.
12307 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
12308 treating XCAR and XCDR as lvalues.
12309 (openp): Use CHECK_STRING_CAR.
12310 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
aed29b97 12311
048addec 123122001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
6cb16f95 12313
048addec
JD
12314 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
12315 (SIGMASKTYPE): Define.
1b1acc13 12316
048addec 12317 * syssignal.h (sigunblock): Don't define if already defined.
020f9b38 12318
048addec 123192001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
020f9b38 12320
048addec
JD
12321 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
12322 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
12323 Fix typos in comments.
6cb16f95 12324
048addec
JD
12325 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
12326 and #ifdef'd-out code.
12327 Fix and reindent comments.
6cb16f95 12328
048addec 12329 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
6cb16f95 12330
048addec
JD
12331 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
12332 argument `i' in macros.
6cb16f95 12333
048addec
JD
12334 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
12335 `i' in macros.
7e9d3c2f 12336
048addec
JD
12337 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
12338 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
12339 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
12340 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
12341 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
12342 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
12343 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
12344 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
12345 in macros.
7e9d3c2f 12346
048addec
JD
12347 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
12348 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
12349 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
12350 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
12351 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
12352 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
12353 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
12354 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
12355 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
12356 (remove unused second argument).
7e9d3c2f 12357
048addec 123582001-11-02 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 12359
048addec
JD
12360 * syntax.c (describe_syntax): New wrapper.
12361 (Finternal_describe_syntax_value): Rename from describe_syntax.
12362 Don't insert space at front and \n at the end.
12363 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
e6bff182 12364
048addec
JD
12365 * regex.c (re_wctype): Try to fix some warnings.
12366 (regcomp, regexec): Don't forget the __restrict.
9ba48103 12367
048addec 123682001-11-02 Richard M. Stallman <rms@gnu.org>
9ba48103 12369
048addec 12370 * textprop.c (Fget_char_property): Doc fix.
9ba48103 12371
048addec 123722001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9ba48103 12373
048addec 12374 * process.c (Fstart_process): Add usage to doc-string.
c22e59e1 12375
048addec 12376 * data.c (Fsetq_default): Ditto.
c22e59e1 12377
048addec 12378 * callint.c (Finteractive): Ditto.
9271ed2c 12379
048addec 123802001-11-01 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 12381
048addec
JD
12382 * macros.c: Don't include keymap.h any more.
12383
123842001-11-01 Richard M. Stallman <rms@gnu.org>
12385
12386 * data.c (Fmake_local_variable): Doc fix.
12387
12388 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
12389 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
e6bff182 12390
048addec 12391 * keymap.c (Fdescribe_buffer_bindings): Print character property
9271ed2c
RS
12392 bindings along with or instead of the buffer local map.
12393 Make the overriding maps override what they should.
12394
f00691a3 123952001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8b8bd9c6
PJ
12396
12397 * window.c (grow_mini_window): Fix typo in comment.
12398
27188d11
GM
123992001-11-01 Gerd Moellmann <gerd@gnu.org>
12400
7b49b9d2
GM
12401 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
12402 (XTset_vertical_scroll_bar): Likewise.
12403
43f7c3ea
GM
12404 * xfns.c (x_build_heuristic_mask): Use four_corners_best
12405 instead of IMAGE_BACKGROUND.
c22e59e1 12406
b350c2e5
GM
12407 * xfns.c (four_corners_best): Reindent.
12408
c22e59e1 12409 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
27188d11
GM
12410 Handle :box so that it is possible to specify sexprs.
12411
bf00d461
EZ
124122001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
12413
12414 * s/hpux11.h: New file.
12415
f00691a3 124162001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e10df59 12417
2b209b97
PJ
12418 * emacs.c (USAGE1): Show command line option --no-window-system
12419 instead of --no-windows in usage.
12420 (standard_args): Rename --no-windows to --no-window-system.
12421 (bug_reporting_address): Follow Emacs coding conventions.
12422
9dbc9081
PJ
12423 * eval.c (Fcommandp): Doc fix.
12424 Change doc-string comments to `new style' [w/`doc:' keyword].
12425
4e10df59
PJ
12426 * frame.c (Fframe_live_p): Doc fix.
12427
12428 * buffer.c (selective-display-ellipses): Doc fix.
12429
dd387b25
GM
124302001-10-31 Gerd Moellmann <gerd@gnu.org>
12431
fe957e65
GM
12432 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
12433
dd387b25
GM
12434 * xfaces.c (realize_x_face): If C is not a single-byte character,
12435 set the face's colors_copied_bitwise_p instead of the defaulted_p
12436 members which have a different meaning.
12437 (free_face_colors): Do nothing for a face whose colors have been
12438 copied bitwise.
12439
c22e59e1 12440 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
dd387b25 12441
f00691a3 124422001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2e1280f8 12443
687784e8
PJ
12444 * marker.c, mocklisp.c: Change doc-string comments to `new style'
12445 [w/`doc:' keyword].
2e1280f8 12446
b9d9a9b9
GM
124472001-10-31 Gerd Moellmann <gerd@gnu.org>
12448
12449 * fns.c (require_unwind): Return Lisp_Object.
12450
f00691a3 124512001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
48400103 12452
fa1361cb
PJ
12453 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
12454 (last-input-char): Revert doc-string to be the same as the
12455 doc-string of `last-input-event'.
12456
6c465a15 12457 * xdisp.c: Fix typos in comments.
48400103 12458
eafa3196
GM
124592001-10-31 Gerd Moellmann <gerd@gnu.org>
12460
12461 * window.c (grow_mini_window): Handle case that the root
12462 window is already smaller than the nominal mininum height.
12463
747d3f2a
SM
124642001-10-30 Stefan Monnier <monnier@cs.yale.edu>
12465
bf9bb76f
SM
12466 * emacs.c (main): Don't call keys_of_macros any more.
12467
12468 * lisp.h (keys_of_macros): Remove.
12469
12470 * macros.c (keys_of_macros): Remove.
12471
747d3f2a
SM
12472 * xfaces.c (Fface_attribute_relative_p): Declare args.
12473
5e905a57
JR
124742001-10-30 Jason Rumney <jasonr@gnu.org>
12475
12476 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
12477 (enum_font_cb2): Ignore fonts with vertical orientation.
12478
3a426197
RS
124792001-10-30 Richard M. Stallman <rms@gnu.org>
12480
12481 * keyboard.c (Finput_pending_p): Doc fix.
12482
a742d646
GM
124832001-10-30 Gerd Moellmann <gerd@gnu.org>
12484
259cf6bc
GM
12485 * xterm.c (x_after_update_window_line): Don't run the code
12486 clearing in borders for rows whose visible height is 0.
12487
3f99f948
GM
12488 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
12489 resized_p flag is set. If not set, use the much less flickering
12490 method previously used.
12491
12492 * dispnew.c (change_frame_size_1): Set frame's resized_p.
12493
12494 * frame.h (struct frame) <resized_p>: New member.
12495
b4a3be43
GM
12496 * lread.c (to_multibyte): Ensure read_buffer is at least twice
12497 as large as the number of bytes to convert.
747d3f2a 12498
a742d646
GM
12499 * lread.c (to_multibyte): New function.
12500 (read1): Use it.
12501
cacbb9e9
EZ
125022001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
12503
12504 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
12505
99cb6b2f
GM
125062001-10-30 Gerd Moellmann <gerd@gnu.org>
12507
327f42ee 12508 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
747d3f2a
SM
12509 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
12510 if the row's fill_line_p is set and drawing the last glyph with
12511 DRAW_IMAGE_{RAISED,SUNKEN}.
327f42ee 12512
99cb6b2f
GM
12513 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
12514
8e8223e2
SM
125152001-10-29 Stefan Monnier <monnier@cs.yale.edu>
12516
12517 * xmenu.c: Include coding.h and charset.h.
12518 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
12519 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
12520 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
12521 Explicitly set wv->help. Use `TRUE' rather than `True'.
12522 (menu_help_callback): Use empty_string.
12523
12524 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
12525 (Fx_popup_dialog): Explicitly init f.
12526 (w32_menu_display_help): Use empty_string.
12527
4d083a8f
RS
125282001-10-29 Richard M. Stallman <rms@gnu.org>
12529
b2304472
RS
12530 * fns.c (Frequire): Detect recursive try to require the same
12531 feature 3 or more levels deep, and get error.
12532 (require_unwind): New subroutine.
12533 (require_nesting_list): New variable.
12534 (syms_of_fns): Init and staticpro it.
12535
4d083a8f
RS
12536 * print.c (print_object): Clarify indication of insertion type.
12537
2fe41216
EZ
125382001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
12539
90480000
EZ
12540 * coding.c (syms_of_coding): Document that locale-coding-system is
12541 used for decoding input on X.
12542
2fe41216
EZ
12543 * window.c (Fscroll_left, Fscroll_right): Doc fix.
12544
f00691a3 125452001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
74e79967
PJ
12546
12547 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
12548 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
12549
60ebcfe8
GM
125502001-10-29 Gerd Moellmann <gerd@gnu.org>
12551
9a7bdceb
GM
12552 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
12553 use NO_CURSOR if cursor_in_non_selected_windows is false.
12554
3f08fcd2
GM
12555 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
12556 the slant attribute if FRAME is t.
12557
0ccfdad2
GM
12558 * xfns.c (x_set_internal_border_width): Set frame garbaged
12559 when X window doesn't exist yet.
12560
ef253080
GM
12561 * xterm.c (x_after_update_window_line): Clear internal border
12562 in different circumstances.
b116830b 12563
60ebcfe8
GM
12564 * xterm.c (XTread_socket) <KeyPress>: Don't use
12565 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
12566 <handa@etl.go.jp>.
12567
73d25f9c
EZ
125682001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
12569
12570 * m/ibms390.h: New file. From Adam Thornton
12571 <athornton@sinenomine.net>.
12572
cac1daf0
GM
125732001-10-28 Gerd Moellmann <gerd@gnu.org>
12574
053b3256 12575 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
b116830b 12576
cac1daf0
GM
12577 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
12578 a loop counter.
12579
f00691a3 125802001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13b1a09c 12581
186486eb
PJ
12582 * emacs.c: Use argv[0] instead of emacs when -t was specified.
12583
4707d2d0
PJ
12584 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
12585 keyword].
12586 Fix typos in comments.
b116830b 12587
d883731c
PJ
12588 * emacs.c (bug_reporting_address): New function.
12589 Use it when displaying usage message.
12590
04012254
PJ
12591 * minibuf.c (read_minibuf): Remove unused external declaration of
12592 variable `Qread_only'.
12593
13b1a09c
PJ
12594 * keymap.c (access_keymap): Remove unused variable `charset'.
12595
5bbf4378
MB
125962001-10-28 Miles Bader <miles@gnu.org>
12597
12598 * xfaces.c (merge_face_heights): Handle TO being relative as well.
12599 Remove #ifdef'd-out code.
12600 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
12601 (syms_of_xfaces): Initialize them.
12602
1ce1e4ee
JR
126032001-10-27 Jason Rumney <jasonr@gnu.org>
12604
12605 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
12606 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
12607 position using the system caret.
12608
12609 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
12610 (w32_system_caret_height, w32_system_caret_x)
12611 (w32_system_caret_y): New variables for tracking system caret.
12612 (w32_initialize): Initialize them.
c2d53558 12613 (x_display_and_set_cursor): Make system caret follow the active cursor.
1ce1e4ee 12614
c2d53558
SM
12615 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
12616 New messages types.
1ce1e4ee
JR
12617
12618 * w32term.c (note_mouse_highlight): Clear old help_echo.
12619
f00691a3 126202001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e30ce42 12621
bb4600a4
PJ
12622 * xterm.c: Fix typo in a comment.
12623
7db35a48
PJ
12624 * emacs.c: Fix typos in comments.
12625 Remove unnecessary spaces.
12626 Change doc-string comments to `new style' [w/`doc:' keyword].
12627 (USAGE2): Fix typos in usage string.
12628
a7248e4f
PJ
12629 * xterm.c: Fix typo in a comment.
12630
4e30ce42
PJ
12631 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
12632 emacs.c.
12633
62725a92
GM
126342001-10-27 Gerd Moellmann <gerd@gnu.org>
12635
798dbe1f 12636 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
c2d53558 12637 instead of 1/2 line_height in the heuristic for skipping
798dbe1f
GM
12638 farther backward when target_y was not reached.
12639
62725a92
GM
12640 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
12641 Display errno only if non-zero.
12642 (sound_warning): New function.
12643 (vox_configure): Don't treat failing to set sample rate as error.
12644 (various places): Improve error messages.
12645
d4e34d24
EZ
126462001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
12647
944e6f60
EZ
12648 * fileio.c (Faccess_file): Run the argument filename through
12649 Fexpand_file_name, before using it.
12650
d4e34d24
EZ
12651 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
12652 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
12653
38d2af0c
GM
126542001-10-26 Gerd Moellmann <gerd@gnu.org>
12655
da80a8d5
GM
12656 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
12657
38d2af0c
GM
12658 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
12659 Fix clearing in the case of scroll bars on the right.
c2d53558 12660
45de4a6f 126612001-10-26 Juanma Barranquero <lektu@terra.es>
56f508dd
EZ
12662
12663 * w32gui.h (XImage): Add a dummy typedef.
12664
fbd5ceb2
GM
126652001-10-26 Gerd Moellmann <gerd@gnu.org>
12666
c2d53558 12667 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
fbd5ceb2 12668
b23236fb
EZ
126692001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
12670
12671 * frame.c (Fframe_parameter): Fix last change.
12672
5d991fc4
EZ
12673 * fileio.c: Revert last change (which removed old commented-out
12674 version of expand-file-name). Add a comment that explains why
12675 this old version should not be removed.
12676
879eadc3
GM
126772001-10-25 Gerd Moellmann <gerd@gnu.org>
12678
75700ff2
GM
12679 * frame.c (Fframe_parameter): Fix a bug whereby some
12680 ``artificial'' frame parameters, like `minibuffer' were not
12681 obtained by calling Fframe_parameters.
12682
dfe92a6a
GM
12683 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
12684 cursor differently.
12685
879eadc3
GM
12686 * xdisp.c (move_it_vertically_backward): Compute line height
12687 differently. Add heuristic to try to be more compatible to 20.x.
12688
e1010ebe
SM
126892001-10-25 Stefan Monnier <monnier@cs.yale.edu>
12690
d73a471b
SM
12691 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
12692
d6da5a06
GM
12693 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
12694 boolean.
e1010ebe 12695
f66bd220
MB
126962001-10-25 Miles Bader <miles@gnu.org>
12697
12698 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
12699 BG is a pointer to a structure, not a structure.
12700 (gif_format, png_format): Add missing commas.
12701
d436d538
RS
127022001-10-24 Richard M. Stallman <rms@gnu.org>
12703
12704 * xfaces.c (Fface_attributes_as_vector): New function.
c2d53558 12705 (syms_of_xfaces): Defsubr it.
d436d538 12706
f00691a3 127072001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
075c507b
PJ
12708
12709 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
12710 variable `area'.
12711
f00691a3 127122001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d492b584 12713
c2d53558 12714 * search.c (scan_newline): Remove unused variable `selective_display'.
d492b584 12715
e2a57b34
MB
127162001-10-25 Miles Bader <miles@gnu.org>
12717
12718 * dispextern.h (struct image): Add `background',
12719 `background_valid', and `background_transparent' fields.
12720 (image_background, image_background_transparent): New declarations.
12721 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
12722 * xfns.c (image_background, image_background_transparent)
12723 (four_corners_best): New functions.
c2d53558 12724 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
e2a57b34
MB
12725 (gs_format): Add `:background' entry.
12726 (lookup_image): Set IMG's background color if specified.
12727 (pbm_load, xbm_load_image, png_load): Set IMG's background field
12728 when appropriate.
12729 (x_clear_image_1): Reset `background_valid' and
12730 `background_transparent_valid' fields.
12731 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
12732 calculating it here. Set IMG's background_transparent field.
12733 (enum xpm_keyword_index): Add XPM_BACKGROUND.
12734 (enum png_keyword_index): Add PNG_BACKGROUND.
12735 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
12736 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
12737 (enum gif_keyword_index): Add GIF_BACKGROUND.
12738 (enum gs_keyword_index): Add GS_BACKGROUND.
c2d53558 12739 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
e2a57b34
MB
12740 Pre-calculate image background color where necessary.
12741 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
12742 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
12743 color to use for image glyph reliefs.
12744
b547b6e8
GM
127452001-10-24 Gerd Moellmann <gerd@gnu.org>
12746
d9e3b8c6
GM
12747 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
12748 in full-width rows.
c2d53558 12749
b547b6e8
GM
12750 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
12751 Fix clearing of area not covered by scroll bar.
12752
f00691a3 127532001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2beb36f9
PJ
12754
12755 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
12756 and `real_start'.
c2d53558 12757 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
2beb36f9
PJ
12758 (glyph_rect): Remove unused variable `area'.
12759
76cb5e06
GM
127602001-10-24 Gerd Moellmann <gerd@gnu.org>
12761
bdbdebff 12762 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
c2d53558
SM
12763
12764 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
12765 (row_containing_pos): Take additional argument DY.
12766 Treat rows ending in middle of char differently.
62e33982
GM
12767 (display_line): Handle tabs on window systems differently.
12768
12769 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
12770 with additional argument.
12771
12772 * dispextern.h (row_containing_pos): Adjust prototype.
12773
76cb5e06
GM
12774 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
12775 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
12776 (try_window_id, try_window_reusing_current_matrix)
12777 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
6c465a15 12778 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
76cb5e06 12779
f00691a3 127802001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
996fee11 12781
c9e60620
PJ
12782 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
12783 gnuemacs).
12784 (HAVE_BOXES): Fix typo in comment.
12785 (push_menu_pane): Fix typo in comment.
12786
3b552d56
PJ
12787 * xdisp.c: (display_prop_string_p): Remove unused local declaration
12788 of `Qwhen'.
12789 (single_display_prop_string_p): Remove unused local declarations
12790 of `Qwhen' and `Qmargin'.
12791 (string_buffer_position): Remove unused variable `around'.
12792 (store_frame_title): Remove unused variable `width'.
12793
15c565ac
PJ
12794 * window.c: Don't define max.
12795 (coordinates_in_window): Remove unused variable `uy'.
12796
a8818eb9
PJ
12797 * widget.c: Don't define max.
12798
996fee11
PJ
12799 * process.c: Don't define max.
12800 (create_process): Remove unused variable `buffer'.
12801
496e1a5b
GM
128022001-10-23 Gerd Moellmann <gerd@gnu.org>
12803
c2d53558 12804 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
496e1a5b 12805
5905ae8b
EZ
128062001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
12807
12808 * xfaces.c (Finternal_set_lisp_face_attribute)
12809 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
12810 frame is on a windowed display.
12811
24db49fb
GM
128122001-10-23 Gerd Moellmann <gerd@gnu.org>
12813
c2d53558
SM
12814 * dispnew.c (sync_window_with_frame_matrix_rows):
12815 Fix handling of windows which aren't full-width, fix handling
c51488cd
GM
12816 of marginal areas.
12817
c2d53558 12818 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
24db49fb 12819
f0487f05
EZ
128202001-10-23 Andreas Schwab <schwab@suse.de>
12821
12822 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
12823 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
12824
f0a48a01
GM
128252001-10-23 Gerd Moellmann <gerd@gnu.org>
12826
c2d53558 12827 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
f0a48a01
GM
12828 REAL_END. Notice if cursor gets overwritten.
12829 (notice_overwritten_cursor): Take X positions as parameters.
12830 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
12831 around call to x_draw_glyphs.
12832
f00691a3 128332001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
a50a10a0 12834
fc11dff0
PJ
12835 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
12836 instead of C) and usage.
a50a10a0 12837
fc11dff0
PJ
12838 * editfns.c (char-to-string): Fix argument names (use CHAR instead
12839 of C) and usage.
a50a10a0
PJ
12840
12841 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
12842 `left', `max_width' and `max_height'.
12843
8738febd
GM
128442001-10-23 Gerd Moellmann <gerd@gnu.org>
12845
12846 * xdisp.c (display_line): For a tab continued to the next line,
12847 set row's ends_in_middle_of_char_p.
12848
653c329b
GM
128492001-10-22 Gerd Moellmann <gerd@gnu.org>
12850
12851 * xdisp.c (display_line): Fix computation of continuation lines
12852 width for TABs.
12853
f00691a3 128542001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
f958c5ac 12855
7ba51063
PJ
12856 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
12857 `Qlaplace'.
12858
f958c5ac
PJ
12859 * fileio.c: Remove unused code.
12860
eb360291
MB
128612001-10-22 Miles Bader <miles@gnu.org>
12862
12863 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
12864 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
12865 Remove `DOC_STRINGS_IN_COMMENTS' cases.
12866
98515cf0
JR
128672001-10-21 Jason Rumney <jasonr@gnu.org>
12868
12869 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
12870
93026d88
EZ
128712001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
12872
12873 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
12874 (Finsert_string): Avoid the multi-line string literals warning.
12875
c9a95b79
MB
128762001-10-22 Miles Bader <miles@gnu.org>
12877
12878 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
12879 (Fdocumentation): Don't use it.
12880 (syms_of_doc): Don't initialize it.
12881
12882 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
12883 * print.c (Fwith_output_to_temp_buffer): Likewise.
12884 * window.c (Fsave_window_excursion): Likewise.
c2d53558 12885 * editfns.c (Fsave_excursion, Fsave_current_buffer)
c9a95b79 12886 (Fsave_restriction): Likewise.
c2d53558
SM
12887 * eval.c (Frun_hooks, Frun_hook_with_args)
12888 (Frun_hook_with_args_until_failure)
12889 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
12890 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
12891 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
c9a95b79
MB
12892 (Funwind_protect, Fcondition_case): Likewise.
12893 * coding.c (Ffind_operation_coding_system): Likewise.
12894 * keyboard.c (Ftrack_mouse): Likewise.
12895
a3b10252
MB
128962001-10-21 Miles Bader <miles@gnu.org>
12897
c2d53558 12898 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
a3b10252
MB
12899 (Fmake_hash_table): Add usage: string to doc string.
12900 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
c2d53558 12901 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
a3b10252
MB
12902 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
12903 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
12904 (Fml_prefix_argument_loop): Likewise.
12905
f00691a3 129062001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c6f73eec 12907
c2d53558 12908 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
888ebd13 12909
c6f73eec
PJ
12910 * sysdep.c (init_sys_modes): Change doc-string comments to `new
12911 style' [w/`doc:' keyword].
12912
12913 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
12914 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
12915 comments to `new style' [w/`doc:' keyword].
12916
3cf3436e
JR
129172001-10-21 Jason Rumney <jasonr@gnu.org>
12918
12919 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
12920
c169b8f1
JR
12921 * w32term.c (remember_mouse_glyph): New function.
12922 (w32_mouse_position): Use it.
12923 (note_mouse_movement): If the mouse moved off the glyph, remember
12924 its new position.
c2d53558 12925
4fdd691b
JR
12926 * w32term.h (struct w32_output): Correct spelling of x_compatible.
12927 (w32_display_info): Add mouse_face_overlay.
12928
c169b8f1
JR
12929 * w32term.c (notice_overwritten_cursor): Renamed from
12930 note_overwritten_text_cursor. Rewritten to take glyph widths into
12931 account.
12932 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
12933 (fast_find_string_pos): New function.
12934 (fast_find_position): Return the correct vpos. Add parameter
12935 STOP. In the final row, stop before glyphs having STOP as object.
12936 Don't consider glyphs that are not from a buffer.
12937 (fast_find_position) [0]: Add a presumably more correct version
12938 for after 21.1.
12939 (expose_window_tree, expose_frame): Don't compute intersections here.
12940 (expose_window): Do it here instead.
12941 (expose_window_tree, expose_window, expose_line): Return 1 when
12942 overwriting mouse-face.
12943 (expose_window): If W is the window currently being updated, mark
12944 the frame garbaged.
12945 (expose_frame): If mouse-face was overwritten, redo it.
12946 (x_use_underline_position_properties): New variable.
12947 (syms_of_xterm): DEFVAR_BOOL it.
12948 (x_draw_glyph_string): Add comment to use it in future.
12949 (x_draw_glyph_string): Restore clipping after drawing box.
12950 Fix a computation of the underline position.
12951 (w32_get_glyph_string_clip_rect): Minor cleanup.
12952 (x_fill_stretch_glyph_string): Remove an assertion.
12953 (x_produce_glyphs): Don't convert multibyte characters
12954 to unibyte characters in unibyte buffers.
12955 (cursor_in_mouse_face_p): New function.
12956 (x_draw_stretch_glyph_string): Use it to choose a different GC
12957 when drawing a cursor within highlighted text. Don't draw
12958 background again if it has already been drawn.
12959 (x_draw_glyph_string_box): Don't draw a full-width
12960 box just because the glyph row's full_width_p flag is set.
12961 (x_draw_glyphs): Fix computation of rightmost x for
12962 full-width rows.
12963 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
12964 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
12965 change bottom shadow accordingly. Some cleanup.
12966 (x_update_window_end): Handle overwritten mouse face
12967 also for tool bar windows.
12968 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
12969 DRAW is DRAW_IMAGE_RAISED.
12970 (clear_mouse_face): Return 1 if text with mouse face was
2c568af5
SM
12971 actually redrawn. Make the function static.
12972 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
c169b8f1
JR
12973 optimize away highlighting if we pass over that same overlay again.
12974 (note_mouse_highlight): Call mouse_face_overlay_overlaps
12975 to detect a case where we have to highlight a different region
12976 despite not having left the currently highlighted region.
12977 Set mouse_face_overlay in the x_display_info. Avoid changing the
12978 mouse pointer shape when show_mouse_face has already done it, or
12979 there is no need. Handle mouse-face and help-echo in strings.
12980 (glyph_rect): New function.
12981 (w32_mouse_position): Use it to raise the threshold for mouse
12982 movement event generation.
12983 (w32_initialize_display_info): Initialize the x_display_info's
12984 mouse_face_overlay.
12985 (w32_set_vertical_scroll_bar): Don't clear a zero height
12986 or width area.
12987 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
12988 a widget to zero height.
12989
3cf3436e 12990 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
4fdd691b 12991 Protect unibyte strings created by replacing their multibyte
3cf3436e
JR
12992 equivalents in menu_items.
12993 (w32_menu_show): Don't overwrite an item's name with its key
12994 description in case the description is a multibyte string.
12995 (single_submenu): Some cleanup.
12996
12997 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
12998 (postprocess_image): New function.
12999 (lookup_image): Call it for all image types except PostScript.
13000 (x_kill_gs_process): Call postprocess_image.
13001 (tiff_error_handler, tiff_warning_handler): New functions.
13002 (tiff_load): Install them as handlers.
13003 (x_kill_gs_process): Recognize if someone has cleared the image
13004 cache under us.
13005 (valid_image_p): Protect better against invalid image
13006 specifications. Previous code could signal an error.
13007 (Fx_hide_tip, Fshow_tip): Doc fix.
13008 (Fv_max_tooltip_size): New variable.
13009 (syns_of_xfns): DEFVAR_LISP it.
13010 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
13011 window buffer to *tip* right after creating the frame. Set frame's
13012 window_width. Use a maximum tooltip size specified by
13013 Vx_max_tooltip_size, if that has valid contents.
13014 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
13015 Make sure the tooltip is completely visible.
13016 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
13017 (Fx_create_frame): Adjust the frame's height for presence
13018 of the tool bar before calling x_figure_window_size.
13019 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
13020 when the window gets smaller.
13021 (x_set_foreground_color): Set frame's cursor_pixel.
13022 (x_set_foreground_color, x_set_background_color): Cleaned up.
13023 (x_set_font): Handle case of x_new_fontset returning the same name
13024 as before, although there was a change in fontsets.
13025
386ca361
MB
130262001-10-21 Miles Bader <miles@gnu.org>
13027
c2d53558 13028 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
386ca361
MB
13029 (Flogxor): Add usage: string to doc string.
13030 * charset.c (Fstring): Likewise.
13031 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
13032 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
13033
f00691a3 130342001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14ff1ee0 13035
03be2694
PJ
13036 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
13037
13038 * alloc.c: Reindent DEFUNs with doc: keywords.
13039
13040 * abbrev.c (Finsert_abbrev_table_description): Reindent.
13041
14ff1ee0
PJ
13042 * frame.c: Change doc-string comments to `new style' [w/`doc:'
13043 keyword].
13044
2f147815 13045See ChangeLog.9 for earlier changes.
6922b018
KH
13046
13047;; Local Variables:
49b3bd82 13048;; coding: iso-2022-7bit
6922b018 13049;; End:
2a34a036 13050
2f147815 13051 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
2a34a036
GM
13052 Copying and distribution of this file, with or without modification,
13053 are permitted provided the copyright notice and this notice are preserved.
ab5796a9
MB
13054
13055;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4