]> code.delx.au - gnu-emacs/blob - src/ChangeLog
Fix prev change.
[gnu-emacs] / src / ChangeLog
1 2005-10-18 Chong Yidong <cyd@stupidchicken.com>
2
3 * image.c (Vmax_image_size): New variable.
4 (check_image_size): New function.
5 (xbm_read_bitmap_data, pbm_load, png_load, jpeg_load, tiff_load)
6 (gif_load, gs_load): Use it.
7 (lookup_image): Try loading again if previous load failed.
8 (xbm_read_bitmap_data): Add a new argument, a pointer to the frame
9 to display in, NULL if none.
10 (xbm_load_image, xbm_file_p): Pass xbm_read_bitmap_data the new
11 argument.
12
13 2005-10-18 Richard M. Stallman <rms@gnu.org>
14
15 * search.c (Fstring_match): Doc fix.
16
17 2005-10-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18
19 * macterm.c (note_mouse_movement): Use PtInRect.
20 (XTread_socket): Also ignore mouse motion just before a button
21 release event. Don't process button release event when mouse is
22 not grabbed.
23
24 2005-10-16 Masatake YAMATO <jet@gyve.org>
25
26 * minibuf.c (Fdisplay_completion_list): Add new optional
27 argument COMMON_SUBSTRING. Bind `completion-common-substring'
28 to the optional argument during running `completion-setup-hook'.
29
30 2005-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
31
32 * mac.c [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp):
33 Allow nil as argument.
34 [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Regard nil
35 for encoding arguments as UTF-16 in native byte order, no BOM.
36
37 * macfns.c (Fx_create_frame): Add debugging code.
38 (Fx_show_tip): Set frame pixel width and height.
39
40 * macterm.c (MAC_WINDOW_NORMAL_GC): Remove macro.
41 (FRAME_NORMAL_GC): New macro.
42 (mac_draw_line, mac_clear_area, mac_clear_window)
43 (mac_fill_rectangle, mac_draw_string, mac_draw_string_16)
44 (mac_draw_image_string, mac_draw_image_string_16): Rename from
45 XDrawLine, XClearArea, XClearWindow, XFillRectangle, XDrawString,
46 XDrawString16, XDrawImageString, and XDrawImageString16, respectively.
47 All uses changed.
48 (mac_draw_line, mac_erase_rectangle, mac_clear_area)
49 (mac_clear_window, mac_draw_bitmap, mac_draw_rectangle)
50 (mac_invert_rectangle, mac_draw_string_common, mac_draw_string)
51 (mac_draw_string_16, mac_draw_image_string)
52 (mac_draw_image_string_16, mac_copy_area, mac_copy_area_with_mask)
53 (mac_scroll_area): Drawing functions now take frame as destination.
54 All uses changed.
55 (mac_draw_string_common): Get port height with FRAME_PIXEL_HEIGHT.
56 (x_draw_fringe_bitmap): Set clipping area in face->gc.
57
58 * macterm.h (mac_clear_area): Add extern.
59
60 2005-10-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
61
62 * macterm.c (note_mouse_movement, XTread_socket): Apply 2005-10-14
63 changes for xterm.c.
64
65 * w32term.c (note_mouse_movement, w32_read_socket): Likewise.
66
67 2005-10-14 Kenichi Handa <handa@m17n.org>
68
69 * search.c (search_buffer): Give up BM search on case-fold-search
70 if one of a target character has a case-equivalence of different
71 charset even if that target charcter is an ASCII.
72
73 * casefiddle.c (casify_object): Fix for the case that case
74 conversion change the byte length.
75
76 2005-10-14 Kim F. Storm <storm@cua.dk>
77
78 * xterm.c (note_mouse_movement): Return 1 if mouse moved; 0 otherwise.
79 (handle_one_xevent): Only clear help_echo_string; restore it if
80 note_mouse_movement didn't record any mouse movement.
81
82 * xdisp.c (pos_visible_p): Convert w->hscroll to pixels before use.
83 (remember_mouse_glyph): Clear RECT if mouse is over an image glyph.
84
85 * keyboard.c (make_lispy_position): Adjust wx for left margin if ON_TEXT.
86 (Fposn_at_x_y): Fix calculation of x coordinate.
87 (Fposn_at_point): Return nil if point is hscrolled out of view.
88
89 2005-10-13 Andreas Schwab <schwab@suse.de>
90
91 * sysdep.c (request_sigio, unrequest_sigio): Do nothing in
92 non-interactive mode.
93
94 2005-10-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
95
96 * xterm.c, w32term.c, macterm.c (note_mouse_movement): Undo last change.
97
98 2005-10-12 Kim F. Storm <storm@cua.dk>
99
100 * xterm.c (handle_one_xevent): Clear last_mouse_glyph on mouse up/down.
101
102 2005-10-12 Romain Francoise <romain@orebokech.com>
103
104 * buffer.c (init_buffer): Rename `rc' to `len' for clarity.
105
106 2005-10-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
107
108 * xdisp.c (remember_mouse_glyph): Use MATRIX_BOTTOM_TEXT_ROW to
109 get end of text rows. Obtain header-line/mode-line rows directly.
110
111 * xterm.c, w32term.c, macterm.c (note_mouse_movement): Restore
112 help_echo_string if mouse is moved inside last_mouse_glyph.
113
114 2005-10-12 Kim F. Storm <storm@cua.dk>
115
116 * xdisp.c (remember_mouse_glyph): New generic version based on
117 glyph_rect and remember_mouse_glyph from xterm.c enhanced to
118 properly handle all different window areas.
119
120 * dispextern.h (remember_mouse_glyph): Add prototype.
121
122 * xterm.c (glyph_rect, remember_mouse_glyph): Remove X versions.
123 (note_mouse_movement, XTmouse_position): Use generic
124 remember_mouse_glyph, add last_mouse_glyph arg.
125
126 * w32term.c (note_mouse_movement): Fix last_mouse_glyph check.
127 (glyph_rect, remember_mouse_glyph): Remove w32 specific versions.
128 (note_mouse_movement, w32_mouse_position): Use generic
129 remember_mouse_glyph, add last_mouse_glyph arg.
130
131 * macterm.c (note_mouse_movement): Add call to remember_mouse_glyph.
132 (glyph_rect, remember_mouse_glyph): Remove mac specific versions.
133 (XTmouse_position): Adapt to use generic remember_mouse_glyph
134 instead of pixel_to_glyph_coords.
135
136 * window.c (coordinates_in_window): Fix x position for ON_RIGHT_MARGIN.
137 Fix x position for ON_TEXT when left margin width > 0.
138
139 2005-10-11 Kim F. Storm <storm@cua.dk>
140
141 * window.c (coordinates_in_window): Fix y position for ON_SCROLL_BAR.
142
143 * keyboard.c (make_lispy_position): Fix buffer calculations for
144 mouse click or movement in right fringe and the margins.
145
146 2005-10-11 Juanma Barranquero <lekktu@gmail.com>
147
148 * image.c (fn_jpeg_stdio_src): Don't define it.
149 (init_jpeg_functions): Don't initialize `fn_jpeg_stdio_src'.
150 (our_common_init_source): Rename from `our_init_source'.
151 (our_common_term_source): Rename from `our_term_source'.
152 (our_memory_fill_input_buffer): Rename from
153 `our_fill_input_buffer'.
154 (our_memory_skip_input_data): Rename from `our_skip_input_data'.
155 (jpeg_memory_src): Use the new names.
156 (struct jpeg_stdio_mgr): New struct.
157 (JPEG_STDIO_BUFFER_SIZE): New constant.
158 (our_stdio_fill_input_buffer, our_stdio_skip_input_data)
159 (jpeg_file_src): New functions.
160 (jpeg_load): Use `jpeg_file_src' instead of `fn_jpeg_stdio_src'.
161
162 2005-10-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
163
164 * macterm.c (PER_CHAR_METRIC): Remove unused macro.
165 (fm_font_family_alist): New variable.
166 (syms_of_macterm): Initialize and staticpro it.
167 (decode_mac_font_name): Replace '-' in family name with '_' if it
168 occurs just once. Lower family name.
169 (parse_x_font_name): Rename from x_font_name_to_mac_font_name.
170 All uses changed. Remove argument MF and code conversion for it.
171 Add argument SIZE. Rename argument MF_DECODED to FAMILY, and CS
172 to CHARSET. Parse font size. Lower family name. Return integer
173 value for status of parsing.
174 (init_font_name_table) [USE_ATSUI]: Use decode_mac_font_name.
175 Don't use Fdowncase because family name is already lowered by
176 decode_mac_font_name.
177 (init_font_name_table): Always call decode_mac_font_name. Add
178 pair of family name and its reference to fm_font_family_alist.
179 (mac_clear_font_name_table): Clear fm_font_family_alist.
180 (XLoadQueryFont): Move font size parsing part to parse_x_font_name.
181 Lookup fm_font_family_alist to get font family reference.
182 (XLoadQueryFont) [USE_ATSUI]: Don't use Fdowncase because family
183 name is already lowered by parse_x_font_name.
184
185 2005-10-11 Kim F. Storm <storm@cua.dk>
186
187 * xterm.c (glyph_rect): Return 0 if position is outside text area.
188
189 * keyboard.c (make_lispy_position): Fix buffer position calculation for
190 mouse click or movement in fringe.
191
192 2005-10-10 Jason Rumney <jasonr@gnu.org>
193
194 * xterm.c (remember_mouse_glyph): New function.
195 (note_mouse_movement): Use it to remember the current glyph if changed.
196 (XTmouse_position): Fix calculation of fake glyph under mouse.
197 Move code to calculate glyph under mouse into remember_mouse_glyph.
198
199 2005-10-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
200
201 * emacs.c (USAGE3, standard_args): -nb => -nbi.
202
203 2005-10-10 Juanma Barranquero <lekktu@gmail.com>
204
205 * frame.c (Fredirect_frame_focus): Fix typos in docstring.
206 (next_frame, prev_frame, set_term_frame_name): Make static.
207
208 * window.c (Fwindow_tree): Fix spelling.
209
210 2005-10-09 Romain Francoise <romain@orebokech.com>
211
212 * window.c (Fwindow_end): Don't try to redisplay if non-interactive.
213
214 2005-10-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
215
216 * emacs.c (standard_args): Remove options -i, -itype, --icon-type.
217 Add options -nb, --no-bitmap-icon.
218
219 * xfns.c (Fx_create_frame): Make bitmapIcon have default on.
220
221 2005-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
222
223 * macgui.h (MAX_CLIP_RECTS): New define.
224 (struct _XGC): New member clip_region.
225 (struct _XGC) [MAC_OSX && USE_ATSUI]: New members n_clip_rects and
226 clip_rects.
227
228 * macterm.c (GC_CLIP_REGION): New macro.
229 (saved_port_clip_region): New variable.
230 (mac_begin_clip, mac_end_clip): New functions.
231 (XDrawLine, mac_erase_rectangle, mac_draw_bitmap, XFillRectangle)
232 (mac_draw_rectangle, mac_draw_string_common, mac_copy_area)
233 (mac_copy_area_with_mask, mac_scroll_area): Use them.
234 (mac_set_clip_rectangle, mac_reset_clipping): Remove functions.
235 [USE_ATSUI] (atsu_get_text_layout_with_text_ptr)
236 [MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Specify kATSLineFractDisable.
237 (mac_draw_string_common) [MAC_OSX && USE_ATSUI]: Clip to clipping
238 rectangles stored in gc.
239 (XFreeGC): Dispose of clipping region.
240 (mac_set_clip_rectangles, mac_reset_clip_rectangles): New functions.
241 (x_draw_fringe_bitmap, x_set_glyph_string_clipping)
242 (x_draw_relief_rect, x_draw_box_rect, x_draw_stretch_glyph_string)
243 (x_draw_glyph_string, x_clip_to_row, x_draw_hollow_cursor)
244 (x_draw_bar_cursor): Use them.
245 (x_set_glyph_string_clipping): Use get_glyph_string_clip_rects to
246 get multiple clipping rectangles.
247
248 * macterm.h (mac_term_init): Add types to extern.
249 (struct mac_output): Remove members mWP and pending_menu_activation.
250 Put members scroll_bar_foreground_pixel and
251 scroll_bar_background_pixel in #if 0.
252 (FRAME_MAC_WINDOW, FRAME_X_WINDOW): Use window_desc.
253
254 * xfaces.c (x_create_gc, x_free_gc) [MAC_OS]: Add BLOCK_INPUT.
255 Add debugging code.
256
257 2005-10-08 Kim F. Storm <storm@cua.dk>
258
259 * window.c (window_tree, Fwindow_tree): Rename fns added 2005-10-04.
260
261 2005-10-07 Kim F. Storm <storm@cua.dk>
262
263 * dispnew.c (redraw_overlapped_rows, redraw_overlapping_rows)
264 [!HAVE_WINDOW_SYSTEM]: Don't declare them...
265 (update_window) [!HAVE_WINDOW_SYSTEM]: ...and don't call them.
266
267 2005-10-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
268
269 * dispextern.h (struct glyph_string): Rename member for_overlaps_p
270 to for_overlaps. Now occupy 3 bits.
271 (OVERLAPS_PRED, OVERLAPS_SUCC, OVERLAPS_BOTH)
272 (OVERLAPS_ERASED_CURSOR): New defines.
273 (struct redisplay_interface): Add new OVERLAPS arg to member
274 fix_overlapping_area.
275 (x_fix_overlapping_area): Add new OVERLAPS arg.
276 (get_glyph_string_clip_rects): Add extern.
277
278 * dispnew.c (redraw_overlapping_rows): Call
279 rif->fix_overlapping_area with new OVERLAPS arg as redrawn part.
280
281 * xdisp.c: Rename member for_overlaps_p in struct glyph_string to
282 for_overlaps.
283 (get_glyph_string_clip_rects): New function created from
284 get_glyph_string_clip_rect. Set clipping rectangles according to the
285 value of for_overlaps. Enable to store multiple clipping rectangles.
286 (get_glyph_string_clip_rect): Use get_glyph_string_clip_rects.
287 (fill_composite_glyph_string, fill_glyph_string, draw_glyphs):
288 Rename argument OVERLAPS_P to OVERLAPS. All uses in macros changed.
289 (x_fix_overlapping_area): Add OVERLAPS arg. Pass it to draw_glyphs.
290 (draw_phys_cursor_glyph): Set width of erased cursor to use it for
291 calculating clipping rectangles later. Call x_fix_overlapping_area
292 with new OVERLAPS arg to draw only erased cursor area.
293 (expose_overlaps): Call x_fix_overlapping_area with new OVERLAPS arg
294 to draw overlaps in both preceding and succeeding rows.
295
296 * xterm.c, w32term.c, macterm.c: Rename member for_overlaps_p in
297 struct glyph_string to for_overlaps.
298
299 2005-10-04 Richard M. Stallman <rms@gnu.org>
300
301 * alloc.c (refill_memory_reserve): Conditionalize the body,
302 not the function's existence.
303
304 2005-10-04 Kim F. Storm <storm@cua.dk>
305
306 * window.c (window_split_tree): New function.
307 (Fwindow_split_tree): New defun.
308 (syms_of_window): Defsubr it.
309
310 2005-10-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
311
312 * macterm.c (mac_invert_rectangle): New function.
313 (XTflash): Use it.
314
315 2005-10-04 Stefan Monnier <monnier@iro.umontreal.ca>
316
317 * regex.h (re_char): Don't expose it in the interface.
318 (re_set_whitespace_regexp): Adjust the arg's type to not use it.
319
320 * regex.c (re_char): Move it back here.
321 (re_set_whitespace_regexp): Change the arg's type to not use it.
322
323 * keyboard.c (make_lispy_event): If point has moved between down and up
324 event, make it a drag, not a click, to mirror what
325 mouse-drag-region expects.
326
327 2005-10-02 Dan Nicolaescu <dann@ics.uci.edu>
328
329 * lisp.h (fatal): Undo previous change.
330 * term.c (fatal): Undo previous change.
331
332 2005-10-01 Richard M. Stallman <rms@gnu.org>
333
334 * xfaces.c (face_color_gray_p): Colors close to black count as gray.
335
336 2005-10-01 Kim F. Storm <storm@cua.dk>
337
338 * xdisp.c (try_window): Skip scroll-margin check if ZV is visible.
339
340 2005-10-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
341
342 * keyboard.c (init_keyboard) [MAC_OSX]: Don't install SIGINT handler.
343
344 * macfns.c (start_hourglass): Apply 2005-05-07 change for xfns.c.
345 (x_create_tip_frame) [GLYPH_DEBUG]: Uncomment debugging code.
346 (Fx_create_frame, x_create_tip_frame) [USE_ATSUI]:
347 Try ATSUI-compatible 12pt Monaco font first.
348
349 * macgui.h (struct _XCharStruct): New member valid_p.
350 (STORE_XCHARSTRUCT): Set valid_p.
351 (struct MacFontStruct) [USE_ATSUI]: New member mac_style.
352
353 * macterm.c (mac_draw_string_common, x_per_char_metric)
354 (mac_compute_glyph_string_overhangs, init_font_name_table)
355 (XLoadQueryFont, mac_unload_font) [USE_ATSUI]: Add ATSUI support.
356 (atsu_get_text_layout_with_text_ptr) [USE_ATSUI]: New function.
357 (x_draw_glyph_string_background)
358 (x_draw_glyph_string_foreground) [MAC_OS8 && USE_ATSUI]: Don't use
359 XDrawImageString. Always draw background and foreground separately.
360 (x_draw_glyph_string_foreground) [USE_ATSUI]: Don't use 8-bit
361 functions for one-byte chars when using ATSUI-compatible fonts.
362 (atsu_font_id_hash) [USE_ATSUI]: New variable.
363 (syms_of_macterm) [USE_ATSUI]: Initialize and staticpro it.
364 (XLoadQueryFont): Set min_byte1, max_byte1, min_char_or_byte2, and
365 max_char_or_byte2 more in detail.
366 (quit_char_comp, mac_check_for_quit_char) [MAC_OSX]: Remove functions.
367
368 2005-09-30 Dan Nicolaescu <dann@ics.uci.edu>
369
370 * image.c (slurp_file, xbm_read_bitmap_data): Cast to the correct type.
371 * xterm.c (handle_one_xevent, handle_one_xevent): Likewise.
372
373 * unexelf.c (fatal): Fix prototype.
374
375 * term.c (fatal): Implement using varargs.
376
377 * regex.c (re_char): Move typedef ...
378 * regex.h (re_char): ... here.
379 (re_iswctype, re_wctype, re_set_whitespace_regexp): New prototypes.
380
381 * emacs.c (malloc_set_state): Fix return type.
382 (endif): Fix type.
383
384 * lisp.h (fatal): Add argument types.
385
386 * dispextern.h (fatal): Delete prototype.
387
388 * systime.h: (make_time): Prototype moved from ...
389 * editfns.c (make_time): ... here.
390
391 * editfns.c: Move systime.h include after lisp.h.
392 * dired.c:
393 * xsmfns.c:
394 * process.c: Likewise.
395
396 * alloc.c (old_malloc_hook, old_realloc_hook, old_realloc_hook):
397 Add parameter types.
398 (__malloc_hook, __realloc_hook, __free_hook): Fix prototypes.
399 (emacs_blocked_free): Change definition to match __free_hook.
400 (emacs_blocked_malloc): Change definition to match __malloc_hook.
401 (emacs_blocked_realloc): Change definition to match __realloc_hook.
402
403 2005-09-30 Romain Francoise <romain@orebokech.com>
404
405 * minibuf.c (Fread_buffer): Follow convention for reading from the
406 minibuffer with a default value. Doc fix.
407
408 2005-09-29 Juri Linkov <juri@jurta.org>
409
410 * editfns.c (Fmessage, Fmessage_box, Fmessage_or_box):
411 Rename argument name `string' to `format-string'.
412 (Fformat): Doc fix.
413
414 2005-09-28 Kim F. Storm <storm@cua.dk>
415
416 * image.c (gif_load): Fix size of allocated image buffer
417 for images where a sub-image may be larger than the image's
418 total height/width specifications.
419
420 2005-09-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
421
422 * macgui.h (struct _XCharStruct): Each member now takes short value.
423
424 2005-09-27 Dan Nicolaescu <dann@ics.uci.edu>
425
426 * xfaces.c (lookup_derived_face): Add parameter type.
427
428 * xdisp.c (cursor_row_fully_visible_p): Add parameter type.
429
430 * marker.c (verify_bytepos): Add parameter type.
431
432 * process.c (get_operating_system_release): Move prototype ...
433
434 * systime.h (get_operating_system_release): ... here.
435
436 * xterm.c (handle_one_xevent): Refer to union field to match the
437 type required by the function definition.
438 (set_vertical_scroll_bar): Move prototype ...
439
440 * xterm.h: ... here.
441
442 * fns.c (internal_equal, seed_random): Fix prototypes.
443 (internal_equal): Add missing parameter.
444
445 2005-09-25 Richard M. Stallman <rms@gnu.org>
446
447 * keyboard.c (update_menu_bindings): Variable deleted.
448 (syms_of_keyboard): Don't defvar it.
449 (parse_menu_item): Don't test it.
450
451 2005-09-23 Richard M. Stallman <rms@gnu.org>
452
453 * editfns.c (Fformat): Explicitly test for end of format string
454 and don't use `index'.
455
456 2005-09-23 Dan Nicolaescu <dann@ics.uci.edu>
457
458 * s/aix4-2.h (BROKEN_GET_CURRENT_DIR_NAME):
459 Define BROKEN_GET_CURRENT_DIR_NAME.
460
461 * sysdep.c (get_current_dir_name): Also define if
462 BROKEN_GET_CURRENT_DIR_NAME.
463
464 * m/ibmrs6000.h: Test for USG5, not USG5_4.
465
466 2005-09-22 Kim F. Storm <storm@cua.dk>
467
468 * xdisp.c (message_dolog): Add warning about GC and Lisp strings.
469 (message2): Fix commentary. Ok to use alloca'ed memory.
470 Still not ok to use Lisp string data (because of GC).
471 (set_message): Add comment why GC cannot happen.
472
473 2005-09-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
474
475 * macterm.c (xlfdpat_block_match_1): Fix assertion.
476 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't add style
477 variants for a scalable font multiple times.
478
479 2005-09-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
480
481 * process.c (create_process) [RTU || UNIPLUS || DONT_REOPEN_PTY]:
482 Setup slave tty options before forking.
483
484 2005-09-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
485
486 * gtkutil.c (xg_set_geometry): Do a gtk_window_move if program
487 positions have been set for the frame (as is done for frames in
488 special-display-buffer-names).
489
490 2005-09-19 Kim F. Storm <storm@cua.dk>
491
492 * editfns.c (Fformat): Don't scan past end of format string that
493 ends in %. Reported by: Johan Bockg\e,Ae\e(Brd.
494
495 2005-09-18 Andreas Schwab <schwab@suse.de>
496
497 * window.h (struct window): Remove height_fixed_p, no longer set.
498
499 * window.c (make_window): Don't initialize height_fixed_p.
500 (window_fixed_size_p): Don't use it.
501
502 2005-09-18 John Paul Wallington <jpw@pobox.com>
503
504 * data.c (Fdefalias): Signal an error if SYMBOL is not a symbol.
505
506 2005-09-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
507
508 * Makefile.in (SOME_MACHINE_OBJECTS): Undo previous change.
509
510 * macfns.c (image_cache_refcount, dpyinfo_refcount) [GLYPH_DEBUG]:
511 New variables.
512 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Don't allow multiple
513 file selection.
514
515 * sysdep.c [MAC_OS8]: Don't include stdlib.h. Include sys/param.h.
516
517 2005-09-17 Eli Zaretskii <eliz@gnu.org>
518
519 * Makefile.in (XMENU_OBJ) [!HAVE_CARBON]: Reinstate variable.
520 (obj): Use XMENU_OBJ, not a literal xmenu.o.
521
522 2005-09-16 Romain Francoise <romain@orebokech.com>
523
524 * fileio.c (syms_of_fileio) <write-region-inhibit-fsync>: Doc fix.
525
526 2005-09-15 Richard M. Stallman <rms@gnu.org>
527
528 * xdisp.c (overlay_arrow_at_row): Add HAVE_WINDOW_SYSTEM conditional.
529 (display_mode_element): Instead of `lisp_string' and `this',
530 record `offset' and increment that.
531 `last_offset' replaces `last'.
532
533 * Makefile.in (XMENU_OBJ): Variable deleted.
534 (obj): Use xmenu.o unconditionally.
535 (SOME_MACHINE_OBJECTS): Delete xmenu.o.
536
537 * emacs.c (main): Don't conditionalize syms_of_xmenu on HAVE_XMENU.
538
539 2005-09-15 Kim F. Storm <storm@cua.dk>
540
541 * xdisp.c (move_it_vertically): Don't try to fetch byte BEGV-1.
542 (reseat_at_next_visible_line_start): Likewise (in xassert).
543
544 2005-09-14 Romain Francoise <romain@orebokech.com>
545
546 * fileio.c (write_region_inhibit_fsync): New variable.
547 (Fwrite_region): Use it to skip call to fsync.
548 (syms_of_fileio): Initialize it.
549
550 2005-09-14 Kenichi Handa <handa@m17n.org>
551
552 * coding.c (code_convert_region_unwind): Argument format changed.
553 (run_pre_post_conversion_on_str): If pre-write-conversion function
554 changed the current buffer, delete the new buffer.
555 (run_pre_write_conversin_on_c_str): Likewise.
556
557 * fileio.c (Fexpand_file_name): Check multibyteness of
558 default_directory.
559
560 2005-09-13 Kenichi Handa <handa@m17n.org>
561
562 * composite.c (compose_chars_in_text): Delete it.
563
564 * composite.h (compose_chars_in_text): Delete extern.
565
566 2005-09-13 Kim F. Storm <storm@cua.dk>
567
568 * print.c (print_error_message): Fix last change.
569
570 2005-09-12 Kim F. Storm <storm@cua.dk>
571
572 * composite.c (compose_chars_in_text): Fix setup of `pend'.
573 Unconditionally reload `ptr' and `pend' after eval.
574
575 * xdisp.c (message3): Pass copy of lisp string to message_dolog.
576
577 * print.c (print_error_message): Pass copy of caller name to
578 message_dolog.
579
580 * fileio.c (auto_save_error): Pass copy of lisp string to message2.
581
582 2005-09-12 Kenichi Handa <handa@m17n.org>
583
584 * xdisp.c (display_mode_element): Be sure to make variables THIS
585 and LISP_STRING point into a string data of ELT.
586
587 2005-09-12 Kim F. Storm <storm@cua.dk>
588
589 * editfns.c (Ftranslate_region_internal): Reload `tt' after
590 signal_after_change that may have GC'ed.
591 (Fmessage, Fmessage_box, Fmessage_or_box): Doc fix.
592
593 * keymap.c (Fdescribe_buffer_bindings): Reload `translate'
594 after insert while runs signal_after_change.
595
596 * minibuf.c (Fminibuffer_complete_word): Move `completion_string'
597 declaration to where it is used.
598
599 * w32.c (check_windows_init_file): Fix allocation of error buffer.
600
601 * xfns.c (x_encode_text): Declare static. Add FREEP arg.
602 (x_set_name_internal): Call x_encode_text with new FREEP arg to
603 know if xfree is needed instead of guessing.
604
605 * xterm.h (x_encode_text): Remove prototype.
606
607 2005-09-11 Chris Prince <cprince@gmail.com> (tiny change)
608
609 * w32term.c (x_bitmap_icon): Load small icons too.
610
611 2005-09-10 Romain Francoise <romain@orebokech.com>
612
613 * buffer.c (init_buffer): Grow buffer to add directory separator
614 and terminal zero. Fix typos.
615
616 2005-09-10 Eli Zaretskii <eliz@gnu.org>
617
618 * buffer.c (init_buffer): Fix error message for failed call to
619 get_current_dir_name.
620 (get_current_dir_name): Remove prototype.
621
622 * xsmfns.c: (get_current_dir_name): Remove prototype.
623
624 * lisp.h: (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]: Add
625 prototype.
626
627 * sysdep.c [WINDOWSNT]: Add prototype for getwd.
628 Don't #undef NULL after including blockinput.h.
629
630 * config.in: Regenerated.
631
632 2005-09-10 Giuseppe Scrivano <gscrivano@gmail.com>
633
634 Remove the MAXPATHLEN limitations:
635
636 * sysdep.c (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]:
637 New function.
638
639 * buffer.c (init_buffer): Use it.
640
641 * xsmfns.c (smc_save_yourself_CB): Ditto.
642
643 2005-09-09 Kim F. Storm <storm@cua.dk>
644
645 * doc.c (Fsubstitute_command_keys): Lookup key binding for
646 commands that are remapped from some other command.
647
648 * xdisp.c (try_window_reusing_current_matrix): Clear mode_line_p
649 flag in disabled rows below the window.
650
651 * frame.h (struct frame): New member updated_p.
652
653 * xdisp.c (redisplay_internal): Mark updated frames in new updated_p
654 member. Remove local `updated' array and associated variables.
655
656 2005-09-07 Kim F. Storm <storm@cua.dk>
657
658 * xdisp.c (handle_display_prop): Respect overlay window property.
659
660 * xdisp.c (try_window): Remove superfluous cursor_height calculation.
661 Fixes crash reported by YAMAMOTO Mitsuharu.
662
663 2005-09-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
664
665 * macterm.c (struct xlfdpat_block, struct xlfdpat): New structs.
666 (xlfdpat_destroy, xlfdpat_create, xlfdpat_exact_p)
667 (xlfdpat_block_match_1, xlfdpat_match): New functions.
668 (xlfdpat_block_match): New macro.
669 (mac_to_x_fontname): Don't use tolower for non-ASCII characters.
670 (x_font_name_to_mac_font_name): Set coding.dst_multibyte to 0.
671 (add_font_name_table_entry): Increase font_name_table_size more
672 rapidly.
673 (mac_c_string_match): Remove function.
674 (mac_do_list_fonts): Use XLFD pattern match instead of regular
675 expression match.
676
677 * xfaces.c (xstrlwr): Don't use tolower for non-ASCII characters.
678
679 2005-09-03 Richard M. Stallman <rms@gnu.org>
680
681 * xdisp.c (redisplay_internal): Make UPDATED as long as needed.
682 (move_it_in_display_line_to): Stop after last char on line even
683 on a windowing terminal, if that's the specified stop position.
684
685 * fns.c (Fsort): Doc fix.
686
687 * editfns.c (Fpropertize): Don't insist that properties be symbols.
688
689 2005-09-02 Stefan Monnier <monnier@iro.umontreal.ca>
690
691 * dired.c (directory_files_internal_unwind, directory_files_internal)
692 (file_name_completion): Use a Save_Value object rather than a cons of
693 two 16bit ints to store the DIR*.
694 (directory_files_internal, file_name_completion): Handle both EINTR and
695 EAGAIN consistently after `readdir'.
696
697 2005-09-01 Stefan Monnier <monnier@iro.umontreal.ca>
698
699 * intervals.c (update_interval): Add position info in error.
700
701 * dispnew.c (window_to_frame_hpos, update_window):
702 Avoid gcc warning about unused variable `f'.
703
704 2005-08-31 Jason Rumney <jasonr@gnu.org>
705
706 * w32menu.c (add_menu_item): If unicode_append_menu returns an
707 error, revert to using AppendMenu.
708
709 2005-08-31 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
710
711 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN): Remove argument.
712 All uses changed.
713 [MAC_OS] (XPutPixel, XGetPixel): Add efficient versions for common
714 cases.
715 (x_create_x_image_and_pixmap) [MAC_OS]: Don't call x_destroy_x_image.
716 [MAC_OS] (find_image_fsspec) [!MAC_OSX]: Don't use FSRef.
717 Use posix_pathname_to_fsspec.
718 [MAC_OS] (xpm_load_image): Fill in background_transparent field
719 while we have mask.
720
721 * macgui.h [!TARGET_API_MAC_CARBON] (GetPixDepth): New define.
722
723 * macterm.h (PIX_MASK_DRAW, PIX_MASK_RETAIN): Move defines to image.c.
724
725 2005-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
726
727 * syntax.c (update_syntax_table): Properly reproduce the special +1
728 setting of e_property at the end of the buffer when bumping into the
729 INTERVALS_AT_ONCE limit.
730
731 2005-08-27 Eli Zaretskii <eliz@gnu.org>
732
733 * emacs.c (USAGE1): Fix the description of the -Q option.
734
735 2005-08-26 Stefan Monnier <monnier@iro.umontreal.ca>
736
737 * xdisp.c (pos_visible_p): Yet another int/Lisp_Object mixup (YAILOM).
738
739 2005-08-26 Kim F. Storm <storm@cua.dk>
740
741 * xdisp.c (resize_mini_window): Fix 2005-08-20 change.
742 Don't move PT to new window start.
743
744 2005-08-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
745
746 * keyboard.c (kbd_buffer_get_event) [MAC_OS]: Make events for
747 ICONIFY/DEICONIFY_EVENT.
748
749 * macterm.c (mac_copy_area, mac_copy_area_with_mask):
750 Restore background color.
751 (mac_handle_visibility_change): New function.
752 (x_make_frame_invisible, x_iconify_frame)
753 (XTread_socket) [!USE_CARBON_EVENTS]: Use it.
754 [USE_CARBON_EVENTS] (mac_handle_window_event)
755 (install_window_handler): Handle visibility change events.
756 (x_make_frame_visible): Don't reposition window if it is iconified
757 or asked for visible before. Select and uncollapse window when it
758 is made visible.
759 (x_make_frame_invisible): Don't reset x_highlight_frame.
760 (x_iconify_frame): Likewise. Make invisible frame visible before
761 it is iconified.
762 (read_socket_inev): Move variable outside #if USE_CARBON_EVENTS.
763 (do_window_update): Don't change visibility of invisible frame.
764
765 2005-08-22 Juri Linkov <juri@jurta.org>
766
767 * term.c (turn_on_face): Check for TS_set_foreground and
768 TS_set_background depending on standout_mode. Simplify.
769
770 2005-08-21 Kim F. Storm <storm@cua.dk>
771
772 * fringe.c (update_window_fringes): Only put TOP and BOTTOM
773 bitmaps on fully visible rows.
774
775 * fringe.c (update_window_fringes): Replace FORCE_P arg with
776 KEEP_CURRENT_P arg; if non-zero, don't update current row fringes,
777 and return 0.
778
779 * xdisp.c (redisplay_window): Call update_window_fringes with
780 KEEP_CURRENT_P non-0 if we are going to refresh fringes later.
781
782 2005-08-20 Richard M. Stallman <rms@gnu.org>
783
784 * xdisp.c (display_echo_area_1): Get display start pos from w->start.
785 (resize_mini_window): Set w->start, and PT, so as to display the tail
786 end of the buffer, if it doesn't all fit.
787
788 2005-08-18 Kim F. Storm <storm@cua.dk>
789
790 * xdisp.c (calc_pixel_width_or_height): Use actual display
791 resolution when available instead of Vdisplay_pixels_per_inch.
792
793 2005-08-17 Kim F. Storm <storm@cua.dk>
794
795 * xdisp.c (pos_visible_p): Adjust X value if window is hscrolled.
796
797 * dispnew.c (buffer_posn_from_coords): Check that target row is
798 within matrix.
799
800 2005-08-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
801
802 * xterm.c (x_wm_set_icon_pixmap): Move GTK specific code to
803 xg_set_frame_icon and call it.
804
805 * gtkutil.c (xg_set_frame_icon): New function.
806
807 * gtkutil.h (xg_set_frame_icon): Declare it.
808
809 2005-08-16 Kim F. Storm <storm@cua.dk>
810
811 * dispnew.c (increment_row_positions): Skip non-enabled rows.
812
813 * window.c (SAVED_WINDOW_VECTOR_SIZE): Remove dangerous define.
814 (Fcurrent_window_configuration): Use VECSIZE macro instead.
815
816 2005-08-15 Richard M. Stallman <rms@gnu.org>
817
818 * xdisp.c (message3_nolog): Clear echo_message_buffer.
819
820 2005-08-15 Kim F. Storm <storm@cua.dk>
821
822 * lisp.h (QUIT) [!SYNC_INPUT]: Throw t to Vthrow_on_input.
823
824 * process.c (deactivate_process, status_notify, read_process_output)
825 (update_status, status_convert, decode_status, allocate_pty)
826 (make_process, remove_process, list_processes_1)
827 (create_process_1, unwind_request_sigio, read_process_output)
828 (send_process, keyboard_bit_set): Declare static.
829 (Fdelete_process): Simplify. Pass process to status_notify, so we
830 don't try to read output from it.
831 (status_notify): New arg deleting_process--don't try to read
832 output from that process.
833
834 * lisp.h (deactivate_process, status_notify, read_process_output):
835 Remove prototypes.
836
837 2005-08-14 Richard M. Stallman <rms@gnu.org>
838
839 * image.c (syms_of_image): Init Qxbm, Qpbm before calling
840 define_image_type.
841
842 2005-08-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
843
844 * gtkutil.c (xg_get_pixbuf_from_pix_and_mask): New function.
845 (xg_get_image_for_pixmap): Move some code to
846 xg_get_pixbuf_from_pix_and_mask, and call it.
847
848 * gtkutil.h (xg_get_pixbuf_from_pix_and_mask): Declare.
849
850 * xterm.c (x_wm_set_icon_pixmap): Call xg_get_pixbuf_from_pix_and_mask
851 to get an GTK icon and set it with GTK functions to avoid having GTK
852 override an icon set with just X functions.
853
854 2005-08-11 Richard M. Stallman <rms@gnu.org>
855
856 * image.c (syms_of_image): Init image_types here, and call
857 define_image_type.
858 (init_image): Not here.
859
860 2005-08-09 Richard M. Stallman <rms@gnu.org>
861
862 * bytecode.c (BYTE_CODE_QUIT): Throw t to Vthrow_on_input.
863
864 * lisp.h (QUIT): Throw t to Vthrow_on_input.
865
866 2005-08-09 Thien-Thi Nguyen <ttn@gnu.org>
867
868 * floatfns.c (Fexpt): Use floats for negative exponent.
869
870 2005-08-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
871
872 * gtkutil.c (xg_modify_menubar_widgets): Remove semicolon that
873 should not be there, causing menu display errors with GTK 2.6.9.
874
875 2005-08-07 Richard M. Stallman <rms@gnu.org>
876
877 * floatfns.c (Fexpt): Undo previous change.
878
879 * dispnew.c (Fframe_or_buffer_changed_p): Take an arg
880 so it can be used with various state vectors.
881
882 * emacs.c (endif): Convert -script into -scriptload.
883 (standard_args): Add -scriptload. Allow -basic-display with one dash.
884
885 * fns.c (syms_of_fns): Add `emacs' to features.
886
887 * term.c (set_terminal_modes): If no TS_termcap_modes string,
888 output newlines to scroll the old screen contents off the screen.
889
890 2005-08-06 Thien-Thi Nguyen <ttn@gnu.org>
891
892 * floatfns.c (Fexpt): Use floats for negative exponent.
893 Reported by D Goel.
894
895 2005-08-02 Richard M. Stallman <rms@gnu.org>
896
897 * frame.c (Fframe_char_width): Doc fix.
898
899 2005-07-30 Juanma Barranquero <lekktu@gmail.com>
900
901 * xdisp.c (syms_of_xdisp) <redisplay-end-trigger-functions>:
902 Defvar it.
903
904 2005-07-28 Juanma Barranquero <lekktu@gmail.com>
905
906 * w32fns.c (my_set_window_pos, my_show_window): Don't declare.
907 (my_create_window, my_create_tip_window): Make static.
908
909 * w32term.c (my_show_window, my_set_window_pos, my_set_focus)
910 (my_set_foreground_window, my_destroy_window): Make static.
911
912 2005-07-26 Paul Eggert <eggert@cs.ucla.edu>
913
914 Merge gnulib getopt implementation into Emacs.
915
916 * s/cygwin.h (C_SWITCH_SYSTEM): Remove, since gettext.h is
917 now part of lib-src.
918
919 2005-07-26 Stefan Monnier <monnier@iro.umontreal.ca>
920
921 * eval.c (Fdefvar): Allow (defvar enable-multibyte-characters).
922
923 2005-07-25 Jason Rumney <jasonr@gnu.org>
924
925 * w32menu.c (w32_menu_display_help): Suppress tooltip when
926 navigating menus with the keyboard.
927
928 2005-07-23 Richard M. Stallman <rms@gnu.org>
929
930 * insdel.c (syms_of_insdel): staticpro combine_after_change_buffer.
931
932 * bytecode.c (MAYBE_GC): Test gc_cons_threshold and
933 gc_relative_threshold, one by one.
934
935 * keyboard.c (read_char): Test gc_cons_threshold.
936 (syms_of_keyboard): staticpro Qecho_area_clear_hook.
937
938 * eval.c (Feval, Ffuncall): Test gc_cons_threshold and
939 gc_relative_threshold, one by one.
940
941 * alloc.c (gc_cons_threshold): Not static.
942 (gc_cons_combined_threshold): Var deleted.
943 (gc_relative_threshold): New variable.
944 (Fgarbage_collect, init_alloc_once): Compute gc_relative_threshold
945 instead of gc_cons_combined_threshold.
946
947 * lisp.h (gc_cons_threshold, gc_relative_threshold): Declare.
948 (gc_cons_combined_threshold): Declaration deleted.
949
950 2005-07-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
951
952 * mac.c: Don't include stdlib.h or string.h.
953 (Fdo_applescript, Fmac_file_name_to_posix)
954 (Fmac_file_name_to_posix): Doc fixes.
955 [TARGET_API_MAC_CARBON] (Fmac_get_preference)
956 (Fmac_code_convert_string): Likewise.
957 [MAC_OSX] (init_mac_osx_environment): Fall back on terminal mode
958 if the executable is not contained in a bundle.
959
960 * macfns.c: Don't include stdlib.h or string.h. Include atimer.h.
961 (gray_width, gray_height): Remove defines.
962 (gray_bits, gray_bitmap_width, gray_bitmap_height)
963 (gray_bitmap_bits): Remove variables.
964 (lispy_function_keys): Remove extern.
965 (free_frame_menubar): Add extern.
966 (x_window_to_frame): Remove function.
967 (unwind_create_tip_frame): Add declaration.
968 (x_set_name_internal): New function.
969 (x_set_name, x_set_title): Use it.
970 (Fx_create_frame, Fx_display_grayscale_p, Fx_display_pixel_width)
971 (Fx_display_pixel_height, Fx_display_planes)
972 (Fx_display_color_cells, Fx_server_max_request_size)
973 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
974 (Fx_display_mm_height, Fx_display_mm_width)
975 (Fx_display_backing_store, Fx_display_visual_class)
976 (Fx_display_save_under, Fx_synchronize, Fx_show_tip): Doc fixes.
977
978 * macmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
979
980 * macselect.c (Fx_own_selection_internal): Follow error conventions.
981 (Fx_get_selection_internal, Fx_selection_owner_p)
982 (Fx_selection_exists_p): Doc fixes.
983 (syms_of_macselect) <selection-converter-alist>: Likewise.
984
985 2005-07-21 Juanma Barranquero <lekktu@gmail.com>
986
987 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
988
989 * ccl.c (Fregister_ccl_program): Fix typos in docstring.
990 (Fccl_execute_on_string): Likewise; add usage info.
991
992 * composite.c (Fcompose_region_internal)
993 (Fcompose_string_internal):
994 Improve argument/docstring consistency.
995
996 * minibuf.c (Fminibuffer_prompt_end, Feval_minibuffer):
997 Fix typos in docstrings.
998
999 * textprop.c (Fnext_char_property_change)
1000 (Fprevious_char_property_change): Doc fixes.
1001
1002 * window.c (Fset_window_margins, Fset_window_fringes):
1003 Improve argument/docstring consistency.
1004
1005 * xfaces.c (Finternal_lisp_face_p): Doc fix.
1006
1007 2005-07-21 Andreas Schwab <schwab@suse.de>
1008
1009 * eval.c (restore_stack_limits): Return a value.
1010
1011 2005-07-20 Juanma Barranquero <lekktu@gmail.com>
1012
1013 * eval.c (Fdefvar): Doc fix.
1014
1015 2005-07-20 Kim F. Storm <storm@cua.dk>
1016
1017 * fileio.c (Fdo_auto_save, do_auto_save_unwind):
1018 Use make_save_value to unwind protect stream.
1019
1020 * lread.c (Fload, load_unwind):
1021 Use make_save_value to unwind protect stream.
1022
1023 2005-07-19 Juanma Barranquero <lekktu@gmail.com>
1024
1025 * eval.c (Fprog2, Fcalled_interactively_p),
1026 (syms_of_eval) <debug-on-quit>: Doc fixes.
1027 (syms_of_eval) <max-specpdl-size>:
1028 (Finteractive_p): Fix typos in docstrings.
1029
1030 2005-07-19 Kim F. Storm <storm@cua.dk>
1031
1032 * w32fns.c (Vx_hand_shape): Variable removed.
1033 (syms_of_w32fns): Intern and staticpro Qw32_charset_default.
1034
1035 2005-07-19 Kenichi Handa <handa@m17n.org>
1036
1037 * fns.c (Fstring_as_multibyte): Escape backslashes in the docstring.
1038
1039 2005-07-18 Stefan Monnier <monnier@iro.umontreal.ca>
1040
1041 * buffer.h (Fgenerate_new_buffer_name): Declare (for use in coding.c).
1042
1043 2005-07-18 Kim F. Storm <storm@cua.dk>
1044
1045 * frame.h (struct frame): New member already_hscrolled_p.
1046
1047 * xdisp.c (redisplay_internal): Only try to hscroll each frame once
1048 to avoid redisplay looping hscrolling back and forth ad infinitum.
1049
1050 2005-07-18 Juri Linkov <juri@jurta.org>
1051
1052 * buffer.c (scroll-up-aggressively, scroll-down-aggressively):
1053 * keymap.c (Fminor_mode_key_binding):
1054 * macterm.c (mac-emulate-three-button-mouse):
1055 Delete duplicate duplicate words.
1056
1057 2005-07-18 Ken Raeburn <raeburn@gnu.org>
1058
1059 * minibuf.c (Ftest_completion): Fix odd syntax in test.
1060
1061 2005-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1062
1063 * macfns.c (x_set_cursor_color): Use XSetBackground and XSetForeground.
1064
1065 * macgui.h (struct _XGC): New struct.
1066 (GC): Use it.
1067 (GCForeground, GCBackground, GCFont): Use X11 mask values.
1068 (XCreateGC, XParseGeometry): Move externs to macterm.h.
1069
1070 * macterm.c (x_bitmap_icon, x_make_frame_visible): Remove declarations.
1071 (XSetFont): Add declaration.
1072 (mac_set_forecolor, mac_set_backcolor, mac_set_colors):
1073 Remove functions.
1074 (GC_FORE_COLOR, GC_BACK_COLOR, GC_FONT, MAC_WINDOW_NORMAL_GC):
1075 New defines.
1076 (XDrawLine, mac_draw_line_to_pixmap, XClearWindow)
1077 (mac_draw_bitmap, XCreatePixmapFromBitmapData, XFillRectangle)
1078 (mac_draw_rectangle, mac_draw_string_common, mac_scroll_area):
1079 Use them.
1080 (mac_erase_rectangle): New function.
1081 (XClearArea, x_draw_fringe_bitmap, x_clear_glyph_string_rect)
1082 (x_draw_stretch_glyph_string): Use it.
1083 (XChangeGC, XCreateGC, XGetGCValues, XSetForeground)
1084 (XSetBackground, XSetFont): Adjust for new GC implementation.
1085 (x_draw_fringe_bitmap, x_draw_box_rect): Use GC to set colors.
1086 (XTset_vertical_scroll_bar): Clear area under scroll bar.
1087
1088 * macterm.h (struct mac_display_info): Change types of
1089 scratch_cursor_gc black_relief.gc, and white_relief.gc to GC.
1090 (XCreateGC, XParseGeometry): Move externs from macgui.h.
1091
1092 * xfaces.c [MAC_OS] (XCreateGC): Remove extern.
1093
1094 2005-07-16 Richard M. Stallman <rms@gnu.org>
1095
1096 * buffer.c (Fmake_overlay): Doc fix.
1097
1098 2005-07-16 Eli Zaretskii <eliz@gnu.org>
1099
1100 * w32proc.c (syms_of_ntproc): staticpro Qhigh, Qlow,
1101 Vw32_valid_locale_ids, and Vw32_valid_codepages.
1102
1103 2005-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1104
1105 * mac.c [TARGET_API_MAC_CARBON] (Fmac_code_convert_string):
1106 Use Fstring_as_unibyte instead of string_make_unibyte.
1107
1108 2005-07-15 Richard M. Stallman <rms@gnu.org>
1109
1110 * xdisp.c (select_frame_for_redisplay): Use find_symbol_value.
1111
1112 2005-07-15 Kim F. Storm <storm@cua.dk>
1113
1114 * xdisp.c: Fix redisplay loop in last change.
1115 (IT_POS_VALID_AFTER_MOVE_P): New macro.
1116 (move_it_vertically_backward, move_it_by_lines): Use it.
1117
1118 2005-07-14 Jason Rumney <jasonr@gnu.org>
1119
1120 * w32.c (init_environment): Default HOME directory to user's
1121 appdata directory if possible.
1122
1123 2005-07-14 Kim F. Storm <storm@cua.dk>
1124
1125 * .gdbinit (pitx): Fix output format. Print string charpos.
1126
1127 * lread.c (syms_of_lread): Initialize seen_list.
1128
1129 * search.c (syms_of_search): Staticpro searchbuf.whitespace_regexp.
1130
1131 * syntax.c (syms_of_syntax): Staticpro lisp objects in gl_state.
1132 Staticpro re_match_object.
1133
1134 2005-07-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1135
1136 * macselect.c (get_scrap_target_type_list): Avoid NULL pointer
1137 dereference.
1138
1139 * macterm.c (mac_window_to_frame): Remove duplicate define.
1140
1141 2005-07-14 Kenichi Handa <handa@m17n.org>
1142
1143 * coding.c (code_convert_region_unwind): ARG is changed to a cons.
1144 (code_convert_region): Adjust for the above change.
1145 (set_conversion_work_buffer): If the work buffer is already in
1146 use, generate a new buffer and return it. Otherwise return Qnil.
1147 (run_pre_post_conversion_on_str): Adjust for the above change.
1148 (run_pre_write_conversin_on_c_str): Likewise.
1149
1150 2005-07-13 Kim F. Storm <storm@cua.dk>
1151
1152 * xdisp.c (start_display): Don't reseat to next visible line start
1153 if current start position is in a string or image.
1154 (move_it_vertically_backward): Be sure to move out of strings and
1155 images when moving it2 forward.
1156 (move_it_by_lines): When moving forward, move to next buffer
1157 position if we end up in a string or image. When moving backward,
1158 count rows moved over when moving to start of current row in case
1159 row starts in middle of a string or image. Also move further
1160 backward if we end up in a string or image.
1161 (try_cursor_movement): If overlay string spans multiple lines,
1162 move backward to set cursor on start of an overlay string.
1163 (cursor_row_p): Row is ok if cursor is at newline from string, but
1164 string starts on this line (so we always position cursor at start
1165 of string).
1166
1167 * indent.c (Fvertical_motion): If start position is on an image,
1168 don't move back if we move too far (that's almost certain to happen).
1169
1170 * xdisp.c (cursor_row_fully_visible_p): Allow partially visible
1171 row in minibuffer windows.
1172 (try_window): Don't check margins in minibuffer windows.
1173
1174 2005-07-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1175
1176 * macterm.c: Don't include stdlib.h or composite.h.
1177 (x_use_underline_position_properties, last_mouse_press_frame)
1178 (x_noop_count, Qvendor_specific_keysyms): Remove unused variables.
1179 (syms_of_macterm, mac_initialize): Don't initialize them.
1180 (waiting_for_input, initial_argv, initial_argc)
1181 (Vcommand_line_args, Vx_no_window_manager, errno, window_scroll)
1182 (set_frame_menubar, path_from_vol_dir_name): Remove externs.
1183 (extra_keyboard_modifiers): Fix type in extern.
1184 (x_window_to_frame, x_window_to_scroll_bar): Remove declarations.
1185 (x_scroll_bar_report_motion): Add argument types to declaration.
1186 (mac_compute_glyph_string_overhangs): Add declaration.
1187 (disable_mouse_highlight): Remove unused variable.
1188 [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click)
1189 (x_scroll_bar_handle_press, x_scroll_bar_handle_release)
1190 (x_scroll_bar_handle_drag): Remove argument `timestamp'.
1191 All callers changed.
1192 [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click): Don't set
1193 timestamp.
1194 [USE_CARBON_EVENTS] (mac_handle_mouse_event): Likewise.
1195 (x_scroll_bar_create, XTset_vertical_scroll_bar): Show scroll bar
1196 only when its width is less than the height.
1197 (XTredeem_scroll_bar): Sync with xterm.c.
1198 (font_name_table, font_name_table_size, font_name_count):
1199 Make static.
1200 (drag_and_drop_file_list): Remove variable. Previous use is now
1201 local to function.
1202 (do_ae_open_documents): Move DRAG_N_DROP event construction part
1203 from XTread_socket.
1204 (XTread_socket): Consolidate setting of event timestamp.
1205 Move DRAG_N_DROP event construction part to do_ae_open_documents.
1206 Support extra_keyboard_modifiers.
1207
1208 * xfaces.c (try_font_list) [MAC_OS]: Try font family name
1209 beginning with that for ASCII.
1210
1211 2005-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
1212
1213 * alloc.c (gc_cons_combined_threshold, Vgc_cons_percentage): New vars.
1214 (Fgarbage_collect, init_alloc_once): Set gc_cons_combined_threshold.
1215 (syms_of_alloc): Declare gc-cons-percentage.
1216
1217 * eval.c (Feval, Ffuncall):
1218 * keyboard.c (read_char):
1219 * bytecode.c (MAYBE_GC): Use gc_cons_combined_threshold.
1220
1221 * lisp.h (gc_cons_combined_threshold): Declare.
1222
1223 2005-07-12 Kim F. Storm <storm@cua.dk>
1224
1225 * coding.c (Qprocess_argument):
1226 * coding.h (Qprocess_argument): Remove unused var.
1227
1228 * xselect.c (intern): Remove dup. intern and staticpro for QTIMESTAMP.
1229
1230 2005-07-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1231
1232 * mac.c [!TARGET_API_MAC_CARBON]: Include charset.h, coding.h, and
1233 Endian.h.
1234 [!MAC_OSX] (fchmod, fchown): New functions.
1235 (mac_get_code_from_arg): Don't accept Lisp integer as argument.
1236 Use SBYTES and EndianU32_BtoN.
1237 (mac_get_object_from_code): Return 4 byte string even if argument
1238 is 0. Use make_unibyte_string and EndianU32_NtoB.
1239 (Fmac_get_file_creator, Fmac_get_file_type, Fmac_set_file_creator)
1240 (Fmac_set_file_type): Fix documents and argument declarations.
1241 Don't specify kFSCatInfoNodeFlags. Support Mac OS Classic.
1242
1243 2005-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
1244
1245 * window.c (Frecenter): Yet another int/Lisp_Object mixup (YAILOM).
1246
1247 2005-07-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1248
1249 * xfaces.c (x_update_menu_appearance): Use fontSet resource for
1250 Lucid if X_I18N, font otherwise.
1251
1252 2005-07-10 Steven Tamm <steventamm@mac.com>
1253
1254 * mac.c (Fmac_get_file_type, Fmac_get_file_creator): Add.
1255 (Fmac_set_file_type, Fmac_set_file_creator): Add.
1256 (mac_get_object_from_code, mac_get_code_from_arg): Add.
1257
1258 2005-07-10 Richard M. Stallman <rms@gnu.org>
1259
1260 * lread.c (Qeval_buffer_list, Veval_buffer_list): New vars.
1261 (syms_of_lread): Set up eval-buffer-list.
1262 (Feval_buffer, Feval_region): Bind eval-buffer-list.
1263
1264 2005-07-08 Richard M. Stallman <rms@gnu.org>
1265
1266 * eval.c (Fdefvar): Allow defvaring a constant to itself quoted.
1267
1268 2005-07-08 Kim F. Storm <storm@cua.dk>
1269
1270 * keyboard.c (menu_bar_items): Don't GCPRO menu_bar_items_vector here.
1271 (syms_of_keyboard): Initialize and staticpro menu_bar_items_vector.
1272
1273 2005-07-07 Kim F. Storm <storm@cua.dk>
1274
1275 * window.c (Frecenter): Fix last change (set iarg before use).
1276
1277 2005-07-06 Richard M. Stallman <rms@gnu.org>
1278
1279 * window.c (Frecenter): When arg is inside the scroll margin,
1280 move it out of the margin.
1281
1282 2005-07-06 Jason Rumney <jasonr@gnu.org>
1283
1284 * w32console.c (initialize_w32_display): Detect when the console
1285 dimensions are insane, and default to 80x25 instead.
1286 (w32_use_full_screen_buffer): Default to NIL.
1287
1288 2005-07-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1289
1290 * macterm.c (mac_draw_vertical_window_border): Use foreground of
1291 VERTICAL_BORDER_FACE_ID for vertical border line.
1292 (mac_encode_char): Call check_ccl_update in advance.
1293 (mac_to_x_fontname, x_font_name_to_mac_font_name)
1294 (init_font_name_table, mac_do_list_fonts, XLoadQueryFont):
1295 Don't assume that font family length is less than 32.
1296 (x_compute_min_glyph_bounds): Make static.
1297 (x_load_font): Never set fonts_changed_p to zero.
1298
1299 2005-07-04 Lute Kamstra <lute@gnu.org>
1300
1301 * Update FSF's address in GPL notices.
1302
1303 2005-07-03 Richard M. Stallman <rms@gnu.org>
1304
1305 * xdisp.c (try_window): Fix previous change in how it handles
1306 a partially-visible line or one only partly past the margin.
1307
1308 * window.c (window_scroll_pixel_based): Take account
1309 of this_scroll_margin when finding point when scrolling up.
1310
1311 2005-06-29 Ralf Angeli <angeli@iwi.uni-sb.de>
1312
1313 * window.c (window_scroll_pixel_based, window_scroll_line_based):
1314 Handle `scroll-preserve-screen-position' non-nil, non-t specially.
1315 (syms_of_window): <scroll-preserve-screen-position>: Doc fix.
1316
1317 2005-07-02 Juri Linkov <juri@jurta.org>
1318
1319 * w32term.c (w32_draw_vertical_window_border): Use foreground of
1320 VERTICAL_BORDER_FACE_ID for vertical border line.
1321
1322 2005-07-02 Eli Zaretskii <eliz@gnu.org>
1323
1324 * fileio.c (Fcopy_file): Rearrange the code that calls fchown and
1325 fchmod so that chmod doesn't get called on MSDOS before the file
1326 is closed.
1327
1328 2005-07-01 Jason Rumney <jasonr@gnu.org>
1329
1330 * w32term.c (cleartype_active): New flag for enabling sub-pixel
1331 workaround.
1332 (w32_initialize): Initialize it.
1333 (w32_native_per_char_metric): Allow a couple of extra pixels when
1334 Cleartype is active.
1335
1336 * w32term.c (w32_initialize): Move check for screen reader here
1337 from syms_of_w32term.
1338
1339 2005-06-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1340
1341 * xterm.c (handle_one_xevent): bzero compose_status when nbytes
1342 is not zero.
1343
1344 2005-07-01 Masatake YAMATO <jet@gyve.org>
1345
1346 * emacs.c (main): Passing ADD_NO_RANDOMIZE to `personality'.
1347
1348 2005-06-30 Juri Linkov <juri@jurta.org>
1349
1350 * xdisp.c (x_draw_vertical_border): If left fringe is not present
1351 decrease x coord of vertical border by 1 pixel to not occupy text
1352 area of the right window.
1353
1354 * xterm.c (x_draw_vertical_window_border): Use foreground of
1355 VERTICAL_BORDER_FACE_ID for vertical border line.
1356
1357 * term.c (turn_on_face): In standout mode apply specified
1358 fg to bg, and specified bg to fg (this makes the logic of
1359 inversion on terminal consistent with X).
1360
1361 2005-06-29 Juanma Barranquero <lekktu@gmail.com>
1362
1363 * eval.c (user_variable_p_eh): New function.
1364 (Fuser_variable_p): Use it. Clarify docstring.
1365 Return t for aliases of user options, nil for alias loops.
1366
1367 2005-06-27 Richard M. Stallman <rms@gnu.org>
1368
1369 * eval.c (Fdefvar): Improve error message.
1370
1371 2005-06-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1372
1373 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Fix last
1374 change.
1375
1376 2005-06-27 Juanma Barranquero <lekktu@gmail.com>
1377
1378 * eval.c (Fdefvar): Don't try to set constant symbols.
1379
1380 2005-06-25 Richard M. Stallman <rms@gnu.org>
1381
1382 * macfns.c (Fx_show_tip): Pass new arg to try_window.
1383
1384 * w32fns.c (Fx_show_tip): Pass new arg to try_window.
1385
1386 * xfns.c (Fx_show_tip): Pass new arg to try_window.
1387
1388 * xdisp.c (try_window): New arg CHECK_MARGINS. Calls changed.
1389 (redisplay_window): Handle try_window reporting point in scroll margin.
1390
1391 * dispextern.h (try_window): Declare new arg.
1392
1393 * fileio.c (Fcopy_file): New arg PRESERVE_UID_GID.
1394 Use fchmod to copy the file modes.
1395 (Frename_file): Don't copy UID and GID here;
1396 instead, specify t for PRESERVE_UID_GID when calling Fcopy_file.
1397
1398 * eval.c (call_debugger): Take full care of extending stack limits
1399 to make space for the debugger, and restore the change afterward.
1400 Bind debug-on-error to nil.
1401 (restore_stack_limits): New subroutine.
1402 (Fsignal): Extend specpdl bound along with eval depth bound,
1403 for calling edebug. Don't do either one, for calling debugger.
1404 (find_handler_clause): Don't bind debug-on-error here.
1405 Don't unbind anything either.
1406 Temporarily advance max_specpdl_size for calling
1407 internal_with_output_to_temp_buffer.
1408 (grow_specpdl): Don't alter max_specpdl_size before signaling
1409 an error.
1410 (syms_of_eval) <max-specpdl-size>: Doc fix.
1411
1412 * lread.c (read1): 0.0e+NaN should make a "positive" NaN.
1413
1414 2005-06-24 Eli Zaretskii <eliz@gnu.org>
1415
1416 * fileio.c (Frename_file): Undo last change: no need to ifdef away
1417 chown on DOS_NT platforms.
1418
1419 * w32.c (sys_chown): New function.
1420
1421 * s/ms-w32.h (chown): New; define to sys_chown.
1422
1423 2005-06-24 Juanma Barranquero <lekktu@gmail.com>
1424
1425 * xdisp.c (syms_of_xdisp) <nobreak-char-display>: Doc fix.
1426 (syms_of_xdisp) <void-text-area-pointer>: Doc fix.
1427
1428 * fileio.c (Frename_file)[!DOS_NT]: Don't call chown on MSDOS/Windows.
1429
1430 2005-06-23 Richard M. Stallman <rms@gnu.org>
1431
1432 * xdisp.c (get_next_display_element): Finish reversing the tests of
1433 Vnobreak_char_display.
1434
1435 * xdisp.c (Vnobreak_char_display): Rename from Vshow_nonbreak_escape.
1436 All uses changed.
1437 (Qnobreak_space): Rename from Qno_break_space. All uses changed.
1438 (syms_of_xdisp): Define nobreak-char-display and nobreak-space.
1439
1440 * fileio.c (Frename_file): Preserve owner and group, if possible,
1441 when copying.
1442
1443 2005-06-23 Juanma Barranquero <lekktu@gmail.com>
1444
1445 * abbrev.c (Funexpand_abbrev):
1446 * category.c (Fmake_category_set):
1447 * dispnew.c (Fsleep_for, Fsit_for):
1448 * editfns.c (Fsubst_char_in_region):
1449 * eval.c (Fdefvar, Fdefconst, Feval, Ffuncall):
1450 * frame.c (make_frame_without_minibuffer):
1451 * lread.c (read_vector):
1452 * macfns.c (check_x_frame):
1453 * process.c (Fstop_process, Fcontinue_process):
1454 * search.c (Freplace_match):
1455 * syntax.c (Fstring_to_syntax):
1456 * w32fns.c (check_x_frame, check_x_display_info):
1457 * xfaces.c (x_supports_face_attributes_p):
1458 * xselect.c (Fx_own_selection_internal): Follow error conventions.
1459
1460 * image.c (fn_png_init_io): Don't define it.
1461 (init_png_functions) [HAVE_NTGUI]: Don't initialize fn_png_init_io.
1462 (png_read_from_file): New function, based on png_read_from_memory.
1463 (png_load): Use it, instead of fn_png_init_io.
1464
1465 2005-06-23 Kim F. Storm <storm@cua.dk>
1466
1467 * search.c (Fmatch_data): Remove evaporate option.
1468 (Fset_match_data): Do not mention evaporate option in doc string.
1469 Add commentary explaining evaporate arg (for internal use only).
1470 (unwind_set_match_data): Add comment on evaporate use.
1471
1472 2005-06-22 Miles Bader <miles@gnu.org>
1473
1474 * xfaces.c (Qvertical_border): Rename from `Qvertical_divider'.
1475 (realize_basic_faces, syms_of_xfaces): Update references to it.
1476 * dispextern.h (enum face_id): Rename `VERTICAL_DIVIDER_FACE_ID'
1477 to `VERTICAL_BORDER_FACE_ID'.
1478 * dispnew.c (build_frame_matrix_from_leaf_window): Update references.
1479
1480 2005-06-21 Juri Linkov <juri@jurta.org>
1481
1482 * dispextern.h: Add extern Qframe_set_background_mode.
1483
1484 * xfaces.c: Rename obsolete function Qframe_update_face_colors to
1485 Qframe_set_background_mode.
1486
1487 * frame.c (Fmodify_frame_parameters):
1488 Call frame-set-background-mode after changing the background color
1489 on non-window non-dos branch.
1490
1491 2005-06-21 Juanma Barranquero <lekktu@gmail.com>
1492
1493 * fns.c (Fchar_table_range):
1494 * process.c (Fmake_network_process): Fix spellings.
1495
1496 2005-06-20 Kim F. Storm <storm@cua.dk>
1497
1498 * fns.c (Fsort): Doc fix.
1499
1500 2005-06-20 Miles Bader <miles@gnu.org>
1501
1502 * xfaces.c (Qvertical_divider): New variable.
1503 (realize_basic_faces): Realize its face.
1504 (syms_of_xfaces): Initialize it.
1505
1506 * dispextern.h (enum face_id): Add `VERTICAL_DIVIDER_FACE_ID'.
1507
1508 * dispnew.c (build_frame_matrix_from_leaf_window): Display vertical
1509 window-separator on ttys using `vertical-divider' face by default.
1510
1511 2005-06-17 Richard M. Stallman <rms@gnu.org>
1512
1513 * xdisp.c (get_next_display_element):
1514 Reverse test of Vshow_nonbreak_escape.
1515
1516 * term.c (produce_special_glyphs): Use spec_glyph_lookup_face.
1517 (Ftty_no_underline): New function.
1518 (syms_of_term): defsubr it.
1519
1520 * keyboard.c (read_char): Call restore_getcjmp after jump occurs.
1521
1522 * dispnew.c (spec_glyph_lookup_face): New function.
1523 (build_frame_matrix_from_leaf_window): Use it.
1524
1525 * dispextern.h (spec_glyph_lookup_face): Add declaration.
1526
1527 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
1528
1529 2005-06-12 Richard M. Stallman <rms@gnu.org>
1530
1531 * keyboard.c (read_char): After catching a longjmp,
1532 call restore_getcjmp.
1533
1534 2005-06-17 Juanma Barranquero <lekktu@gmail.com>
1535
1536 * xselect.c (lisp_data_to_selection_data): Fix spelling.
1537
1538 2005-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1539
1540 * macterm.c (mac_compute_glyph_string_overhangs): Don't set
1541 overhangs unless the given glyph type is noncomposite CHAR_GLYPH.
1542 [USE_CARBON_EVENTS] (mac_convert_event_ref): Convert dead key down
1543 events.
1544 (XTread_socket): Don't pass keyboard events with the option
1545 modifier to the system when Vmac_command_key_is_meta is nil or
1546 Vmac_option_modifier is non-nil.
1547 [USE_CARBON_EVENTS] (read_socket_inev): New variable.
1548 [USE_CARBON_EVENTS] (init_command_handler): Fix argument.
1549 [USE_CARBON_EVENTS] (mac_handle_mouse_event): New Carbon event
1550 handler function.
1551 (install_window_handler) [USE_CARBON_EVENTS]: Install it.
1552 (XTread_socket) [USE_CARBON_EVENTS]: Move mouse wheel event
1553 handler part to mac_handle_mouse_event.
1554
1555 2005-06-14 Juanma Barranquero <lekktu@gmail.com>
1556
1557 * eval.c (Fdefvaralias): Rename arguments SYMBOL and ALIASED to
1558 NEW-ALIAS and BASE-VARIABLE, respectively.
1559
1560 2005-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
1561
1562 * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
1563 (get_phys_cursor_geometry, format_mode_line_unwind_data)
1564 (get_line_height_property, x_produce_glyphs): Remove unused vars.
1565
1566 * coding.c (run_pre_post_conversion_on_str): Remove unused var `buf'.
1567
1568 2005-06-13 Eli Zaretskii <eliz@gnu.org>
1569
1570 * w32term.c (x_use_underline_position_properties): New variable.
1571 (x_draw_glyph_string): Remind in a comment to change doc string of
1572 x-use-underline-position-properties if/when underline positioning
1573 is implemented.
1574 (syms_of_w32term): DEFVAR_BOOL x-use-underline-position-properties,
1575 and initialize it to nil.
1576
1577 2005-06-12 Jason Rumney <jasonr@gnu.org>
1578
1579 * w32fns.c (NEWOPENFILENAME): New struct.
1580 (Fx_file_dialog): Use it to trick the system into giving us up to
1581 date dialogs on systems that are documented to support it.
1582 Do not set OFN_FILEMUSTEXIST flag if looking for a directory.
1583
1584 2005-06-12 Eli Zaretskii <eliz@gnu.org>
1585
1586 * w32fns.c (w32_abort): Use the MB_YESNO dialog instead of
1587 MB_ABORTRETRYIGNORE. Never return, even if DebugBreak does.
1588
1589 2005-06-11 Eli Zaretskii <eliz@gnu.org>
1590
1591 * image.c (x_create_x_image_and_pixmap) [HAVE_NTGUI]: Cast 4th arg
1592 to CreateDIBSection to avoid a compiler warning.
1593 (pbm_load): Cast 3rd arg to IMAGE_BACKGROUND to avoid a compiler
1594 warning.
1595 (png_load): Cast return values of fn_png_create_read_struct and
1596 fn_png_create_info_struct, to avoid compiler warnings on W32.
1597 Cast 3rd arg to IMAGE_BACKGROUND and image_background_transparent
1598 to avoid compiler warnings.
1599 (jpeg_load): Cast return value of fn_jpeg_std_error to avoid a
1600 compiler warning on W32. Cast 3rd arg to IMAGE_BACKGROUND to
1601 avoid a compiler warning.
1602 (tiff_load): Cast return values of fn_TIFFOpen and
1603 fn_TIFFClientOpen to avoid compiler warning on W32. Cast 3rd arg
1604 to IMAGE_BACKGROUND to avoid a compiler warning.
1605 (gif_load): Cast return values of fn_DGifOpenFileName and
1606 fn_DGifOpen to avoid compiler warnings on W32. Cast 3rd arg to
1607 IMAGE_BACKGROUND to avoid a compiler warning.
1608 (DrawText) [HAVE_NTGUI || MAC_OS]: If already defined, undef
1609 before redefining.
1610
1611 * w32bdf.c (create_offscreen_bitmap): Cast `bitsp' to `void **' in
1612 the call to CreateDIBSection, to avoid a compiler warning.
1613
1614 2005-06-11 Jason Rumney <jasonr@gnu.org>
1615
1616 * w32fns.c (Fx_file_dialog): Unblock input before falling back to
1617 minibuffer.
1618 * macfns.c (Fx_file_dialog): Likewise.
1619
1620 2005-06-10 Eli Zaretskii <eliz@gnu.org>
1621
1622 * makefile.w32-in ($(TEMACS)): Depend on addsection.exe.
1623
1624 2005-06-10 Juanma Barranquero <lekktu@gmail.com>
1625
1626 * process.c (syms_of_process) [ADAPTIVE_READ_BUFFERING]:
1627 * w32fns.c (syms_of_w32fns): Fix spellings.
1628
1629 2005-06-10 Eli Zaretskii <eliz@gnu.org>
1630
1631 * unexw32.c (COPY_CHUNK, COPY_PROC_CHUNK): Add a new argument
1632 `verbose'; print diagnostic messages only if it is non-zero.
1633 All callers changed to pass a zero value unless DEBUG_DUMP is defined
1634 in the environment.
1635 (copy_executable_and_dump_data): Print section names with %.8s.
1636
1637 2005-06-10 Masatake YAMATO <jet@gyve.org>
1638
1639 * xdisp.c (note_mode_line_or_margin_highlight): Call clear_mouse_face
1640 when mouse_face is not given.
1641
1642 2005-06-09 Luc Teirlinck <teirllm@auburn.edu>
1643
1644 * window.c (Fselect_window): Adapt call to Fselect_frame.
1645
1646 * lisp.h: Update EXFUN of Fselect_frame.
1647
1648 * keyboard.c (command_loop_1): Adapt call to Fselect_frame.
1649
1650 * frame.c (Fhandle_switch_frame, Fselect_frame): Delete unused arg
1651 no_enter.
1652 (Fset_mouse_position, Fset_mouse_pixel_position, Ficonify_frame):
1653 Adapt to above change.
1654
1655 2005-06-10 Juanma Barranquero <lekktu@gmail.com>
1656
1657 * fns.c (Fmemq, Fmaphash): Doc fixes.
1658
1659 2005-06-09 Juanma Barranquero <lekktu@gmail.com>
1660
1661 * xfaces.c (Fdisplay_supports_face_attributes_p):
1662 Fix typo in docstring.
1663
1664 2005-06-08 Steven Tamm <steventamm@mac.com>
1665
1666 * unexmacosx.c (copy_data_segment): Copy __la_sym_ptr2 section
1667 used by gcc4 on intel mac.
1668
1669 2005-06-09 Kim F. Storm <storm@cua.dk>
1670
1671 * search.c (Fmatch_data): Add optional RESEAT arg. Unchain markers
1672 in REUSE list if non-nil; free them if equal to evaporate.
1673 (Fset_match_data): Add optional RESEAT arg. Unchain markers in LIST
1674 if non-nil; free them if equal to evaporate. Use XCAR/XCDR.
1675 (restore_search_regs): Rename from restore_match_data. Uses changed.
1676 (unwind_set_match_data): New function.
1677 (record_unwind_save_match_data): New function like save-match-data.
1678
1679 * lisp.h (Fmatch_data, Fset_match_data): Fix EXFUN.
1680 (record_unwind_save_match_data): Add prototype.
1681 (restore_search_regs): Rename from restore_match_data.
1682
1683 * composite.c (compose_chars_in_text):
1684 * eval.c (do_autoload):
1685 * macmenu.c (set_frame_menubar):
1686 * process.c (read_process_output, exec_sentinel):
1687 * xmenu.c (set_frame_menubar):
1688 * xdisp.c (prepare_menu_bars, update_menu_bar, update_tool_bar):
1689 * w32menu.c (set_frame_menubar):
1690 Use record_unwind_save_match_data.
1691
1692 2005-06-08 Richard M. Stallman <rms@gnu.org>
1693
1694 * xdisp.c (get_next_display_element): Alter previous change:
1695 Distinguish Vshow_nonbreak_escape = t or not t.
1696 For t, use escape_glyph once again, as before previous change.
1697 Use space or hyphen for display, instead of the non-ASCII char.
1698 (syms_of_xdisp) <show-nonbreak-escape>: Doc fix.
1699
1700 * process.c (Fstart_process): Don't touch command_channel_p slot.
1701
1702 * process.h (struct process): Delete command_channel_p.
1703
1704 2005-06-07 Masatake YAMATO <jet@gyve.org>
1705
1706 * xdisp.c (note_mode_line_or_margin_highlight):
1707 Check the overlapping of re-rendering area to avoid flickering.
1708 (note_mouse_highlight): Call clear_mouse_face if PART
1709 is not ON_MODE_LINE nor ON_HEADER_LINE.
1710
1711 2005-06-07 Kim F. Storm <storm@cua.dk>
1712
1713 * process.c: Improve commentary for adaptive read buffering.
1714
1715 2005-06-06 Stefan Monnier <monnier@iro.umontreal.ca>
1716
1717 * xterm.c (x_create_toolkit_scroll_bar): Use XtNarrowScrollbars
1718 if available.
1719
1720 2005-06-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1721
1722 * macmenu.c (menu_quit_handler, install_menu_quit_handler):
1723 New functions for popping down menus on C-g.
1724 (set_frame_menubar, mac_menu_show): Call install_menu_quit_handler.
1725
1726 * macterm.c: Make mac_quit_char_modifiers and mac_quit_char_keycode
1727 non-static.
1728
1729 * config.in: Add HAVE_CANCELMENUTRACKING.
1730
1731 2005-06-06 Eli Zaretskii <eliz@gnu.org>
1732
1733 * w32heap.h (OFFSET_TO_RVA, RVA_TO_OFFSET, RVA_TO_PTR): Remove macros.
1734
1735 * unexw32.c (RVA_TO_PTR): Move here from w32heap.h.
1736
1737 * w32proc.c (RVA_TO_PTR): New macro.
1738
1739 * w32heap.c (RVA_TO_PTR): No need to #undef now.
1740
1741 * makefile.w32-in ($(BLD)/emacs.$(O), $(BLD)/w32select.$(O)):
1742 Depend on w32heap.h.
1743
1744 2005-06-06 Luc Teirlinck <teirllm@auburn.edu>
1745
1746 * keyboard.c (command_loop_1): Update Vthis_original_command.
1747
1748 2005-06-06 Richard M. Stallman <rms@gnu.org>
1749
1750 * xmenu.c (popup_get_selection): Undo previous change.
1751
1752 2005-06-06 Juri Linkov <juri@jurta.org>
1753
1754 * xdisp.c (Qno_break_space): New variable.
1755 (syms_of_xdisp): Initialize it.
1756 (get_next_display_element): Add no-break space and soft hypen
1757 codes for iso8859-2 and iso8859-5. Don't add `\' for them.
1758 Use `no-break-space' face for no-break spaces.
1759
1760 2005-06-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1761
1762 * window.c (delete_window): Handle the case where a h/vchild has
1763 a h/vchild.
1764
1765 2005-06-05 Eli Zaretskii <eliz@gnu.org>
1766
1767 * w32.c (sys_setsockopt): Change arg 4 to `const void *'. In the
1768 call to pfn_setsockopt, cast optval to `const char *'.
1769
1770 2005-06-04 Eli Zaretskii <eliz@gnu.org>
1771
1772 * w32.c (gettimeofday): Use struct _timeb, not struct timeb.
1773 (open_unc_volume): Cast return value of map_w32_filename, to avoid
1774 compiler warnings.
1775
1776 * s/ms-w32.h (fileno): Don't define if already defined.
1777
1778 * emacs.c: Include w32heap.h, to avoid compiler warning about sbrk.
1779
1780 * makefile.w32-in (DOC): Define to point to the generated DOC-X.
1781
1782 2005-06-04 Richard M. Stallman <rms@gnu.org>
1783
1784 * xmenu.c (popup_get_selection): Click not in menu deactivates menu.
1785
1786 2005-06-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1787
1788 * macmenu.c (cleanup_popup_menu): New function.
1789 (Fx_popup_menu): Unwind protect cleanup_popup_menu in case
1790 mac_menu_show Quit:s.
1791 (mac_menu_show): Quit on cancel if not popped up on click (i.e.
1792 a dialog).
1793
1794 2005-06-04 Kim F. Storm <storm@cua.dk>
1795
1796 * coding.c (decode_coding_string): Handle CODING_FINISH_INTERRUPT.
1797
1798 * callproc.c (Fcall_process): Don't use alloca to gradually
1799 increase size of buf, as it effectively uses twice the necessary
1800 space on the stack. Instead, pre-allocate buf of full size, and
1801 gradually increase the read size.
1802
1803 * bytecode.c (BYTE_CODE_QUIT): Check Vthrow_on_input.
1804
1805 * eval.c (unbind_to): Preserve value of Vquit_flag.
1806
1807 * xterm.c (handle_one_xevent): Also ignore mouse motion just
1808 before a button release event.
1809
1810 2005-06-03 Juanma Barranquero <lekktu@gmail.com>
1811
1812 * xfaces.c (Finternal_lisp_face_equal_p): Really report
1813 on faces in a frame, if the argument FRAME is non-nil.
1814 Improve argument/docstring consistency.
1815
1816 2005-06-02 Kim F. Storm <storm@cua.dk>
1817
1818 * xdisp.c (MODE_LINE_NOPROP_LEN): New macro.
1819 (x_consider_frame_title, Fformat_mode_line): Save offset into
1820 mode_line_noprop_buf rather than pointer, in case buffer is relocated.
1821
1822 2005-06-01 Kim F. Storm <storm@cua.dk>
1823
1824 * fns.c (mapcar1): Maybe exit loop if original sequence was modified.
1825
1826 2005-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1827
1828 * macterm.c (mac_to_x_fontname, mac_do_list_fonts): Set XLFD
1829 resolution fields for scalable fonts to 0.
1830
1831 * xfaces.c (build_scalable_font_name): Round pixel size to the
1832 nearest integer.
1833
1834 2005-06-01 Kim F. Storm <storm@cua.dk>
1835
1836 * xdisp.c (display_mode_line): Support nested calls to redisplay
1837 and format-mode-line. Set mode_line_target to MODE_LINE_DISPLAY.
1838
1839 2005-05-31 Stefan Monnier <monnier@iro.umontreal.ca>
1840
1841 * fileio.c (Finsert_file_contents):
1842 * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
1843
1844 2005-05-31 Kim F. Storm <storm@cua.dk>
1845
1846 * xdisp.c (mode_line_noprop_buf, mode_line_noprop_buf_end)
1847 (mode_line_noprop_ptr): Rename from frame_title_*.
1848 (store_mode_line_noprop_char): Rename from store_frame_title_char.
1849 (store_mode_line_noprop): Rename from store_frame_title.
1850 (mode_line_target): New enum to specify current output target
1851 for mode line formatting.
1852 (display_mode_element): Test it rather than frame_title_ptr and
1853 mode_line_string_list to determine where output should go.
1854 (mode_line_proptrans_alist, mode_line_string_alist): Make static.
1855 (Vmode_line_unwind_vector): New variable.
1856 (format_mode_line_unwind_data, unwind_format_mode_line):
1857 New functions for unwind protection in mode line formatting.
1858 (x_consider_frame_title): Use them and new local var 'title_start'
1859 to support nested calls to format-mode-line and redisplay.
1860 Set mode_line_target to MODE_LINE_TITLE.
1861 (Fformat_mode_line): Use them and new local var 'string_start' to
1862 support nested calls to format-mode-line and redisplay.
1863 Set mode_line_target to MODE_LINE_NOPROP or MODE_LINE_STRING.
1864 Don't trim trailing dashes.
1865 (decode_mode_spec): Don't make infinite number of trailing dashes
1866 for MODE_LINE_NOPROP and MODE_LINE_STRING targets.
1867 (syms_of_xdisp): Initialize and staticpro mode_line_string_face,
1868 mode_line_string_face_prop, and Vmode_line_unwind_vector.
1869 (init_xdisp): Initialize mode_line_noprop_ptr to start of _buf.
1870 Initialize mode_line_target to MODE_LINE_DISPLAY.
1871
1872 2005-05-29 Richard M. Stallman <rms@gnu.org>
1873
1874 * buffer.c (Fbuffer_local_value): Call indirect_variable.
1875
1876 2005-05-28 Masatake YAMATO <jet@gyve.org>
1877
1878 * xdisp.c (note_mode_line_or_margin_highlight): Change the
1879 pointer to a hand cursor when hoovering over a mouse-face.
1880
1881 2005-05-27 Kenichi Handa <handa@m17n.org>
1882
1883 * xterm.c (x_encode_char): Call check_ccl_update in advance.
1884
1885 * ccl.c: Now an element of Vccl_program_table is a vector of
1886 length 4, not 3.
1887 (ccl_get_compiled_code): New arg idx. Caller changed.
1888 Adjust for the change of Vccl_program_table.
1889 (setup_ccl_program): Adjust for the change of Vccl_program_table.
1890 (check_ccl_update): New function.
1891 (Fregister_ccl_program): Use ASET to set an element of a vector.
1892 Adjusted for the change of Vccl_program_table.
1893
1894 * ccl.h (struct ccl_program): New member idx.
1895 (check_ccl_update): Extern it.
1896
1897 2005-05-27 Juanma Barranquero <lekktu@gmail.com>
1898
1899 * image.c (Vimage_library_alist): Move from image.el.
1900 (syms_of_image): Defvar it.
1901 (lookup_image_type): Use it.
1902
1903 * buffer.c (Fbuffer_local_value): Make argument name match its use
1904 in docstring.
1905
1906 2005-05-26 Juanma Barranquero <lekktu@gmail.com>
1907
1908 * keyboard.c (Frecursive_edit): Fix typo in docstring.
1909 (Fposn_at_x_y): Make argument name match its use in docstring.
1910
1911 2005-05-26 Lute Kamstra <lute@gnu.org>
1912
1913 * eval.c (Frun_hooks): Mention run-mode-hooks in docstring.
1914
1915 2005-05-24 Masatake YAMATO <jet@gyve.org>
1916
1917 * xdisp.c (note_mode_line_or_margin_highlight): Use b and e
1918 as loop sentinels.
1919
1920 2005-05-24 Nick Roberts <nickrob@snap.net.nz>
1921
1922 * xmenu.c (Fx_popup_dialog): Add a third boolean argument to
1923 select frame title ("Question"/"Information").
1924 (xdialog_show): Use it.
1925
1926 * macmenu.c (Fx_popup_dialog, mac_dialog_show): As for xmenu.c.
1927
1928 * w32menu.c (Fx_popup_dialog, w32_dialog_show): As for xmenu.c.
1929
1930 * fns.c (Fyes_or_no_p, Fy_or_n_p): Call Fx_popup_dialog with
1931 a third argument (Qnil).
1932
1933 * lisp.h: x-popup-dialog can have three arguments.
1934
1935 * editfns.c (Fmessage_box): Use "Information" for frame title.
1936
1937 2005-05-23 Thien-Thi Nguyen <ttn@gnu.org>
1938
1939 * termcap.c [VMS]: Include <starlet.h>.
1940
1941 2005-05-23 Masatake YAMATO <jet@gyve.org>
1942
1943 * xdisp.c (note_mode_line_or_margin_highlight): Add code
1944 for mouse-face. Change the type of the first argument from `window'
1945 to `Lisp_Object'.
1946 (note_mouse_highlight): Call note_mode_line_or_margin_highlight with
1947 window instead of w.
1948
1949 2005-05-22 Andreas Schwab <schwab@suse.de>
1950
1951 * process.c (send_process): Move misplaced volatile.
1952
1953 2005-05-21 Richard M. Stallman <rms@gnu.org>
1954
1955 * xdisp.c (display_mode_element): If we're processing a list and
1956 padding is specified, put it after the last element.
1957
1958 2005-05-21 Eli Zaretskii <eliz@gnu.org>
1959
1960 * fileio.c (Fexpand_file_name) [DOS_NT]: Don't try to support
1961 "superroot" on DOS_NT systems.
1962
1963 2005-05-21 David Hunter <hunterd42@comcast.net> (tiny change)
1964
1965 * process.c (send_process): Restore the SIGPIPE handler if we
1966 catch a SIGPIPE.
1967
1968 2005-05-20 Juanma Barranquero <lekktu@gmail.com>
1969
1970 * image.c (lookup_image, png_read_from_memory): Remove hacks (and
1971 misleading comments).
1972 (DEF_IMGLIB_FN): Use C calling convention for image libraries.
1973
1974 2005-05-20 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
1975
1976 * window.c (Fwindow_inside_edges, Fwindow_inside_pixel_edges):
1977 Correct the right value.
1978
1979 2005-05-19 Nick Roberts <nickrob@snap.net.nz>
1980
1981 * keyboard.c (syms_of_keyboard): Remove Lisp variables
1982 post-command-idle-hook and post-command-idle-delay.
1983 (command_loop_1): Don't try to execute post-command-idle-hook.
1984
1985 2005-05-16 Kim F. Storm <storm@cua.dk>
1986
1987 * xdisp.c (handle_display_prop): Handle empty replacement.
1988 (handle_single_display_spec): Return -1 for empty replacement.
1989
1990 * keyboard.c (adjust_point_for_property): Skip empty overlay string.
1991
1992 * .gdbinit (pitx): Print more info about iterator.
1993
1994 2005-05-16 Andreas Schwab <schwab@suse.de>
1995
1996 * unexmacosx.c (unexec_realloc): Move declarations before statements.
1997
1998 2005-05-14 Richard M. Stallman <rms@gnu.org>
1999
2000 * xdisp.c (message3): Call cancel_echoing.
2001
2002 * alloc.c (Fmemory_full_p): New function.
2003 (syms_of_alloc): defsubr it.
2004
2005 * process.c (send_process_trap): Unblock SIGPIPE.
2006 (send_process): Reset SIGPIPE handler before reporting error.
2007
2008 2005-05-14 Nick Roberts <nickrob@snap.net.nz>
2009
2010 * emacs.c (syms_of_emacs): Fix doc string for system-type.
2011
2012 2005-05-13 Richard M. Stallman <rms@gnu.org>
2013
2014 * fileio.c (Ffind_file_name_handler): Handle lambda-exp as handler.
2015 (Finsert_file_contents): If we read 0 bytes from a special file,
2016 unlock the visited file if we locked it.
2017 (Fmake_symbolic_link, Frecent_auto_save_p): Doc fixes.
2018 (Ffile_exists_p, Ffile_symlink_p): Doc fixes.
2019
2020 2005-05-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2021
2022 * emacs.c (main) [MAC_OS8]: Call init_atimer before mac_term_init.
2023
2024 * keyboard.c (readable_events) [USE_TOOLKIT_SCROLL_BARS]:
2025 Regard toolkit scroll bar thumb drag events as squeezable and prevent
2026 redisplay from being paused by them.
2027
2028 * mac.c [!MAC_OSX]: Include keyboard.h and syssignal.h.
2029 [!MAC_OSX] (target_ticks): Remove variable.
2030 [!MAC_OSX] (check_alarm, pause, index): Remove functions.
2031 [!MAC_OSX && __MRC__] (sys_strftime): Likewise.
2032 [!MAC_OSX] (select): If fd 0 is not set in rfds and some input
2033 event occurs before timeout, behave as if the function were interrupted.
2034 [!MAC_OSX] (sigblock, sigsetmask, alarm): Simulate SIGALRM
2035 handling using Time Manager routines.
2036 [!MAC_OSX] (mac_atimer_task, mac_atimer_qlink, signal_mask):
2037 New variables.
2038 [!MAC_OSX] (mac_atimer_handler, set_mac_atimer, remove_mac_atimer)
2039 (setitimer): New functions.
2040
2041 * macfns.c, macmenu.c: Don't include signal.h.
2042
2043 * macterm.c [USE_TOOLKIT_SCROLL_BARS] (get_control_part_bounds):
2044 Rename from get_control_part_bound. All callers changed.
2045 (x_scroll_bar_clear): New function.
2046 (x_clear_frame): Use it.
2047 (XTset_vertical_scroll_bar): Don't call Draw1Control.
2048 (x_scroll_bar_handle_click): Change type of second argument from
2049 int to ControlPartCode.
2050 (check_alarm): Remove declaration.
2051 (XTread_socket) [!TARGET_API_MAC_CARBON]: Don't call it.
2052 (XTread_socket): Use ControlPartCode instead of SInt16.
2053
2054 2005-05-13 Nozomu Ando <nand@mac.com>
2055
2056 * unexmacosx.c: Include assert.h.
2057 (MACOSX_MALLOC_MULT16): New define.
2058 [MACOSX_MALLOC_MULT16] (ptr_in_unexec_regions): Determine whether
2059 ptr is in unexec regions by checking it is multiple of 16.
2060 (unexec_malloc_header_t): New typedef.
2061 (unexec_malloc, unexec_realloc, unexec_free): Store and use
2062 allocated size information in unexec_malloc_header.
2063
2064 2005-05-10 Richard M. Stallman <rms@gnu.org>
2065
2066 * xterm.c (noinclude): Add #undef.
2067
2068 * image.c, xfns.c, xmenu.c: Don't include signal.h.
2069
2070 2005-05-09 Juanma Barranquero <lekktu@gmail.com>
2071
2072 * fileio.c (Fexpand_file_name, Frename_file, Fadd_name_to_file)
2073 (Fmake_symbolic_link, Faccess_file, Frecent_auto_save_p):
2074 Doc fixes.
2075
2076 * dired.c (Ffile_name_completion): Make argument name
2077 match its use in docstring.
2078
2079 2005-05-08 Luc Teirlinck <teirllm@auburn.edu>
2080
2081 * eval.c (Fdefvaralias): Remove any pre-existing
2082 variable-documentation property of the alias.
2083
2084 2005-05-07 Thien-Thi Nguyen <ttn@gnu.org>
2085
2086 * xfns.c (start_hourglass): Do nothing when running on a tty.
2087
2088 2005-05-07 Juanma Barranquero <lekktu@gmail.com>
2089
2090 * fns.c (Fchar_table_range): Fix typos in docstring.
2091
2092 2005-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
2093
2094 * fns.c (Fchar_table_range): Yet Another Int/Lisp_Object Mixup.
2095
2096 2005-05-06 Eli Zaretskii <eliz@gnu.org>
2097
2098 * lread.c (Flocate_file_internal): Doc fix.
2099
2100 * Makefile.in (lisp, shortlisp): Add jka-cmpr-hook.elc.
2101
2102 2005-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2103
2104 * macselect.c (x_own_selection): Accept Lisp string as result of
2105 selection converter function.
2106 (x_clear_frame_selections): Don't call x-lost-selection-functions
2107 if Emacs is not owner of the selection.
2108 (Vmac_services_selection): Put variable and initialization in
2109 #ifdef MAC_OSX.
2110 (syms_of_macselect) [MAC_OSX]: Set default value of
2111 Vmac_services_selection to PRIMARY.
2112
2113 * macterm.c (toolkit_scroll_bar_interaction): Remove unused variable.
2114 (mac_handle_tool_bar_click): Remove unused function and declaration.
2115 [USE_TOOLKIT_SCROLL_BARS] (scroll_bar_timer_callback)
2116 (install_scroll_bar_timer, set_scroll_bar_timer)
2117 (control_part_code_to_scroll_bar_part, construct_scroll_bar_click)
2118 (get_control_part_bound, x_scroll_bar_handle_press)
2119 (x_scroll_bar_handle_release, x_scroll_bar_handle_drag)
2120 (x_set_toolkit_scroll_bar_thumb): New functions and declarations.
2121 [USE_TOOLKIT_SCROLL_BARS] (last_scroll_bar_part, scroll_bar_timer)
2122 (scroll_bar_timer_event_posted_p): New variables.
2123 [USE_TOOLKIT_SCROLL_BARS] (SCROLL_BAR_FIRST_DELAY)
2124 (SCROLL_BAR_CONTINUOUS_DELAY): New macros.
2125 (x_scroll_bar_create): Set control reference with NewControl.
2126 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
2127 Initialize track_top and track_height to nil.
2128 (x_scroll_bar_set_handle, x_scroll_bar_note_movement):
2129 Put functions in #ifndef USE_TOOLKIT_SCROLL_BARS.
2130 (XTset_vertical_scroll_bar): Don't make space between scroll bar
2131 and associated window.
2132 (XTset_vertical_scroll_bar) [MAC_OSX]: Get scroll bar area width
2133 from window config.
2134 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
2135 Set track_top and track_height to nil when scroll bar size is changed.
2136 Recalculate them if they are nil.
2137 (XTread_socket) [MAC_OSX]: Use control kind to determine if the
2138 clicked control is a scroll bar.
2139 (XTread_socket) [USE_TOOLKIT_SCROLL_BARS]: Use toolkit scroll bar
2140 event handler functions. Don't add modifiers to scroll bar click
2141 events. Call scroll bar release handler when window is deactivated.
2142 (mac_initialize): Remove unused code for X toolkit.
2143 (syms_of_macterm) [!USE_TOOLKIT_SCROLL_BARS]:
2144 Initialize Vx_toolkit_scroll_bars to nil.
2145
2146 * macterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
2147 New members track_top and track_height.
2148
2149 * sysselect.h [DARWIN || MAC_OSX]: Temporarily undefine
2150 init_process when including sys/select.h.
2151
2152 2005-05-05 Luc Teirlinck <teirllm@auburn.edu>
2153
2154 * eval.c (Fdefvaralias): Doc fix.
2155
2156 * xmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
2157
2158 2005-05-05 Kim F. Storm <storm@cua.dk>
2159
2160 * buffer.c (init_buffer_once): Set cursor_in_non_selected_windows
2161 default value.
2162 (syms_of_buffer): Add default-cursor-in-non-selected-windows.
2163 Fix type of cursor-in-non-selected-windows.
2164
2165 2005-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2166
2167 * mac.c: #undef init_process so not to conflict with system headers.
2168
2169 2005-05-02 Richard M. Stallman <rms@gnu.org>
2170
2171 * buffer.c (syms_of_buffer): Define cursor-in-non-selected-windows.
2172
2173 * buffer.h (struct buffer): Add cursor_in_non_selected_windows slot.
2174
2175 * xdisp.c (Vcursor_in_non_selected_windows)
2176 (Qcursor_in_non_selected_windows): Vars deleted.
2177 (syms_of_xdisp): Don't initialize them.
2178 (get_window_cursor_type): Use cursor_in_non_selected_windows
2179 buffer slot.
2180
2181 2005-05-02 Kim F. Storm <storm@cua.dk>
2182
2183 * macros.c (executing_kbd_macro_index): Rename from
2184 executing_macro_index. All uses changed.
2185 (executing_kbd_macro_iterations): Rename from
2186 executing_macro_iterations. All uses changed.
2187 (executing_kbd_macro): Rename from executing_macro.
2188 All uses changed.
2189 (syms_of_macros): Rename Lisp var executing-macro-index to
2190 executing-kbd-macro-index.
2191
2192 * xdisp.c (move_it_in_display_line_to): Fix last change.
2193
2194 2005-05-01 Luc Teirlinck <teirllm@auburn.edu>
2195
2196 * xmenu.c (Fx_popup_menu): Doc fix.
2197
2198 * charset.c (syms_of_charset): Delete defsubr for Schars_in_region.
2199
2200 2005-05-02 Jason Rumney <jasonr@gnu.org>
2201
2202 * emacs.c (USAGE3, USAGE4): Keep strings below 2048 bytes.
2203
2204 2005-05-02 Nozomu Ando <nand@mac.com>
2205
2206 * sysselect.h: Fix typo.
2207
2208 2005-05-02 Nick Roberts <nickrob@snap.net.nz>
2209
2210 * charset.c (Fchars_in_region): Remove as obsolete.
2211
2212 2005-05-01 Kim F. Storm <storm@cua.dk>
2213
2214 * xdisp.c (move_it_in_display_line_to): Stop if we move beyond
2215 TO_CHARPOS. This may happen if last glyphs was an image or stretch
2216 glyph.
2217
2218 2005-05-01 Luc Teirlinck <teirllm@auburn.edu>
2219
2220 * dispnew.c (sit_for): Vexecuting_macro -> Vexecuting_kbd_macro.
2221
2222 2005-05-01 Richard M. Stallman <rms@gnu.org>
2223
2224 * xmenu.c [not HAVE_X_TOOLKIT] (xmenu_show):
2225 If user cancels the menu, quit unless FOR_CLICK.
2226
2227 * macros.c (Vexecuting_kbd_macro): Rename from Vexecuting_macro.
2228 All uses changed.
2229 (syms_of_macros): Define only executing-kbd-macro, not executing-macro.
2230 * keyboard.c: Change Vexecuting_macro to Vexecuting_kbd_macro.
2231 * macros.h (Vexecuting_kbd_macro): Declare instead of Vexecuting_macro.
2232 * commands.h (Vexecuting_kbd_macro): Likewise.
2233
2234 2005-05-01 Thien-Thi Nguyen <ttn@gnu.org>
2235
2236 * sysdep.c (get_frame_size) [VMS]: Use a fresh i/o channel.
2237
2238 2005-04-30 Richard M. Stallman <rms@gnu.org>
2239
2240 * fileio.c (Ffind_file_name_handler): Handle the `operations'
2241 property of the file name handler.
2242 (Qoperations): New variable.
2243 (syms_of_fileio): Initialize and staticpro it.
2244
2245 * xdisp.c (set_message_1): Delete xassert.
2246
2247 2005-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2248
2249 * mac.c: Don't include time.h. Include sysselect.h after systime.h.
2250
2251 * macfns.c (Fx_server_version): Add BLOCK_INPUT around Gestalt.
2252
2253 * macgui.h [HAVE_CARBON && MAC_OSX]: Don't undefine/define mktime
2254 before/after including Carbon.h if there is a working mktime.
2255
2256 2005-04-28 Kim F. Storm <storm@cua.dk>
2257
2258 * xfaces.c (resolve_face_name): Add arg SIGNAL_P. Calls changed.
2259 Fix cyclic alias check. If alias loop is detected, signal
2260 circular-list error if SIGNAL_P, and return Qdefault if !SIGNAL_P.
2261
2262 2005-04-28 Lute Kamstra <lute@gnu.org>
2263
2264 * eval.c (do_autoload): Record only autoloads in the autoload
2265 property of symbols.
2266
2267 2005-04-28 Nick Roberts <nickrob@snap.net.nz>
2268
2269 * emacs.c (USAGE1): Add --basic-display and --quick options.
2270
2271 2005-04-27 Kim F. Storm <storm@cua.dk>
2272
2273 * data.c (syms_of_data) Staticpro Qcyclic_variable_indirection.
2274
2275 2005-04-26 Richard M. Stallman <rms@gnu.org>
2276
2277 * window.c (Fsame_window_p, Fspecial_display_p): Doc fixes.
2278 (syms_of_window): Doc fixes.
2279
2280 * indent.c (Fvertical_motion): Undo previous change.
2281
2282 2005-04-26 Kenichi Handa <handa@m17n.org>
2283
2284 * fns.c (char_table_range): New function.
2285 (Fchar_table_range): Signal an error if characters in the range
2286 have inconsistent values. Don't check the parent.
2287
2288 2005-04-25 Kenichi Handa <handa@m17n.org>
2289
2290 * fontset.c (fontset_set): Fix previous change.
2291
2292 2005-04-24 Richard M. Stallman <rms@gnu.org>
2293
2294 * indent.c (Fvertical_motion): Bind fontification-functions to nil.
2295
2296 2005-04-24 Eli Zaretskii <eliz@gnu.org>
2297
2298 * regex.c (re_search_2, re_match_2_internal): Convert second arg
2299 of RE_TRANSLATE to int, to shut up GCC warnings.
2300
2301 * fileio.c (Fcopy_file): Doc fix.
2302 [MSDOS]: Fix call to emacs_open: buffer_file_type not defined and
2303 not needed.
2304
2305 2005-04-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2306
2307 * Makefile.in [HAVE_CARBON] (MAC_OBJ): Add macselect.o.
2308 (SOME_MACHINE_OBJECTS): Likewise.
2309 (mac.o): Depend on ccl.h.
2310 (macselect.o): New target.
2311
2312 * emacs.c (main) [MAC_OS8 || MAC_OSX && HAVE_CARBON]:
2313 Call syms_of_macselect.
2314
2315 * frame.c (Fdelete_frame) [MAC_OS]: Call x_clear_frame_selections.
2316
2317 * mac.c [!TARGET_API_MAC_CARBON]: Don't include charset.h or coding.h.
2318 (QCLIPBOARD): Remove variable.
2319 (syms_of_mac): Don't initialize it.
2320 (Fmac_paste_function, Fmac_cut_function, Fx_selection_exists_p):
2321 Remove functions.
2322 (syms_of_mac): Don't defsubr them.
2323 [TARGET_API_MAC_CARBON] (Qmime_charset, QNFD, QNFKD, QNFC, QNFKC)
2324 (QHFS_plus_D, QHFS_plus_C): New variables.
2325 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
2326 [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp)
2327 (cfstring_create_normalized): New functions.
2328 [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Likewise.
2329 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
2330
2331 * macterm.c (handling_window_update, terminate_flag):
2332 Remove variables.
2333 (do_window_update, do_ae_quit_application, XTread_socket):
2334 Don't use them.
2335 (WNE_SLEEP_AT_SUSPEND, WNE_SLEEP_AT_RESUME): Don't define.
2336 [USE_CARBON_EVENTS && MAC_OSX] (mac_handle_service_event)
2337 (init_service_handler): Move to macselect.c. Remove declarations.
2338 [USE_CARBON_EVENTS && MAC_OSX] (init_service_handler): Add extern.
2339 (Qapplication, Qabout): New variables.
2340 (syms_of_mac): Initialize them.
2341 [USE_CARBON_EVENTS && MAC_OSX] (Qpreferences, Qservices, Qpaste)
2342 (Qperform): New variables.
2343 (syms_of_mac) [USE_CARBON_EVENTS && MAC_OSX]: Initialize them.
2344 (do_get_menus) [TARGET_API_MAC_CARBON]: Don't call AppendResMenu.
2345 (do_menu_choice): Unhighlight menu bar also when menu_id is 0.
2346 (mac_store_application_menu_event, init_menu_bar): New functions.
2347 [USE_CARBON_EVENTS] (mac_handle_command_event)
2348 (init_command_handler): New functions.
2349 (mac_handle_window_event): Return noErr on window update event.
2350 (do_ae_quit_application): Call mac_store_application_menu_event.
2351 (mac_initialize) [USE_CARBON_EVENTS]: Call init_command_handler
2352 and init_menu_bar.
2353
2354 * macterm.h (x_clear_frame_selections): Add extern.
2355
2356 * macselect.c: New file for selection processing on Mac OS.
2357
2358 2005-04-23 Richard M. Stallman <rms@gnu.org>
2359
2360 * fileio.c (Fcopy_file): New arg MUSTBENEW.
2361 (Frename_file): Pass new arg to Fcopy_file.
2362
2363 * window.c (window_size_fixed): Variable deleted.
2364 (syms_of_window): Initialize window-size-fixed to nil.
2365 But don't DEFVAR window_size_fixed.
2366
2367 2005-04-23 Andreas Schwab <schwab@suse.de>
2368
2369 * m/macppc.h (LD_SWITCH_MACHINE) [LINUX]: Don't define.
2370 (START_FILES, LIB_STANDARD) [LINUX && _ARCH_PPC64]: Override to
2371 use lib64 instead of lib.
2372 (_LP64) [_ARCH_PPC64]: Define if not defined.
2373
2374 2005-04-23 David Hunter <hunterd42@comcast.net> (tiny change)
2375
2376 * s/ms-w32.h (HAVE_PWD_H): Define.
2377
2378 2005-04-22 Kenichi Handa <handa@m17n.org>
2379
2380 * fns.c (copy_sub_char_table): Explicitly copy the default value
2381 of the sub-chartable.
2382
2383 * fontset.c (fontset_set): When a sub-chartable is created,
2384 explicitly sets the defalt value.
2385
2386 2005-04-22 Kim F. Storm <storm@cua.dk>
2387
2388 * fns.c (Fplist_get): Replace by Fsafe_plist_get.
2389 (Fsafe_plist_get): Rename to Fplist_get.
2390 (Fsafe_get): Remove, as Fget now uses safe Fplist_get.
2391 (defsubr): Remove defsubr for Fsafe_plist_get and Fsafe_get.
2392
2393 * lisp.h (Fsafe_plist_get, Fsafe_get): Remove EXFUN.
2394
2395 * xdisp.c (store_mode_line_string, produce_stretch_glyph)
2396 (note_mode_line_or_margin_highlight, note_mouse_highlight):
2397 Use Fplist_get instead of Fsafe_plist_get.
2398
2399 * xfaces.c (resolve_face_name): Use Fget instead of Fsafe_get.
2400
2401 2005-04-21 Miles Bader <miles@gnu.org>
2402
2403 * xdisp.c (dump_glyph_row): Don't display overlay_arrow_p field.
2404
2405 2005-04-20 Thien-Thi Nguyen <ttn@gnu.org>
2406
2407 * sysdep.c: Remove reference to defunct vms-pwd.h.
2408 * dired.c: Likewise. Also, for pwd.h, use HAVE_PWD_H, not !VMS.
2409 * editfns.c, fileio.c, filelock.c, sysdep.c, xrdb.c: Likewise.
2410
2411 * config.in: Regenerate.
2412
2413 2005-04-20 Kenichi Handa <handa@m17n.org>
2414
2415 * lisp.h (CHAR_TABLE_DEFAULT_SLOT_ASCII): New macro.
2416 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_CONTROL): New macro.
2417 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_GRAPHIC): New macro.
2418
2419 * alloc.c (make_sub_char_table): Argument changed to initial
2420 value of the slots.
2421
2422 * data.c (Faref): Handle special slots used as default values of
2423 ascii, eight-bit-control, eight-bit-control. Don't ignore a
2424 default value set for a group of characters.
2425 (Faset): Signal an error if IDXVAL is not a valid character code.
2426 Make a sub-chartable with correct initial value.
2427
2428 * fns.c (Fset_char_table_range): Don't set slots used as default
2429 values for ascii, eight-bit-control, eight-bit-graphic.
2430 Don't call Faref with charset-id.
2431 (Fset_char_table_default): Document how to treat normal character
2432 argument. Handle special slots used as default values of ascii,
2433 eight-bit-control, eight-bit-control. Make a sub chartable if
2434 necessary.
2435
2436 2005-04-20 Kenichi Handa <handa@m17n.org>
2437
2438 * search.c (boyer_moore): Fix previous change.
2439
2440 2005-04-19 Kim F. Storm <storm@cua.dk>
2441
2442 * xdisp.c (setup_for_ellipsis): Reset saved_face_id to use default
2443 face unless last visible char and first invisible char have the
2444 same face. Also use default face if saved_face_id is undefined.
2445
2446 2005-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2447
2448 * macgui.h (MacFontStruct): Remove member `fontname'. Add member
2449 `full_name'.
2450 [TARGET_API_MAC_CARBON] (MacFontStruct): Use type int for
2451 mac_scriptcode member.
2452
2453 * macterm.c (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): Remove variables.
2454 (syms_of_mac): Don't initialize them.
2455 (Vmac_charset_info_alist): New variable.
2456 (syms_of_mac): Defvar it.
2457 (create_text_encoding_info_alist): New function.
2458 (decode_mac_font_name, mac_to_x_fontname)
2459 (x_font_name_to_mac_font_name, init_font_name_table): Don't hard
2460 code the correspondence among XLFD charsets, Mac script codes, and
2461 Emacs coding systems. Use Vmac_charset_info_alist and result of
2462 create_text_encoding_info_alist instead.
2463 (init_font_name_table) [TARGET_API_MAC_CARBON]: Use Font Manager
2464 routines also on Mac OS Classic.
2465 (init_font_name_table) [!TARGET_API_MAC_CARBON]:
2466 Use add_font_name_table_entry.
2467 (mac_do_list_fonts): Regard 0 in XLFD scaleble fields as
2468 specified. Derive unspecified scalable fields from specified one.
2469 (x_list_fonts): Consider Valternate_fontname_alist.
2470 (kDefaultFontSize): Change value from 9 to 12.
2471 (XLoadQueryFont): Get decoded font family, font face, and charset
2472 from x_font_name_to_mac_font_name. Set full name of loaded font.
2473 (mac_unload_font): Free `full_name' member.
2474 (x_load_font): Don't try XLoadQueryFont if x_list_fonts returns
2475 NULL. Copy full_name member of struct MacFontStruct to that of
2476 struct font_info.
2477
2478 2005-04-19 Kim F. Storm <storm@cua.dk>
2479
2480 * xdisp.c (handle_stop): Set saved_face_id to current face if
2481 selective_display_ellipsis_p so ellipsis will be shown in same
2482 face as preceding text.
2483 (setup_for_ellipsis): Don't set saved_face_id here.
2484 (next_element_from_display_vector): Default to saved_face_id.
2485
2486 * fns.c (Fsafe_get): New function.
2487 (syms_of_fns): Defsubr it.
2488
2489 * lisp.h (Fsafe_get): EXFUN it.
2490
2491 * xfaces.c (resolve_face_name): Use Fsafe_get to avoid redisplay
2492 loops in case of bad face property lists. Limit number of face
2493 alias lookups to 10 (in case of face alias loops).
2494
2495 2005-04-18 Kim F. Storm <storm@cua.dk>
2496
2497 * dispextern.h (struct glyph_row): New member overlay_arrow_bitmap.
2498 It replaces the corresponding member from struct window, as a
2499 window may now show multiple overlay arrows.
2500 Remove member overlay_arrow_p, superseeded by overlay_arrow_bitmap.
2501
2502 * dispnew.c (row_equal_p, update_window_line, scrolling_window):
2503 Compare overlay_arrow_bitmap than overlay_arrow_p members.
2504
2505 * fringe.c (draw_fringe_bitmap): Use overlay_arrow_bitmap from row
2506 rather than from window.
2507 (update_window_fringes): Compare overlay_arrow_bitmap rather than
2508 overlay_arrow_p members.
2509 (Ffringe_bitmaps_at_pos): Return fringe overlay_arrow_bitmap name
2510 if not default.
2511
2512 * window.h (struct window): Remove member overlay_arrow_bitmap.
2513
2514 * window.c (make_window): Don't initialize overlay_arrow_bitmap.
2515
2516 * xdisp.c (overlay_arrow_string_or_property): Remove PBITMAP arg.
2517 Calls changed. Don't check for overlay-arrow-bitmap property here.
2518 (overlay_arrow_at_row): Remove PBITMAP arg. Instead, if left
2519 fringe is present, return Lisp integer for bitmap (or -1 for default).
2520 Fix value of overlay-arrow-bitmap property to be a symbol, use
2521 lookup_fringe_bitmap to parse it.
2522 (display_line): Change call to overlay_arrow_at_row. Store integer
2523 return value as overlay bitmap in row rather than window.
2524 Only show overlay arrow if row displays text, or if no other overlay
2525 arrow is seen in window (if overlay marker is at point-max).
2526
2527 2005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
2528
2529 * xfaces.c (realize_x_face) [!HAVE_WINDOW_SYSTEM]: Return NULL.
2530
2531 2005-04-18 Lute Kamstra <lute@gnu.org>
2532
2533 * lread.c (Vloads_in_progress): Static.
2534 * fns.c (Vloads_in_progress): Remove extern.
2535 (load_in_progress): Add extern.
2536 (Frequire): Use load_in_progress instead of Vloads_in_progress.
2537
2538 2005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
2539
2540 * xmenu.c (Fx_popup_menu): Initialize error_name to NULL.
2541
2542 2005-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2543
2544 * macterm.c (XTread_socket): Don't beep on keyboard input even if
2545 no frame is visible.
2546
2547 2005-04-16 Dan Nicolaescu <dann@ics.uci.edu>
2548
2549 * term.c (struct keys): Add support for shifted keys.
2550
2551 2005-04-16 Richard M. Stallman <rms@gnu.org>
2552
2553 * xdisp.c (with_echo_area_buffer): Delete WHICH < 0 case.
2554 (set_message): Call with_echo_area_buffer with WHICH = 0.
2555 (set_message_1): Erase the echo area buffer first thing.
2556 (echo_area_display): Don't clear echo_message_buffer.
2557
2558 2005-04-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2559
2560 * Makefile.in (mac.o): Depend on charset.h and coding.h.
2561
2562 * mac.c: Include charset.h and coding.h.
2563 [TARGET_API_MAC_CARBON] (Qutf_8): Remove extern.
2564 [TARGET_API_MAC_CARBON] (cfstring_create_with_string): New function.
2565 [TARGET_API_MAC_CARBON] (Fmac_get_preference): Use it.
2566
2567 * macfns.c [TARGET_API_MAC_CARBON] (Fx_file_dialog): Likewise.
2568
2569 * image.c [MAC_OSX] (image_load_quartz2d): Likewise.
2570
2571 * macterm.c (x_autoselect_window_p): Remove variable.
2572 (last_window): New variable.
2573 (XTreassert_line_highlight, x_change_line_highlight):
2574 Remove declarations.
2575 (mac_focus_changed, x_detect_focus_change): New functions and
2576 declarations.
2577 (XTextExtents16, front_emacs_window): Remove function.
2578 (mac_focus_frame): New function.
2579 (XTmouse_position, do_menu_choice, do_zoom_window, XTread_socket)
2580 (mac_check_for_quit_char): Use it instead of front_emacs_window.
2581 (x_scroll_bar_report_motion): Obtain window from control owner.
2582 (x_make_frame_invisible): Set window manager size hint.
2583 (do_mouse_moved): Remove function.
2584 (XTread_socket): Move its contents here. Generate select-window
2585 event on mouse movement if needed. Use x_detect_focus_change on
2586 activate/deactivate events. Don't deiconify frame or invalidate
2587 window rectangle when dnd items are dropped.
2588 Don't activate/deactivate root control.
2589 (frame_highlight, frame_unhighlight): Activate/deactivate root
2590 control here.
2591 (syms_of_macterm): Delete DEFVAR_BOOL for x_autoselect_window_p.
2592
2593 * macterm.h (cfstring_create_with_string) [TARGET_API_MAC_CARBON]:
2594 New extern.
2595
2596 2005-04-15 Luc Teirlinck <teirllm@auburn.edu>
2597
2598 * Makefile.in: Define new macro TOOLTIP_SUPPORT.
2599 (lisp): Use it.
2600 (SOME_MACHINE_LISP): Add tooltip.
2601
2602 2005-04-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2603
2604 * mac.c [!TARGET_API_MAC_CARBON]: Include MacLocales.h.
2605 Don't include TextEncodingConverter.h.
2606 (mac_system_script_code, Vmac_system_locale): New variables.
2607 (syms_of_mac): Defvar them.
2608 (mac_get_system_locale): New function.
2609
2610 * macfns.c (x_set_name, x_set_title) [!TARGET_API_MAC_CARBON]:
2611 Use ENCODE_SYSTEM to encode title bar string.
2612 (x_create_tip_frame): Apply 2005-03-18 change for xfns.c.
2613 (Fx_file_dialog) [TARGET_API_MAC_CARBON && !MAC_OSX]:
2614 Use CFStringGetSystemEncoding to get system default string encoding.
2615
2616 * macterm.c [!TARGET_API_MAC_CARBON]: Don't include
2617 TextEncodingConverter.h.
2618
2619 2005-04-13 Steven Tamm <steventamm@mac.com>
2620
2621 * macterm.c (syms_of_macterm): Remove redundant definition of
2622 mac-pass-control-to-system.
2623
2624 2005-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
2625
2626 * window.c (Fset_window_configuration): Be careful when you choose
2627 among several possible points for the new_current_buffer.
2628
2629 2005-04-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2630
2631 * keyboard.c (poll_for_input) [SYNC_INPUT]: Don't call
2632 poll_for_input_1. Set interrupt_input_pending to 1 instead.
2633 (Qlanguage_change) [MAC_OS]: New variable.
2634 (syms_of_keyboard) [MAC_OS]: Intern and staticpro it.
2635 (kbd_buffer_get_event) [MAC_OS]: Make event for LANGUAGE_CHANGE_EVENT.
2636
2637 * macterm.c (mac_keyboard_text_encoding)
2638 (current_mac_keyboard_text_encoding): Remove variables.
2639 (XTread_socket): Store language-change event if keyboard script change
2640 is detected. Don't convert input to `mac_keyboard_text_encoding'.
2641 (syms_of_macterm): Delete DEFVAR_INT for mac-keyboard-text-encoding.
2642
2643 * termhooks.h (enum event_kind) [MAC_OS]: Add LANGUAGE_CHANGE_EVENT.
2644
2645 2005-04-10 Richard M. Stallman <rms@gnu.org>
2646
2647 * emacs.c (standard_args): Rename --bare-bones to --quick.
2648 Add -D aka --basic-display.
2649
2650 * buffer.c (Fmake_indirect_buffer): Clear out some local variables.
2651
2652 2005-04-09 Richard M. Stallman <rms@gnu.org>
2653
2654 * keymap.c (where_is_internal): Convert a string used as event type
2655 into "(any string)".
2656
2657 * lread.c (Vloads_in_progress): Not static.
2658 * fns.c (Vloads_in_progress): Add extern.
2659 (Frequire): Don't do LOADHIST_ATTACH if Vloads_in_progress is nil.
2660
2661 2005-04-09 Thien-Thi Nguyen <ttn@surf.glug.org>
2662
2663 * dispnew.c (mirror_line_dance): Avoid crash if W2 is null.
2664
2665 2005-04-09 Lute Kamstra <lute@gnu.org>
2666
2667 * print.c (PRINTPREPARE): Check if the marker PRINTCHARFUN is
2668 within the accessible part of the buffer.
2669
2670 2005-04-09 Kim F. Storm <storm@cua.dk>
2671
2672 * lread.c (readevalloop): Add args START and END as region in
2673 current buffer to read. Callers changed.
2674 When specified, narrow to this region only when reading,
2675 not during eval. Track next point to read from during eval.
2676 Also restore point to "real" buffer position before eval.
2677 (Feval_region): Don't save excursion and restriction here, and
2678 don't narrow to region. Just pass region to readevalloop.
2679 Note: Point is now preserved even when PRINTFLAG is nil.
2680
2681 2005-04-08 Kim F. Storm <storm@cua.dk>
2682
2683 * xdisp.c (syms_of_xdisp): Init overlay-arrow-string to "=>".
2684
2685 2005-04-06 Kim F. Storm <storm@cua.dk>
2686
2687 * emacs.c (standard_args): Add -Q, --bare-bones, -bare-bones.
2688
2689 2005-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2690
2691 * mac.c (cfdate_to_lisp): Add `const' for variable `epoch_gdate'.
2692 (Fmac_get_preference): Doc fix.
2693
2694 * macfns.c (Fx_create_frame, x_create_tip_frame):
2695 Add "fontset-mac" to fallback font/fontsets.
2696
2697 2005-04-04 Kim F. Storm <storm@cua.dk>
2698
2699 * alloc.c (Fgarbage_collect): Call CHECK_CONS_LIST before and after gc.
2700
2701 * eval.c (Ffuncall): Always call CHECK_CONS_LIST on entry.
2702 Call it again after autoload.
2703
2704 2005-04-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2705
2706 * alloc.c (allocate_string_data): Call BLOCK_INPUT before calling
2707 mallopt.
2708
2709 * ralloc.c (r_alloc_init): Ditto.
2710
2711 2005-04-01 Kenichi Handa <handa@m17n.org>
2712
2713 * lisp.h (Vascii_upcase_table, Vascii_canon_table)
2714 (Vascii_eqv_table): Extern them.
2715
2716 * casetab.c (set_case_table): If standard is nonzero, setup
2717 Vascii_upcase_table, Vascii_canon_table, and Vascii_eqv_table.
2718
2719 * search.c (looking_at_1): Use current_buffer->case_canon_table,
2720 not DOWNCASE_TABLE.
2721 (string_match_1): Likewise.
2722 (fast_c_string_match_ignore_case): Use Vascii_canon_table, not
2723 Vascii_downcase_table.
2724 (fast_string_match_ignore_case): Likewise.
2725 (search_buffer): Fix checking of boyer-moore usability.
2726 (boyer_moore): Calculate translate_prev_byte1/2/3 in advance.
2727 No need of tranlating characters in PAT. Fix calculation of
2728 simple_translate.
2729
2730 2005-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
2731
2732 * xterm.c [HAVE_XAW3D]: Include ThreeD.h for XtNbeNiceToColormap.
2733 (x_create_toolkit_scroll_bar): Test XtNbeNiceToColormap before using it.
2734 Use XtNtopShadowPixel and XtNbottomShadowPixel.
2735 (x_set_toolkit_scroll_bar_thumb): Remove ugly old hack that didn't
2736 really work and that breaks with some versions of Xaw3d.
2737
2738 2005-03-31 Kenichi Handa <handa@m17n.org>
2739
2740 * coding.c (syms_of_coding): Fix previous change.
2741
2742 2005-03-30 Stefan Monnier <monnier@iro.umontreal.ca>
2743
2744 * fileio.c (search_embedded_absfilename): Fix last change.
2745
2746 2005-03-25 Kenichi Handa <handa@m17n.org>
2747
2748 * coding.c (syms_of_coding): Suggest to use set-coding-category in
2749 the docstring of coding-category-list.
2750
2751 2005-03-31 Kim F. Storm <storm@cua.dk>
2752
2753 * keyboard.c (Qmouse_fixup_help_message): New var.
2754 (syms_of_keyboard): Intern and staticpro it.
2755 (show_help_echo): Apply mouse-fixup-help-message to help string.
2756
2757 2005-03-30 Kim F. Storm <storm@cua.dk>
2758
2759 * xdisp.c (display_line): Allow multiple overlay arrows in window.
2760
2761 2005-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
2762
2763 * fileio.c (Fexpand_file_name): Use IS_DEVICE_SEP.
2764 (file_name_absolute_p): New fun, extracted from Ffile_name_absolute_p.
2765 (Ffile_name_absolute_p): Use it.
2766 (search_embedded_absfilename): New fun, extracted from
2767 Fsubstitute_in_file_name. Use file_name_absolute_p.
2768 Free the pw data after use.
2769 (Fsubstitute_in_file_name): Use it.
2770 After cutting a prefix, re-check file-name-handler.
2771
2772 2005-03-26 Lennart Borgman <lennart.borgman.073@student.lu.se>
2773
2774 * w32term.h (x_output): Add focus_state.
2775
2776 * w32term.c (x_focus_changed, w32_detect_focus_change): New functions.
2777 (w32_read_socket) [WM_SETFOCUS]: Call w32_detect_focus_change.
2778
2779 2005-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
2780
2781 * minibuf.c (Fminibuffer_complete_and_exit, Fself_insert_and_exit):
2782 Use Fexit_minibuffer.
2783 (Fexit_minibuffer): Mark it as no-return, deactivate the mark.
2784
2785 2005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
2786
2787 * dired.c (Ffile_attributes): Add a missing gcpro.
2788
2789 * alloc.c (make_number): The arg can be bigger than `int'.
2790 * lisp.h (make_number): Make prototype more precise.
2791
2792 * process.c, dired.c (Vfile_name_coding_system)
2793 (Vdefault_file_name_coding_system):
2794 * callproc.c (Vdoc_file_name, Vfile_name_coding_system)
2795 (Vdefault_file_name_coding_system): Remove unused declarations.
2796
2797 2005-03-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2798
2799 * xmenu.c (create_and_show_popup_menu): Just remove menu and return
2800 if it failed to pop up (Gnome "show pointer on ctrl" option makes
2801 menus fail to pop up).
2802
2803 2005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
2804
2805 * xdisp.c (get_next_display_element): Also use `\ ' & `\-' for latin-9.
2806 Just prepend a backslash without replacing the NBSP by an SPC.
2807
2808 2005-03-22 Kim F. Storm <storm@cua.dk>
2809
2810 * xfaces.c (lookup_derived_face): Add arg SIGNAL_P.
2811 * dispextern.h (lookup_derived_face): Fix prototype.
2812 * msdos.c (XMenuActivate): Fix call to lookup_derived_face.
2813
2814 * xdisp.c (handle_single_display_spec): Derive left-fringe and
2815 right-fringe face from fringe face.
2816
2817 * fringe.c (draw_fringe_bitmap_1, Fset_fringe_bitmap_face):
2818 Derive face from fringe face.
2819
2820 2005-03-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2821
2822 * xrdb.c (x_load_resources): Undo previous change (2005-03-18).
2823
2824 2005-03-22 David Kastrup <dak@gnu.org>
2825
2826 * textprop.c (Fnext_char_property_change)
2827 (Fprevious_char_property_change): Allow marker as limit.
2828 (Fnext_single_char_property_change)
2829 (Fprevious_single_char_property_change): Check that limit is a
2830 number in strings.
2831 (Fnext_single_char_property_change): Coerce position to integer.
2832 (Fprevious_single_char_property_change): Same here.
2833
2834 2005-03-21 Thien-Thi Nguyen <ttn@gnu.org>
2835
2836 * s/openbsd.h (LD_SWITCH_SYSTEM_tmp): Define if undefined.
2837
2838 2005-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
2839
2840 * frame.c (Fignore_event): Remove.
2841 (syms_of_frame): Don't defsubr it.
2842
2843 * keyboard.c (keys_of_keyboard): Just use `ignore' instead of the
2844 redundant `ignore-event'.
2845
2846 2005-03-19 Eli Zaretskii <eliz@gnu.org>
2847
2848 * unexec.c (write_segment, unexec): Move these functions to avoid
2849 forward references (which cause errors with "gcc -gcoff").
2850
2851 2005-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2852
2853 * xfns.c (x_create_tip_frame): Remove setting of Vx_resource_name so
2854 that it doesn't become "tooltip". The specbind is enough.
2855
2856 * xrdb.c (x_load_resources): Use different char *helv when I18N
2857 is present.
2858
2859 2005-03-17 Kenichi Handa <handa@m17n.org>
2860
2861 * coding.c (syms_of_coding): Docstring of coding-category-list fixed.
2862
2863 2005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
2864
2865 * xfaces.c (x_update_menu_appearance) [HAVE_X_I18N]:
2866 Use xic_create_fontsetname even for non-Motif menus.
2867 Don't forget to free the fontsetname.
2868
2869 * xfns.c (xic_create_fontsetname): Add a final catch-all font pattern.
2870
2871 2005-03-17 Richard M. Stallman <rms@gnu.org>
2872
2873 * dispnew.c (mirror_line_dance): Set W2 according to FRAME_FROM.
2874
2875 * fileio.c (Fcopy_file, Frename_file, Fadd_name_to_file)
2876 (Fmake_symbolic_link): Use G to read the new file name.
2877
2878 * callint.c (Finteractive): Document G option.
2879 (Fcall_interactively): Implement G option.
2880
2881 * buffer.c (buffer_lisp_local_variables): New function,
2882 broken out from Fbuffer_local_variables.
2883 (clone_per_buffer_values): Use buffer_lisp_local_variables.
2884
2885 2005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
2886
2887 * xfns.c (xic_create_fontsetname): Add `motif' argument.
2888 Always return a freshly allocated string.
2889 (xic_create_xfontset): Adjust call.
2890
2891 * xfaces.c (x_update_menu_appearance) [USE_MOTIF]:
2892 Use xic_create_fontsetname to create a fontset so utf-8 locales work.
2893 (dump_realized_face): Fix warning.
2894
2895 * emacs.c (Fkill_emacs): YAILOM.
2896
2897 * frame.c (Fignore_event): Fix ancient obscure C-u handling bug.
2898
2899 2005-03-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2900
2901 * mac.c (HASHKEY_TERMINAL): Remove.
2902 (HASHKEY_MAX_NID): New macro.
2903 (xrm_q_get_resource_1): Rename from xrm_q_get_resource. Add extra
2904 argument.
2905 (xrm_q_get_resource): Call xrm_q_get_resource_1 with extra argument.
2906 (xrm_create_database, xrm_q_put_resource)
2907 (xrm_merge_string_database, xrm_q_get_resource_1)
2908 (xrm_q_get_resource): Change resource database representation so
2909 that it may not use multiple hash tables for a single database.
2910 [TARGET_API_MAC_CARBON] (xrm_cfproperty_list_to_value): YAILOM.
2911
2912 2005-03-16 Stefan Monnier <monnier@iro.umontreal.ca>
2913
2914 * xmenu.c (ENCODE_MENU_STRING) [HAVE_X_I18N]: Use ENCODE_SYSTEM.
2915
2916 * coding.h (ENCODE_SYSTEM, DECODE_SYSTEM) [!WINDOWSNT]: Use the
2917 locale-coding-system, as was already done for WINDOWSNT.
2918
2919 * keyboard.c (read_char): Only do the 7-bit-meta -> 27-bit-meta
2920 translation for chars in the 0-255 range.
2921
2922 2005-03-16 Lute Kamstra <lute@gnu.org>
2923
2924 * floatfns.c (Ffloor): Doc fix.
2925
2926 2005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2927
2928 * mac.c: Include macterm.h instead of directly including Carbon.h.
2929 [TARGET_API_MAC_CARBON] (Qstring, Qnumber, Qboolean, Qdate, Qdata)
2930 (Qarray, Qdictionary): New variables.
2931 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
2932 [TARGET_API_MAC_CARBON] (Qutf_8): Add extern.
2933 [TARGET_API_MAC_CARBON] (DECODE_UTF_8): New macro.
2934 [TARGET_API_MAC_CARBON] (struct cfdict_context): New struct used
2935 in callback for CFDictionaryApplyFunction.
2936 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
2937 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
2938 (cfobject_desc_to_lisp, cfdictionary_add_to_list)
2939 (cfdictionary_puthash, cfproperty_list_to_lisp): New functions.
2940 [TARGET_API_MAC_CARBON] (Fmac_get_preference): New function.
2941 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
2942 (P, LOOSE_BINDING, SINGLE_COMPONENT, HASHKEY_TERMINAL): New macro.
2943 (skip_white_space, parse_comment, parse_include_file)
2944 (parse_binding, parse_component, parse_resource_name, parse_value)
2945 (parse_resource_line, xrm_create_database, xrm_q_put_resource)
2946 (xrm_merge_string_database, xrm_q_get_resource, xrm_get_resource)
2947 (xrm_cfproperty_list_to_value, xrm_get_preference_database):
2948 New functions.
2949
2950 * macfns.c (mac_get_rdb_resource): Remove function.
2951 (x_get_string_resource): Use xrm_get_resource.
2952
2953 * macgui.h (XrmDatabase): Typedef to Lisp_Object.
2954
2955 * macterm.c (x_list_fonts): FONT-LIST-CACHE is now cadr part of
2956 name_list_element.
2957 (mac_make_rdb): Create resource database from preferences and
2958 argument string.
2959 (mac_term_init): Save resource database to cddr part of
2960 name_list_element.
2961
2962 * macterm.h (xrm_merge_string_database, xrm_get_resource)
2963 (xrm_get_preference_database): Add externs.
2964 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
2965 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
2966 (cfobject_desc_to_lisp, cfproperty_list_to_lisp): Likewise.
2967
2968 * process.c (init_process): Change `#ifdef DARWIN' to `#if
2969 defined (DARWIN) || defined (MAC_OSX)'
2970
2971 * s/darwin.h (DARWIN): Don't define.
2972
2973 2005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2974
2975 * macfns.c (Qhyper, Qsuper, Qmeta, Qalt, Qctrl, Qcontrol, Qshift):
2976 Remove unused variables.
2977 (syms_of_macfns): Don't initialize them. Likewise for
2978 Qface_set_after_frame_default. Defvar and initialize
2979 Vx_window_horizontal_drag_shape.
2980 (x_set_mouse_color): Change mouse pointer shape.
2981 (mac_window) [!MAC_OSX]: Create root control.
2982 (Fx_create_frame): Remove initializations of mouse pointer shapes.
2983 (hourglass_started): New function (from xfns.c).
2984 (start_hourglass, cancel_hourglass): Put function body in #ifdef
2985 MAC_OSX.
2986 (show_hourglass) [TARGET_API_MAC_CARBON]: Create progress
2987 indicator for each non-tooltip frame if needed, and show it.
2988 (hide_hourglass) [TARGET_API_MAC_CARBON]: Hide progress indicators.
2989
2990 * macgui.h [!TARGET_API_MAC_CARBON]: Include Appearance.h and
2991 Controls.h. Use ThemeCursor instead of CursHandle.
2992
2993 * macterm.c (activate_scroll_bars, deactivate_scroll_bars):
2994 Remove functions and declarations.
2995 (mac_set_colors): Take argument for saving background color.
2996 All callers changed.
2997 (XDrawLine, XClearArea, mac_draw_bitmap, XFillRectangle)
2998 (mac_draw_rectangle, mac_draw_string_common): Save and Restore
2999 background color.
3000 (x_update_end, mac_do_track_drag): Don't reset background color.
3001 (mac_define_frame_cursor) [!TARGET_API_MAC_CARBON]:
3002 Use SetThemeCursor.
3003 (x_set_window_size) [TARGET_API_MAC_CARBON]: Move progress
3004 indicator control to the upper-right corner of the window.
3005 (arrow_cursor) [!TARGET_API_MAC_CARBON]: Remove variable.
3006 (do_init_managers) [!TARGET_API_MAC_CARBON]: Don't initialize it.
3007 (do_window_update): Update controls after updating content area.
3008 (mac_handle_window_event): Remove unused extern.
3009 (XTread_socket): Check both control handle and control part code
3010 to determine whether a scroll bar is clicked. Activate/deactivate
3011 root control instead of contained scroll bar controls.
3012 (make_mac_terminal_frame): Use ThemeCursor constants.
3013
3014 * macterm.h (struct mac_output) [TARGET_API_MAC_CARBON]:
3015 New member hourglass_control.
3016 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): New defines.
3017 (activate_scroll_bars, deactivate_scroll_bars): Remove declarations.
3018
3019 2005-03-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3020
3021 * macterm.c (keycode_to_xkeysym_table): Change mapping so that it
3022 coincides with that in Apple X11 except `clear', `enter' on
3023 laptops, and fn + `enter' on laptops.
3024
3025 2005-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
3026
3027 * xmenu.c (ENCODE_MENU_STRING): Explicitly use string_make_unibyte.
3028 (list_of_panes, list_of_items, Fx_popup_menu): Use XCAR/XCDR.
3029 (digest_single_submenu, xmenu_show): Use ENCODE_MENU_STRING.
3030
3031 * xfns.c (xic_defaut_fontset): New constant.
3032 (xic_create_fontsetname): New function.
3033 Extracted from create_frame_xic. Try to generate a slightly
3034 better fontset.
3035 (xic_create_xfontset): Use it.
3036 (create_frame_xic): Simplify.
3037
3038 2005-03-11 Stefan Monnier <monnier@iro.umontreal.ca>
3039
3040 * fileio.c (Fmake_symbolic_link): Fix last change.
3041
3042 2005-03-11 Richard M. Stallman <rms@gnu.org>
3043
3044 * fileio.c (Frename_file, Fadd_name_to_file)
3045 (Fmake_symbolic_link): If NEWNAME or LINKNAME is a directory,
3046 expand the basename of FILE relative to it.
3047
3048 2005-03-11 Kenichi Handa <handa@m17n.org>
3049
3050 * fileio.c (Finsert_file_contents): Call Fcheck_coding_system
3051 before calling setup_coding_system so that autoloading of a coding
3052 system work.
3053
3054 2005-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3055
3056 * xfns.c (hourglass_started): New function.
3057
3058 * dispextern.h: Declare hourglass_started.
3059
3060 * keyboard.c (Fexecute_extended_command): Restart hourglass
3061 after call to Fcompleting_read if already started.
3062
3063 * gtkutil.c (xg_update_scrollbar_pos): Call x_sync so that the
3064 GTK main loop is entered in xterm.c, thus doing the redraw.
3065
3066 2005-03-10 Kim F. Storm <storm@cua.dk>
3067
3068 * xdisp.c (pos_visible_p): Fix X value in last line of buffer.
3069
3070 2005-03-08 Kenichi Handa <handa@m17n.org>
3071
3072 * frame.c (x_set_font): Call set_default_ascii_font if an
3073 available font is found.
3074
3075 * fontset.c (set_default_ascii_font): New function.
3076 (syms_of_fontset): Don't set FONTSET_ASCII (Vdefault_fontset) here.
3077
3078 * fontset.h (set_default_ascii_font): Extern it.
3079
3080 2005-03-07 Kim F. Storm <storm@cua.dk>
3081
3082 * xdisp.c (CLEAR_IMAGE_CACHE_COUNT): New const.
3083 (clear_image_cache_count): New var.
3084 (redisplay_internal): Don't clear face and image caches in the
3085 middle of redisplay; do it afterwards.
3086
3087 * blockinput.h (TOTALLY_UNBLOCK_INPUT): Avoid dangling else.
3088
3089 * xdisp.c (notice_overwritten_cursor): Check that phys_cursor.vpos
3090 is valid. If not, clear phys_cursor_on_p and return.
3091
3092 2005-03-07 Andreas Schwab <schwab@suse.de>
3093
3094 * blockinput.h (UNBLOCK_INPUT_TO): Always call UNBLOCK_INPUT.
3095
3096 2005-03-06 Richard M. Stallman <rms@gnu.org>
3097
3098 * keyboard.c (Ftop_level): Let Fthrow deal with UNBLOCK_INPUT.
3099
3100 * eval.c (unwind_to_catch): Use UNBLOCK_INPUT_TO.
3101 (Feval, Ffuncall): Use CHECK_CONS_LIST.
3102
3103 * lisp.h (CHECK_CONS_LIST): New macro (two definitions).
3104
3105 * blockinput.h (UNBLOCK_INPUT_TO): New macro.
3106 (TOTALLY_UNBLOCK_INPUT): Handle a pending signal if any.
3107
3108 2005-03-05 Juri Linkov <juri@jurta.org>
3109
3110 * emacs.c (USAGE1): Replace Info node name "command arguments"
3111 with "emacs invocation".
3112 (USAGE3): Fix usage of `--color=MODE' which actually doesn't
3113 allow arguments `--color' and `MODE' to be separated by space.
3114 Add --no-blinking-cursor, -nbc.
3115 (standard_args): Add -nbc, --no-blinking-cursor.
3116
3117 2005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
3118
3119 * s/vms.h: Define NO_HYPHENS_IN_FILENAMES.
3120 * s/vms4-4.h, s/vms5-5.h: Undefine NO_HYPHENS_IN_FILENAMES.
3121 * fileio.c (Fexpand_file_name) [VMS]:
3122 Use NO_HYPHENS_IN_FILENAMES, not VMS4_4.
3123 * doc.c (munge_doc_file_name) [VMS]: Likewise.
3124 (Fsnarf_documentation): Call munge_doc_file_name.
3125
3126 2005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
3127
3128 * s/vms.h (FILE_SYSTEM_CASE): New macro.
3129 * fileio.c (Fexpand_file_name) [VMS]: Don't upcase the name
3130 "manually"; this is now handled generally via FILE_SYSTEM_CASE.
3131
3132 2005-03-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3133
3134 * emacs.c (main): Change `#ifdef HAVE_CARBON' to `#if
3135 defined (MAC_OSX) && defined (HAVE_CARBON)'.
3136
3137 * image.c [!MAC_OSX && TARGET_API_MAC_CARBON]: Include QuickTime.h.
3138
3139 * mac.c [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
3140 [!MAC_OSX] (select) [TARGET_API_MAC_CARBON]: Use ReceiveNextEvent.
3141 (posix_pathname_to_fsspec, fsspec_to_posix_pathname): New functions.
3142 (mac_clear_font_name_table): Move extern to macterm.h.
3143
3144 * macfns.c (install_window_handler): Move extern to macterm.h.
3145 (Fx_file_dialog): Check STRINGP (default_filename) to see it is
3146 valid. Don't check !NILP (dir) because it is already checked with
3147 CHECK_STRING.
3148 (Fx_file_dialog) [!MAC_OSX]: Use FSSpec instead of FSRef for
3149 specifying the default location and obtaining the selected filename.
3150
3151 * macgui.h [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
3152
3153 * macmenu.c [TARGET_API_MAC_CARBON]: Don't include headers that
3154 are included via Carbon.h.
3155
3156 * macterm.c [TARGET_API_MAC_CARBON && !MAC_OSX]:
3157 Define USE_CARBON_EVENTS to 1.
3158 (qd) [__MRC__ && TARGET_API_MAC_CARBON]: Don't declare.
3159 (x_free_frame_resources): Call remove_window_handler for
3160 non-tooltip windows.
3161 [TARGET_API_MAC_CARBON]: Don't include headers that are included
3162 via Carbon.h.
3163 [TARGET_API_MAC_CARBON] (mac_do_track_dragUPP)
3164 (mac_do_receive_dragUPP): New variables.
3165 (mac_handle_service_event, init_service_handler): Put declarations
3166 and definitions in #ifdef MAC_OSX.
3167 (install_window_handler) [TARGET_API_MAC_CARBON]: Create UPPs for
3168 drag-and-drop handler functions and register them.
3169 (remove_window_handler): New function.
3170 (do_ae_open_documents, mac_do_receive_drag) [!MAC_OSX]:
3171 Use fsspec_to_posix_pathname.
3172 (main): Change #if !TARGET_API_MAC_CARBON to #ifdef MAC_OS8.
3173 (XTread_socket) [!MAC_OSX]: Don't pass keyboard events to TSM.
3174 [MAC_OS8] (make_mac_terminal_frame) [TARGET_API_MAC_CARBON]:
3175 Set default cursors.
3176 (mac_initialize) [USE_CARBON_EVENTS && !MAC_OSX] : Don't call
3177 init_service_handler or init_quit_char_handler.
3178 (mac_initialize) [!MAC_OSX]: Don't call MakeMeTheFrontProcess.
3179
3180 * macterm.h (install_window_handler, remove_window_handler)
3181 (posix_pathname_to_fsspec, fsspec_to_posix_pathname)
3182 (mac_clear_font_name_table): New externs.
3183
3184 2005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
3185
3186 * fileio.c (FILE_SYSTEM_CASE): Define macro if not already defined.
3187 (Ffile_name_directory): Use FILE_SYSTEM_CASE unconditionally.
3188 (Fexpand_file_name): Likewise.
3189
3190 2005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
3191
3192 * emacs.c (Fkill_emacs): Use EXIT_SUCCESS;
3193 no longer special-case VMS. Add bogus return value.
3194
3195 2005-03-02 Kim F. Storm <storm@cua.dk>
3196
3197 * dispextern.h (XASSERTS): Define to 0 if not already defined.
3198 (xassert) [!XASSERTS]: Define dummy version.
3199
3200 2005-03-02 Kim F. Storm <storm@cua.dk>
3201
3202 * xdisp.c (redisplay_window): YABX (yet another bogus xassert).
3203 Reported by David Kastrup.
3204
3205 2005-03-01 Ehud Karni <ehud@unix.mvs.co.il>
3206
3207 * xdisp.c (get_next_display_element): Fix control and escape
3208 glyph from display vector.
3209
3210 2005-03-01 Stefan Monnier <monnier@iro.umontreal.ca>
3211
3212 * keyboard.c (Fposn_at_x_y): Check integerness of X and Y.
3213
3214 2005-02-27 Richard M. Stallman <rms@gnu.org>
3215
3216 * xdisp.c (fast_find_position): Rename END to BEG.
3217 (syms_of_xdisp) <menu-bar-update-hook>: Doc fix.
3218
3219 2005-02-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3220
3221 * gtkutil.c (xg_resize_outer_widget): Remove unneeded call to
3222 gtk_window_resize and x_wm_set_size_hint.
3223
3224 2005-02-25 Kim F. Storm <storm@cua.dk>
3225
3226 * dispextern.h (OVERLAY_STRING_CHUNK_SIZE): Increase from 3 to 16.
3227
3228 * xdisp.c (init_from_display_pos): Don't read past end of
3229 it->overlay_strings array.
3230
3231 2005-02-25 Stephan Stahl <stahl@eos.franken.de> (tiny change)
3232
3233 * buffer.c (syms_of_buffer): Fix typo.
3234
3235 2005-02-23 Lute Kamstra <lute@gnu.org>
3236
3237 * buffer.c (Foverlay_buffer): Doc fix.
3238
3239 2005-02-22 Kim F. Storm <storm@cua.dk>
3240
3241 * minibuf.c (Ftry_completion, Fall_completions): Allow both string
3242 and symbol keys in alists and hash tables.
3243
3244 * xdisp.c (fast_find_position): Fix search for start of overlay.
3245
3246 2005-02-21 Kim F. Storm <storm@cua.dk>
3247
3248 * window.c (window_scroll_pixel_based): When scrolling backwards,
3249 handle partial visible line at end of window even when we hit PT.
3250
3251 2005-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
3252
3253 * keymap.h: Declare Fcurrent_active_maps, used in doc.c.
3254
3255 2005-02-21 Kim F. Storm <storm@cua.dk>
3256
3257 * xdisp.c (move_it_vertically_backward): Eliminate two xasserts.
3258 I think those asserts are bogus if buffer contains invisible text
3259 or images.
3260
3261 2005-02-21 David Kastrup <dak@gnu.org>
3262
3263 * gtkutil.c (xg_create_frame_widgets): UNBLOCK_INPUT on error.
3264
3265 2005-02-20 Kim F. Storm <storm@cua.dk>
3266
3267 * xdisp.c (pos_visible_p): Be sure to move to the specified
3268 position. Always get the full ascent / descent of the
3269 corresponding row, to return reliable rtop and rbot values.
3270 (back_to_previous_visible_line_start): Fix 2005-01-18 change.
3271 Must look one character back, as back_to_previous_line_start
3272 returns position after the newline.
3273 (move_it_vertically_backward): Fix heuristic for when to move further
3274 back in case line_height * 2/3 is larger than window height.
3275 (cursor_row_fully_visible_p): Rename make_cursor_line_fully_visible_p
3276 as it does not do anything anymore. Add arg current_matrix_p to
3277 use current matrix rather than desired matrix when set.
3278 (try_cursor_movement): Don't scroll to make cursor row fully
3279 visible if cursor didn't move. This avoids unexpected recentering
3280 in case of blinking cursor or accepting process output.
3281 Use current matrix to check cursor row visibility.
3282 (redisplay_window): Fix whether to recenter or move to top in case
3283 cursor line is taller than window height.
3284 (find_first_unchanged_at_end_row): Stop search if we reach a row
3285 which not enabled (instead of abort).
3286
3287 2005-02-18 Kim F. Storm <storm@cua.dk>
3288
3289 * xfaces.c (Finternal_set_lisp_face_attribute): Allow :color property
3290 to be nil in a :box attribute value list; customize prints that
3291 as lisp value when no box color is specified.
3292
3293 * .gdbinit (pitx, pit): Pretty print display iterator.
3294 (prowx, prow): Pretty print glyph row.
3295 (pcursorx, pcursor): Pretty print a window cursor.
3296 (pwinx, pwin): Pretty print struct window.
3297
3298 2005-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
3299
3300 * alloc.c (BLOCK_BYTES): Harmless typo.
3301
3302 2005-02-17 Andreas Schwab <schwab@suse.de>
3303
3304 * xfns.c (hack_wm_protocols): Use correct type for last parameter
3305 of XGetWindowProperty to avoid aliasing issues.
3306 (Fx_window_property): Likewise.
3307
3308 * xselect.c (Fx_disown_selection_internal): Use union of struct
3309 input_event and struct selection_input_event to avoid aliasing issues.
3310
3311 * xterm.c (handle_one_xevent): Use union of struct input_event and
3312 struct selection_input_event to avoid aliasing issues.
3313 (SET_SAVED_MENU_EVENT): Adapt reference to inev.
3314
3315 2005-02-17 Kim F. Storm <storm@cua.dk>
3316
3317 * dispextern.h (enum it_method): New enum.
3318 (GET_FROM_*): Its members.
3319 (struct it): Change member method from function pointer to enum.
3320
3321 * xdisp.c (check_it, init_from_display_pos, handle_stop)
3322 (setup_for_ellipsis, handle_single_display_spec)
3323 (handle_composition_prop, next_overlay_string)
3324 (get_overlay_strings, reseat_1, reseat_to_string)
3325 (next_element_from_ellipsis, BUFFER_POS_REACHED_P)
3326 (in_display_vector_p, display_line, get_next_display_element):
3327 Change it->method from function pointer to enum.
3328 (get_next_element): New array to map it->method to function.
3329 (get_next_display_element): Use it.
3330 (set_iterator_to_next): Use switch instead of if/else chain.
3331
3332 2005-02-15 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
3333
3334 * w32select.c: Summary: Thorough rework to implement Unicode
3335 clipboard operations and delayed rendering.
3336
3337 Drop last_clipboard_text and related code, keep track of
3338 ownership via clipboard_owner instead. Drop old #if0 sections.
3339
3340 (DEFAULT_LCID, ANSICP, OEMCP, QUNICODE, QANSICP, QOEMCP)
3341 (clipboard_owner, modifying_clipboard, cfg_coding_system)
3342 (cfg_codepage, cfg_lcid, cfg_clipboard_type, current_text)
3343 (current_coding_system, current_requires_encoding)
3344 (current_num_nls, current_clipboard_type, current_lcid):
3345 New static variables.
3346
3347 (convert_to_handle_as_ascii, convert_to_handle_as_coded)
3348 (render, render_all, run_protected, lisp_error_handler)
3349 (owner_callback, create_owner, setup_config)
3350 (enum_locale_callback, cp_from_locale, coding_from_cp):
3351 New local functions.
3352
3353 (term_w32select, globals_of_w32select): New global functions.
3354
3355 (Fw32_set_clipboard_data): Ignore parameter FRAME, use
3356 clipboard_owner instead. Use delayed rendering and provide
3357 all text formats. Provide CF_LOCALE if necessary.
3358
3359 (Fw32_get_clipboard_data): Handle CF_UNICODETEXT and
3360 CF_LOCALE. Fall back to CF_TEXT, if CF_UNICODETEXT is not
3361 available. Force DOS line-ends for decoding.
3362
3363 (Fx_selection_exists_p): Handle CF_UNICODETEXT.
3364
3365 (syms_of_w32select): Init and register new variables.
3366
3367 * w32.h: Add prototypes for globals_of_w32select and
3368 term_w32select. Make the neighboring K&R declarations into
3369 prototypes, too.
3370
3371 * emacs.c: Include w32.h to get function prototypes.
3372 (main): Call globals_of_w32select.
3373
3374 * w32.c (term_ntproc): Call term_w32select.
3375
3376 * s/ms-w32.h: Guard MSC-specific #pragmas with an #ifdef.
3377
3378 2005-02-16 Kim F. Storm <storm@cua.dk>
3379
3380 * xdisp.c (BUFFER_POS_REACHED_P): Return true if pos reached and
3381 at end of display vector.
3382
3383 2005-02-15 Richard M. Stallman <rms@gnu.org>
3384
3385 * xdisp.c (get_next_display_element): Fix escape-glyph criterion
3386 for mode and header lines.
3387
3388 * lread.c (syms_of_lread) <user-init-file>: Doc fix.
3389
3390 * keymap.h (describe_map_tree): Change decl.
3391
3392 * keyboard.c (command_loop_1): Always use safe_run_hooks
3393 to run Qdeferred_action_function.
3394
3395 * keymap.c (describe_map_tree): New arg MENTION_SHADOW. Calls changed.
3396 (describe_map, describe_vector): Likewise. When it's 1,
3397 don't omit shadowed bindings, instead mark them as shadowed.
3398
3399 * doc.c (Fsubstitute_command_keys): Compute list of shadowing maps
3400 for describe_map_tree. Pass 1 for MENTION_SHADOW.
3401
3402 * data.c (Fsetq_default): Allow no arg case.
3403
3404 2005-02-14 Kenichi Handa <handa@m17n.org>
3405
3406 * coding.c (encode_coding_string): Always return a unibyte string.
3407 If NOCOPY is nonzero and there's no need of encoding, make STR
3408 unibyte directly.
3409
3410 * xselect.c (lisp_data_to_selection_data): If OBJ is a non-ASCII
3411 multibyte string, signal an error instead of aborting.
3412
3413 2005-02-12 Dan Nicolaescu <dann@ics.uci.edu>
3414
3415 * keyboard.c: If HAVE_FCNTL_H include fcntl.h.
3416
3417 2005-02-12 Kim F. Storm <storm@cua.dk>
3418
3419 * xdisp.c (expose_window): Don't fix overlaps for mode lines.
3420
3421 2005-02-10 Kim F. Storm <storm@cua.dk>
3422
3423 * xdisp.c (try_window_id): Set first_unchanged_at_end_row to NULL
3424 if it moves outside window or it doesn't display text.
3425
3426 2005-02-09 Kim F. Storm <storm@cua.dk>
3427
3428 * undo.c (Fprimitive_undo): Check that undo function does not
3429 switch buffer.
3430
3431 2005-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3432
3433 * xselect.c (selection_data_to_lisp_data): For the special case
3434 type == XA_ATOM, data contains array of int, not array of Atom.
3435 (x_property_data_to_lisp, selection_data_to_lisp_data):
3436 Comment update: data must be array of int for format == 32.
3437
3438 2005-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
3439
3440 * undo.c (Fprimitive_undo): Check veracity of delta,start,end.
3441
3442 2005-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3443
3444 * xfns.c (Fx_change_window_property): Use long array when format is 32.
3445 (Fx_window_property): If format is 32 and long is bigger than 32 bits,
3446 convert long array returned from XGetWindowProperty to an int array.
3447 (x_set_tool_bar_lines): Check that width and height is greater than
3448 zero before clearing area.
3449
3450 * xselect.c (x_reply_selection_request): Pass long array to
3451 XChangeProperty so that 64 bit longs are handeled correctly.
3452 (x_get_window_property): If format is 32 and long is bigger than 32
3453 bits convert data from XGetWindowProperty from long array to int array.
3454 (lisp_data_to_selection_data): When the input is a vector and the
3455 format is 32, allocate a long array even if long is bigger than 32 bits.
3456 (x_fill_property_data): Use char, short and long as the man page
3457 for XChangeProperty specifies. This way the data returned is OK for
3458 both 32 and 64 bit machines.
3459 (x_handle_dnd_message): Calculate size correctly even for 64 bit
3460 machines.
3461 (Fx_send_client_event): Undo change from 2005-02-05,
3462 x_fill_property_data now handles that case.
3463
3464 * xfns.c (Fx_backspace_delete_keys_p): Add comment about the
3465 reason for the approach in the code.
3466
3467 2005-02-07 Kim F. Storm <storm@cua.dk>
3468
3469 * undo.c (Fprimitive_undo): Record max one dummmy apply element.
3470
3471 2005-02-06 Richard M. Stallman <rms@gnu.org>
3472
3473 * eval.c (Frun_hook_with_args)
3474 (Frun_hook_with_args_until_success)
3475 (Frun_hook_with_args_until_failure): Doc fixes.
3476
3477 2005-02-05 Andreas Schwab <schwab@suse.de>
3478
3479 * sysdep.c (sys_subshell): Properly terminate execlp argument list.
3480
3481 2005-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3482
3483 * xselect.c (Fx_send_client_event, x_handle_dnd_message): Handle
3484 the longs in a XClientMessageEvent correctly when long is 64 bits.
3485
3486 2005-02-05 Eli Zaretskii <eliz@gnu.org>
3487
3488 * xfaces.c (face_color_supported_p): Use HAVE_WINDOW_SYSTEM
3489 instead of HAVE_X_WINDOWS, for non-X windowed sessions.
3490
3491 2005-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3492
3493 * xmenu.c (menubar_selection_callback): Force out GTK buffered
3494 events so the menu event comes after them. This is to prevent sit-for
3495 from exiting on buffered events directly after a menu selection,
3496 lisp code for Help => About Emacs uses sit-for.
3497
3498 * gtkutil.c (create_menus): Connect selection-done event instead of
3499 the deactivate event to deactivate_cb. This will make the last
3500 leave event come before the call to deactivate_cb, so the leave
3501 event does not make sit-for exit after a menu selection.
3502
3503 2005-02-03 Kim F. Storm <storm@cua.dk>
3504
3505 * dispnew.c (build_frame_matrix_from_leaf_window)
3506 [!GLYPH_DEBUG]: Fix xassert.
3507
3508 * xfaces.c (x_free_gc) [!GLYPH_DEBUG]: Fix xassert.
3509
3510 * xfns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
3511
3512 2005-02-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3513
3514 * mac.c: Use MAC_OS_X_VERSION_MAX_ALLOWED to conditionalize by
3515 the compiling OS version.
3516
3517 * macfns.c (x_create_tip_frame): Likewise.
3518
3519 * macterm.c (mac_draw_string_common, x_make_frame_visible): Likewise.
3520
3521 2005-02-03 Richard M. Stallman <rms@gnu.org>
3522
3523 * xterm.c (x_error_quitter): On GCC 3 and up, specify noinline.
3524
3525 * xdisp.c (echo_area_display): Clear echo_message_buffer.
3526
3527 * buffer.c (Fbury_buffer): Doc fix.
3528
3529 2005-02-02 Steven Tamm <steventamm@mac.com>
3530
3531 * macfns.c (unwind_create_frame): Fix compile error due to
3532 xassert being uncondition, but predicate is.
3533 * dispnew.c (update_window): Fix compile error due to
3534 xassert being uncondition, but predicate is.
3535
3536 2005-02-02 Miles Bader <miles@gnu.org>
3537
3538 * dispextern.h (xassert): Enable unconditionally.
3539
3540 2005-02-02 Kim F. Storm <storm@cua.dk>
3541
3542 * undo.c (Fprimitive_undo): Fix dummy apply undo entry.
3543
3544 2005-02-02 Kenichi Handa <handa@m17n.org>
3545
3546 * casefiddle.c (casify_object): Enable changing characters of
3547 different byte length.
3548 (casify_region): Fix loop condition, args to replace_range_2, and
3549 update opoint_byte.
3550
3551 * insdel.c (replace_range_2): Fix bugs in adjusting markers and point.
3552
3553 2005-02-01 Kim F. Storm <storm@cua.dk>
3554
3555 * xdisp.c (back_to_previous_visible_line_start): Reset iterator
3556 stack before calling handle_display_prop.
3557
3558 2005-01-31 Kim F. Storm <storm@cua.dk>
3559
3560 * undo.c (Qapply): New lisp var.
3561 (syms_of_undo): Intern and staticpro it.
3562 (Fprimitive_undo): Support formats (apply FUNNAME . ARGS) and
3563 (apply DELTA BEG END FUNNAME . ARGS) instead of (FUNNAME . ARGS).
3564
3565 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
3566
3567 2005-01-30 Jesper Harder <harder@phys.au.dk>
3568
3569 * macterm.c (syms_of_macterm) <mac-reverse-ctrl-meta>
3570 <mac-emulate-three-button-mouse>: Fix docstring indentation.
3571
3572 2005-01-29 Luc Teirlinck <teirllm@auburn.edu>
3573
3574 * undo.c (syms_of_undo) <undo-outer-limit>: Doc update.
3575 Increase value to 3 Meg.
3576
3577 2005-01-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3578
3579 * xfns.c (show_hourglass): Use FRAME_X_WINDOW as parent for GTK,
3580 button events are not received otherwise.
3581
3582 2005-01-29 Richard M. Stallman <rms@gnu.org>
3583
3584 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
3585
3586 * undo.c (Fprimitive_undo): Handle (FUNNAME . ARGS) by calling FUNNAME.
3587
3588 2005-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
3589
3590 * keymap.c (access_keymap): YAILOM.
3591
3592 2005-01-27 Kim F. Storm <storm@cua.dk>
3593
3594 * xdisp.c (get_phys_cursor_geometry): New function to calculate
3595 phys cursor position and size for hollow cursor. Position is
3596 aligned with get_glyph_string_clip_rect and ensures that a hollow
3597 cursor is shown, even when the actual glyph is not visible.
3598
3599 * dispextern.h (get_phys_cursor_geometry): Add prototype.
3600
3601 * xterm.c (x_clip_to_row): Ensure y >= 0.
3602 (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
3603
3604 * w32term.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
3605
3606 * macterm.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
3607
3608 2005-01-27 Stefan Monnier <monnier@iro.umontreal.ca>
3609
3610 * xterm.c (x_error_quitter): Add a prototype. Make it static again.
3611
3612 2005-01-27 Kim F. Storm <storm@cua.dk>
3613
3614 * xdisp.c (get_glyph_string_clip_rect): Always show a cursor
3615 glyph, even when row is only partially visible and actual cursor
3616 position is not visible.
3617
3618 2005-01-24 Richard M. Stallman <rms@gnu.org>
3619
3620 * xterm.c (x_error_quitter): No longer static, and moved after
3621 x_error_handler.
3622
3623 2005-01-24 Kim F. Storm <storm@cua.dk>
3624
3625 * xdisp.c (move_it_by_lines): If we move forward after going too
3626 far back, cancel move if end position is same as start position.
3627
3628 2005-01-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3629
3630 * dispextern.h (struct glyph_string): New members clip_head and
3631 clip_tail.
3632
3633 * xdisp.c (get_glyph_string_clip_rect): Restrict horizontal clip
3634 region to the area between clip_head and clip_tail.
3635 (draw_glyphs): Record the area that need to be actually redrawn to
3636 the new variables clip_head and clip_tail when there are
3637 overhangs. Set values of these variables to the corresponding
3638 members in struct glyph_string. Refine x coordinates for
3639 notice_overwritten_cursor using clip_head and clip_tail.
3640
3641 * macgui.h (STORE_XCHARSETSTRUCT): New macro.
3642
3643 * macterm.c (mac_compute_glyph_string_overhangs): Implement with
3644 QDTextBounds.
3645 (x_draw_glyph_string): Don't fill the background of the successor
3646 of a glyph with a right overhang if the successor will draw a cursor.
3647 (XLoadQueryFont): Obtain font metrics using QDTextBounds.
3648 (x_redisplay_interface): Add entry for compute_glyph_string_overhangs.
3649
3650 2005-01-24 Kim F. Storm <storm@cua.dk>
3651
3652 * window.c (window_scroll_pixel_based): Fix scrolling in the wrong
3653 direction if window height was smaller than next-screen-context-lines.
3654 Now always scroll at least one line in the requested direction.
3655 Ensure that we actually do scroll backwards when requested to do so.
3656
3657 * xdisp.c (redisplay_window): Only try to make cursor line fully
3658 visible once (to avoid redisplay loop).
3659
3660 2005-01-23 Kim F. Storm <storm@cua.dk>
3661
3662 * window.c (Fpos_visible_in_window_p): Simplify return value for
3663 partially visible rows.
3664 (window_scroll_pixel_based): Adapt to that change.
3665
3666 * window.c (window_scroll_pixel_based): Force moving to next line
3667 if scrolling doesn't move start point, e.g. if looking at tall image.
3668
3669 * xdisp.c (pos_visible_p): Return 0 if non-interactive.
3670 Clear last_height before calling line_bottom_y to get real height.
3671 Fix calculation of y.
3672
3673 2005-01-22 Steven Tamm <steventamm@mac.com>
3674
3675 * s/darwin.h: Removed PTY_ITERATION from here.
3676 (DARWIN): Define.
3677
3678 * process.c (init_process): Default process-connection-type to
3679 nil on darwin 6 or less, t if it is 7 or higher. This way the
3680 broken pty behavior is still allowed on darwin 6 for interactive
3681 processes for people that know what they are doing.
3682
3683 2005-01-22 Kim F. Storm <storm@cua.dk>
3684
3685 * window.c (auto_window_vscroll_p): New boolean.
3686 (syms_of_window): DEFVAR_BOOL it.
3687 (Fpos_visible_in_window_p): Extend return value to include RTOP
3688 and RBOT values if FULLY is nil.
3689 (window_scroll_pixel_based): Adjust vscroll for partially visible
3690 rows if auto_window_vscroll_p is set.
3691 (Fset_window_vscroll): Do nothing if vscroll is not modified.
3692
3693 * xdisp.c (pos_visible_p): Replace FULLY arg by RTOP and RBOT args
3694 to return number of partially invisible pixels at top and bottom
3695 of the dislay row at POS.
3696
3697 * lisp.h (pos_visible_p): Fix prototype.
3698
3699 2005-01-21 Richard M. Stallman <rms@gnu.org>
3700
3701 * fileio.c (Fcopy_file): Doc fix.
3702
3703 2005-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3704
3705 * gtkutil.c (xg_tool_bar_detach_callback): Remove unused variable bw.
3706 (xg_get_file_name): Move declaration ofx_use_old_gtk_file_dialog to
3707 start of function for older compilers.
3708
3709 2005-01-20 Richard M. Stallman <rms@gnu.org>
3710
3711 * editfns.c (Fmessage): If arg is "", return "" (as before).
3712
3713 * keymap.c (access_keymap): Protect from bad value of meta_prefix_char.
3714
3715 * .gdbinit (xgetptr, xgetint, xgettype): Copy $arg0 into a temp
3716 variable.
3717
3718 2005-01-20 Steven Tamm <steventamm@mac.com>
3719
3720 * editfns.c (Voperating_system_release): Add.
3721 (init_editfns): Assign new variable operating-system-release
3722 based on call to uname if available.
3723 (get_operating_system_release): Add function to
3724 allow c-level access to operating system release.
3725
3726 * config.h: Regenerated.
3727
3728 * s/darwin.h (PTY_ITERATION): Don't allow PTYs on darwin 6 or less.
3729 (MIN_PTY_KERNEL_VERSION): Define minimum kernel version for
3730 using ptys as '7'.
3731
3732 2005-01-20 Kim F. Storm <storm@cua.dk>
3733
3734 * alloc.c (STRING_MARKED_P, VECTOR_MARKED_P): Return boolean.
3735
3736 * xterm.c (x_draw_glyph_string_box): Fix last_x for full width rows.
3737 Thanks to Chong Yidong <cyd@stupidchicken.com> for debugging this.
3738
3739 * macterm.c (x_draw_glyph_string_box): Likewise.
3740
3741 * w32term.c (x_draw_glyph_string_box): Likewise.
3742
3743 * indent.c (Fvertical_motion): Temporarily disable selective display.
3744
3745 2005-01-19 Kim F. Storm <storm@cua.dk>
3746
3747 * xdisp.c (note_mode_line_or_margin_highlight): Fix :pointer
3748 image property.
3749
3750 * fns.c (sweep_weak_table): Advance prev pointer when we keep a pair.
3751
3752 2005-01-18 Kim F. Storm <storm@cua.dk>
3753
3754 * xdisp.c (fast_find_position): Backtrack to find first row if
3755 charpos is inside a display overlay that spans multiple lines.
3756
3757 2005-01-18 Kenichi Handa <handa@m17n.org>
3758
3759 * coding.c (decode_coding_iso2022): Translate invalid codes if
3760 translation-table is specified.
3761
3762 2005-01-18 Kim F. Storm <storm@cua.dk>
3763
3764 * xdisp.c (back_to_previous_visible_line_start): Undo 2004-12-28
3765 change. If handle_display_prop indicates newline is replaced by
3766 image or text, move back to start of relevant overlay or interval
3767 and continue scan from there. Simplify.
3768
3769 2005-01-17 Kim F. Storm <storm@cua.dk>
3770
3771 * dispnew.c (mode_line_string, marginal_area_string):
3772 Fix off-by-one error in search for glyph.
3773
3774 2005-01-16 Kim F. Storm <storm@cua.dk>
3775
3776 * macterm.c (syms_of_macterm) <mac-allow-anti-aliasing>: Doc fix.
3777
3778 2005-01-16 Steven Tamm <steventamm@mac.com>
3779
3780 * macterm.c (mac_to_x_fontname): Remove spurious argument.
3781
3782 2005-01-16 Andreas Schwab <schwab@suse.de>
3783
3784 * macterm.c (mac_draw_string_common): Fix compilation on OSX 10.1.
3785
3786 2005-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3787
3788 * fringe.c (Fdefine_fringe_bitmap, init_fringe): When assigning
3789 fringe_faces, cast result from xmalloc/xrealloc to Lisp_Object *.
3790
3791 2005-01-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3792
3793 * keyboard.c (READABLE_EVENTS_DO_TIMERS_NOW)
3794 (READABLE_EVENTS_FILTER_EVENTS, READABLE_EVENTS_IGNORE_SQUEEZABLES):
3795 New flags for readable_events.
3796 (get_filtered_input_pending, readable_filtered_events): Remove.
3797 (tracking_off): Call readable_events and get_input_pending with
3798 flag READABLE_EVENTS_DO_TIMERS_NOW.
3799 (readable_events): Move code from old readable_filtered_events here,
3800 but check new READABLE_EVENTS_* in argument flags instead of previous
3801 two boolean arguments do_timers_now and filter_events.
3802 If we are doing mouse tracking and the mouse moved, return only if
3803 READABLE_EVENTS_IGNORE_SQUEEZABLES is not set in flags.
3804 (swallow_events): Call get_input_pending with flag
3805 READABLE_EVENTS_DO_TIMERS_NOW.
3806 (get_input_pending): Move code from old get_filtered_input_pending
3807 here. Replace boolean arguments do_timers_now, filter_events with
3808 flags, and pass flags to readable_events. Document new
3809 READABLE_EVENTS_* flags.
3810 (detect_input_pending_ignore_squeezables): New function.
3811 (detect_input_pending_run_timers): Call get_input_pending with flag
3812 READABLE_EVENTS_DO_TIMERS_NOW.
3813 (Finput_pending_p): Call get_input_pending with flags
3814 READABLE_EVENTS_DO_TIMERS_NOW and READABLE_EVENTS_FILTER_EVENTS.
3815
3816 * dispnew.c (update_window, update_frame_1): Replace calls to
3817 detect_input_pending with detect_input_pending_ignore_squeezables
3818 so that redisplay is not paused if the event queue contains only
3819 mouse movements.
3820
3821 * lisp.h: Declare detect_input_pending_ignore_squeezables.
3822
3823 2005-01-15 Steven Tamm <steventamm@mac.com>
3824
3825 * macterm.c (Vmac_use_core_graphics): Declare variable for
3826 mac-allow-anti-aliasing.
3827 (syms_of_macterm): DEFVAR_LISP and initialize it.
3828 (mac_draw_string_common): Use core graphics text rendering if
3829 mac-allow-anti-aliasing is enabled.
3830
3831 * macfns.c (Fx_file_dialog): Save As dialog includes only the
3832 file name in the text box.
3833
3834 2005-01-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3835
3836 * macfns.c (x_set_foreground_color, x_set_background_color):
3837 Sync with xfns.c.
3838 (mac_window, x_create_tip_frame): Use XSetWindowBackground.
3839 * macterm.c (XSetBackground, XSetWindowBackground): New functions.
3840 * macterm.h (XSetBackground, XSetWindowBackground): Add externs.
3841
3842 2005-01-14 Kim F. Storm <storm@cua.dk>
3843
3844 * keyboard.c (Fposn_at_x_y): Add optional arg WHOLE.
3845
3846 2005-01-13 Richard M. Stallman <rms@gnu.org>
3847
3848 * keymap.c (Fcurrent_active_maps): Ignore Voverriding_local_map
3849 if Voverriding_terminal_local_map is non-nil.
3850
3851 * keyboard.c (syms_of_keyboard): Doc fix.
3852
3853 2005-01-13 Kim F. Storm <storm@cua.dk>
3854
3855 * xdisp.c (Fformat_mode_line): Fix last change. Remove NO_PROPS arg
3856 (specify 0 for FACE instead). Reorder arg list. Doc fix.
3857
3858 2005-01-12 Richard M. Stallman <rms@gnu.org>
3859
3860 * xdisp.c (Fformat_mode_line): New arg FACE specifies a default
3861 face property for characters that don't specify one.
3862
3863 * fns.c (Frequire): Record in load-history unconditionally.
3864
3865 2005-01-10 Kim F. Storm <storm@cua.dk>
3866
3867 * dispextern.h (merge_faces): Rename from merge_into_realized_face.
3868
3869 * xfaces.c (merge_faces): Rename from merge_into_realized_face.
3870 Callers changed.
3871 Add support to merge with lisp face id too (if face_name is t).
3872
3873 * xdisp.c (get_next_display_element, next_element_from_display_vector):
3874 Don't lookup lface_id from display table glyphs here; instead use
3875 merge_faces to merge the lisp face id into current face.
3876
3877 2005-01-09 Kim F. Storm <storm@cua.dk>
3878
3879 * dispextern.h (struct it): New member dpvec_face_id.
3880 (merge_into_realized_face): Add prototype.
3881
3882 * xfaces.c (merge_into_realized_face): New function. Used to
3883 merge escape-glyph face or face from display table into current face.
3884
3885 * xdisp.c (Vshow_nonbreak_escape): New lisp var.
3886 (syms_of_xdisp): DEFVAR_LISP it.
3887 (escape_glyph_face): Remove var.
3888 (redisplay_window): Don't initialize it.
3889 (setup_for_ellipsis, get_next_display_element):
3890 Set it->dpvec_face_id to -1.
3891 (get_next_display_element): Test Vshow_nonbreak_escape.
3892 Do not setup escape_glyph_face.
3893 Properly merge escape-glyph face or face from display table with
3894 current face for escape and control characters.
3895 Set it->dpvec_face_id to relevant face id instead of adding it to each
3896 element of display vector.
3897 (next_element_from_display_vector): If it->dpvec_face_id is set,
3898 use that instead of lface_id from glyph itself.
3899
3900 2005-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3901
3902 * xterm.h (struct x_output): New member, toolbar_detached.
3903
3904 * gtkutil.c (xg_create_frame_widgets): Set initial tool bar height to
3905 38.
3906 (xg_tool_bar_detach_callback): Set toolbar_detached to 1.
3907 (xg_tool_bar_attach_callback): Set toolbar_detached to 0.
3908 (xg_create_tool_bar): Initialize toolbar_detached.
3909 (update_frame_tool_bar): Only set FRAME_TOOLBAR_HEIGHT (f) if
3910 toolbar_detached is zero.
3911
3912 2005-01-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3913
3914 * xmenu.c (create_and_show_popup_menu): Pass zero as button to
3915 gtk_menu_popup if not for_click, so callbacks for the menu are called.
3916
3917 * gtkutil.c (xg_gtk_scroll_destroy, xg_create_scroll_bar)
3918 (xg_tool_bar_callback, xg_tool_bar_help_callback)
3919 (update_frame_tool_bar): Cast to EMACS_INT to avoid compiler warning.
3920
3921 * xselect.c (x_get_foreign_selection, x_fill_property_data)
3922 (Fx_get_atom_name, Fx_send_client_event): Replace XFLOAT with
3923 XFLOAT_DATA to get extract number from Lisp object.
3924
3925 2005-01-07 Kim F. Storm <storm@cua.dk>
3926
3927 * xdisp.c (set_iterator_to_next): Fix 2004-12-13 change.
3928 Set stop_charpos to current charpos instead of 0.
3929
3930 2005-01-06 Nick Roberts <nickrob@snap.net.nz>
3931
3932 * xdisp.c (Fformat_mode_line): First arg now required.
3933
3934 2005-01-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3935
3936 * macterm.c (XLoadQueryFont): Correctly handle 0 size
3937 font widths that are returned from some Japanese fonts.
3938
3939 2005-01-06 Kim F. Storm <storm@cua.dk>
3940
3941 * fringe.c (fringe_faces): Change to Lisp_Object pointer.
3942 (draw_fringe_bitmap_1): Lookup user defined fringe faces here.
3943 (destroy_fringe_bitmap): Set fringe_faces element to nil.
3944 (Fdefine_fringe_bitmap, init_fringe): Change allocation of
3945 fringe_faces array and init elements to nil.
3946 (Fset_fringe_bitmap_face): Set fringe_faces to face name instead of
3947 non-persistent face id.
3948 (mark_fringe_data): New function for GC.
3949
3950 * alloc.c (mark_fringe_data): Declare extern.
3951 (Fgarbage_collect): Call mark_fringe_data.
3952
3953 * alloc.c (overrun_check_free): Invalidate freed memory if
3954 XMALLOC_CLEAR_FREE_MEMORY is defined.
3955
3956 2005-01-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3957
3958 * macfns.c: Include sys/param.h.
3959 [TARGET_API_MAC_CARBON] (mac_nav_event_callback): New declaration
3960 and function.
3961 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Use MAXPATHLEN for size
3962 of filename string. Set event callback function when creating
3963 dialog boxes. Add code conversions for filenames. Don't dispose
3964 of apple event descriptor record if failed to create it.
3965
3966 * macterm.c: Include sys/param.h.
3967 [USE_CARBON_EVENTS] (mac_handle_window_event): Add handler for
3968 kEventWindowUpdate.
3969 (install_window_handler) [USE_CARBON_EVENTS]: Register it.
3970 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Get FSRef instead
3971 of FSSpec from apple event descriptor record.
3972 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Use MAXPATHLEN for
3973 size of filename string.
3974 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Likewise.
3975 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Return error when a
3976 file dialog is in action.
3977 [TARGET_API_MAC_CARBON] (mac_do_track_drag): Likewise.
3978 Reject only when there are no filename items. Set background color
3979 before (un)highlighting the window below the dragged items.
3980 (XTread_socket) [USE_CARBON_EVENTS]: Don't call do_window_update.
3981
3982 2005-01-05 Romain Francoise <romain@orebokech.com>
3983
3984 * term.c (encode_terminal_code): Fix buffer size computation.
3985
3986 2005-01-04 Richard M. Stallman <rms@gnu.org>
3987
3988 * xdisp.c (Fformat_mode_line): Doc fix.
3989
3990 2005-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
3991
3992 * alloc.c (refill_memory_reserve): Move.
3993 (emacs_blocked_free, emacs_blocked_malloc, emacs_blocked_realloc)
3994 (reset_malloc_hooks, uninterrupt_malloc) [SYNC_INPUT]: Don't define.
3995
3996 2005-01-03 Richard M. Stallman <rms@gnu.org>
3997
3998 * window.c (window_scroll_pixel_based): Don't correct preserve_y
3999 for CURRENT_HEADER_LINE_HEIGHT when moving backwards.
4000
4001 2005-01-03 Jason Rumney <jasonr@gnu.org>
4002
4003 * w32bdf.c (w32_load_bdf_font): Set fontp->average_width and
4004 fontp->space_width to FONT_WIDTH so they are valid.
4005
4006 * w32fns.c (w32_load_system_font): Set FONT_WIDTH to maximum, not
4007 average width. Set fontp->average_width and fontp->space_width to
4008 their appropriate values.
4009
4010 * w32term.c (x_new_font): Set FRAME_COLUMN_WIDTH to
4011 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
4012 fontp->space_width.
4013
4014 2005-01-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4015
4016 * macterm.c (x_new_font): Set FRAME_SPACE_WIDTH.
4017 (x_font_min_bounds, XLoadQueryFont): Use the correct font width
4018 metrics for max and min bounds.
4019 (x_load_font): Correctly calculate average font width metrics.
4020
4021 2005-01-02 Richard M. Stallman <rms@gnu.org>
4022
4023 * alloc.c (Fgarbage_collect): Don't truncate_undo_list on dead buffers.
4024
4025 2004-12-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4026
4027 * xterm.c (handle_one_xevent): Clear area in expose event for GTK.
4028
4029 2004-12-31 Richard M. Stallman <rms@gnu.org>
4030
4031 * xdisp.c (setup_for_ellipsis, get_next_display_element):
4032 Set it->ellipsis_p to 1 or 0.
4033 (display_line): Record whether row ends in mid-ellipsis.
4034 (set_cursor_from_row): If ends in ellipsis, find start of it.
4035 (cursor_row_p): If PT's at the end of the ellipsis the row
4036 ends within, don't display cursor on this row.
4037
4038 * dispextern.h (struct it): New element ellipsis_p.
4039 (struct glyph_row): New element ends_in_ellipsis_p.
4040
4041 * xdisp.c (BUFFER_POS_REACHED_P): We haven't reached the specified
4042 position if we're reading from something other than the buffer.
4043
4044 * window.c (window_scroll_pixel_based): Only look at
4045 Vscroll_preserve_screen_position if the old PT can't be kept.
4046 (syms_of_window) <scroll-preserve-screen-position>: Doc fix.
4047
4048 2004-12-30 Kim F. Storm <storm@cua.dk>
4049
4050 * xdisp.c (get_line_height_property): New function extracted from
4051 original calc_line_height_property.
4052 (calc_line_height_property): Rework. Handle t and (nil . ratio).
4053 (x_produce_glyphs): Use them to handle line-height and
4054 line-spacing according to new height spec.
4055 (Qtotal): Remove.
4056 (syms_of_xdisp): Remove intern and staticpro for Qtotal.
4057
4058 2004-12-30 Kenichi Handa <handa@m17n.org>
4059
4060 * fileio.c (Finsert_file_contents): Don't use
4061 current_buffer->buffer_file_coding_system even if REPLACE is
4062 non-nil. Call Qafter_insert_file_set_coding with the second arg VISIT.
4063
4064 * fontset.h (struct font_info): New members space_width and
4065 average_width.
4066
4067 * frame.h (struct frame): New member space_width.
4068 (FRAME_SPACE_WIDTH): New macro.
4069
4070 * xterm.h (struct x_display_info): New member Xatom_AVERAGE_WIDTH.
4071
4072 * xterm.c (x_new_font): Set FRAME_COLUMN_WIDTH to
4073 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
4074 fontp->space_width.
4075 (x_load_font): Calculate fontp->space_width and fontp->average_width.
4076 (x_term_init): Initialize dpyinfo->Xatom_AVERAGE_WIDTH.
4077
4078 * xdisp.c (x_produce_glyphs): Calculate tab width by
4079 FRAME_SPACE_WIDTH, not FRAME_COLUMN_WIDTH.
4080
4081 2004-12-29 Sanghyuk Suh <han9kin@mac.com>
4082
4083 * macterm.c (SelectionRange): Add Xcode position apple event struct.
4084 (do_ae_open_documents): Handle Xcode-style file position open events.
4085
4086 2004-12-29 Luc Teirlinck <teirllm@auburn.edu>
4087
4088 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Correct typo.
4089
4090 2004-12-29 Richard M. Stallman <rms@gnu.org>
4091
4092 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Doc fix.
4093
4094 2004-12-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4095
4096 * macfns.c (install_window_handler): Modify extern to return OSErr
4097 value.
4098 (mac_window): Handle return value of install_window_handler.
4099
4100 * macterm.c (reflect_byte): Remove function.
4101 (mac_create_bitmap_from_bitmap_data): Don't call reflect_byte.
4102 Lookup table instead.
4103 (mac_do_font_lists): Simplify calculation of the longest
4104 nonspecial string.
4105 (init_mac_drag_n_drop): Remove function and declaration.
4106 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
4107 init_mac_drag_n_drop.
4108 (mac_do_track_drag): New function and declaration.
4109 (install_window_handler): Return OSErr value.
4110 (install_window_handler) [TARGET_API_MAC_CARBON]:
4111 Register handlers for tracking/receiving drag-and-drop items.
4112 (do_ae_open_documents): Generate unibyte strings for filenames.
4113 (mac_do_receive_drag) [TARGET_API_MAC_CARBON] : Likewise.
4114 Reject only non-filename items. Set event modifiers, and return value.
4115
4116 2004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
4117
4118 * coding.c (decode_coding): Fix previous change.
4119
4120 2004-12-28 Richard M. Stallman <rms@gnu.org>
4121
4122 * xdisp.c (back_to_previous_visible_line_start):
4123 Don't call handle_display_prop.
4124
4125 2004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
4126
4127 * coding.c (decode_coding_XXX, decode_composition_emacs_mule)
4128 (decode_coding_emacs_mule, encode_coding_emacs_mule)
4129 (decode_coding_iso2022, encode_designation_at_bol)
4130 (encode_coding_iso2022, decode_coding_sjis_big5, decode_eol)
4131 (decode_coding): Constify arguments and local vars.
4132
4133 2004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4134
4135 * xmenu.c (popup_get_selection): Only pop down dialogs
4136 on C-g and Escape.
4137 (popup_get_selection): Remove parameter down_on_keypress.
4138 (create_and_show_popup_menu, create_and_show_dialog):
4139 Remove parameter down_on_keypress to popup_get_selection.
4140
4141 2004-12-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4142
4143 * dispextern.h: Change HAVE_CARBON to MAC_OS.
4144 (struct glyph_string): Likewise.
4145
4146 * emacs.c (main) [MAC_OS8]: Call mac_term_init instead of
4147 mac_initialize.
4148
4149 * fileio.c (Fnext_read_file_uses_dialog_p, Fread_file_name):
4150 Change TARGET_API_MAC_CARBON to HAVE_CARBON.
4151
4152 * fns.c (vector): Change MAC_OSX to MAC_OS.
4153
4154 * frame.c (x_set_frame_parameters, x_report_frame_params)
4155 (x_set_fullscreen): Remove #ifndef HAVE_CARBON.
4156 (x_set_border_width, Vdefault_frame_scroll_bars):
4157 Change HAVE_CARBON to MAC_OS.
4158
4159 * image.c [MAC_OS]: Include sys/stat.h.
4160 [MAC_OS && !MAC_OSX]: Include sys/param.h, ImageCompression.h, and
4161 QuickTimeComponents.h.
4162
4163 * mac.c [!MAC_OSX] (mac_wait_next_event): Add extern.
4164 [!MAC_OSX] (select): Use mac_wait_next_event.
4165 [!MAC_OSX] (run_mac_command): Change EXEC_SUFFIXES to Vexec_suffixes.
4166 [!MAC_OSX] (select, run_mac_command): Change `#ifdef
4167 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
4168 (mac_clear_font_name_table): Add extern.
4169 (Fmac_clear_font_name_table): New defun.
4170 (syms_of_mac): Defsubr it.
4171 [MAC_OSX] (SELECT_POLLING_PERIOD_USEC): New define.
4172 [MAC_OSX] (select_and_poll_event): New function.
4173 [MAC_OSX] (sys_select): Use it.
4174 [MAC_OSX && SELECT_USE_CFSOCKET] (socket_callback): New function.
4175 [MAC_OSX && SELECT_USE_CFSOCKET]
4176 (SELECT_TIMEOUT_THRESHOLD_RUNLOOP, EVENT_CLASS_SOCK): New defines.
4177 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]: Use CFSocket and
4178 RunLoop for simultaneously monitoring two kinds of inputs, window
4179 events and process outputs, without periodically polling.
4180
4181 * macfns.c (mac_initialized): Remove extern.
4182 (stricmp): Put in #if 0. All callers changed to use xstricmp in
4183 xfaces.c.
4184 (strnicmp): Decrement `n' at the end of each loop, not the beginning.
4185 (check_mac): Use the term "Mac native windows" instead of "Mac OS".
4186 (check_x_display_info, x_display_info_for_name): Sync with xfns.c.
4187 (mac_get_rdb_resource): New function (from w32reg.c).
4188 (x_get_string_resource): Use it.
4189 (install_window_handler): Add extern.
4190 (mac_window): New function.
4191 (Fx_create_frame): Use it instead of make_mac_frame.
4192 Set parameter for Qfullscreen. Call x_wm_set_size_hint.
4193 (Fx_open_connection, Fx_close_connection): New defuns.
4194 (syms_of_macfns): Defsubr them.
4195 (x_create_tip_frame) [TARGET_API_MAC_CARBON]:
4196 Add kWindowNoUpdatesAttribute to the window attribute.
4197 (x_create_tip_frame) [!TARGET_API_MAC_CARBON]: Use NewCWindow.
4198 (x_create_tip_frame): Don't call ShowWindow.
4199 (Fx_show_tip): Call ShowWindow.
4200 (Fx_file_dialog): Change `#ifdef TARGET_API_MAC_CARBON' to `#if
4201 TARGET_API_MAC_CARBON'.
4202 (mac_frame_parm_handlers): Set handlers for Qfullscreen.
4203 (syms_of_macfns) [MAC_OSX]: Initialize mac_in_use to 0.
4204
4205 * macgui.h [!MAC_OSX]: Don't include Controls.h. Include Windows.h.
4206 (Window): Typedef to WindowPtr and move outside `#if
4207 TARGET_API_MAC_CARBON'.
4208 (XSizeHints): New struct.
4209
4210 * macterm.c (x_update_begin, x_update_end)
4211 [TARGET_API_MAC_CARBON]: Disable screen updates during update of a
4212 frame.
4213 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
4214 [MAC_OS8]: Use XDrawImageString/XDrawImageString16.
4215 (construct_mouse_click): Put in #if 0.
4216 (x_check_fullscreen, x_check_fullscreen_move): Remove decls.
4217 (x_scroll_bar_create, x_scroll_bar_handle_click): Change `#ifdef
4218 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
4219 (activate_scroll_bars, deactivate_scroll_bars)
4220 [!TARGET_API_MAC_CARBON]: Use ActivateControl/DeactivateControl.
4221 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Reposition window
4222 if the position is neither user-specified nor program-specified.
4223 (x_free_frame_resources): Free size_hints.
4224 (x_wm_set_size_hint): Allocate size_hints if needed. Set size_hints.
4225 (mac_clear_font_name_table): New function.
4226 (mac_do_list_fonts): Initialize font_name_table if needed.
4227 (x_list_fonts): Don't initialize font_name_table. Add BLOCK_INPUT
4228 around mac_do_list_fonts.
4229 (mac_unload_font): New function.
4230 (x_load_font): Add BLOCK_INPUT around XLoadQueryFont.
4231 (init_mac_drag_n_drop, mac_do_receive_drag): Enclose declarations
4232 and definitions with #if TARGET_API_MAC_CARBON.
4233 [USE_CARBON_EVENTS] (mac_handle_window_event): Add decl.
4234 (install_window_handler): Add decl.
4235 (do_window_update): Add BeginUpdate/EndUpdate for the tooltip
4236 window. Use UpdateControls. Get the rectangle that should be
4237 updated and restrict the target of expose_frame to it.
4238 (do_grow_window): Set minimum height/width according to size_hints.
4239 (do_grow_window) [TARGET_API_MAC_CARBON]: Use ResizeWindow.
4240 (do_zoom_window): Don't use x_set_window_size.
4241 [USE_CARBON_EVENTS] (mac_handle_window_event): New function.
4242 (install_window_handler): New function.
4243 [!USE_CARBON_EVENTS] (mouse_region): New variable.
4244 [!USE_CARBON_EVENTS] (mac_wait_next_event): New function.
4245 (XTread_socket) [USE_CARBON_EVENTS]: Move call to
4246 GetEventDispatcherTarget inside BLOCK_INPUT.
4247 (XTread_socket) [!USE_CARBON_EVENTS]: Use mac_wait_next_event.
4248 Update mouse_region when mouse is moved.
4249 (make_mac_frame): Remove.
4250 (make_mac_terminal_frame): Put in #ifdef MAC_OS8.
4251 Initialize mouse pointer shapes. Change values of f->left_pos and
4252 f->top_pos. Don't use make_mac_frame. Use NewCWindow.
4253 Don't call ShowWindow.
4254 (mac_initialize_display_info) [MAC_OSX]: Create mac_id_name from
4255 Vinvocation_name and Vsystem_name.
4256 (mac_make_rdb): New function (from w32term.c).
4257 (mac_term_init): Use it. Add BLOCK_INPUT. Error if display has
4258 already been opened. Don't pass argument to
4259 mac_initialize_display_info. Don't set dpyinfo->height/width.
4260 Add entries to x_display_list and x_display_name_list.
4261 (x_delete_display): New function.
4262 (mac_initialize): Don't call mac_initialize_display_info.
4263 (syms_of_macterm) [!MAC_OSX]: Don't call Fprovide.
4264
4265 * macterm.h (check_mac): Add extern.
4266 (struct mac_output): New member size_hints.
4267 (FRAME_SIZE_HINTS): New macro.
4268 (mac_unload_font): Add extern.
4269
4270 * xdisp.c (expose_window, expose_frame): Remove kludges for Mac.
4271
4272 * xfaces.c (clear_font_table) [MAC_OS]: Call mac_unload_font.
4273
4274 2004-12-27 Richard M. Stallman <rms@gnu.org>
4275
4276 * buffer.c (Fbuffer_disable_undo): Delete (move to simple.el).
4277 (syms_of_buffer): Don't defsubr it.
4278
4279 * process.c (list_processes_1): Set undo_list instead
4280 of calling Fbuffer_disable_undo.
4281
4282 * xdisp.c (single_display_spec_string_p): Rename from
4283 single_display_prop_string_p.
4284 (single_display_spec_intangible_p): Rename from
4285 single_display_prop_intangible_p.
4286 (handle_single_display_spec): Rename from handle_single_display_prop.
4287 Rewritten to be easier to understand.
4288
4289 Change in load-history format. Functions now get (defun . NAME),
4290 and variables get just NAME.
4291
4292 * data.c (Fdefalias): Use (defun . FN_NAME) in LOADHIST_ATTACH.
4293
4294 * eval.c (Fdefun, Fdefmacro): Use (defun . FN_NAME) in LOADHIST_ATTACH.
4295 (Fdefvaralias, Fdefvar, Fdefconst): Use just SYM in LOADHIST_ATTACH.
4296 (Qdefvar): Var deleted.
4297 (syms_of_eval): Don't initialze it.
4298
4299 * lread.c (syms_of_lread) <load-history>: Doc fix.
4300
4301 2004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4302
4303 * xmenu.c (popup_get_selection): Pop down on C-g.
4304 (set_frame_menubar): Install translations for Lucid/Motif/Lesstif that
4305 pops down menu on C-g.
4306 (xdialog_show): If dialog popped down and no button in the dialog was
4307 pushed, call Fsignal to quit.
4308 (xmenu_show): In no toolkit version, if menu returns NO_SELECT call
4309 Fsignal to quit.
4310
4311 * xfns.c (Fx_file_dialog): Motif/Lesstif version: Pop down on C-g.
4312
4313 * gtkutil.c (xg_initialize): Install bindings for C-g so that
4314 dialogs and menus pop down.
4315
4316 2004-12-27 Kenichi Handa <handa@m17n.org>
4317
4318 * coding.c (code_convert_region): Fix calculation of `ratio'.
4319
4320 2004-12-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4321
4322 * gtkutil.c (update_frame_tool_bar): Make the value of
4323 tool-bar-button-margin control margins of images in tool bar.
4324
4325 * alloc.c (check_depth): New variable.
4326 (overrun_check_malloc, overrun_check_realloc): Only add
4327 overhead and write check pattern if check_depth is 1 (to handle
4328 recursive calls). Increase/decrease check_depth in entry/exit.
4329 (overrun_check_free): Only check for overhead if check_depth is 1.
4330 Increase/decrease check_depth in entry/exit.
4331
4332 2004-12-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4333
4334 * keyboard.c (input_available_signal): Call SIGNAL_THREAD_CHECK
4335 before touching input_available_clear_time, to avoid accessing it
4336 from multiple threads.
4337
4338 2004-12-23 Jason Rumney <jasonr@gnu.org>
4339
4340 * image.c (__WIN32__) [HAVE_NTGUI]: Define for correct behaviour
4341 of JPEG library.
4342
4343 2004-12-22 Richard M. Stallman <rms@gnu.org>
4344
4345 * emacs.c (main): If batch mode, set Vundo_outer_limit to nil.
4346
4347 * lisp.h (Vundo_outer_limit): Fix decl.
4348
4349 * undo.c (Vundo_outer_limit): Replaces undo_outer_limit.
4350 Uses changed.
4351 (syms_of_undo): Initialize appropriately.
4352 (truncate_undo_list): If it's nil, there's no limit.
4353
4354 2004-12-22 Kenichi Handa <handa@m17n.org>
4355
4356 * xselect.c (Fx_get_cut_buffer_internal): Return a unibyte string.
4357
4358 2004-12-21 Richard M. Stallman <rms@gnu.org>
4359
4360 * eval.c (unwind_to_catch): Clear immediate_quit.
4361
4362 * xdisp.c (get_next_display_element): Display codes 8a0 and 8ad
4363 specially as `\ ' and `\-'.
4364
4365 * keyboard.c (kbd_buffer_store_event_hold):
4366 In the code for while-no-input, handle immediate_quit.
4367
4368 * alloc.c (Fgarbage_collect): Update call to truncate_undo_list.
4369 Call that at the very start.
4370 (undo_limit, undo_strong_limit, undo_outer_limit): Move to undo.c.
4371 (syms_of_alloc): Don't define undo-limit,
4372 undo-strong-limit and undo-outer-limit here.
4373
4374 * undo.c (truncate_undo_list): Return void.
4375 Take just one argument, the buffer.
4376 Make it current, and inhibit recursive GC.
4377 Access and update the undo list directly; return void.
4378 Refer to the undo...limit variables directly.
4379 Test undo_outer_limit only after counting the whole current command.
4380 When it's exceeded, call the function in undo-outer-limit-function.
4381 (undo_limit, undo_strong_limit, undo_outer_limit): From alloc.c.
4382 (Vundo_outer_limit_function): New variable.
4383 (syms_of_undo): Define undo-limit, undo-strong-limit
4384 and undo-outer-limit here, and undo-outer-limit-function.
4385 Doc fixes.
4386
4387 * lisp.h (truncate_undo_list): Update decl.
4388
4389 2004-12-21 Piet van Oostrum <piet@cs.uu.nl>
4390
4391 * fileio.c (Fread_file_name): Delete duplicates in
4392 file-name-history when history_delete_duplicates is true.
4393
4394 2004-12-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4395
4396 * macterm.c (mac_do_list_fonts): Fix memory leak
4397
4398 2004-12-20 Richard M. Stallman <rms@gnu.org>
4399
4400 * regex.c (re_match_2_internal) <symend, wordend>:
4401 Fix calls to UPDATE_SYNTAX_TABLE_FORWARD.
4402
4403 2004-12-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4404
4405 * macterm.c (endif, x_font_name_to_mac_font_name):
4406 Use maccentraleurroman instead of maccentraleuropean
4407 (mac_c_string_match, mac_do_list_fonts): Speed up font search by
4408 quickly finding a specific font without needing regexps.
4409
4410 2004-12-15 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4411
4412 * syssignal.h: Declare main_thread.
4413 (SIGNAL_THREAD_CHECK): New macro.
4414
4415 * keyboard.c (input_available_signal): Move thread checking code
4416 to macro SIGNAL_THREAD_CHECK and call that macro.
4417 (interrupt_signal): Call SIGNAL_THREAD_CHECK.
4418
4419 * alloc.c (uninterrupt_malloc): Move main_thread to emacs.c.
4420
4421 * emacs.c: Define main_thread.
4422 (main): Initialize main_thread.
4423 (handle_USR1_signal, handle_USR2_signal, fatal_error_signal)
4424 (memory_warning_signal): Call SIGNAL_THREAD_CHECK.
4425
4426 * floatfns.c (float_error): Call SIGNAL_THREAD_CHECK.
4427
4428 * dispnew.c (window_change_signal): Call SIGNAL_THREAD_CHECK.
4429
4430 * sysdep.c (select_alarm): Call SIGNAL_THREAD_CHECK.
4431
4432 * process.c (send_process_trap, sigchld_handler):
4433 Call SIGNAL_THREAD_CHECK.
4434
4435 * data.c (arith_error): Call SIGNAL_THREAD_CHECK.
4436
4437 * atimer.c (alarm_signal_handler): Call SIGNAL_THREAD_CHECK.
4438
4439 * xterm.c (xg_scroll_callback): Update XG_LAST_SB_DATA before
4440 returning when xg_ignore_gtk_scrollbar is true.
4441
4442 2004-12-14 Kim F. Storm <storm@cua.dk>
4443
4444 * keyboard.c (read_char): Save and restore echo_string when
4445 handling input method.
4446
4447 2004-12-13 Richard M. Stallman <rms@gnu.org>
4448
4449 * eval.c (syms_of_eval) <quit-flag>: Doc fix.
4450
4451 * keyboard.c (Vthrow_on_input): New variable.
4452 (syms_of_keyboard): Defvar and initialize it.
4453 (kbd_buffer_store_event_hold): Handle Vthrow_on_input.
4454
4455 * lisp.h (QUIT): Check for Vthrow_on_input.
4456 (Vthrow_on_input): Declare it.
4457
4458 2004-12-13 Kim F. Storm <storm@cua.dk>
4459
4460 * xdisp.c (set_iterator_to_next): Reset stop_charpos after display
4461 vector.
4462
4463 2004-12-12 Richard M. Stallman <rms@gnu.org>
4464
4465 * indent.c (Fvertical_motion): Call move_it_by_lines even if LINES = 0.
4466
4467 * minibuf.c (Fall_completions): Add var `zero' and use it in loop.
4468 (Ftry_completion): Really use outer `zero'; eliminate inner one.
4469
4470 2004-12-12 Kenichi Handa <handa@m17n.org>
4471
4472 * term.c (encode_terminal_code): Fix previous change.
4473
4474 2004-12-11 Stefan Monnier <monnier@iro.umontreal.ca>
4475
4476 * keyboard.c (handle_async_input): Remove pthread mutex handling.
4477 (input_available_signal): Move pthread thingy to !SYNC_INPUT branch.
4478
4479 * syntax.c (Fforward_word): Avoid non-idempotent side-effects
4480 in macro arguments.
4481
4482 * minibuf.c (Ftry_completion, Fall_completions): Don't use
4483 XFASTINT blindly.
4484
4485 * emacs.c (main, Fdump_emacs): Don't touch malloc hooks if SYNC_INPUT.
4486
4487 2004-12-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4488
4489 * w32term.c (x_calc_absolute_position): Remove calculation of
4490 difference between inner and outer window. Don't subtract difference
4491 for left and top calculations.
4492
4493 * xterm.c (x_calc_absolute_position): Don't subtract outer_pixel_diff
4494 for left and top calculations. Remove call to x_real_positions.
4495 [Bug report by Drew Adams in November]
4496 (x_check_expected_move): Do not set change_gravity to 1 when calling
4497 x_set_offset.
4498
4499 2004-12-08 Richard M. Stallman <rms@gnu.org>
4500
4501 * xdisp.c (get_next_display_element): Use `escape-glyph' for
4502 control chars and escaped octal codes.
4503 (Qescape_glyph): New variable.
4504 (syms_of_xdisp): Initialize it.
4505 (escape_glyph_face): New variable.
4506 (redisplay_window): Initialize it.
4507
4508 2004-12-07 Paul Eggert <eggert@cs.ucla.edu>
4509
4510 * image.c (our_fill_input_buffer, jpeg_load, CHECK_LIB_AVAILABLE)
4511 (init_image): Use 1 rather than TRUE. TRUE's not always defined.
4512
4513 2004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4514
4515 * emacs.c (Fdump_emacs): Add ! defined (SYSTEM_MALLOC) around
4516 reset_malloc_hooks.
4517
4518 * keyboard.c (handle_async_input, input_available_signal):
4519 Add ! defined (SYSTEM_MALLOC) around thread code.
4520
4521 * alloc.c: Add comment about the reason for (UN)BLOCK_INPUT_ALLOC.
4522
4523 2004-12-07 Stefan Monnier <monnier@iro.umontreal.ca>
4524
4525 * eval.c (init_eval_once): Increase max_specpdl_size to 1000.
4526
4527 * config.in: Regenerate.
4528
4529 2004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4530
4531 * xmenu.c (Fx_popup_menu): Correct documentation about position.
4532 (xmenu_show): Do not call XTranslateCoordinates. Adjust position
4533 if not given by a mouse click to correspond with x-popup-menu
4534 documentation.
4535
4536 * config.in: Regenerate.
4537
4538 * gtkutil.c: Include signal.h and syssignal.h.
4539 (xg_get_file_name): Block and unblock __SIGRTMIN if defined.
4540
4541 * alloc.c: If HAVE_GTK_AND_PTHREAD, include pthread.h,
4542 new variables main_thread and alloc_mutex,
4543 define (UN)BLOCK_INPUT_ALLOC to use alloc_mutex to protect
4544 emacs_blocked_* calls and only do (UN)BLOCK_INPUT in the main thread.
4545 If not HAVE_GTK_AND_PTHREAD, (UN)BLOCK_INPUT_ALLOC is the same as
4546 (UN)BLOCK_INPUT.
4547 (emacs_blocked_free, emacs_blocked_malloc)
4548 (emacs_blocked_realloc): Use (UN)BLOCK_INPUT_ALLOC.
4549 (uninterrupt_malloc): Initialize main_thread and alloc_mutex.
4550 (reset_malloc_hooks): New function.
4551
4552 * lisp.h: Declare reset_malloc_hooks.
4553
4554 * emacs.c (Fdump_emacs): Call reset_malloc_hooks.
4555
4556 * keyboard.c: Conditionally include pthread.h
4557 (handle_async_input, input_available_signalt): If not in the main
4558 thread, block signal, send signal to main thread and return.
4559
4560 * gtkutil.c (xg_get_file_with_chooser): Handle local files only.
4561 Set current folder in file chooser if default_filename is a directory.
4562
4563 2004-12-05 Stefan Monnier <monnier@iro.umontreal.ca>
4564
4565 * regex.c (GET_UNSIGNED_NUMBER): Signal an error when reaching the end.
4566 Remove redundant correctness checks.
4567 (regex_compile): Fix up error codes for \{..\} expressions.
4568
4569 2004-12-05 Richard M. Stallman <rms@gnu.org>
4570
4571 * regex.c (regex_compile): Fix end-of-pattern case for space.
4572
4573 2004-12-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4574
4575 * macterm.h (cfstring_create_with_utf8_cstring): Add prototype.
4576 * mac.c (cfstring_create_with_utf8_cstring): Add to prevent
4577 crashes with invalid characters.
4578 * macmenu.c (add_menu_item): Use it.
4579 * image.c (image_load_quartz2d): Likewise.
4580 * macfns.c (x_set_name, x_set_title): Likewise.
4581 (Fx_file_dialog): Likewise. Use constant CFRefs instead of
4582 creating them each time for labels.
4583
4584 2004-12-02 Richard M. Stallman <rms@gnu.org>
4585
4586 * config.in (RE_TRANSLATE_P): If make_number is not a macro,
4587 don't use it here.
4588
4589 * eval.c (Fcalled_interactively_p): Don't check INTERACTIVE.
4590 (interactive_p): Skip Scalled_interactively_p frames
4591 like Sinteractive_p frames.
4592 (unwind_to_catch): Clear handling_signal.
4593
4594 * data.c (Fmake_variable_buffer_local): Doc fix.
4595 (Fmake_local_variable): Doc fix.
4596
4597 * insdel.c (insert_from_string_before_markers)
4598 (insert_from_string): Don't modify buffer on empty insertion.
4599
4600 * window.c (Fget_lru_window, Fget_largest_window): Doc fixes.
4601
4602 2004-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4603
4604 * macmenu.c (add_menu_item): Fallback on MacRoman if encoding
4605 menu text as UTF8 fails.
4606
4607 2004-12-01 Kim F. Storm <storm@cua.dk>
4608
4609 * alloc.c: Add commentary for last change.
4610 (XMALLOC_PUT_SIZE, XMALLOC_GET_SIZE): New macros to handle
4611 sizeof(size_t) != 4.
4612 (overrun_check_malloc, overrun_check_realloc, overrun_check_free):
4613 Use them. Also clear header and trailer of freed memory.
4614 (GC_STRING_OVERRUN_COOKIE_SIZE): Rename from GC_STRING_EXTRA.
4615 (string_overrun_cookie): Rename from string_overrun_pattern.
4616 (GC_STRING_EXTRA): Define from GC_STRING_OVERRUN_COOKIE_SIZE.
4617
4618 2004-12-01 Andreas Schwab <schwab@suse.de>
4619
4620 * lisp.h: Declare string_to_multibyte.
4621
4622 2004-12-01 Kenichi Handa <handa@m17n.org>
4623
4624 * w32console.c (w32con_write_glyphs): Decide coding here.
4625 Adjusted for the change of encode_terminal_code.
4626
4627 * term.c (encode_terminal_code): Don't make it "static".
4628
4629 2004-11-30 Kenichi Handa <handa@m17n.org>
4630
4631 * term.c (encode_terminal_buf, encode_terminal_bufsize): New variables.
4632 (encode_terminal_code): Argument changed. Encode all
4633 characters at once, and return a pointer to the result of encoding.
4634 (write_glyphs): Decide coding here. Adjusted for the above change.
4635 (insert_glyphs): Likewise.
4636 (term_init): Initialize encode_terminal_bufsize to 0.
4637
4638 * coding.c (Vcode_conversion_workbuf_name): New variable.
4639 (syms_of_coding): Initialize and staticpro it.
4640 (set_conversion_work_buffer): New function.
4641 (run_pre_post_conversion_on_str): Use it.
4642 (run_pre_write_conversin_on_c_str): New function.
4643
4644 * coding.h (run_pre_write_conversin_on_c_str): Extern it.
4645
4646 2004-11-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4647
4648 * keyboard.c: Don't undef SIGIO
4649 * s/darwin.h (NO_SOCK_SIGIO): Define NO_SOCK_SIGIO on carbon
4650 * Makefile.in (mac.o): Depend on blockinput.h and atimer.h.
4651 (macfns.o): Don't depend on ccl.h.
4652 * macfns.c (mac_frame_parm_handlers): Set handlers for
4653 Qleft_fringe and Qright_fringe.
4654 * macterm.c (mac_fill_rectangle_to_pixmap)
4655 (mac_draw_rectangle_to_pixmap, mac_copy_area_to_pixmap)
4656 (mac_copy_area_with_mask_to_pixmap, x_draw_image_foreground_1):
4657 Put in #if 0.
4658 (mac_scroll_area) [TARGET_API_MAC_CARBON]: Use ScrollWindowRect.
4659 (x_flush) [TARGET_API_MAC_CARBON]: Don't traverse frames.
4660 (XFlush) [TARGET_API_MAC_CARBON]: Define to an empty replacement.
4661 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
4662 [!MAC_OS8]: Added ifdef'd out code for os8. Don't use
4663 XDrawImageString. Always draw background and foreground separately.
4664 (x_draw_image_foreground): Use clipping instead of computing the
4665 intersection rectangle.
4666 (x_draw_image_glyph_string): Don't draw an image with mask to a
4667 pixmap.
4668 (x_redisplay_interface): Set flush_display_optional member to 0.
4669 (XTread_socket): Correctly reset the TEConverter
4670 object.
4671
4672 2004-11-30 Kim F. Storm <storm@cua.dk>
4673
4674 * lisp.h: New defines to enable buffer overrun checking.
4675 (GC_CHECK_STRING_OVERRUN, GC_CHECK_STRING_FREE_LIST)
4676 (XMALLOC_OVERRUN_CHECK, GC_CHECK_CONS_LIST): Add.
4677
4678 * alloc.c: Add more checks for buffer overruns.
4679 (XMALLOC_OVERRUN_CHECK_SIZE, xmalloc_overrun_check_header)
4680 xmalloc_overrun_check_trailer, overrun_check_malloc)
4681 overrun_check_realloc, overrun_check_free): Add.
4682 (GC_STRING_EXTRA, string_overrun_pattern): Add.
4683 (check_sblock, allocate_string_data, compact_small_strings):
4684 Set and check string_overrun_pattern if GC_CHECK_STRING_OVERRUN.
4685 (check_cons_list): Condition on GC_CHECK_CONS_LIST.
4686 (check_string_free_list): Add.
4687 (allocate_string, sweep_strings): Call check_string_free_list.
4688
4689 * emacs.c (malloc_initialize_hook): Don't free malloc_state_ptr if
4690 XMALLOC_OVERRUN_CHECK to avoid crash during load.
4691
4692 2004-11-29 Kim F. Storm <storm@cua.dk>
4693
4694 * fns.c (concat): Use SAFE_ALLOCA.
4695
4696 2004-11-29 Stefan Monnier <monnier@iro.umontreal.ca>
4697
4698 * sysdep.c (emacs_write): Don't use QUIT.
4699
4700 2004-11-29 Kenichi Handa <handa@m17n.org>
4701
4702 * buffer.c (init_buffer): Set current_buffer->directory to a
4703 multibyte string made by string_to_multibyte.
4704
4705 * emacs.c (init_cmdargs): Set unibyte strings in Vcommand_line_args.
4706
4707 2004-11-27 Andreas Schwab <schwab@suse.de>
4708
4709 * alloc.c (mark_stack): Call GC_MARK_SECONDARY_STACK if defined.
4710
4711 * s/gnu-linux.h: Enable no-op gcpros on ia64.
4712 (GC_MARK_SECONDARY_STACK) [__ia64__]: Define.
4713
4714 * filelock.c (lock_file_1): Call get_boot_time early.
4715 Increase buffer size.
4716
4717 2004-11-27 Eli Zaretskii <eliz@gnu.org>
4718
4719 * lisp.h (DECL_ALIGN): Define non-trivially only if NO_DECL_ALIGN
4720 is not defined.
4721
4722 2004-11-27 Kim F. Storm <storm@cua.dk>
4723
4724 * search.c (syms_of_search) <search-spaces-regexp>: Move 'doc:'
4725 marker out of doc string.
4726
4727 2004-11-26 Stefan Monnier <monnier@iro.umontreal.ca>
4728
4729 * s/darwin.h (POSIX_SIGNALS): Undo the removal of 2002-08-25,
4730 which was not mentioned in the log.
4731
4732 2004-11-26 Kim F. Storm <storm@cua.dk>
4733
4734 * fringe.c (update_window_fringes): Prefer truncation bitmaps over
4735 angle bitmaps at top/bottom line.
4736
4737 * xdisp.c: Undo recent changes for restoring saved_face_id. Instead,
4738 set it when it->method is set to next_element_from_display_vector.
4739 (setup_for_ellipsis): Add LEN argument. Callers changed.
4740 Set it->saved_face_id.
4741 (get_next_display_element): Use loop instead of recursion.
4742 Set it->saved_face_id. Combine duplicate code for ctr chars.
4743 (next_element_from_display_vector): Do not set it->saved_face_id.
4744 (next_element_from_ellipsis): Use setup_for_ellipsis.
4745
4746 2004-11-26 Eli Zaretskii <eliz@gnu.org>
4747
4748 * eval.c (Fdefvar): Declare pdl from last change as `volatile' to
4749 prevent compiler warnings.
4750
4751 2004-11-25 Stefan Monnier <monnier@iro.umontreal.ca>
4752
4753 * keyboard.c (command_loop_1): Print a message describing the key
4754 the user just pressed when this key has no binding.
4755
4756 * sysdep.c (sys_signal): Don't use SA_RESTART if SYNC_INPUT is set.
4757 (emacs_open, emacs_read, emacs_write): Check QUIT when interrupted.
4758
4759 * lread.c (readchar): Check QUIT when `getc' is interrupted.
4760
4761 2004-11-24 Richard M. Stallman <rms@gnu.org>
4762
4763 * coding.c (run_pre_post_conversion_on_str): Bind Qinhibit_read_only.
4764
4765 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>: Doc fix.
4766
4767 2004-11-24 Kim F. Storm <storm@cua.dk>
4768
4769 * xdisp.c (move_it_in_display_line_to, display_line):
4770 Restore saved_face_id also when truncate-lines or hscrolled.
4771
4772 2004-11-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4773
4774 * gtkutil.c (xg_get_file_name): Rename use-old-gtk-file-dialog to
4775 x-use-old-gtk-file-dialog.
4776
4777 * xfns.c: Define x_use_old_gtk_file_dialog.
4778 (syms_of_xfns): Rename use-old-gtk-file-dialog to x-... Move it
4779 outside ifdef USE_GTK.
4780
4781 2004-11-23 Stefan Monnier <monnier@iro.umontreal.ca>
4782
4783 * coding.h (ENCODE_FILE, DECODE_FILE, ENCODE_SYSTEM, DECODE_SYSTEM):
4784 Don't use XFASTINT blindly.
4785
4786 * config.in (RE_TRANSLATE_P): Don't use XFASTINT blindly.
4787
4788 * indent.c (skip_invisible): Avoid non-idempotent side-effects
4789 in macro arguments.
4790
4791 * keymap.c (Flookup_key): Check INTEGERP before XINT.
4792
4793 * lread.c (oblookup): Don't use XFASTINT blindly.
4794
4795 * window.c (Fset_window_scroll_bars): Don't use XINT if it isn't int.
4796 (decode_next_window_args, window_loop): Don't use XFASTINT blindly.
4797
4798 2004-11-23 Kim F. Storm <storm@cua.dk>
4799
4800 * dispextern.h (MATRIX_ROW_ENDS_IN_MIDDLE_OF_CHAR_P)
4801 (MATRIX_ROW_STARTS_IN_MIDDLE_OF_CHAR_P): Not if dpvec_index is zero.
4802
4803 * xfaces.c (lookup_named_face): Add signal_p arg. Return -1 if
4804 signal_p is zero and face name is unknown.
4805 (Fx_list_fonts): Don't signal error in lookup_named_face.
4806 (Fface_font): Signal error in lookup_named_face.
4807 (ascii_face_of_lisp_face): Likewise.
4808
4809 * dispextern.h (lookup_named_face): Fix prototype.
4810
4811 * xdisp.c (handle_single_display_prop): Don't signal error in
4812 lookup_named_face for unknown fringe face name.
4813 (highlight_trailing_whitespace): Don't signal error in
4814 lookup_named_face if trailing-whitespace face unknown.
4815 (calc_line_height_property): Don't signal error in
4816 lookup_named_face if specified face name is unknown.
4817
4818 * fringe.c (update_window_fringes): Show top row indicator if
4819 window has header-line. Don't show arrow at bob and eob
4820 if the boundary indicators are not used.
4821 (Fset_fringe_bitmap_face): Signal error in lookup_named_face.
4822
4823 * window.c (set_window_buffer): Clear display_error_modiff.
4824
4825 2004-11-22 Kim F. Storm <storm@cua.dk>
4826
4827 * fringe.c (update_window_fringes): Provide sensible fall-back
4828 value for non-nil indicate-buffer-boundaries setting.
4829
4830 2004-11-22 Markus Rost <rost@ias.edu>
4831
4832 * minibuf.c (Fminibuffer_complete_and_exit): Fix previous change.
4833
4834 2004-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
4835
4836 * eval.c (Fdefvar): Warn when var is let-bound but globally void.
4837
4838 2004-11-21 Kim F. Storm <storm@cua.dk>
4839
4840 * xdisp.c (erase_phys_cursor): Clear hollow cursor inside TEXT_AREA.
4841
4842 * xterm.c (x_clip_to_row): Add area arg. Callers changed.
4843 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
4844
4845 * w32term.c (w32_clip_to_row): Add area arg. Callers changed.
4846 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
4847
4848 * macterm.c (x_clip_to_row): Add area arg. Callers changed.
4849 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
4850
4851 * xdisp.c (move_it_in_display_line_to, display_line):
4852 Restore saved_face_id if overflow-newline-into-fringe is enabled and
4853 line is continued before or in middle of element from display vector.
4854
4855 * indent.c (Fvertical_motion): Fix last change. Use another
4856 method to detect if iterator moved too far ahead after reseat.
4857
4858 * xdisp.c (IT_EXPAND_MATRIX_WIDTH): New macro. Do not
4859 expand matrix width for overflow in zero-width area.
4860 (append_glyph, append_composite_glyph, produce_image_glyph)
4861 (append_stretch_glyph): Use it to avoid loop in redisplay.
4862 (note_mode_line_or_margin_highlight): Don't let help-echo from
4863 string override help-echo from image map.
4864
4865 2004-11-20 Luc Teirlinck <teirllm@auburn.edu>
4866
4867 * fns.c (Fyes_or_no_p): Call Fread_from_minibuffer with extra argument.
4868 * callint.c (Fcall_interactively): Ditto.
4869
4870 2004-11-20 Stefan Monnier <monnier@iro.umontreal.ca>
4871
4872 * minibuf.c (Fminibuffer_complete_and_exit):
4873 Fixup the case of the completed value, for case-indep completion.
4874
4875 2004-11-20 Richard M. Stallman <rms@gnu.org>
4876
4877 * lisp.h (Fread_from_minibuffer): Add arg in decl.
4878
4879 * minibuf.c (read_minibuf): New arg KEEP_ALL. Callers changed.
4880 (Fread_from_minibuffer): New arg KEEP_ALL. Callers changed.
4881
4882 * search.c (Vsearch_spaces_regexp):
4883 Rename from Vsearch_whitespace_regexp. All uses changed.
4884
4885 2004-11-20 Thien-Thi Nguyen <ttn@gnu.org>
4886
4887 * eval.c (init_eval_once): Increase `max_specpdl_size' to 650.
4888
4889 2004-11-19 Richard M. Stallman <rms@gnu.org>
4890
4891 * search.c (Vsearch_whitespace_regexp): New variable.
4892 (syms_of_search): Defvar it.
4893 (compile_pattern_1): Call re_set_whitespace_regexp with it.
4894 (search_buffer): No regexp is trivial if Vsearch_whitespace_regexp
4895 is non-nil.
4896 (struct regexp_cache): New element whitespace_regexp.
4897 (syms_of_search): Initialize whitespace_regexp elements.
4898 (compile_pattern): Compare whitespace_regexp elements.
4899 (compile_pattern_1): Set whitespace_regexp elements.
4900
4901 * regex.c (regex_compile): Substitute whitespace_regexp
4902 for spaces, if it is nonzero.
4903 (whitespace_regexp): New variable.
4904 (re_set_whitespace_regexp): New function.
4905
4906 2004-11-19 Kim F. Storm <storm@cua.dk>
4907
4908 * indent.c (Fvertical_motion): Fix last change.
4909
4910 2004-11-18 Kim F. Storm <storm@cua.dk>
4911
4912 * indent.c (Fvertical_motion): Undo 2004-11-16 change.
4913 Instead, move back again if reseating moves too far ahead.
4914
4915 2004-11-17 Luc Teirlinck <teirllm@auburn.edu>
4916
4917 * xdisp.c (message3): Call clear_message.
4918
4919 2004-11-17 Kim F. Storm <storm@cua.dk>
4920
4921 * xdisp.c (erase_phys_cursor): Adjust cursor row visible height.
4922
4923 2004-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4924
4925 * gtkutil.c (xg_get_file_name): Typo in HAVE_GTK_FILE_SELECTION_NEW.
4926
4927 * xmenu.c (x_menu_in_use): Remove.
4928 (x_menu_set_in_use): Also set popup_activated_flag.
4929
4930 * xfns.c (Fx_file_dialog): Call popup_activated instead of
4931 x_menu_in_use. Call x_menu_set_in_use in Motif version also.
4932
4933 * xterm.h (x_menu_in_use): Remove.
4934
4935 2004-11-16 Richard M. Stallman <rms@gnu.org>
4936
4937 * keymap.c (Fmap_keymap): New arg SORT-FIRST.
4938 Use map-keymap-internal to implement that.
4939
4940 * indent.c (Fvertical_motion): In batch mode, use vmotion directly.
4941
4942 2004-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
4943
4944 * xdisp.c (get_glyph_string_clip_rect, init_glyph_string): Check it's
4945 a window before using XWINDOW.
4946
4947 * window.c (make_window, Fselect_window, make_dummy_parent)
4948 (save_window_save):
4949 * frame.c (make_frame):
4950 * fns.c (concat): Avoid side-effects inside XSETFASTINT's arguments.
4951
4952 * lisp.h (NILP): Use EQ rather than XFASTINT.
4953
4954 2004-11-16 Kim F. Storm <storm@cua.dk>
4955
4956 * fringe.c (Fdefine_fringe_bitmap): Always set 'h'. Simplify.
4957
4958 * indent.c (Fvertical_motion): Fix last change. Only reseat when
4959 moving backwards.
4960
4961 2004-11-16 Luc Teirlinck <teirllm@auburn.edu>
4962
4963 * dispextern.h: Extern reseat_at_previous_visible_line_start.
4964
4965 2004-11-16 Kenichi Handa <handa@m17n.org>
4966
4967 * xdisp.c (display_mode_element): Fix previous change (calculate
4968 end position of substring to display correctly).
4969
4970 2004-11-16 Kim F. Storm <storm@cua.dk>
4971
4972 * keyboard.c (Fposn_at_point): Remove extra */ after doc string.
4973 Reported by Andrew M. Scott.
4974
4975 2004-11-15 Kim F. Storm <storm@cua.dk>
4976
4977 * fns.c (Fsafe_plist_get): New defun.
4978 (syms_of_fns): Defsubr it.
4979
4980 * lisp.h (Fsafe_plist_get): Add EXFUN.
4981
4982 * xdisp.c (store_mode_line_string, produce_stretch_glyph):
4983 Use Fsafe_plist_get.
4984 (note_mode_line_or_margin_highlight, note_mouse_highlight):
4985 Fix image map element parsing. Use Fsafe_plist_get.
4986
4987 2004-11-15 Richard M. Stallman <rms@gnu.org>
4988
4989 * xdisp.c (get_next_display_element): Fix previous change.
4990
4991 2004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4992
4993 * window.c (shrink_windows): Handle special case of one window left
4994 when trying to shrink the final reminder. Grow windows if
4995 total_removed is less than total_shrink.
4996
4997 * xmenu.c (pop_down_menu): Remove global variable current_menu,
4998 extract pointer from arg with XSAVE_VALUE.
4999 (create_and_show_popup_menu, create_and_show_dialog, xmenu_show):
5000 Construct arg to record_unwind_protect with make_save_value.
5001
5002 2004-11-13 Richard M. Stallman <rms@gnu.org>
5003
5004 * xdisp.c (reseat_at_previous_visible_line_start): No longer static.
5005 (get_next_display_element): Fix previous change to apply only to \n.
5006
5007 * indent.c (Fvertical_motion): Scan to PT from start of line to
5008 make iterator consistent.
5009
5010 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
5011
5012 2004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5013
5014 * gtkutil.c (pop_down_file_dialog): Add BLOCK_INPUT.
5015
5016 * xfns.c (Fx_file_dialog): Call x_menu_in_use and x_menu_set_in_use.
5017 Record unwind with clean_up_file_dialog.
5018
5019 * xterm.h (x_menu_in_use, x_menu_set_in_use, x_menu_wait_for_event):
5020 Declare.
5021
5022 * xmenu.c (x_menu_in_use, x_menu_set_in_use): New functions.
5023
5024 2004-11-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5025
5026 * gtkutil.c (xg_file_sel_ok, xg_file_sel_cancel)
5027 (xg_file_sel_destroy): Remove.
5028 (xg_file_response_cb, pop_down_file_dialog)
5029 (xg_get_file_name_from_chooser, xg_get_file_name_from_selector):
5030 New functions.
5031 (xg_get_file_with_chooser, xg_get_file_with_selection):
5032 Take new arg func, set it to xg_get_file_name_from_chooser/selector.
5033 Move common code to xg_get_file_name. Return widget created.
5034 (xg_get_file_name): Set name, transient for, modal and destroy
5035 with parent here. Connect response signal to xg_file_response_cb,
5036 connect delete-event to gtk_true. Record pop_down_file_dialog
5037 for unwind. Do event loop and call x_menu_wait_for_event in loop.
5038 (xg_create_widget): Make dialogs modal.
5039
5040 * xmenu.c (unuse_menu_items, pop_down_menu): Arg is of type
5041 Lisp_Object.
5042 (popup_get_selection): Move unwind protect ...
5043 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
5044 Move destroy of widget to pop_down_menu.
5045 (popup_widget_loop): Move unwind protect ...
5046 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
5047 Move destroy of widget to pop_down_menu.
5048 (pop_down_menu): BLOCK_INPUT and destroy widget/window.
5049 (xmenu_show): Record unwind pop_down_menu. Move XMenuDestroy,
5050 x_mouse_leave and grabbed = 0 to pop_down_menu.
5051
5052 2004-11-13 Kim F. Storm <storm@cua.dk>
5053
5054 * xdisp.c (make_cursor_line_fully_visible_p): New variable.
5055 (syms_of_xdisp): DEFVAR_BOOL it.
5056 (make_cursor_line_fully_visible, try_cursor_movement)
5057 (try_window_id): Use it.
5058
5059 2004-11-12 Kim F. Storm <storm@cua.dk>
5060
5061 * dispextern.h (struct glyph_row): New member extra_line_spacing.
5062 (struct it): New member max_extra_line_spacing.
5063 (MR_PARTIALLY_VISIBLE, MR_PARTIALLY_VISIBLE_AT_TOP)
5064 (MR_PARTIALLY_VISIBLE_AT_BOTTOM): New helper macros.
5065 (MATRIX_ROW_PARTIALLY_VISIBLE_P): Fix to return false if invisible
5066 part of last line is only extra line spacing (so the text on the
5067 line is fully visible). Use helper macros.
5068 Add W arg (to use them). All callers changed.
5069 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_TOP_P)
5070 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_BOTTOM_P): Use helper macros.
5071
5072 * window.c (window_scroll_pixel_based, Frecenter):
5073 Use move_it_vertically_backward directly.
5074 (Frecenter): Fix calculation of new start pos for negative arg.
5075 Before, the new start pos was sometimes chosen too far back, so
5076 the last line became only partially visible, and thus would be
5077 either only semi-visible or automatically scrolled to the middle
5078 of the window by redisplay.
5079
5080 * xdisp.c (init_iterator): Clear it.max_extra_line_spacing.
5081 (move_it_vertically_backward): Don't recure to move further back.
5082 (move_it_vertically): Remove superfluous condition.
5083 (move_it_by_lines): Clear last_height when moved 0 lines.
5084 (resize_mini_window): Use it.max_extra_line_spacing.
5085 (display_tool_bar_line): Clear row->extra_line_spacing.
5086 (try_scrolling): Use move_it_vertically_backward directly.
5087 (redisplay_window): Likewise.
5088 (compute_line_metrics): Set row->extra_line_spacing.
5089 (display_line, display_string): Likewise.
5090 (x_produce_glyphs): Update it->max_extra_line_spacing.
5091
5092 * xmenu.c (pop_down_menu): Return nil.
5093
5094 2004-11-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5095
5096 * xmenu.c (x_menu_wait_for_event): New function.
5097 (popup_get_selection, popup_widget_loop): Call x_menu_wait_for_event
5098 to handle timers.
5099 (popup_widget_loop): Add argument do_timers.
5100 (create_and_show_popup_menu, create_and_show_dialog): Pass 1 for
5101 do_timers to popup_widget_loop.
5102 (xmenu_show): Call XMenuActivateSetWaitFunction so that
5103 x_menu_wait_for_event is called by XMenuActivate.
5104 (create_and_show_popup_menu): Pass 1 for do_timers to
5105 popup_get_selection.
5106 (pop_down_menu): New function.
5107 (popup_get_selection, popup_widget_loop): Unwind protect to
5108 pop_down_menu.
5109 (popup_widget_loop): Add argument widget.
5110 (create_and_show_popup_menu, create_and_show_dialog): Pass new
5111 argument widget to popup_widget_loop.
5112
5113 2004-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
5114
5115 * keymap.c (Fkeymap_prompt): Accept symbol keymaps.
5116
5117 2004-11-09 Kim F. Storm <storm@cua.dk>
5118
5119 * xselect.c: Include <sys/types.h> and <unistd.h> (for getpid).
5120 Fix various comments referring to XEvents instead of input events.
5121 (x_queue_event): Fix format strings.
5122 (x_stop_queuing_selection_requests): Likewise.
5123
5124 * xdisp.c (produce_image_glyph): Remove unused variable 'face_ascent'.
5125 (pint2hrstr): Add extra braces to silence compiler.
5126
5127 * print.c (print_object): Fix format string.
5128
5129 * lread.c (read1): Fix next_char matching.
5130
5131 * lisp.h (Fdelete): Add EXFUN.
5132 (replace_range_2): Add prototype.
5133
5134 * keyboard.c (read_avail_input): Remove unused variable 'discard'.
5135
5136 * intervals.h (NULL_INTERVAL_P): Add separate version when
5137 ENABLE_CHECKING is not defined to silence compiler.
5138 (compare_string_intervals): Add prototype.
5139
5140 * fringe.c (destroy_fringe_bitmap): Fix return type.
5141 (Ffringe_bitmaps_at_pos): Remove unused var 'old_buffer'.
5142
5143 * emacs.c (Fdump_emacs): Fix format string.
5144
5145 * doc.c: Include <ctype.h>.
5146 (Fsubstitute_command_keys): Remove unused variable 'firstkey'.
5147
5148 * data.c (store_symval_forwarding): Remove unused variables.
5149
5150 * callint.c (Fcall_interactively): Remove unused variable 'funcar'.
5151
5152 2004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5153
5154 * Makefile.in (stamp-oldxmenu): If HAVE_GTK, don't add dependencies
5155 to ${OLDXMENU}.
5156
5157 2004-11-09 Kim F. Storm <storm@cua.dk>
5158
5159 * process.c (Fmake_network_process): Remove kludge for interrupted
5160 connects on BSD. If connect is interrupted, just close socket and
5161 start over rather than sleeping and retry with same socket.
5162
5163 2004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5164
5165 * .cvsignore: Add buildobj.lst.
5166
5167 * doc.c: New variable Vbuild_files.
5168 (Fsnarf_documentation): If Vbuild_files is nil, populate it with
5169 file names from buildobj.lst. Only attach docstrings from files
5170 that are in Vbuild_files.
5171 (syms_of_doc): Defvar Vbuild_files.
5172
5173 * Makefile.in (SOME_MACHINE_OBJECTS): Add fringe.o, image.o
5174 and w32*.o.
5175 (temacs${EXEEXT}): Generate buildobj.lst when temacs is linked.
5176 (mostlyclean): Rm buildobj.lst
5177
5178 * makefile.w32-in ($(TEMACS)): Generate buildobj.lst when temacs
5179 is linked.
5180
5181 2004-11-09 Kim F. Storm <storm@cua.dk>
5182
5183 * fringe.c (update_window_fringes): Update fringe bitmaps if
5184 cur and row ends_at_zv_p differs. If bitmaps of a row is updated,
5185 also update previous row to get rid of misc. artifacts.
5186
5187 2004-11-08 Kim F. Storm <storm@cua.dk>
5188
5189 * xdisp.c (fast_find_position): Fix start pos if header line present.
5190 (note_mouse_highlight): Clear mouse face if we move out of text area.
5191
5192 2004-11-08 Eli Zaretskii <eliz@gnu.org>
5193
5194 * editfns.c: Move #include "systime.h" before <sys/resource.h>.
5195 Don't include <sys/time.h> explicitly.
5196 Include <stdio.h> unconditionally, not just on MacOS.
5197
5198 2004-11-08 Kenichi Handa <handa@m17n.org>
5199
5200 * fontset.c (fontset_pattern_regexp): Cancel my previous change;
5201 don't pay attention to '\' before '*'.
5202 (fontset_pattern_regexp): Change the meaning of the second arg.
5203 (Fnew_fontset): Call fs_query_fontset, not Fquery_fontset.
5204 (check_fontset_name): Try NAME as literal at first, and if it
5205 failes, try NAME as pattern.
5206
5207 2004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5208
5209 * emacs.c (Fdump_emacs): Only output warning on GNU/Linux.
5210
5211 2004-11-07 Andreas Schwab <schwab@suse.de>
5212
5213 * lisp.h (Fmsdos_downcase_filename): Declare.
5214 * dired.c (Fmsdos_downcase_filename): Don't declare here.
5215 * fileio.c: Likewise.
5216
5217 2004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5218
5219 * dosfns.c (Fdos_memget, Fdos_memput): Use integer variable offs in
5220 comparisons with integers instead of Lisp_Object address.
5221 (Fmsdos_set_keyboard): Declare argument allkeys.
5222
5223 * msdos.c (IT_set_frame_parameters): Use EQ, not ==, for Lisp_Object:s.
5224
5225 * dired.c (Fmsdos_downcase_filename): Declare extern on MSDOS to avoid
5226 int/Lisp_Object mixup.
5227
5228 * fileio.c: Ditto.
5229
5230 2004-11-06 Steven Tamm <steventamm@mac.com>
5231
5232 * editfns.c: Need to include sys/time.h before resource.h on darwin.
5233
5234 2004-11-06 Richard M. Stallman <rms@gnu.org>
5235
5236 * callint.c (Fcall_interactively): Avoid reusing EVENT for other data.
5237
5238 * xfaces.c (merge_named_face): GCPRO the face_name in the
5239 named_merge_point struct that we make.
5240 (merge_face_heights): Eliminate GCPRO arg. All callers changed.
5241
5242 * keyboard.c (command_loop_1): Change Vtransient_mark_mode
5243 before deciding whether to inactivate mark.
5244
5245 2004-11-06 Lars Brinkhoff <lars@nocrew.org>
5246
5247 * config.in: Regenerate (add HAVE_GETRUSAGE).
5248 * editfns.c (Fget_internal_run_time): New function.
5249 (syms_of_data): Defsubr it.
5250 * fns.c (sxhash): As far as possible, merge calculation of
5251 hash code for symbols and strings.
5252
5253 2004-11-06 Eli Zaretskii <eliz@gnu.org>
5254
5255 * frame.c (syms_of_frame): Fix the example in the doc string.
5256
5257 2004-11-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5258
5259 * eval.c (Feval): Remove check for INPUT_BLOCKED_P.
5260
5261 * xmenu.c (popup_get_selection, create_and_show_popup_menu)
5262 (create_and_show_dialog): Revert change from 2004-10-31.
5263
5264 2004-11-05 Luc Teirlinck <teirllm@auburn.edu>
5265
5266 * macros.c (syms_of_macros) <defining-kbd-macro>: Doc fix.
5267
5268 2004-11-05 Kim F. Storm <storm@cua.dk>
5269
5270 * print.c (print_object): Print Lisp_Misc_Save_Value objects.
5271
5272 * fileio.c (Ffile_modes): Doc fix.
5273 (auto_save_1): Check for Ffile_modes nil value.
5274
5275 2004-11-05 Kim F. Storm <storm@cua.dk>
5276
5277 * xselect.c (struct selection_event_queue, selection_queue)
5278 (x_queue_selection_requests, x_queue_event)
5279 (x_start_queuing_selection_requests)
5280 (x_stop_queuing_selection_requests): Add new queue for selection
5281 input events to replace previous XEvent queue in xterm.c.
5282 (queue_selection_requests_unwind): Adapt to new queue.
5283 (x_reply_selection_request): Adapt to new queue.
5284 Unexpect wait_object in case of x errors (memory leak).
5285 (x_handle_selection_request, x_handle_selection_clear): Make static.
5286 (x_handle_selection_event): New function. May queue selection events.
5287 (wait_for_property_change_unwind): Use save_value instead of cons.
5288 Clear property_change_reply_object.
5289 (wait_for_property_change): Abort if already waiting.
5290 Use save_value instead of cons for unwind data.
5291 (x_handle_property_notify): Skip events already arrived, but don't
5292 free them, as "arrived" field is checked by wait_for_property_change,
5293 and it will be freed by unwind or explicit unexpect_property_change.
5294 (x_get_foreign_selection): Add to new queue.
5295 (receive_incremental_selection): Don't unexpect wait_object when done
5296 as it has already been freed by previous wait_for_property_change.
5297
5298 * xterm.h (x_start_queuing_selection_requests)
5299 (x_stop_queuing_selection_requests, x_handle_selection_request)
5300 (x_handle_selection_clear): Remove prototypes.
5301 (x_handle_selection_event): Add prototype.
5302
5303 * xterm.c (handle_one_xevent): Don't queue X selection events
5304 here, it may be too late if we start queuing after we have already
5305 stored some selection events into the kbd buffer.
5306 (struct selection_event_queue, queue, x_queue_selection_requests)
5307 (x_queue_event, x_unqueue_events, x_start_queuing_selection_requests)
5308 (x_stop_queuing_selection_requests): Remove/move to xselect.c.
5309 (x_catch_errors_unwind): Block input around final XSync.
5310
5311 * keyboard.h (kbd_buffer_unget_event): Add prototype.
5312
5313 * keyboard.c (kbd_buffer_store_event_hold): Remove obsolete code.
5314 (kbd_buffer_unget_event): New function.
5315 (kbd_buffer_get_event, swallow_events): Combine SELECTION events
5316 and use x_handle_selection_event.
5317 (mark_kboards): Don't mark x and y of SELECTION_CLEAR_EVENT.
5318
5319 2004-11-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5320
5321 * xselect.c (TRACE3): New debug macro.
5322 (x_reply_selection_request): Use it.
5323 (receive_incremental_selection): In call to TRACE0, the name of
5324 a symbol is in xname.
5325
5326 2004-11-05 Kim F. Storm <storm@cua.dk>
5327
5328 * fontset.c (fontset_pattern_regexp): Use unsigned char.
5329
5330 2004-11-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5331
5332 * fileio.c (Fnext_read_file_uses_dialog_p): New function.
5333
5334 * gtkutil.h (use_old_gtk_file_dialog): Declare.
5335
5336 * gtkutil.c: Make use_old_gtk_file_dialog non-static.
5337 (xg_initialize): Move DEFVAR_BOOL for use_old_gtk_file_dialog ...
5338 * xfns.c (syms_of_xfns): ... to here.
5339
5340 * gtkutil.c (xg_get_file_with_chooser): Expand DEFAULT_FILENAME if
5341 it doesn't start with /.
5342
5343 2004-11-04 Kenichi Handa <handa@m17n.org>
5344
5345 * fontset.c (fontset_pattern_regexp): If '*' is preceded by '\',
5346 treat it as a literal character.
5347
5348 2004-11-03 Kim F. Storm <storm@cua.dk>
5349
5350 * .gdbinit (ppt): New function.
5351
5352 2004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5353
5354 * xterm.c (x_window_to_scroll_bar): Only call
5355 xg_get_scroll_id_for_window if toolkit scroll bars are used.
5356
5357 * gtkutil.c (xg_get_file_with_chooser): Use GTK_STOCK_OK instead
5358 of save.
5359
5360 2004-11-02 Andreas Schwab <schwab@suse.de>
5361
5362 * window.c (Fscroll_right): Fix last change.
5363
5364 2004-11-02 Kim F. Storm <storm@cua.dk>
5365
5366 * Makefile.in (callproc.o): Depend on blockinput.h atimer.h systime.h.
5367
5368 2004-11-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5369
5370 * callproc.c (Fcall_process): Block input around vfork.
5371
5372 2004-11-02 Kim F. Storm <storm@cua.dk>
5373
5374 * eval.c (Fcalled_interactively_p): Rename from Fcall_interactive_p.
5375 (syms_of_eval): Defsubr it.
5376
5377 2004-11-02 Richard M. Stallman <rms@gnu.org>
5378
5379 * insdel.c (replace_range_2): New function.
5380
5381 * casefiddle.c (casify_region): Handle changes in byte-length
5382 using replace_range_2.
5383
5384 * emacs.c (USAGE3): Delete --horizontal-scroll-bars, -hb.
5385
5386 * xdisp.c (back_to_previous_visible_line_start):
5387 Subtract 1 from pos when checking previous newline for invisibility.
5388
5389 * window.c (window_scroll_pixel_based): Update preserve_y
5390 for header line if any.
5391 (Fscroll_left, Fscroll_right): Don't call interactive_p;
5392 use a new second argument instead.
5393
5394 * eval.c (Fcall_interactive_p): New function.
5395 (interactive_p): Don't test INTERACTIVE here.
5396 (Finteractive_p): Doc fix.
5397
5398 * eval.c (Feval): Abort if INPUT_BLOCKED_P.
5399
5400 2004-11-02 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
5401
5402 * w32fns.c (w32_font_match): Use fast_string_match_ignore_case for
5403 comparing font names.
5404
5405 2004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5406
5407 * fileio.c (Fread_file_name): Pass Qt as fifth parameter to
5408 Fx_file_dialog if only directories should be read.
5409
5410 * lisp.h: Fx_file_dialog takes 5 parameters.
5411
5412 * xfns.c (Fx_file_dialog): Both Motif and GTK version:
5413 Add parameter only_dir_p.
5414 In Motif version, don't put DEFAULT_FILENAME in filter part of the
5415 dialog, just text field part. Do not add DEFAULT_FILENAME
5416 to list of files if it isn't there.
5417 In GTK version, pass only_dir_p parameter to xg_get_file_name.
5418
5419 * macfns.c (Fx_file_dialog): Add parameter only_dir_p.
5420 Check only_dir_p instead of comparing prompt to "Dired". When using
5421 a save dialog, add option kNavDontConfirmReplacement, change title
5422 to "Enter name", change text for save button to "Ok".
5423
5424 * w32fns.c (Fx_file_dialog): Add parameter only_dir_p.
5425 Check only_dir_p instead of comparing prompt to "Dired".
5426
5427 * gtkutil.c (xg_get_file_with_chooser)
5428 (xg_get_file_with_selection): New functions, only defined ifdef
5429 HAVE_GTK_FILE_CHOOSER_DIALOG_NEW and HAVE_GTK_FILE_SELECTION_NEW
5430 respectively.
5431 (xg_get_file_name): Add parameter only_dir_p.
5432 Call xg_get_file_with_chooser or xg_get_file_with_selection
5433 depending on HAVE_GTK_FILE* and the value of use_old_gtk_file_dialog.
5434 (xg_initialize): New DEFVAR_BOOL use_old_gtk_file_dialog.
5435
5436 * gtkutil.h (xg_get_file_name): Add parameter only_dir_p.
5437
5438 * config.in: Rebuild (added HAVE_GTK_FILE_*).
5439
5440 2004-11-01 Kim F. Storm <storm@cua.dk>
5441
5442 * process.c (connect_wait_mask, num_pending_connects):
5443 Only declare and use them if NON_BLOCKING_CONNECT is defined.
5444 (init_process): Initialize them if NON_BLOCKING_CONNECT defined.
5445 (IF_NON_BLOCKING_CONNECT): New helper macro.
5446 (wait_reading_process_output): Only declare and use local vars
5447 Connecting and check_connect when NON_BLOCKING_CONNECT is defined.
5448
5449 2004-11-01 Andy Petrusenco <Igrek@star-sw.com> (tiny change)
5450
5451 * w32term.c (x_scroll_run): Delete region objects after use.
5452
5453 2004-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5454
5455 * xmenu.c: Add prototypes for forward function declarations.
5456 (popup_get_selection): Remove parameter do_timers, remove call to
5457 timer_check.
5458 (create_and_show_popup_menu, create_and_show_dialog):
5459 Remove parameter do_timers from call to popup_get_selection.
5460
5461 * xdisp.c (update_tool_bar): Pass a copy of f->tool_bar_items to
5462 tool_bar_items and assign the result to f->tool_bar_items if
5463 not equal. Move BLOCK/UNBLOCK_INPUT from around call to
5464 tool_bar_items to assignment of result.
5465
5466 * atimer.c (alarm_signal_handler): Do not call set_alarm if
5467 pending_atmers is non-zero.
5468
5469 2004-10-31 Kim F. Storm <storm@cua.dk>
5470
5471 * dispnew.c (margin_glyphs_to_reserve): Don't use ncols_scale_factor.
5472
5473 2004-10-28 Will <will@glozer.net>
5474
5475 * macterm.c: Allow user to assign key modifiers to the Mac Option
5476 key via a 'mac-option-modifier' variable.
5477
5478 2004-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
5479
5480 * xselect.c (Vx_lost_selection_functions, Vx_sent_selection_functions):
5481 Rename from Vx_lost_selection_hooks and Vx_sent_selection_hooks.
5482 (x_handle_selection_request, x_handle_selection_clear)
5483 (x_clear_frame_selections, syms_of_xselect): Adjust accordingly.
5484
5485 2004-10-28 Richard M. Stallman <rms@gnu.org>
5486
5487 * w32fns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
5488
5489 * xfns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
5490
5491 2004-10-27 Stefan Monnier <monnier@iro.umontreal.ca>
5492
5493 * syntax.c (scan_sexps_forward): Give precedence to a 2-char
5494 comment-starter over a 1-char one.
5495
5496 2004-10-27 Richard M. Stallman <rms@gnu.org>
5497
5498 * xdisp.c (get_next_display_element): In mode lines,
5499 treat newline and tab like other control characters.
5500
5501 * editfns.c (Fmessage): Doc fix.
5502
5503 * indent.c (vmotion): When moving up, check the newline before.
5504 Make prevline an int, not a Lisp_Object.
5505
5506 2004-10-27 Kim F. Storm <storm@cua.dk>
5507
5508 * editfns.c (Fformat): Allocate discarded table with SAFE_ALLOCA.
5509 Only allocate info and discarded tables once.
5510
5511 * lisp.h (USE_SAFE_ALLOCA): Add and init sa_must_free integer.
5512 (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Increment it when malloc is used.
5513 (SAFE_FREE): Test it to determine if we need to unwind to free.
5514 Remove size arg. All users changed.
5515 (SAFE_FREE_LISP) Remove. All users changed to use SAFE_FREE.
5516
5517 2004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5518
5519 * gtkutil.c: Put empty line between comment and function body.
5520 (xg_destroy_widgets): Rename from remove_from_container.
5521 Just destroy all widgets in list. Argument wcont removed.
5522 (xg_update_menubar, xg_update_submenu): Call xg_destroy_widgets
5523 instead of remove_from_container.
5524 (xg_display_close, xg_create_tool_bar, update_frame_tool_bar)
5525 (free_frame_tool_bar): Add comment.
5526
5527 * xfns.c (xic_create_xfontset): Check that FRAME_XIC_BASE_FONTNAME
5528 is not NULL before strcmp.
5529
5530 2004-10-26 Kim F. Storm <storm@cua.dk>
5531
5532 * callint.c (Fcall_interactively): Add 'U' code to get the
5533 up-event discarded by a previous 'k' or 'K' argument.
5534
5535 2004-10-26 David Kastrup <dak@gnu.org>
5536
5537 * buffer.c (syms_of_buffer): Fix a few typos.
5538
5539 2004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5540
5541 * xsmfns.c: Put empty line between comment and function body.
5542 Use two spaces before comment end.
5543
5544 2004-10-25 Kenichi Handa <handa@m17n.org>
5545
5546 * fontset.c (fontset_pattern_regexp): Optimize for the case that
5547 PATTERN is full XLFD.
5548
5549 2004-10-24 Kenichi Handa <handa@m17n.org>
5550
5551 * regex.h (enum reg_errcode_t): New value REG_ERANGEX.
5552
5553 * regex.c (re_error_msgid): Add an entry for REG_ERANGEX.
5554 (regex_compile): Return REG_ERANGEX if appropriate.
5555
5556 2004-10-22 Kenichi Handa <handa@m17n.org>
5557
5558 * editfns.c (Ftranslate_region_internal): New function.
5559 (syms_of_editfns): Defsubr it.
5560
5561 2004-10-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5562
5563 * xfns.c (xic_create_xfontset): Initialize missing_list to NULL.
5564
5565 2004-10-21 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
5566
5567 * xterm.h (x_output): New member `xic_base_fontname'.
5568 (FRAME_XIC_BASE_FONTNAME): New macro.
5569 (xic_free_xfontset): Declare.
5570
5571 * xfns.c (xic_create_xfontset): Share fontsets between frames
5572 based on base_fontname.
5573 (xic_free_xfontset): New function.
5574 (free_frame_xic): Use it.
5575 (xic_set_xfontset): Ditto.
5576
5577 * xterm.c (xim_destroy_callback): Ditto.
5578
5579
5580 2004-10-20 B. Anyos <banyos@freemail.hu> (tiny change)
5581
5582 * w32term.c (x_draw_glyph_string): Use overline_color for overlines.
5583
5584 2004-10-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5585
5586 * xterm.h (XSync): If USE_GTK, define XSync as process_all and then
5587 XSync.
5588
5589 * emacs.c (my_heap_start, heap_bss_diff, MAX_HEAP_BSS_DIFF):
5590 New variables and constant.
5591 (main): Calculate heap_bss_diff. If we are dumping and the
5592 heap_bss_diff is greater than MAX_HEAP_BSS_DIFF, set PER_LINUX32
5593 and exec ourself again.
5594 (Fdump_emacs): If heap_bss_diff is greater than MAX_HEAP_BSS_DIFF
5595 print a warning.
5596
5597 * lastfile.c: Make my_endbss and my_endbss_static available on all
5598 platforms.
5599
5600 * Makefile.in (RUN_TEMACS): Remove @SETARCH@.
5601 * config.in (HAVE_PERSONALITY_LINUX32): Regenerate.
5602
5603 2004-10-19 Luc Teirlinck <teirllm@auburn.edu>
5604
5605 * data.c (Flocal_variable_if_set_p): Doc fix.
5606
5607 2004-10-19 Jason Rumney <jasonr@gnu.org>
5608
5609 * w32.c (init_environment): Set emacs_dir correctly when running
5610 emacs from the build directory.
5611
5612 2004-10-19 Richard M. Stallman <rms@gnu.org>
5613
5614 * editfns.c (Fdelete_and_extract_region):
5615 If region is empty, return null string.
5616
5617 2004-10-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5618
5619 * gtkutil.h (xg_update_scrollbar_pos): Remove arguments real_left
5620 and canon_width.
5621 (xg_frame_cleared): Remove.
5622
5623 * gtkutil.c (xg_frame_cleared, xg_fixed_handle_expose)
5624 (xg_find_top_left_in_fixed): Remove.
5625 (xg_create_scroll_bar): Put an event box widget between
5626 the scroll bar widget and the edit widget.
5627 (xg_show_scroll_bar): Show the parent widget (the event box).
5628 (xg_remove_scroll_bar): Destroy parent (the event box) also.
5629 (xg_update_scrollbar_pos): Remove arguments real_left and canon_width.
5630 Move the parent (the event box) widget inside the fixed widget.
5631 Move window clear to xterm.c.
5632
5633 * gtkutil.h (xg_frame_cleared): Remove.
5634
5635 * xterm.c (x_clear_frame): Remove call to xg_frame_cleared
5636 (x_scroll_bar_create, XTset_vertical_scroll_bar):
5637 Remove arguments left and width to xg_update_scrollbar_pos.
5638 (XTset_vertical_scroll_bar): Do x_clear_area for USE_GTK also.
5639
5640 2004-10-19 Kenichi Handa <handa@m17n.org>
5641
5642 * xdisp.c (display_mode_element): Fix display of wide chars.
5643
5644 2004-10-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5645
5646 * gtkutil.c (xg_update_scrollbar_pos): Change XClearWindow to
5647 gdk_window_clear and move gdk_window_process_all_updates after
5648 clear so events are sent to the X server in correct order.
5649
5650 2004-10-18 Kenichi Handa <handa@m17n.org>
5651
5652 * fontset.c (fs_load_font): Use fast_string_match_ignore_case for
5653 comparing font names.
5654 (fs_query_fontset): Use fast_string_match for comparing fontset names.
5655 (list_fontsets): Likewise.
5656
5657 * search.c (fast_string_match_ignore_case): New function.
5658
5659 * lisp.h (fast_string_match_ignore_case): Extern it.
5660
5661 2004-10-17 Kim F. Storm <storm@cua.dk>
5662
5663 * xdisp.c (overlay_arrow_at_row): Return overlay string rather
5664 than bitmap if there is not left fringe.
5665 (get_overlay_arrow_glyph_row): Also used on windows system.
5666 (display_line): Display overlay string if no left fringe.
5667
5668 2004-10-16 Jason Rumney <jasonr@gnu.org>
5669
5670 * w32fns.c (w32_font_match): Encode font name being matched.
5671
5672 2004-10-16 Richard M. Stallman <rms@gnu.org>
5673
5674 * window.c (Fspecial_display_p): Doc fix.
5675
5676 2004-10-15 Stefan Monnier <monnier@iro.umontreal.ca>
5677
5678 * doc.c (Fsubstitute_command_keys): Fix remap-handling.
5679 Don't ignore menus, because where-is-internal already does it for us.
5680
5681 2004-10-15 Kim F. Storm <storm@cua.dk>
5682
5683 * xdisp.c (redisplay_window): Only update fringes and vertical
5684 border on window frames.
5685
5686 2004-10-14 Andreas Schwab <schwab@suse.de>
5687
5688 * m/ia64.h (DATA_SEG_BITS): Don't define.
5689
5690 2004-10-14 Kim F. Storm <storm@cua.dk>
5691
5692 * xterm.h: Include Xutil.h after keysym.h to work around bug
5693 in some X versions.
5694
5695 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
5696
5697 * fns.c (map_char_table): Add missing gcpros.
5698
5699 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
5700
5701 * keymap.c (get_keymap): An autoload form is not a keymap.
5702
5703 * textprop.c (syms_of_textprop): Make `syntax-table' nonsticky.
5704
5705 2004-10-13 Kim F. Storm <storm@cua.dk>
5706
5707 * callproc.c (Fcall_process): Simplify handling of display arg.
5708 Resume `display_on_the_fly' once a coding system is determined.
5709
5710 * xdisp.c (redisplay_preserve_echo_area): Fix last change.
5711
5712 2004-10-12 Kim F. Storm <storm@cua.dk>
5713
5714 * xdisp.c (redisplay_preserve_echo_area): Flush display in case
5715 caller, such as call-process, is not going to poll for input.
5716 (calc_line_height_property): Handle case where it->object is nil.
5717
5718 * xterm.c (x_redisplay_interface): Fix flush_display_optional.
5719
5720 2004-10-12 Kenichi Handa <handa@m17n.org>
5721
5722 * xdisp.c (get_next_display_element):
5723 If unibyte_display_via_language_environment is zero, display 8-bit
5724 chars in octal in unibyte buffer.
5725
5726 2004-10-12 Kim F. Storm <storm@cua.dk>
5727
5728 * doc.c (Fsubstitute_command_keys): Ignore remappings unless there
5729 are no ordinary bindings.
5730
5731 2004-10-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5732
5733 * xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also.
5734
5735 2004-10-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5736
5737 * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow.
5738 (x_lower_frame): Add BLOCK_INPUT around SendBehind.
5739 (make_mac_frame): Add BLOCK_INPUT around the making of a
5740 terminal frame.
5741 (mac_initialize): Add BLOCK_INPUT around carbon initialization.
5742 * macgui.h (mktime): Use emacs_mktime.
5743 * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code.
5744 Make a cancel file-open dialog be like C-g.
5745 * mac.c (mktime): Use emacs_mktime.
5746 (Fdo_applescript): Add BLOCK_INPUT around do_applescript.
5747 (Fmac_paste_function): Add better error handling for carbon cut/paste.
5748
5749 2004-10-10 Kim F. Storm <storm@cua.dk>
5750
5751 * keyboard.c (timer_resume_idle): New function to resume idle
5752 timer without resetting timers on the idle list.
5753 (read_char): Use timer_resume_idle. Remove local var last_idle_start.
5754 (timer_start_idle, timer_stop_idle): Declare static.
5755 (read_key_sequence): Use timer_resume_idle instead of timer_start_idle.
5756
5757 * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes.
5758
5759 2004-10-08 Steven Tamm <steventamm@mac.com>
5760
5761 * config.in (HAVE_MALLOC_MALLOC_H): Regenerate.
5762 * macterm.c (mac_check_for_quit_char): Remove warning for using
5763 NULL where 0 should be used.
5764 * unexmacosx.c: Use malloc/malloc.h on Tiger instead of
5765 objc/malloc.h
5766 * mac.c: Include time.h for Tiger compatibility.
5767
5768 2004-10-07 Kim F. Storm <storm@cua.dk>
5769
5770 * xdisp.c (redisplay_window): Fix flicker on vertical line between
5771 windows. Update vertical line after drawing window fringes, but
5772 only if actually drawing any bitmaps--or there is no fringe.
5773
5774 * xterm.c (x_update_window_end): Likewise.
5775 * macterm.c (x_update_window_end): Likewise.
5776 * w32term.c (x_update_window_end): Likewise.
5777
5778 * fringe.c (draw_window_fringes): Return value now indicates if
5779 any fringe bitmaps were redrawn (or there are no fringes).
5780
5781 * dispextern.h (draw_window_fringes): Update prototype.
5782
5783 2004-10-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5784
5785 * macfns.c (mac_get_window_bounds): Add extern.
5786 (x_real_positions): Use mac_get_window_bounds.
5787
5788 * macmenu.c (update_submenu_strings): Apply 2004-09-07 change for
5789 xmenu.c (YAILOM).
5790
5791 * macterm.c [!MAC_OSX]: Include Windows.h.
5792 (front_emacs_window): Rename from mac_front_window. All uses
5793 changed. Return the frontmost non-tooltip emacs window.
5794 (mac_get_window_bounds): New function.
5795 (x_calc_absolute_position): Use the difference of width and height
5796 between the inner and outer window.
5797 (x_set_offset): Specify window position by the coordinae of the
5798 outer window. Adjust the position if the title bar is completely
5799 outside the screen.
5800 (app_is_suspended, app_sleep_time): Remove unused variables.
5801 (do_app_resume, do_app_suspend): Remove their contents because
5802 window-activate/deactivate events will do the job.
5803 (do_zoom_window): Remove unused variables. Make compliant to the
5804 standard way of zooming. Set f->left_pos and f->top_pos.
5805 (XTread_socket): Don't use argument `expected'. Don't use
5806 FrontWindow to determine the clicked window. Exclude unprocessed
5807 mouseUp cases in the early stage. Add parentheses to fix operator
5808 precedence.
5809 (XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area.
5810
5811 2004-10-05 Jan Dj\e,Ad\e(Brv. <jan.h.d@swipnet.se>
5812
5813 * config.in: Regenerate.
5814
5815 * Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of
5816 HAVE_EXECSHIELD.
5817
5818 2004-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5819
5820 * xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for
5821 a row if Alt or Meta has been found for that row. Also stop scanning
5822 for Keysyms for that row.
5823
5824 2004-10-04 Kim F. Storm <storm@cua.dk>
5825
5826 * fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons
5827 to list. Include overlay arrow bitmap in return value.
5828
5829 * xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll
5830 bars with fractional column width. If scroll bar separates two
5831 windows, move it towards the window it belongs to. Only update
5832 the padding area below the scroll bar widget when necessary,
5833 i.e. when scroll bar widget is created, moved, or resized.
5834
5835 * xdisp.c (define_frame_cursor1): Do not change frame cursor
5836 while tracking/dragging mouse.
5837 (x_draw_vertical_border): Do not draw line if frame has scroll bars.
5838
5839 * window.c (coordinates_in_window): Relax check for cursor
5840 on vertial border between mode lines.
5841 (Fset_window_fringes): Do not allow negative widths.
5842 (Fset_window_scroll_bars): Likewise.
5843
5844 * .gdbinit (pp): Shorthand for p ARG + pr.
5845 (ff): New command: flush frame updates (X only).
5846
5847 2004-10-03 Michael Albinus <michael.albinus@gmx.de>
5848
5849 * fileio.c (auto_save_1) Call Ffile_modes for remote files.
5850
5851 2004-09-30 Kenichi Handa <handa@m17n.org>
5852
5853 * process.c (send_process): Free composition data.
5854
5855 * fileio.c (Finsert_file_contents): Free composition data.
5856
5857 * coding.c (code_convert_region): Don't skip ASCIIs if there are
5858 compositions to encode.
5859 (encode_coding_string): Likewise. Free composition data.
5860
5861 2004-09-30 Florian Weimer <fw@deneb.enyo.de>
5862
5863 * coding.c (code_convert_region): Free composition data.
5864
5865 2004-09-29 Kim F. Storm <storm@cua.dk>
5866
5867 * fringe.c: Remove limit on number of bitmaps.
5868 (fringe_bitmaps, fringe_faces): Change to pointers.
5869 (max_fringe_bitmaps): New var.
5870 (Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces.
5871 (init_fringe): Allocate fringe_bitmaps and fringe_faces.
5872
5873 * dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps).
5874 (struct glyph_row): Reorder fringe_bitmap related fields.
5875 (struct it): Likewise.
5876
5877 * w32term.c (fringe_bmp): Change to pointer.
5878 (max_fringe_bmp): New var.
5879 (w32_define_fringe_bitmap): Expand fringe_bmp.
5880 (w32_draw_fringe_bitmap): Check max_fringe_bmp.
5881 (w32_destroy_fringe_bitmap): Likewise.
5882
5883 2004-09-29 Kim F. Storm <storm@cua.dk>
5884
5885 * fringe.c: Simplify last change.
5886 (lookup_fringe_bitmap): New function.
5887 (valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove.
5888 (Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap.
5889 Keep standard bitmaps in Vfringe_bitmaps.
5890 (Fdefine_fringe_bitmap): Use lookup_fringe_bitmap.
5891 (Fset_fringe_bitmap_face): Likewise.
5892
5893 * dispextern.h (lookup_fringe_bitmap): Add prototype.
5894 (valid_fringe_bitmap_p): Remove prototype.
5895
5896 * xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap.
5897
5898 2004-09-29 Kim F. Storm <storm@cua.dk>
5899
5900 * fringe.c (destroy_fringe_bitmap, init_fringe_bitmap)
5901 (w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif).
5902
5903 * dispextern.h (valid_fringe_bitmap_p): Fix prototype.
5904
5905 * fringe.c (Vfringe_bitmaps): New variable.
5906 (syms_of_fringe): DEFVAR_LISP it.
5907 (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p.
5908 Change arg to Lisp_Object and fail if not an integer.
5909 (get_fringe_bitmap_name, resolve_fringe_bitmap)
5910 (destroy_fringe_bitmap): New functions.
5911 (Fdestroy_fringe_bitmap): Change arg to bitmap symbol.
5912 Use destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and
5913 clear its fringe property.
5914 (init_fringe_bitmap): Use destroy_fringe_bitmap instead of
5915 Fdestroy_fringe_bitmap.
5916 (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing
5917 bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps
5918 and set fringe property. Signal error if no free slots.
5919 (Fset_fringe_bitmap_face): Change arg to bitmap symbol.
5920 (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers.
5921
5922 * xdisp.c (handle_single_display_prop): Fringe bitmaps are now
5923 symbols with a fringe property.
5924
5925 2004-09-27 Kim F. Storm <storm@cua.dk>
5926
5927 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>:
5928 Doc fix. Format may now be a symbol or alist, not a cons.
5929
5930 * fringe.c (update_window_fringes): Handle new formats of
5931 indicate-buffer-boundaries (symbol or alist). No longer
5932 allow a simple cons.
5933 (Ffringe_bitmaps_at_pos): Use nil value for no bitmap.
5934
5935 2004-09-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5936
5937 * config.in: Rebuild.
5938
5939 2004-09-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5940
5941 * config.in: Rebuild.
5942
5943 * Makefile.in: Run setarch i386 ./temacs if exec-shield is present.
5944
5945 2004-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
5946
5947 * xterm.c (x_term_init): Work around a bug in some X servers.
5948
5949 2004-09-18 Richard M. Stallman <rms@gnu.org>
5950
5951 * buffer.c (syms_of_buffer) <default-major-mode>: Doc fix.
5952
5953 * xdisp.c (try_window_reusing_current_matrix):
5954 Handle the case where we reach the old displayed text,
5955 out of sync with the old line boundary.
5956
5957 2004-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
5958
5959 * fileio.c (Finsert_file_contents): Fix case of replacement in a
5960 narrowed buffer.
5961
5962 2004-09-14 Kim F. Storm <storm@cua.dk>
5963
5964 * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT.
5965
5966 * xfaces.c (Qface_no_inherit): New var.
5967 (syms_of_xfaces): Intern and staticpro it.
5968 (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute)
5969 (Finternal_copy_lisp_face, update_face_from_frame_parameter):
5970 Don't increment face_change_count when face has non-nil
5971 face-no-inherit property.
5972
5973 2004-09-13 Stefan Monnier <monnier@iro.umontreal.ca>
5974
5975 * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC.
5976 (Fbyte_code): Remove dead code after `wrong_type_argument'.
5977
5978 * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl
5979 before doing the mark_stack_check_gcpros since they're not on the stack.
5980
5981 2004-09-12 Kim F. Storm <storm@cua.dk>
5982
5983 * editfns.c (Fformat): Handle format strings with multiple text
5984 properties. Reverse text property list from the format string,
5985 so the positions are in increasing order.
5986
5987 2004-09-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5988
5989 * xselect.c (x_reply_selection_request): XSync and UNBLOCK before
5990 x_uncatch_errors so that possible protocol errors are delivered.
5991
5992 2004-09-10 Eli Zaretskii <eliz@gnu.org>
5993
5994 * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and
5995 blockinput.h.
5996 (dosfns.o): Depend on blockinput.h, window.h, dispextern.h,
5997 charset.h, and coding.h
5998 (w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h.
5999 (term.o): Depend on window.h and keymap.h.
6000 (abbrev.o): Depend on syntax.h.
6001 (callint.o): Depend on keymap.h.
6002 (casefiddle.o): Depend on charset.h and keymap.h.
6003 (category.o): Depend on keymap.h.
6004 (coding.o): Depend on dispextern.h.
6005 (cmds.o): Depend on keyboard.h and keymap.h.
6006 (dispnew.o): Depend on indent.h and intervals.h.
6007 (doc.o): Depend on keymap.h.
6008 (editfns.o): Depend on frame.h.
6009 (emacs.o): Depend on dispextern.h.
6010 (fileio.o): Don't depend on ccl.h.
6011 (filelock.o): Depend on charset.h and coding.h.
6012 (frame.o): Depend on w32term.h and macterm.h.
6013 (insdel.o): Depend on region-cache.h.
6014 (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h.
6015 (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h.
6016 (search.o): Depend on $(INTERVALS_SRC).
6017 (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC).
6018 (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC),
6019 xterm.h, w32term.h, and macterm.h.
6020 (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h,
6021 w32term.h, and macterm.h.
6022 (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC),
6023 region-cache.h, xterm.h, w32term.h, and macterm.h.
6024 (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h.
6025 (data.o): Depend on frame.h.
6026 (fns.o): Depend on keymap.h, xterm.h, and blockinput.h.
6027 (print.o): Depend on termchar.h and $(INTERVALS_SRC).
6028 (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h.
6029 (intervals.o): Depend on keymap.h.
6030
6031 * msdos.c (msdos_set_cursor_shape, IT_display_cursor):
6032 Add debugging print-out to termscript.
6033
6034 2004-09-09 Richard M. Stallman <rms@gnu.org>
6035
6036 * xdisp.c (decode_mode_spec): Use current buffer for most purposes.
6037
6038 2004-09-08 Richard M. Stallman <rms@gnu.org>
6039
6040 * window.c (Fset_window_buffer): Doc fix.
6041
6042 * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use.
6043
6044 2004-09-08 Dan Nicolaescu <dann@ics.uci.edu>
6045
6046 * minibuf.c (history_delete_duplicates): New variable.
6047 (read_minibuf): Use it.
6048 (syms_of_minibuf): Create the corresponding lisp variable.
6049
6050 2004-09-08 Kim F. Storm <storm@cua.dk>
6051
6052 * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in
6053 overlay just before point.
6054
6055 2004-09-07 Luc Teirlinck <teirllm@auburn.edu>
6056
6057 * buffer.h (struct buffer): Add auto_save_file_format field.
6058 * buffer.c (reset_buffer, init_buffer_once):
6059 Handle auto_save_file_format field.
6060 (syms_of_buffer): Add DEFVAR_PER_BUFFER for
6061 `buffer-auto-save-file-format'.
6062 * fileio.c: Delete declaration for removed Vauto_save_file_format.
6063 (build_annotations): Adapt to replacement of
6064 `auto-save-file-format' with the new buffer-local variable
6065 `buffer-auto-save-file-format'.
6066 (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format.
6067
6068 2004-09-07 Jason Rumney <jasonr@gnu.org>
6069
6070 * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c.
6071
6072 * w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]:
6073 Handle Unicode menu titles.
6074
6075 2004-09-07 Kim F. Storm <storm@cua.dk>
6076
6077 * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor'
6078 property from text property or overlay strings at point.
6079
6080 2004-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
6081
6082 * xmenu.c (update_submenu_strings): YAILOM.
6083 (set_frame_menubar): Make sure last_i is initialized.
6084
6085 2004-09-03 Jason Rumney <jasonr@gnu.org>
6086
6087 * w32menu.c (_widget_value): Add lname and lkey.
6088 (digest_single_submenu): Set lname and lkey in widget_value
6089 instead of name and key.
6090 (update_submenu_strings): New function.
6091 (set_frame_menubar): Remove call to inhibit_garbage_collection,
6092 call update_submenu_strings.
6093
6094 * w32menu.c (globals_of_w32menu): Check for Unicode API.
6095 (digest_single_submenu, w32_menu_show): Encode menu strings as
6096 UTF-8 if Unicode API is available.
6097 (utf8to16): New function.
6098 (add_menu_item): Use it when calling Unicode API.
6099
6100 2004-09-03 Kim F. Storm <storm@cua.dk>
6101
6102 * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
6103 in overlay or text-property strings; set cursor on corresponding
6104 glyph rather than at end of the string.
6105
6106 2004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6107
6108 * macfns.c (x_real_positions): Save the current window port and
6109 set a new one before obtaining the global coordinate.
6110 Use FRAME_MAC_WINDOW.
6111 (x_set_name, x_set_title): Encode title to UTF8.
6112 Use SetWindowTitleWithCFString.
6113 (Fx_server_version): Get correct OS version.
6114
6115 * macmenu.c (add_menu_item): Remove unused variable `i'.
6116 Don't let separator items destroy refence constants of other menu items.
6117
6118 * macterm.c (x_update_end): Move SetPortWindowPort to inside
6119 BLOCK_INPUT.
6120 (x_set_offset): Use FRAME_MAC_WINDOW.
6121
6122 * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
6123 nontext_cursor if it is on a scroll bar.
6124
6125 * s/darwin.h (LIBS_CARBON): New define to specify libraries for
6126 Carbon support.
6127 (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++.
6128 Use LIBS_CARBON.
6129
6130 2004-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6131
6132 * xfns.c (x_set_name_internal): New function. Check if we shall call
6133 xfree before ENCODE_UTF_8.
6134 (x_set_name, x_set_title): Call x_set_name_internal.
6135
6136 2004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change)
6137
6138 * w32fns.c (w32_load_font): If a BDF font is already loaded, do not
6139 reload it.
6140
6141 2004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6142
6143 * macmenu.c (_widget_value): Add lname and lkey.
6144 (single_submenu): Set lname and lkey in widget_value
6145 instead of name and key.
6146 (update_submenu_strings): New function.
6147 (set_frame_menubar): Remove call to inhibit_garbage_collection,
6148 call update_submenu_strings.
6149
6150 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
6151 instead of name and key.
6152 (update_submenu_strings): New function.
6153 (set_frame_menubar): Remove call to inhibit_garbage_collection,
6154 call update_submenu_strings.
6155
6156 * gtkutil.h (_widget_value): Added lname and lkey.
6157
6158 2004-08-30 Steven Tamm <steventamm@mac.com>
6159
6160 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
6161 by using different names for inner loop variables.
6162
6163 2004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6164
6165 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
6166 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
6167
6168 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
6169 tool bar items is 0.
6170
6171 2004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6172
6173 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
6174 strings in menu items.
6175 (single_submenu): Use ENCODE_MENU_STRING
6176 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
6177 button release isn't passed to event loop
6178 (add_menu_item): Use SetMenuItemWithCFString
6179
6180 2004-08-26 Steven Tamm <steventamm@mac.com>
6181
6182 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
6183 tool-bar/menu click.
6184 * macfns.c (Fx_file_dialog): Implement using NavServices.
6185
6186 2004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6187
6188 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
6189
6190 * xfns.c (x_window_to_frame, x_any_window_to_frame)
6191 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
6192 (x_top_window_to_frame): Return 0 if wdesc is None.
6193
6194 2004-08-22 Richard M. Stallman <rms@gnu.org>
6195
6196 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
6197 HAVE_TERMIOS]: If there's no char for this signal, drop through
6198 and use system calls.
6199
6200 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
6201
6202 2004-08-20 Kim F. Storm <storm@cua.dk>
6203
6204 * process.c (wait_reading_process_output): Rename from
6205 wait_reading_process_input. All uses changed.
6206 (wait_reading_process_output_1): Rename from
6207 wait_reading_process_input_1. All uses changed.
6208
6209 * dispnew.c (Fsleep_for): Remove obsolete code.
6210
6211 2004-08-20 Kenichi Handa <handa@m17n.org>
6212
6213 * syntax.c (skip_chars): Fix for unibyte case.
6214
6215 2004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
6216
6217 * syntax.c (char_quoted): Mixup byte/char pos.
6218 (back_comment): Fixup globals in all cases.
6219
6220 2004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6221
6222 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
6223 passing it to gtk_window_set_title.
6224
6225 2004-08-19 Kim F. Storm <storm@cua.dk>
6226
6227 * process.c (wait_reading_process_input): Clean up.
6228 Add wait_for_cell, wait_proc, and just_wait_proc args
6229 to avoid overloading `read_kbd' and `do_display' args.
6230 Change read_kbd arg to int. All callers changed.
6231
6232 * process.c (process_send_signal): Use CDISABLE.
6233
6234 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
6235
6236 2004-08-18 Kim F. Storm <storm@cua.dk>
6237
6238 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
6239 forward to wait_reading_process_input via DO_DISPLAY arg.
6240 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
6241 object, only process output from that process; also inhibit
6242 running timers if DO_DISPLAY==-2.
6243
6244 2004-08-17 Kim F. Storm <storm@cua.dk>
6245
6246 * process.c (process_send_signal): Fix last change--use
6247 _POSIX_VDISABLE instead of CVDISABLE when available.
6248
6249 2004-08-16 Richard M. Stallman <rms@gnu.org>
6250
6251 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
6252 Set VQUIT and VINTR chars to the standard ones if they are unset.
6253 [AIX]: Don't do that here. And don't force VINTR to standard
6254 when SIGNALS_VIA_CHARACTERS.
6255
6256 * process.c (process_send_signal)
6257 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
6258 Do nothing if the character is CVDISABLE.
6259
6260 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
6261
6262 * intervals.c (move_if_not_intangible):
6263 Force POSITION to be between BEGV and ZV.
6264
6265 2004-08-14 John Paul Wallington <jpw@gnu.org>
6266
6267 * buffer.c (Frestore_buffer_modified_p): Doc fix.
6268
6269 * fileio.c (Fread_file_name): Doc fix.
6270
6271 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
6272
6273 2004-08-09 Luc Teirlinck <teirllm@auburn.edu>
6274
6275 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
6276
6277 2004-08-08 Luc Teirlinck <teirllm@auburn.edu>
6278
6279 * keyboard.c: Declare Qdisabled_command_function instead of
6280 Qdisabled_command_hook.
6281 (Fcommand_execute): Use Qdisabled_command_function instead of
6282 Qdisabled_command_hook.
6283 (syms_of_keyboard): Ditto.
6284
6285 2004-08-07 Luc Teirlinck <teirllm@auburn.edu>
6286
6287 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
6288 (syms_of_keymap) <key-translation-map>: Doc fixes.
6289
6290 2004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
6291
6292 * window.c (window_list_1): YAILOM.
6293
6294 * fileio.c (make_temp_name): Handle multibyte prefixes.
6295
6296 2004-08-06 Luc Teirlinck <teirllm@auburn.edu>
6297
6298 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
6299 Doc fix.
6300
6301 2004-08-03 Kenichi Handa <handa@m17n.org>
6302
6303 * coding.c (decode_coding_string): Adjust coding->consumed, and
6304 etc. with shrinked_bytes.
6305
6306 2004-08-03 Kim F. Storm <storm@cua.dk>
6307
6308 * indent.c (compute_motion): Fix check for full width window
6309 in non-window case. Do not count left truncation glyph on
6310 window systems.
6311
6312 2004-08-02 Luc Teirlinck <teirllm@auburn.edu>
6313
6314 * data.c (Finteractive_form): Doc fix.
6315
6316 2004-08-02 Kim F. Storm <storm@cua.dk>
6317
6318 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
6319 properly accounting for continuation glyph on non-window systems.
6320 (Fcompute_motion): Use actual window width if WIDTH is nil, and
6321 actual window width/height if TOPOS is nil, properly accounting for
6322 continuation glyphs on non-window systems, and optional header lines.
6323 (vmotion): Let compute_motion calculate actual window width.
6324
6325 * window.c (window_scroll_line_based): Let compute_motion
6326 calculate actual window width.
6327
6328 2004-08-02 Kim F. Storm <storm@cua.dk>
6329
6330 * process.c (read_process_output): Use whole read buffer.
6331 Don't trigger adaptive read buffering on errors.
6332
6333 2004-07-31 Luc Teirlinck <teirllm@auburn.edu>
6334
6335 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
6336
6337 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
6338
6339 * callint.c (Fcall_interactively): Doc fix.
6340
6341 2004-07-30 Richard M. Stallman <rms@gnu.org>
6342
6343 * abbrev.c (Fexpand_abbrev): Undo previous change.
6344
6345 2004-07-30 Kim F. Storm <storm@cua.dk>
6346
6347 * editfns.c (Fformat): Allocate extra (dummy) element in info.
6348
6349 2004-07-28 Luc Teirlinck <teirllm@auburn.edu>
6350
6351 * eval.c (Fdefvar, Fdefconst): Doc fixes.
6352
6353 2004-07-27 Kim F. Storm <storm@cua.dk>
6354
6355 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
6356 we have ensured that the glyph fits on the current line (or returned
6357 MOVE_LINE_CONTINUED otherwise).
6358
6359 2004-07-26 Kim F. Storm <storm@cua.dk>
6360
6361 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
6362 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
6363 if target position is at end of display line but char is not a newline.
6364
6365 2004-07-25 Richard M. Stallman <rms@gnu.org>
6366
6367 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
6368 instead of ON_VERTICAL_BORDER, when on scroll bar.
6369 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
6370
6371 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
6372
6373 * window.c (Fcoordinates_in_window_p):
6374 Take account of FRAME_INTERNAL_BORDER_WIDTH.
6375
6376 * alloc.c (check_cons_list): New function (contents commented out).
6377
6378 2004-07-24 Luc Teirlinck <teirllm@auburn.edu>
6379
6380 * xfaces.c (Fcolor_supported_p): Doc fix.
6381
6382 * frame.c (Fselect_frame, Fset_frame_selected_window)
6383 (Fframe_visible_p, Fraise_frame): Doc fixes.
6384
6385 2004-07-24 Richard M. Stallman <rms@gnu.org>
6386
6387 * keyboard.h (not_single_kboard_state): Declare.
6388
6389 * fileio.c (Fwrite_region): Doc fix.
6390
6391 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
6392
6393 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
6394 only when a real abbrev is present.
6395
6396 * xfns.c (x_icon_verify): New function.
6397 (Fx_create_frame): Use it.
6398
6399 2004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
6400
6401 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
6402
6403 2004-07-21 Kim F. Storm <storm@cua.dk>
6404
6405 * window.h (struct glyph_matrix): New members nrows_scale_factor
6406 and ncols_scale_factor.
6407
6408 * window.c (make_window): Initialize nrows_scale_factor and
6409 ncols_scale_factor members.
6410
6411 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
6412 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
6413 (required_matrix_height): Apply nrows_scale_factor.
6414 (required_matrix_width): Apply ncols_scale_factor.
6415
6416 * xdisp.c (display_line): Increment nrows_scale_factor and set
6417 fonts_changed_p if past last allocated row.
6418 (append_glyph, append_composite_glyph, produce_image_glyph)
6419 (append_stretch_glyph): Increment ncols_scale_factor and set
6420 fonts_changed_p if current area is full.
6421
6422 2004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6423
6424 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
6425
6426 2004-07-19 Luc Teirlinck <teirllm@auburn.edu>
6427
6428 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
6429 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
6430 (Fset_window_start, Fscroll_up, Fscroll_down)
6431 (Fother_window_for_scrolling, Fscroll_other_window)
6432 (Fsave_window_excursion, Fset_window_vscroll)
6433 (syms_of_window) <window-size-fixed>: Doc fixes.
6434
6435 2004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
6436
6437 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
6438 ENCODE_SYSTEM for filenames.
6439
6440 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6441
6442 * mac.c (sys_select): Block input around call to
6443 ReceiveNextEvent to prevent breakage. Correctly handle
6444 blocking on event queue only by calling ReceiveNextEvent
6445 instead of select (since GUI events aren't on an fd).
6446 (sys_read): Remove function
6447 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
6448
6449 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6450
6451 * mac.c (sys_select): Redo sys_select to use alarm-based
6452 polling instead of 1 sec timeouts (like solaris).
6453
6454 * macterm.c (x_make_frame_visible): Comment in polling on
6455 frame creation.
6456
6457 * keyboard.c: Undef SIGIO on Carbon
6458
6459 * atimer.c (alarm_signal_handler): Call alarm handlers after
6460 scheduling.
6461
6462 * eval.c (Feval): Remove quit_char test
6463
6464 * process.c (wait_reading_process_input): Remove clearing
6465 stdin for select call on process input.
6466
6467 2004-07-18 Luc Teirlinck <teirllm@auburn.edu>
6468
6469 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
6470 capitalization error in docstring.
6471
6472 2004-07-17 Juanma Barranquero <lektu@terra.es>
6473
6474 * keyboard.c (not_single_kboard_state): Do nothing unless
6475 MULTI_KBOARD is defined.
6476
6477 2004-07-17 Richard M. Stallman <rms@gnu.org>
6478
6479 * window.c (coordinates_in_window): Inside the window but outside
6480 its box to the L or R, return ON_VERTICAL_BORDER.
6481 (window_list_1): Rotate the list to start with WINDOW.
6482
6483 * print.c (print_preprocess): Test for print_depth at limit
6484 before entering in being_printed.
6485
6486 * keyboard.c (not_single_kboard_state): New function.
6487 (stuff_buffered_input): Now no-op only if no SIGTSTP.
6488
6489 * frame.c (Fdelete_frame): If we're in single_bboard_state on
6490 this kboard, and we delete its last frame, go to any_kboard_state.
6491
6492 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
6493
6494 2004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
6495
6496 * w32fns.c (Fx_file_dialog): Encode strings in system coding
6497 system before passing them to OS functions for display.
6498
6499 2004-07-15 David Kastrup <dak@gnu.org>
6500
6501 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
6502 Apparently fixes an abort condition.
6503
6504 2004-07-14 Luc Teirlinck <teirllm@auburn.edu>
6505
6506 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
6507 instead of a cons.
6508
6509 2004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
6510
6511 * keyboard.c (echo_dash): Do nothing if there already is a dash
6512 at the end of the echo string.
6513
6514 2004-07-12 Kim F. Storm <storm@cua.dk>
6515
6516 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
6517 if GC_MARK_STACK.
6518
6519 2004-07-10 Luc Teirlinck <teirllm@auburn.edu>
6520
6521 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
6522
6523 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
6524 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
6525 (Freplace_buffer_in_windows, Fset_window_buffer)
6526 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
6527 (syms_of_window): Expand docstring of `display-buffer-function'.
6528
6529 2004-07-09 Luc Teirlinck <teirllm@auburn.edu>
6530
6531 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
6532 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
6533 that time values of the type (HIGH . LOW) are considered obsolete.
6534
6535 2004-07-06 Luc Teirlinck <teirllm@auburn.edu>
6536
6537 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
6538 docstring.
6539
6540 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
6541
6542 2004-07-06 John Paul Wallington <jpw@gnu.org>
6543
6544 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
6545
6546 * fns.c (Fclear_string): Signal an error if STRING is not a string.
6547
6548 2004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6549
6550 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
6551 instead of CGMainDisplayID (only in OSX 10.2 and later).
6552
6553 2004-07-04 John Paul Wallington <jpw@gnu.org>
6554
6555 * fileio.c (read_file_name_completion_ignore_case): New variable.
6556 (syms_of_fileio): Declare and initialise it.
6557 (Fread_file_name): Bind `completion-ignore-case' to respect it.
6558
6559 2004-07-03 Eli Zaretskii <eliz@gnu.org>
6560
6561 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
6562 for event.x and event.y.
6563
6564 2004-07-01 Kenichi Handa <handa@m17n.org>
6565
6566 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
6567 after getting a new string by pre-write-conversion.
6568
6569 2004-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
6570
6571 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
6572 (x_calc_absolute_position): Remove unused var `child'.
6573
6574 * xfaces.c (x_supports_face_attributes_p)
6575 (Fdisplay_supports_face_attributes_p): YAILOM.
6576 (tty_supports_face_attributes_p): Remove unused var `i'.
6577
6578 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
6579 back_unibyte_ok.
6580
6581 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
6582
6583 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
6584
6585 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
6586
6587 2004-06-30 Andreas Schwab <schwab@suse.de>
6588
6589 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
6590 (Finit_image_library): Pass LIBRARIES through to
6591 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
6592 (lookup_image_type): Pass Qnil as second argument to
6593 Finit_image_library.
6594
6595 * lisp.h (Finit_image_library): Declare.
6596
6597 2004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6598
6599 * macterm.c (do_window_activate, do_window_deactivate): Remove.
6600 (XTread_socket): Send mouse button events to the toolbox
6601 dispatcher even when the mouse is grabbed. Don't process window
6602 activate events for non-Emacs windows. Replace function calls to
6603 do_window_activate and do_window_deactivate with their contents.
6604 Reset mouse grabbing status when a window is deactivated.
6605
6606 2004-06-29 Steven Tamm <steventamm@mac.com>
6607
6608 * macterm.c (mac_get_emulated_btn)
6609 (mac_event_to_emacs_modifiers): Fix emulated mouse button
6610 support to correctly mask out modifiers.
6611
6612 2004-06-29 David Kastrup <dak@gnu.org>
6613
6614 * search.c (Fset_match_data): Allow buffer before end of list
6615 which can happen if set-match-data is using a pre-consed list.
6616
6617 2004-06-28 Steven Tamm <steventamm@mac.com>
6618
6619 * macterm.c (XTread_socket): Correctly set the frame position
6620 after the window is moved.
6621
6622 2004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6623
6624 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
6625 gpix and gmask just before return to avoid memory leak.
6626 (xg_get_image_for_pixmap): Add workaround for monochrome displays
6627 so insensitive and activated icons look ok.
6628
6629 2004-06-27 Jason Rumney <jasonr@gnu.org>
6630
6631 * w32fns.c (file_dialog_callback): Disable edit control if set
6632 to directories only on CDN_INITDONE message.
6633 (Fx_file_dialog): Default to directories only when prompt starts
6634 with "Dired".
6635
6636 2004-06-25 Kim F. Storm <storm@cua.dk>
6637
6638 * alloc.c (allocate_misc): Update total_free_markers.
6639 (free_misc): New function.
6640 (safe_alloca_unwind, free_marker): Use it.
6641
6642 * lisp.h (free_misc): Add prototype.
6643
6644 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
6645
6646 2004-06-24 Richard M. Stallman <rms@gnu.org>
6647
6648 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
6649 (syms_of_emacs): Lisp variables deleted.
6650
6651 2004-06-23 David Kastrup <dak@gnu.org>
6652
6653 * search.c (Freplace_match): Adjust the match-data more thoroughly
6654 when replacing strings in the buffer.
6655 (Fmatch_data): When INTEGERS is non-nil and the last match was in
6656 a buffer, add the buffer as last element to the match data.
6657 (Fset_match_data): If an additional element of the match-data is a
6658 buffer, restore it to last_thing_searched.
6659 (save_search_regs): Save last_thing_searched as part of the match data.
6660 (restore_match_data): Restore it again.
6661
6662 2004-06-23 Luc Teirlinck <teirllm@auburn.edu>
6663
6664 * keymap.c (Ftext_char_description): Doc fix.
6665 * doc.c (Fsnarf_documentation): Doc fix.
6666
6667 2004-06-22 Kim F. Storm <storm@cua.dk>
6668
6669 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
6670
6671 * lisp.h (struct Lisp_Save_Value): New member dogc.
6672 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
6673 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
6674 (SAFE_FREE_LISP): New macro.
6675
6676 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
6677 (make_save_value): Init new dogc member.
6678 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
6679
6680 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
6681 SAFE_FREE_LISP macros.
6682
6683 2004-06-22 Kim F. Storm <storm@cua.dk>
6684
6685 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
6686 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
6687 in that memory area are unknown to GC. Add comments.
6688
6689 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
6690
6691 2004-06-21 Kim F. Storm <storm@cua.dk>
6692
6693 * lisp.h (MAX_ALLOCA): Define here.
6694 (safe_alloca_unwind): Add prototype.
6695 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
6696
6697 * alloc.c (safe_alloca_unwind): New function.
6698
6699 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
6700
6701 * charset.c (Fstring): Use SAFE_ALLOCA.
6702
6703 * coding.c (MAX_ALLOCA): Remove define.
6704
6705 * data.c (MAX_ALLOCA): Remove define.
6706 (Faset): Use SAFE_ALLOCA.
6707
6708 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
6709
6710 * fns.c (string_make_multibyte, string_to_multibyte)
6711 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
6712 (MAX_ALLOCA): Remove define.
6713 (Fbase64_encode_region, Fbase64_encode_string)
6714 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
6715 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
6716 memory leak if encoding fails.
6717
6718 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
6719
6720 2004-06-21 Eli Zaretskii <eliz@gnu.org>
6721
6722 * print.c (Fwith_output_to_temp_buffer): Doc fix.
6723
6724 2004-06-20 Richard M. Stallman <rms@gnu.org>
6725
6726 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
6727
6728 * search.c (match_limit): Cleaner err msg when no match data available.
6729
6730 * window.c (syms_of_window): Doc fix.
6731
6732 * keyboard.c (command_loop_1): Handle values `only' and `identity'
6733 for Vtransient_mark_mode.
6734
6735 * buffer.c (syms_of_buffer): Doc fix.
6736
6737 2004-06-21 David Kastrup <dak@gnu.org>
6738
6739 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
6740 and unbinding of `case-fold-search' according to
6741 `completion-ignore-case' around calls of string-match and
6742 predicates, respectively. Should give satisfactory performance
6743 in all relevant cases.
6744
6745 2004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6746
6747 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
6748 clip_x/y_origin.
6749
6750 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
6751
6752 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
6753
6754 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
6755 on Mac OSX.
6756
6757 2004-06-16 Luc Teirlinck <teirllm@auburn.edu>
6758
6759 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
6760
6761 2004-06-16 Kim F. Storm <storm@cua.dk>
6762
6763 * dispextern.h (Vimage_types): Remove extern.
6764
6765 2004-06-16 Miles Bader <miles@gnu.org>
6766
6767 * image.c (lookup_image_type): Initialize image type if necessary.
6768
6769 2004-06-15 Kim F. Storm <storm@cua.dk>
6770
6771 * xdisp.c (try_cursor_movement): Exclude header line from scroll
6772 margin at top of window.
6773 (try_window_reusing_current_matrix): Calculate proper cursor position
6774 after scrolling up with non-zero scroll margin, as the old cursor
6775 position corresponds to value of PT before executing this command.
6776 (try_window_id): Consider scroll margin at bottom of window too;
6777 otherwise we fail to scroll when hl-line-mode is enabled.
6778
6779 * syntax.c (skip_chars): Only recognize [:class:] when it has the
6780 proper format and class is a lower-case word.
6781
6782 2004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6783
6784 * gtkutil.c (xg_get_image_for_pixmap): New function.
6785 (xg_get_gdk_pixmap_and_mask): Remove.
6786 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
6787 xg_get_gdk_pixmap_and_mask.
6788
6789 * xterm.h (struct x_display_info): Typo in comment fixed.
6790
6791 2004-06-14 Juanma Barranquero <lektu@terra.es>
6792
6793 * dispextern.h (Vimage_types): Make it conditional on
6794 HAVE_WINDOW_SYSTEM.
6795
6796 * image.c (Vimage_types): Move from xdisp.c.
6797 (Vimage_type_cache): New variable.
6798 (define_image_type): New argument indicating whether an image
6799 library was loaded; cache loaded status and return t on success,
6800 nil otherwise.
6801 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
6802 (w32_delayed_load): New function to load an image library from a
6803 list of possible filenames.
6804 (init_xpm_functions, init_png_functions, init_jpeg_functions)
6805 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
6806 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
6807 (Finit_image_library): New function, extracted from `init_image'.
6808 Try to initialize an image library on demand and cache whether we
6809 were successful or not.
6810 (syms_of_image): Initialize `Vimage_types' and
6811 `Vimage_type_cache'. Add recognized image types to Vimage_types.
6812 Export `init-image-library'.
6813 (init_image): Remove initialization of all image types, except xbm
6814 and pbm.
6815
6816 * xdisp.c (Vimage_types): Delete (moved to image.c).
6817
6818 2004-06-14 Andreas Schwab <schwab@suse.de>
6819
6820 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
6821 Avoid calling specbind when completion-regexp-list is empty.
6822
6823 2004-06-13 Richard M. Stallman <rms@gnu.org>
6824
6825 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
6826 (re_wctype, re_iswctype, re_wctype_to_bit):
6827 Non-function definitions moved here from regex.c.
6828
6829 * regex.c (re_wctype, re_iswctype): Function defs longer static.
6830 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
6831 (re_wctype, re_iswctype, re_wctype_to_bit):
6832 Non-function definitions moved to regex.h.
6833
6834 * window.c (Fselect_window): Doc fix.
6835
6836 * syntax.c: Include regex.h.
6837 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
6838 If requested, make a list of classes, then check the scanned
6839 chars for membership in them.
6840 (in_classes): New function.
6841 Doc fix.
6842
6843 * keyboard.c (cmd_error): Don't call any_kboard_state
6844 if inside a recursive edit level.
6845
6846 2004-06-13 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
6847
6848 * keyboard.c (command_loop): Call any_kboard_state before
6849 command_loop_2 when at top level.
6850
6851 2004-06-13 Andreas Schwab <schwab@suse.de>
6852
6853 * print.c (print_object): Always use %ld for printing EMACS_INT.
6854
6855 * keyboard.c (cancel_hourglass_unwind): Return a value.
6856 (modify_event_symbol): Always use %ld for printing EMACS_INT.
6857 (Fexecute_extended_command): Likewise.
6858
6859 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
6860 avoid clashes.
6861 (SYNTAX): Likewise.
6862 (SYNTAX_WITH_FLAGS): Likewise.
6863 (SYNTAX_MATCH): Likewise.
6864
6865 * syntax.c (char_quoted): Avoid warning about undefined operation.
6866 (find_defun_start): Likewise.
6867 (scan_lists): Likewise.
6868 (INC_FROM): Likewise.
6869 (scan_sexps_forward): Likewise.
6870
6871 * image.c: Include <ctype.h>.
6872
6873 * xfaces.c (face_attr_equal_p): Declare parameters.
6874
6875 2004-06-13 Kenichi Handa <handa@m17n.org>
6876
6877 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
6878
6879 2004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
6880
6881 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
6882
6883 2004-06-12 Kenichi Handa <handa@m17n.org>
6884
6885 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
6886 ccl_prog_stack_struct and update it.
6887 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
6888 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
6889 ccl->eof_ic on EOF.
6890 (ccl_debug_hook): New function.
6891 (struct ccl_prog_stack): New member eof_ic.
6892 (ccl_driver): Handle EOF in subrountine call correctly.
6893
6894 2004-06-11 Kenichi Handa <handa@m17n.org>
6895
6896 * coding.c (encode_coding_string): Check CODING_FINISH_INTERRUPT.
6897
6898 2004-06-11 Kim F. Storm <storm@cua.dk>
6899
6900 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
6901
6902 2004-06-11 Juanma Barranquero <lektu@terra.es>
6903
6904 * keyboard.c (Fposn_at_point): Doc fix.
6905
6906 2004-06-11 David Kastrup <dak@gnu.org>
6907
6908 * search.c (match_limit): Don't flag an error if match-data
6909 exceeding the allocated search_regs.num_regs gets requested, just
6910 return Qnil.
6911
6912 2004-06-08 Miles Bader <miles@gnu.org>
6913
6914 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
6915
6916 2004-06-07 Juanma Barranquero <lektu@terra.es>
6917
6918 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
6919 (Fcurrent_time_string, Fcurrent_time_zone)
6920 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
6921
6922 2004-06-07 Miles Bader <miles@gnu.org>
6923
6924 * xfaces.c (struct named_merge_point): New type.
6925 (push_named_merge_point): New function.
6926 (merge_named_face): New function.
6927 (merge_face_ref, face_at_buffer_position, face_at_string_position):
6928 Use `merge_named_face'.
6929 (merge_face_inheritance): Function removed.
6930 (merge_face_ref): Rename from `merge_face_vector_with_property'.
6931 Add new `err_msgs' and `named_merge_points' args. Return error
6932 status. Only print error messages if ERR_MSGS is true. Don't try to
6933 do :inherit attribute validation.
6934 (merge_face_heights): Handle `unspecified' in both directions.
6935 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
6936 Call `merge_face_ref' instead of `merge_face_inheritance'.
6937 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
6938 (compute_char_face, face_at_buffer_position)
6939 (face_at_string_position): Call `merge_face_ref' instead of
6940 `merge_face_vector_with_property'.
6941
6942 2004-06-07 Kenichi Handa <handa@m17n.org>
6943
6944 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
6945 the necessary places.
6946
6947 2004-06-07 Kim F. Storm <storm@cua.dk>
6948
6949 * process.c (Fdelete_process): Undo 2004-05-28 change.
6950 Instead, call status_notify also for network process.
6951 (status_message): Use process instead of status as arg.
6952 Give messages "deleted" or "connection broken by remote peer" for
6953 an exited network process.
6954 (status_notify): Change call to status_message.
6955 (read_process_output): Increase readmax to 4096. Do not increase
6956 buffer size for datagram channels (default is now large enough).
6957
6958 2004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
6959
6960 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
6961 problem due to newly defined variable.
6962
6963 2004-06-06 Miles Bader <miles@gnu.org>
6964
6965 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
6966 immediately if non-interactive or not initialized.
6967
6968 2004-06-05 Richard M. Stallman <rms@gnu.org>
6969
6970 * minibuf.c (Fcompleting_read): Doc fix.
6971
6972 2004-06-05 Andreas Schwab <schwab@suse.de>
6973
6974 * macfns.c (x_create_tip_frame): Fix declaration after statement.
6975
6976 2004-06-05 Juanma Barranquero <lektu@terra.es>
6977
6978 * keymap.c (Fdescribe_vector): Fix docstring.
6979 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
6980
6981 2004-06-05 Miles Bader <miles@gnu.org>
6982
6983 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
6984 attributes have different values than the default face.
6985
6986 2004-06-04 Eli Zaretskii <eliz@gnu.org>
6987
6988 * xfaces.c (x_supports_face_attributes_p): Make this function
6989 conditional on HAVE_WINDOW_SYSTEM.
6990 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
6991 Don't call x_supports_face_attributes_p if it was not compiled in.
6992
6993 2004-06-04 Miles Bader <miles@gnu.org>
6994
6995 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
6996 from Ftty_supports_face_attributes_p.
6997 (x_supports_face_attributes_p): New function.
6998 (Ftty_supports_face_attributes_p): Function deleted.
6999 (Fdisplay_supports_face_attributes_p): New function.
7000 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
7001 (face_attr_equal_p): New function.
7002 (lface_equal_p): Use it.
7003
7004 2004-06-03 Juanma Barranquero <lektu@terra.es>
7005
7006 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
7007 (Vw32_color_map): Fix typo in docstring.
7008 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
7009 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
7010 Make argument names match their use in docstring.
7011
7012 2004-06-02 Juanma Barranquero <lektu@terra.es>
7013
7014 Work around bugs/problems with MinGW builds of graphics libraries
7015 called from MSVC builds of Emacs.
7016
7017 * image.c (lookup_image): Make pointer to img static.
7018 (png_read_from_memory): Disable "global" optimization.
7019
7020 2004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
7021
7022 * eval.c (Fcondition_case): Fix usage. Simplify.
7023
7024 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
7025
7026 2004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7027
7028 * macfns.c: Don't include ccl.h.
7029 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
7030 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
7031 TextUtils.h.
7032 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
7033 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
7034 display height/width.
7035 (compute_tip_xy, Vx_max_tooltip_size): Declare.
7036 (unwind_create_tip_frame, compute_tip_xy): New functions.
7037 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
7038 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
7039 and last_show_tip_args.
7040
7041 * macgui.h [!MAC_OSX]: Include Gestalt.h.
7042 (Cursor, No_Cursor): New defines.
7043 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
7044 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
7045
7046 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
7047
7048 * macterm.c: Don't include Gestalt.h.
7049 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
7050 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
7051 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
7052 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
7053 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
7054 (construct_mouse_click, XTmouse_position)
7055 (x_scroll_bar_report_motion, x_calc_absolute_position)
7056 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
7057 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
7058 (note_mouse_movement): Clear the mouse face and reset the pointer
7059 shape when the pointer goes outside the frame without grabbing.
7060 (mac_front_window): New function.
7061 (mac_window_to_frame): New macro.
7062 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
7063 (do_window_activate, do_window_deactivate, do_app_resume)
7064 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
7065 (do_zoom_window, mac_do_receive_drag, XTread_socket)
7066 (mac_check_for_quit_char): Use mac_front_window and/or
7067 mac_window_to_frame.
7068 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
7069 scroll-bar click event.
7070 (mac_define_frame_cursor): Change the pointer shape.
7071 (x_free_frame_resources): Reset tip_window to NULL when it is
7072 disposed of.
7073 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
7074 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
7075 (do_window_update): Don't do anything if the updated window is the
7076 tooltip window.
7077 (do_mouse_moved): Handle mouse movement events here (previously in
7078 XTread_socket). Clear the mouse face if
7079 dpyinfo->mouse_face_hidden is set.
7080 (do_os_event, do_events): Remove (now in XTread_socket).
7081 (XTread_socket): Immediately return if interrupt_input_blocked.
7082 Loop until all the events in the queue are processed.
7083 Rearrange codes for mouse grabbing. Add tooltip support. Include the
7084 contents of do_os_event and do_events. Remove mouse movement
7085 handling (now in do_mouse_moved). Add the case where
7086 Vmouse_highlight has an integer value.
7087 (NewMacWindow): Remove.
7088 (make_mac_frame): Do what NewMacWindow previously did. Don't do
7089 excess initializations.
7090 (make_mac_terminal_frame): Previous initializations in
7091 make_mac_frame are moved here.
7092 (mac_initialize_display_info):
7093 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
7094
7095 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
7096 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
7097
7098 2004-05-29 Richard M. Stallman <rms@gnu.org>
7099
7100 * lisp.h (truncate_undo_list): Update decl.
7101
7102 * alloc.c (undo_outer_limit): New variable.
7103 (syms_of_alloc): Defvar it.
7104 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
7105
7106 * undo.c (truncate_undo_list): New arg LIMITSIZE.
7107
7108 * alloc.c (lisp_align_malloc): Check for base == 0
7109 regardless of HAVE_POSIX_MEMALIGN.
7110 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
7111
7112 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
7113
7114 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
7115 (marker_blocks_pending_free): Remove.
7116 (Fgarbage_collect): Sweep after cleaning up undo-lists.
7117 Mark the undo lists after claning them up.
7118 Don't free block in marker_blocks_pending_free.
7119 (mark_buffer): Don't mark undo_list.
7120 (gc_sweep): Sweep hash-tables and strings first.
7121 Do free marker blocks that are empty.
7122
7123 2004-05-28 Jim Blandy <jimb@redhat.com>
7124
7125 * regex.c (print_partial_compiled_pattern): Add missing 'break'
7126 after 'case wordend'. For symbeg and symend, print to stderr,
7127 like the other cases.
7128
7129 2004-05-28 Noah Friedman <friedman@splode.com>
7130
7131 * process.c (Fdelete_process): Do not call remove_process.
7132
7133 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
7134
7135 * alloc.c (struct backtrace): Remove.
7136 (Fgarbage_collect): Use the new mark_backtrace.
7137
7138 * eval.c (mark_backtrace): New function.
7139
7140 * minibuf.c (run_exit_minibuf_hook): New function.
7141 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
7142 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
7143
7144 2004-05-27 Kim F. Storm <storm@cua.dk>
7145
7146 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
7147 over display properties, e.g. images, that replace buffer text.
7148
7149 2004-05-25 Kim F. Storm <storm@cua.dk>
7150
7151 * alloc.c (marker_blocks_pending_free): New var.
7152 (gc_sweep): Store free marker blocks on that list.
7153 (Fgarbage_collect): Free them after undo-list cleanup.
7154
7155 * process.c (wait_reading_process_input): Check connect_wait_mask
7156 before actually accepting connection in case it has already been
7157 accepted due to recursion.
7158
7159 2004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
7160
7161 * coding.c (Fset_safe_terminal_coding_system_internal):
7162 Set suppress_error in safe_terminal_coding, not terminal_coding.
7163
7164 2004-05-22 Richard M. Stallman <rms@gnu.org>
7165
7166 * alloc.c (Fmake_string): Doc fix.
7167
7168 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
7169 and the alist pairs too.
7170
7171 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
7172
7173 * emacs.c (main): Update copyright year.
7174
7175 * fileio.c (Fread_file_name): Expand DIR if not absolute.
7176
7177 * insdel.c (del_range_2, replace_range): Don't write an anchor
7178 if the gap is empty.
7179
7180 * xdisp.c (try_scrolling): If scroll-up-aggressively or
7181 scroll-down-aggressively is small but positive, put point
7182 near the screen edge.
7183
7184 2004-05-22 Juanma Barranquero <lektu@terra.es>
7185
7186 * keymap.c (Fdefine_key): Doc fix.
7187
7188 2004-05-22 Kim F. Storm <storm@cua.dk>
7189
7190 * alloc.c (struct backtrace): Add debug_on_exit member.
7191 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
7192 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
7193 the removed cons cells.
7194 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
7195 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
7196 any cons cells pointing to unallocated stings.
7197 Do not lisp_free any marker blocks, as there may still be pointers
7198 to them from buffer undo lists at this stage of GC.
7199
7200 * keyboard.c (struct backtrace): Add debug_on_exit member.
7201 (Fcommand_execute): Clear it.
7202
7203 2004-05-20 Luc Teirlinck <teirllm@auburn.edu>
7204
7205 * intervals.c (lookup_char_property): Do not prematurely return nil.
7206
7207 2004-05-19 Jim Blandy <jimb@redhat.com>
7208
7209 Add support for new '\_<' and '\_>' regexp operators, matching the
7210 beginning and end of symbols.
7211
7212 * regex.c (enum syntaxcode): Add Ssymbol.
7213 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
7214 (re_opcode_t): New opcodes `symbeg' and `symend'.
7215 (print_partial_compiled_pattern): Print the new opcodes properly.
7216 (regex_compile): Parse the new operators.
7217 (analyse_first): Skip sym(beg|end) (they match only the empty string).
7218 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
7219 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
7220 (re_match_2_internal): Match symbeg and symend.
7221
7222 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
7223
7224 2004-05-19 Kim F. Storm <storm@cua.dk>
7225
7226 * .gdbinit (xsymbol): Fix last change.
7227
7228 2004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
7229
7230 * .gdbinit (xprintstr): New fun.
7231 (xstring, xprintsym): Use it.
7232
7233 * w32proc.c (create_child): Use INTMASK.
7234
7235 * alloc.c (Fgarbage_collect): Do all the marking before flushing
7236 unmarked elements of the undo list.
7237
7238 2004-05-18 David Ponce <david@dponce.com>
7239
7240 * print.c (print): Reset print_depth before to call print_object.
7241
7242 2004-05-18 Jason Rumney <jasonr@gnu.org>
7243
7244 * w32console.c: Prefix RIF functions with w32con_ to avoid
7245 namespace clash with functions in term.c and w32term.c.
7246
7247 * w32menu.c (add_menu_item, w32_menu_display_help)
7248 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
7249
7250 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
7251
7252 2004-05-18 Eli Zaretskii <eliz@gnu.org>
7253
7254 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
7255
7256 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
7257 with make_number.
7258 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
7259 with XINT.
7260
7261 2004-05-18 Kim F. Storm <storm@cua.dk>
7262
7263 * blockinput.h (INPUT_BLOCKED_P): New macros.
7264
7265 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
7266 (Ftop_level): Unblock input if blocked.
7267
7268 * buffer.h (GET_OVERLAYS_AT): New macro.
7269 * msdos.c (IT_note_mouse_highlight): Use it.
7270 * textprop.c (get_char_property_and_overlay): Use it.
7271 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
7272 * xfaces.c (face_at_buffer_position): Use it.
7273
7274 * print.c (print_object): Increase buf size.
7275
7276 2004-05-17 Jason Rumney <jasonr@gnu.org>
7277
7278 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
7279 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
7280 Lisp_Object using i member.
7281 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
7282 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
7283 consistently.
7284
7285 * w32proc.c (create_child): Use make_number instead of masking pid.
7286
7287 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
7288 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
7289 Use EQ to compare Lisp_Objects.
7290 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
7291
7292 * w32term.c (w32_num_mouse_buttons): Rename from
7293 Vw32_num_mouse_buttons and make it an int.
7294
7295 * w32.c (init_environment): Use it.
7296
7297 * w32fns.c (w32_wnd_proc): Likewise.
7298
7299 * w32proc.c (w32_pipe_read_delay): Rename from
7300 Vw32_pipe_read_delay and make it an int.
7301
7302 * w32.c (_sys_read_ahead): Use it.
7303
7304 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
7305
7306 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
7307
7308 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
7309 (key_event): Don't mix Lisp_Object and int.
7310
7311 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
7312
7313 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
7314 modifiers in language change event.
7315
7316 2004-05-17 Kim F. Storm <storm@cua.dk>
7317
7318 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
7319 Such objects may be freed markers which still exist on an undo list.
7320
7321 2004-05-16 Juanma Barranquero <lektu@terra.es>
7322
7323 * data.c (Fset_default): Make argument names match their use in
7324 docstring.
7325
7326 2004-05-15 Andreas Schwab <schwab@suse.de>
7327
7328 * emacs.c (gdb_array_mark_flag): Define.
7329 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
7330
7331 2004-05-15 Eli Zaretskii <eliz@gnu.org>
7332
7333 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
7334 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
7335 defined for the MS-DOS build.
7336
7337 2004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
7338
7339 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
7340
7341 2004-05-14 Kenichi Handa <handa@m17n.org>
7342
7343 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
7344
7345 2004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7346
7347 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
7348 section to frame.c section.
7349 (Fxw_display_color_p, Fx_file_dialog): Declare if
7350 HAVE_WINDOW_SYSTEM defined.
7351
7352 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
7353
7354 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
7355
7356 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
7357 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
7358 (XTread_socket): Fix int/Lisp_Object mixup.
7359 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
7360
7361 * macterm.h (struct frame, struct face, struct image)
7362 (display_x_get_resource, Fx_display_color_p)
7363 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
7364 Add prototypes.
7365
7366 2004-05-14 Kim F. Storm <storm@cua.dk>
7367
7368 * process.c (wait_reading_process_input): Make reentrant.
7369 Make Available and Connecting non-static. Save and restore value
7370 of waiting_for_user_input_p.
7371
7372 2004-05-13 Kim F. Storm <storm@cua.dk>
7373
7374 * keyboard.c (mark_kboards): Don't mark x and y members
7375 that are overloaded in selection request events.
7376
7377 2004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
7378
7379 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
7380
7381 2004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
7382
7383 * window.c (Fdisplay_buffer, Fsplit_window)
7384 (split-height-threshold): Doc fix.
7385
7386 2004-05-13 Juanma Barranquero <lektu@terra.es>
7387
7388 * xfaces.c (Ftty_supports_face_attributes_p)
7389 (Finternal_copy_lisp_face): Fix typo in docstring.
7390 (Finternal_get_lisp_face_attribute): Fix docstring.
7391
7392 2004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7393
7394 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
7395
7396 2004-05-11 Steven Tamm <steventamm@mac.com>
7397
7398 * macfns.c (Fx_create_frame): Default to using tool-bar by
7399 setting tool-bar-lines to 1 in default-frame-alist.
7400
7401 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7402
7403 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
7404 (xpm_get_color_table_v, xpm_make_color_table_h)
7405 (xpm_put_color_table_h, xpm_get_color_table_h)
7406 (xpm_str_to_color_key, xpm_load_image, xpm_load)
7407 (syms_of_image): Support XPM on Carbon Emacs. Does not
7408 depend on libXpm, but only supports XPM version 3 without extensions.
7409
7410 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7411
7412 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
7413 instead of FRAME_X_P
7414
7415 2004-05-11 Kim F. Storm <storm@cua.dk>
7416
7417 * process.c (read_process_output): Grow decoding_buf when needed;
7418 this could cause a crash in allocate_string and compact_small_strings.
7419
7420 2004-04-29 Jim Blandy <jimb@redhat.com>
7421
7422 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
7423 against proper opcode.
7424
7425 2004-05-10 Juanma Barranquero <lektu@terra.es>
7426
7427 * process.c (Fstart_process): Fix docstring.
7428
7429 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
7430 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
7431 (Fsplit_char, Fchar_charset): Make argument names match their use
7432 in docstring.
7433
7434 2004-05-10 Richard M. Stallman <rms@gnu.org>
7435
7436 * print.c (print_preprocess): Use being_printed, loop_count and
7437 halftail to detect overdeep nesting and cyclic cdr chains.
7438
7439 2004-05-10 Andreas Schwab <schwab@suse.de>
7440
7441 * lisp.h (Fmake_symbolic_link): Declare.
7442
7443 * fileio.c (Frename_file): Remove extra argument in call to
7444 Fmake_symbolic_link.
7445
7446 2004-05-10 Kim F. Storm <storm@cua.dk>
7447
7448 * xdisp.c (calc_line_height_property): Use string position when
7449 object is a string.
7450
7451 2004-05-10 Kenichi Handa <handa@m17n.org>
7452
7453 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
7454 inhibit-modification-hooks to t temporarily before calling
7455 Ferase_buffer.
7456
7457 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
7458 inhibit-modification-hooks to t temporarily before calling
7459 Ferase_buffer.
7460
7461 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
7462 inhibit-modification-hooks to t temporarily before calling
7463 Ferase_buffer.
7464
7465 * fns.c (count_combining): Delete it.
7466 (concat): Don't check combining bytes.
7467
7468 2004-05-09 Jason Rumney <jasonr@gnu.org>
7469
7470 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
7471 (globals_of_w32fns): Set it.
7472
7473 2004-05-09 Piet van Oostrum <piet@cs.uu.nl>
7474
7475 * data.c (Fquo): Simplify.
7476
7477 2004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
7478
7479 * data.c (Fquo): If any argument is float, do the computation in
7480 floating point.
7481
7482 2004-05-08 Juanma Barranquero <lektu@terra.es>
7483
7484 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
7485 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
7486 Fix spelling of Emacs on docstring.
7487 (Fset_process_coding_system, Fprocess_coding_system)
7488 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
7489 Make argument names match their use in docstring.
7490 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
7491 Fix docstring.
7492
7493 * editfns.c (Finsert_buffer_substring): Make argument names match their
7494 use in docstring.
7495
7496 * syntax.c (Fmodify_syntax_entry): Fix docstring.
7497
7498 2004-05-07 Steven Tamm <steventamm@mac.com>
7499
7500 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
7501 around call to ReceiveEvent to avoid certain crashes.
7502
7503 2004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7504
7505 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
7506 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
7507 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
7508 Save/restore the current graphics port and device handle when
7509 drawing into an offscreen graphics world.
7510
7511 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
7512 (gif_load): Likewise.
7513
7514 2004-05-07 Juanma Barranquero <lektu@terra.es>
7515
7516 * window.c (Fset_window_buffer): Fix docstring.
7517
7518 2004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
7519
7520 * emacs.c (main) [VMS]: Fix var ref.
7521
7522 2004-05-06 Romain Francoise <romain@orebokech.com>
7523
7524 * data.c (Fsetq_default): Fix docstring.
7525
7526 2004-05-06 Jason Rumney <jasonr@gnu.org>
7527
7528 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
7529 to avoid name clash.
7530
7531 2004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7532
7533 * fileio.c (barf_or_query_if_file_exists): Use lstat.
7534 (Frename_file): Handle renaming of symlinks across file systems.
7535 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
7536
7537 2004-05-04 Kim F. Storm <storm@cua.dk>
7538
7539 * xdisp.c (Qtotal): New var.
7540 (syms_of_xdisp): Intern and staticpro it.
7541 (calc_line_height_property): New arg total. Set it if
7542 line-spacing property has format (total . VALUE).
7543 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
7544 Handle total line-spacing property.
7545
7546 2004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7547
7548 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
7549 "under" scroll bar when size/position changes.
7550
7551 2004-05-03 Jason Rumney <jasonr@gnu.org>
7552
7553 * makefile.nt: Remove.
7554
7555 2004-05-02 Eli Zaretskii <eliz@gnu.org>
7556
7557 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
7558 Avoid compiler warnings.
7559
7560 * Makefile.in (region-cache.o): Depend on config.h.
7561
7562 2004-05-02 Romain Francoise <romain@orebokech.com>
7563
7564 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
7565 with continuation lines, too.
7566
7567 2004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
7568
7569 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
7570
7571 2004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
7572
7573 * xdisp.c (calc_line_height_property): YAILOM (yet another
7574 int/Lisp_Object mixup).
7575
7576 2004-05-01 Eli Zaretskii <eliz@gnu.org>
7577
7578 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
7579 undo bad effect of pack(4) in some versions of system headers.
7580
7581 2004-05-01 Jason Rumney <jasonr@gnu.org>
7582
7583 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
7584
7585 2004-04-30 Kim F. Storm <storm@cua.dk>
7586
7587 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
7588 (syms_of_buffer) <cursor-type>: Doc fix.
7589
7590 * dispextern.h (struct it): Remove member use_default_face.
7591 Add members override_ascent, override_descent, override_boff.
7592
7593 * xdisp.c (init_iterator): Handle line-spacing float value.
7594 Initialize override_ascent member.
7595 (append_space_for_newline): Reset override_ascent.
7596 Remove use_default_face.
7597 (calc_line_height_property): New function to calculate value of
7598 line-height and line-spacing properties. Look at overlays, too.
7599 Set override_ascent, override_descent, override_boff members when
7600 using another face than the current face. Float values are now
7601 relative to the frame default font, by default; accept a cons
7602 of ratio and face name to specify value relative to a specific face.
7603 (x_produce_glyphs): Use calc_line_height_property.
7604 Use override_ascent etc. when set to handle different face heights.
7605 A negative line-spacing property value is interpreted as a total
7606 line height, rather than inter-line spacing.
7607 (note_mouse_highlight): Allocate room for 40 overlays initially.
7608
7609 2004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
7610
7611 * data.c (Fsubr_name): New fun.
7612 (syms_of_data): Defsubr it.
7613
7614 2004-04-29 Kim F. Storm <storm@cua.dk>
7615
7616 * xdisp.c (null_glyph_slice): New var.
7617 (append_glyph, append_composite_glyph, append_stretch_glyph):
7618 Use it to initialize glyph slice.
7619
7620 2004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
7621
7622 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
7623 (on_hot_spot_p): Make sure we always return a value.
7624 (Flookup_image_map): Remove unused var ix and iy.
7625 (note_mode_line_or_margin_highlight): Remove unused var `image'.
7626
7627 2004-04-27 Eli Zaretskii <eliz@gnu.org>
7628
7629 * msdos.c (init_environment): If one of the TMP... environment
7630 variables is set to a drive letter without a trailing slash,
7631 append a slash.
7632
7633 2004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
7634
7635 * editfns.c (lisp_time_argument): Provide externally.
7636
7637 * fileio.c (Fset_file_times): New function.
7638 (syms_of_fileio): Intern and staticpro it.
7639
7640 2004-04-27 Kim F. Storm <storm@cua.dk>
7641
7642 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
7643 header line strings.
7644
7645 * dispextern.h (struct it): New member use_default_face.
7646
7647 * xdisp.c (Qline_height): New variable.
7648 (syms_of_xdisp): Intern and staticpro it.
7649 (append_space_for_newline): Partially undo 2004-04-25 change;
7650 add default_face_p arg, and restore callers.
7651 Clear it->use_default_face after use.
7652 (x_produce_glyphs): Set default font for ascii char if
7653 it->use_default_font is set. Change line-spacing property to set
7654 just extra line spacing. Handle new line-height property.
7655
7656 2004-04-26 Andreas Schwab <schwab@suse.de>
7657
7658 * print.c (print_object): Print non-ascii characters in bool
7659 vector representation as octal escapes.
7660
7661 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
7662 * print.c (print_object): Use it instead of BITS_PER_CHAR for
7663 bool vectors.
7664 * lread.c (read1): Likewise.
7665 * alloc.c (Fmake_bool_vector): Likewise.
7666 * data.c (Faref, Faset): Likewise.
7667 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
7668 (mapcar1): Likewise.
7669
7670 2004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
7671
7672 * lread.c (init_lread): Fix typo in HAVE_CARBON test logic.
7673
7674 2004-04-26 Miles Bader <miles@gnu.org>
7675
7676 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
7677
7678 2004-04-26 Juanma Barranquero <lektu@terra.es>
7679
7680 * buffer.c (Fpop_to_buffer): Fix docstring.
7681
7682 2004-04-26 Steven Tamm <steventamm@mac.com>
7683
7684 * lread.c (init_lread): Don't display missing lisp directory
7685 warnings with Carbon Emacs because self-contained bundled Emacs
7686 may be built without correct installation path.
7687
7688 2004-04-25 Kim F. Storm <storm@cua.dk>
7689
7690 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
7691
7692 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
7693
7694 * xdisp.c (append_space_for_newline): Rename from append_space.
7695 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
7696 (x_produce_glyphs): Handle line-spacing property on newline char.
7697 If value is t, adjust ascent and descent to fit current row height.
7698 If value is an integer or float, set extra_line_spacing to integer
7699 value, or to float value x current line height.
7700
7701 2004-04-23 Kenichi Handa <handa@m17n.org>
7702
7703 * fontset.c (Finternal_char_font): If POSITION is nil, return
7704 font for displaying CH with the default face.
7705
7706 2004-04-23 Juanma Barranquero <lektu@terra.es>
7707
7708 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
7709
7710 2004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
7711
7712 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
7713 Don't make assumptions about the relative place of i and val.
7714 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
7715
7716 2004-04-21 Kim F. Storm <storm@cua.dk>
7717
7718 * dispextern.h (struct glyph_slice): New struct.
7719 (struct glyph): New member slice.
7720 (GLYPH_SLICE_EQUAL_P): New macro.
7721 (GLYPH_EQUAL_P): Use it.
7722 (struct glyph_string): New member slice.
7723 (struct it_slice): New struct.
7724 (struct it): New member slice, add member to stack too.
7725 New member constrain_row_ascent_descent_p.
7726 (image_ascent): Add prototype.
7727
7728 * dispnew.c (buffer_posn_from_coords): Return full image width
7729 and height even for image slices (posn is relative to full image).
7730 (marginal_area_string): Adjust x0,y0 for image slice.
7731
7732 * image.c (image_ascent): Add slice arg; calculate ascent for
7733 image slice (or full image).
7734
7735 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
7736 (syms_of_keyboard): Defsubr them.
7737
7738 * lisp.h (pos_visible_p): Fix prototype.
7739
7740 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
7741 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
7742 (x_draw_image_foreground, x_draw_image_relief)
7743 (x_draw_image_foreground_1, x_draw_image_glyph_string):
7744 Draw sliced images.
7745
7746 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
7747 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
7748 (x_draw_image_foreground, x_draw_image_relief)
7749 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
7750 Draw sliced images.
7751
7752 * w32term.h (image_ascent): Remove prototype.
7753
7754 * window.c (Fpos_visible_in_window_p): Return pixel position if
7755 PARTIALLY arg is non-nil. Simplify. Doc fix.
7756 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
7757 to return/set vscroll in pixels.
7758
7759 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
7760
7761 * xdisp.c (Qslice): New variable.
7762 (syms_of_xdisp): Intern and staticpro it.
7763 (pos_visible_p): Return pixel position in new x and y args.
7764 (init_iterator): Reset it->slice info.
7765 (handle_display_prop): Parse (slice ...) property.
7766 (push_it, pop_it): Save/restore slice info.
7767 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
7768 force repositioning of tall row if window is vscrolled, as that
7769 would reset vscroll.
7770 (append_space): Set it->constrain_row_ascent_descent_p to avoid
7771 increasing row height if row is non-empty.
7772 (fill_image_glyph_string): Copy slice info.
7773 (take_vertical_position_into_account): Simplify.
7774 (produce_image_glyph): Handle iterator slice info, setup glyph
7775 slice info. Do not force minimum line height.
7776 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
7777 do not increase height (ascent/descent) of non-empty row when
7778 adding normal character glyph; instead reduce glyph ascent/descent
7779 appropriately; if row is higher than current glyph, adjust glyph
7780 descent/ascent to reposition glyph within the existing row.
7781 Likewise, when char is newline, only set ascent/descent if row is
7782 currently empty.
7783 (note_mouse_highlight): Handle hotspots with sliced image.
7784
7785 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
7786 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
7787 (x_draw_image_foreground, x_draw_image_relief)
7788 (x_draw_image_foreground_1, x_draw_image_glyph_string):
7789 Draw sliced images.
7790
7791 * xterm.h (image_ascent): Remove prototype.
7792
7793 2004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
7794
7795 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
7796
7797 2004-04-20 John Paul Wallington <jpw@gnu.org>
7798
7799 * fns.c (Fassoc, Feql): Fix indentation.
7800
7801 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
7802
7803 2004-04-19 John Paul Wallington <jpw@gnu.org>
7804
7805 * fns.c (Feql): New function.
7806 (syms_of_fns): Defsubr it.
7807
7808 2004-04-18 Jason Rumney <jasonr@gnu.org>
7809
7810 * w32select.c (Fw32_set_clipboard_data): Get sequence number
7811 after closing the clipboard.
7812
7813 2004-04-16 Luc Teirlinck <teirllm@auburn.edu>
7814
7815 * buffer.c (Fbuffer_base_buffer): Doc fix.
7816
7817 2004-04-17 Kim F. Storm <storm@cua.dk>
7818
7819 * keymap.c (Fkey_description): Add optional PREFIX arg.
7820 Combine prefix with KEYS to make up the full key sequence to describe.
7821 Correlate meta_prefix_char and following (simple) key to describe
7822 as meta modifier. All callers changed.
7823 (describe_map): Rename arg `keys' to `prefix'. Remove local
7824 `elt_prefix' var. Use Fkey_description with prefix instead of
7825 elt_prefix combined with Fsingle_key_description.
7826 (describe_vector): Declare static. Replace arg `elt_prefix' with
7827 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
7828 if !KEYMAP_P. Use Fkey_description with prefix instead of
7829 Fsingle_key_description.
7830
7831 * keymap.h (Fkey_description): Fix prototype.
7832 (describe_vector): Remove prototype.
7833
7834 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
7835
7836 * image.c (PNG_BG_COLOR_SHIFT): Remove.
7837 (png_load): Fix calculation of transparent background color on X
7838 and W32 platforms.
7839
7840 2004-04-16 Juanma Barranquero <lektu@terra.es>
7841
7842 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
7843 not too large before computing how much to scroll.
7844
7845 2004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
7846
7847 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
7848
7849 2004-04-14 Luc Teirlinck <teirllm@auburn.edu>
7850
7851 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
7852 Add hyperlink to Elisp manual to the docstring.
7853
7854 2004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
7855
7856 * callint.c (fix_command): Use XDCR.
7857
7858 2004-04-14 Nick Roberts <nick@nick.uklinux.net>
7859
7860 * window.c (Fget_lru_window): Doc fix.
7861
7862 2004-04-14 Kim F. Storm <storm@cua.dk>
7863
7864 * editfns.c (Fformat): Fix allocation size of precision array.
7865
7866 * dispnew.c (update_window): Only set changed_p if
7867 scrolling_window actually did scroll.
7868 (scrolling_window): Only return 1 if we actually did scroll.
7869
7870 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
7871 height to glyph height when cursor row is not fully visible.
7872 (make_cursor_line_fully_visible): Add FORCE_P arg to return
7873 failure in case row is higher than window. Callers changed.
7874 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
7875 Try to scroll partially visible, higher-than-window cursor row.
7876 (redisplay_window): Always try to scroll partially visible,
7877 higher-than-window cursor row - both initially and again with
7878 centering_position = 0.
7879 Clear desired matrix before retrying with centering_position = 0.
7880
7881 2004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
7882
7883 * syntax.c (scan_lists): Simplify backward string scan.
7884 Fix off-by-one boundary check for string and comment fences.
7885
7886 2004-04-13 Joe Buehler <jbuehler@hekimian.com>
7887
7888 * sheap.c, unexcw.c: New files.
7889
7890 2004-04-12 Luc Teirlinck <teirllm@auburn.edu>
7891
7892 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
7893 base buffer has been killed. Correct the error message if the
7894 base buffer does not exist.
7895
7896 2004-04-12 Joe Buehler <jbuehler@hekimian.com>
7897
7898 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
7899 Cygwin itself. Add support for Xaw3d scrollbars.
7900
7901 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
7902
7903 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
7904
7905 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
7906 before Cygwin unexec.
7907
7908 * Makefile.in: Link changes for Cygwin unexec() support.
7909
7910 2004-04-12 Andreas Schwab <schwab@suse.de>
7911
7912 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
7913
7914 2004-04-11 Luc Teirlinck <teirllm@auburn.edu>
7915
7916 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
7917 IGNORE argument equals NAME. Doc fix.
7918
7919 2004-04-11 Masatake YAMATO <jet@gyve.org>
7920
7921 * buffer.c (fix_start_end_in_overlays): Make overlays
7922 empty if they are backwards.
7923
7924 2004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
7925
7926 * xfaces.c (face_color_supported_p): Fix compilation without X11.
7927
7928 2004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
7929
7930 * doc.c (Fsnarf_documentation): Ignore new file name entries.
7931
7932 2004-04-06 Kim F. Storm <storm@cua.dk>
7933
7934 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
7935 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
7936
7937 * w32term.c (w32_read_socket): Set mouse_face_hidden after
7938 clearing highlight.
7939
7940 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
7941
7942 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
7943 clearing highlight.
7944
7945 * indent.c (vmotion): Do not reserve one column for continuation
7946 marks on window frames.
7947
7948 2004-04-04 Eli Zaretskii <eliz@gnu.org>
7949
7950 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
7951 from GCC.
7952
7953 2004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
7954
7955 * .gdbinit-union: Remove.
7956
7957 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
7958 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
7959 ($nonvalbits): Remove.
7960 ($valmask): Set it by calling xreload to avoid redundancy.
7961
7962 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
7963 (gdb_emacs_intbits): Remove.
7964
7965 2004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7966
7967 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
7968
7969 2004-03-30 Kenichi Handa <handa@m17n.org>
7970
7971 * editfns.c (Fformat): Fix initialization of the array info.
7972
7973 2004-03-30 Kim F. Storm <storm@cua.dk>
7974
7975 * xterm.c (x_mouse_click_focus_ignore_position): New var.
7976 (syms_of_xterm): DEFVAR_BOOL it.
7977 (ignore_next_mouse_click_timeout): New var.
7978 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
7979 Use it to filter mouse clicks following focus event.
7980
7981 2004-03-29 David Ponce <david@dponce.com>
7982
7983 * callint.c (Fcall_interactively): Fix last change.
7984
7985 2004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
7986
7987 * eval.c (Fcommandp): Simplify.
7988
7989 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
7990 Extend to handle all kinds of functions.
7991
7992 * lisp.h (Finteractive_form): Declare.
7993
7994 * callint.c (Fcall_interactively): Use it.
7995
7996 2004-03-26 Kim F. Storm <storm@cua.dk>
7997
7998 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
7999 to catch errors in calc_pixel_width_or_height during redisplay.
8000
8001 2004-03-26 Masatake YAMATO <jet@gyve.org>
8002
8003 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
8004
8005 * lisp.h (fix_start_end_in_overlays): Likewise.
8006
8007 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
8008
8009 * editfns.c (Ftranspose_regions): Likewise.
8010
8011 2004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8012
8013 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
8014
8015 2004-03-19 Richard M. Stallman <rms@gnu.org>
8016
8017 * s/sol2-6.h: Delete previous change.
8018
8019 2004-03-19 Kim F. Storm <storm@cua.dk>
8020
8021 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
8022 to_charpos corresponds to newline in right fringe. Use local
8023 BUFFER_POS_REACHED_P macro.
8024
8025 2004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8026
8027 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
8028 to compile on non-window system.
8029
8030 2004-03-19 Kim F. Storm <storm@cua.dk>
8031
8032 * dispextern.h (calc_pixel_width_or_height): Add prototype.
8033
8034 * image.c (Qcenter): Move to xdisp.c.
8035
8036 * xdisp.c (Qcenter): Declare here.
8037 (syms_of_xdisp): Intern and staticpro it.
8038 (handle_single_display_prop): Allow space display property on all
8039 platforms.
8040 (display_mode_line): Set mode_line_p before displaying line.
8041 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
8042 handling. Remove complex cases for fringes and scroll-bars.
8043 Add left, right, and center alignment positions. Add text (area)
8044 width/height. Return width or height for image specs.
8045 (produce_stretch_glyph): Improve handling of :align-to. Is now
8046 relative to left of text area by default, but other base offsets
8047 can be specified -- also for text lines.
8048
8049 * term.c (produce_glyphs): Handle IT_STRETCH.
8050 (produce_stretch_glyph): New function to handle space width and
8051 align-to display properties on non-window systems.
8052
8053 2004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
8054
8055 * fileio.c (Fread_file_name): Set completion-ignore-case for
8056 case-insensitive systems.
8057
8058 2004-03-14 Masatake YAMATO <jet@gyve.org>
8059
8060 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
8061 when keymap and cursor are setup.
8062
8063 2004-03-14 Steven Tamm <steventamm@mac.com>
8064
8065 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
8066
8067 2004-03-14 Kim F. Storm <storm@cua.dk>
8068
8069 * dispextern.h (x_find_image_file): Add prototype.
8070
8071 * image.c (x_find_image_file): Make extern.
8072
8073 * xfns.c (x_find_image_file): Remove prototype.
8074
8075 2004-03-13 Eli Zaretskii <eliz@gnu.org>
8076
8077 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
8078
8079 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
8080
8081 2004-03-12 Richard M. Stallman <rms@gnu.org>
8082
8083 * fns.c (internal_equal): New arg PROPS controls comparing
8084 text properties. All callers changed.
8085 (Fequal_including_properties): New function.
8086 (syms_of_fns): defsubr it.
8087
8088 2004-03-12 Kim F. Storm <storm@cua.dk>
8089
8090 Fix image support on MAC. From YAMAMOTO Mitsuharu.
8091
8092 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
8093 (image_background, image_background_transparent): Fix prototypes.
8094
8095 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
8096
8097 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
8098 (x_query_font, x_find_ccl_program, x_set_window_size)
8099 (x_make_frame_visible, mac_initialize, XCreatePixmap)
8100 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
8101 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
8102
8103 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
8104 (x_query_font, x_find_ccl_program, x_set_window_size)
8105 (x_make_frame_visible, mac_initialize, XCreatePixmap)
8106 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
8107 (mac_draw_line_to_pixmap): Add prototypes.
8108
8109 2004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8110
8111 * macterm.c (XTread_socket): Fix mouse click on tool bar.
8112
8113 2004-03-11 Kim F. Storm <storm@cua.dk>
8114
8115 * dispextern.h: Move image related prototypes from xfns.c section
8116 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
8117 HAVE_X_WINDOWS.
8118
8119 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
8120 Move gtkutil.o to new GTK_OBJ list.
8121 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
8122 (GTK_OBJ) [USE_GTK]: New declaration.
8123 (obj): Add $(GTK_OBJ) to list.
8124
8125 2004-03-11 Steven Tamm <steventamm@mac.com>
8126
8127 * image.c [MAC_OSX]: Include sys/stat.h.
8128
8129 * macfns.c (syms_of_macfns): Remove definitions of things now
8130 defined in image.c.
8131
8132 2004-03-11 Kim F. Storm <storm@cua.dk>
8133
8134 The following changes consolidates the identical/similar image
8135 support code previously found in xfns.c, w32fns.c, and macfns.c
8136 into a new file image.c.
8137
8138 * makefile.w32-in (OBJ1): Add image.o.
8139 ($(BLD)/image.$(O)): Add dependencies.
8140
8141 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
8142 (image.o): Add dependencies.
8143
8144 * image.c: New file with consolidated image support code.
8145 (COLOR_TABLE_SUPPORT): New define to control whether
8146 color table support is available (X only).
8147 (Bitmap_Record): Common name for x_bitmap_record,
8148 w32_bitmap_record, and mac_bitmap_record.
8149 (XImagePtr): Common name for pointer to XImage or equivalent.
8150 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
8151 to XImagePtr on X+MAC, and to HDC on W32.
8152 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
8153 (NO_PIXMAP): Common name for "None" or equivalent.
8154 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
8155 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
8156 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
8157 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
8158 Define with suitable equivalents on W32 and MAC for code sharing.
8159 (XDrawLine): Define on MAC for code sharing.
8160 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
8161 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
8162 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
8163 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8164 (x_reference_bitmap, x_create_bitmap_from_data)
8165 (x_create_bitmap_from_file, x_destroy_bitmap)
8166 (x_destroy_all_bitmaps, x_create_bitmap_mask)
8167 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
8168 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
8169 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
8170 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
8171 (define_image_type, lookup_image_type, valid_image_p)
8172 (image_error, enum image_value_type, struct image_keyword)
8173 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
8174 (make_image, free_image, prepare_image_for_display, image_ascent)
8175 (four_corners_best, image_background, image_background_transparent)
8176 (x_clear_image_1, x_clear_image, x_alloc_image_color)
8177 (make_image_cache, free_image_cache, clear_image_cache)
8178 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
8179 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
8180 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
8181 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
8182 (init_image_func_pointer, image_load_quartz2d)
8183 (struct ct_color, init_color_table, free_color_table)
8184 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
8185 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
8186 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
8187 (x_disable_image, x_build_heuristic_mask)
8188 (XBM support, XPM support, PBM support, PNG support, JPEG support)
8189 (TIFF support, GIF support, Ghostscript support): Consolidate image
8190 code from xfns.c, w32fns.c, and macfns.c.
8191 (syms_of_image): Consolidate image related symbol setup here.
8192 (init_image): Consolidate image related initializations here.
8193
8194 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
8195 and init_image. Remove call to init_xfns.
8196
8197 * macterm.h (struct mac_bitmap_record): Add file member.
8198 Not currently used, but simplifies code sharing.
8199
8200 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
8201 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8202 (x_reference_bitmap, x_create_bitmap_from_data)
8203 (x_create_bitmap_from_file, x_destroy_bitmap)
8204 (x_destroy_all_bitmaps, x_create_bitmap_mask)
8205 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
8206 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
8207 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
8208 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
8209 (define_image_type, lookup_image_type, valid_image_p)
8210 (image_error, enum image_value_type, struct image_keyword)
8211 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
8212 (make_image, free_image, prepare_image_for_display, image_ascent)
8213 (four_corners_best, image_background, image_background_transparent)
8214 (x_clear_image_1, x_clear_image, x_alloc_image_color)
8215 (make_image_cache, free_image_cache, clear_image_cache)
8216 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
8217 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
8218 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
8219 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
8220 (init_image_func_pointer, image_load_quartz2d)
8221 (struct ct_color, init_color_table, free_color_table)
8222 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
8223 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
8224 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
8225 (x_disable_image, x_build_heuristic_mask)
8226 (XBM support, XPM support, PBM support, PNG support, JPEG support)
8227 (TIFF support, GIF support, Ghostscript support): Merge with image
8228 code from xfns.c and macfns.c into image.c.
8229 (syms_of_xfns): Move image related symbols to image.c.
8230 (init_external_image_libraries, init_xfns): Remove; initialization
8231 moved to init_image in image.c.
8232
8233 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
8234 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8235 (x_reference_bitmap, x_create_bitmap_from_data)
8236 (x_create_bitmap_from_file, x_destroy_bitmap)
8237 (x_destroy_all_bitmaps, x_create_bitmap_mask)
8238 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
8239 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
8240 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
8241 (define_image_type, lookup_image_type, valid_image_p)
8242 (image_error, enum image_value_type, struct image_keyword)
8243 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
8244 (make_image, free_image, prepare_image_for_display, image_ascent)
8245 (four_corners_best, image_background, image_background_transparent)
8246 (x_clear_image_1, x_clear_image, x_alloc_image_color)
8247 (make_image_cache, free_image_cache, clear_image_cache)
8248 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
8249 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
8250 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
8251 (struct ct_color, init_color_table, free_color_table)
8252 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
8253 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
8254 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
8255 (x_disable_image, x_build_heuristic_mask)
8256 (XBM support, XPM support, PBM support, PNG support, JPEG support)
8257 (TIFF support, GIF support, Ghostscript support): Merge with image
8258 code from xfns.c and macfns.c into image.c.
8259 (syms_of_xfns): Move image related symbols to image.c.
8260 (init_external_image_libraries, init_xfns): Remove; initialization
8261 moved to init_image in image.c.
8262
8263 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
8264 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8265 (x_reference_bitmap, x_create_bitmap_from_data)
8266 (x_create_bitmap_from_file, x_destroy_bitmap)
8267 (x_destroy_all_bitmaps, x_create_bitmap_mask)
8268 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
8269 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
8270 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
8271 (define_image_type, lookup_image_type, valid_image_p)
8272 (image_error, enum image_value_type, struct image_keyword)
8273 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
8274 (make_image, free_image, prepare_image_for_display, image_ascent)
8275 (four_corners_best, image_background, image_background_transparent)
8276 (x_clear_image_1, x_clear_image, x_alloc_image_color)
8277 (make_image_cache, free_image_cache, clear_image_cache)
8278 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
8279 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
8280 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
8281 (struct ct_color, init_color_table, free_color_table)
8282 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
8283 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
8284 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
8285 (x_disable_image, x_build_heuristic_mask)
8286 (XBM support, XPM support, PBM support, PNG support, JPEG support)
8287 (TIFF support, GIF support, Ghostscript support): Merge with
8288 w32fns.c and macfns.c image code into image.c.
8289 (syms_of_xfns): Move image related symbols to image.c.
8290 (init_xfns): Remove; initialization moved to init_image in image.c.
8291
8292 * lisp.h (syms_of_image, init_image): Add protoypes.
8293 (init_xfns): Remove prototype.
8294
8295 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8296 (x_reference_bitmap, x_create_bitmap_from_data)
8297 (x_create_bitmap_from_file, x_destroy_bitmap)
8298 (x_create_bitmap_mask): Move prototypes from dispextern.h.
8299 (gamma_correct) [MAC_OS]: Add prototype.
8300
8301 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8302 (x_reference_bitmap, x_create_bitmap_from_data)
8303 (x_create_bitmap_from_file, x_destroy_bitmap)
8304 (x_create_bitmap_mask): Move prototypes to dispextern.h.
8305
8306 2004-03-09 Kenichi Handa <handa@etlken2>
8307
8308 * coding.c (decode_coding_emacs_mule): Handle insufficent source
8309 correctly.
8310
8311 2004-03-04 Richard M. Stallman <rms@gnu.org>
8312
8313 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
8314
8315 * window.c (Fdisplay_buffer): Doc fix.
8316
8317 * buffer.c (Fpop_to_buffer): Doc fix.
8318
8319 2004-03-03 Kim F. Storm <storm@cua.dk>
8320
8321 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
8322
8323 2004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
8324
8325 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
8326
8327 2004-03-02 Richard M. Stallman <rms@gnu.org>
8328
8329 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
8330
8331 2004-03-02 Kenichi Handa <handa@m17n.org>
8332
8333 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
8334
8335 2004-03-02 Kim F. Storm <storm@cua.dk>
8336
8337 * window.h (struct window): New member overlay_arrow_bitmap.
8338
8339 * window.c (make_window): Initialize overlay_arrow_bitmap.
8340
8341 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
8342 implement and integrate multiple overlay arrows with redisplay.
8343 (syms_of_xdisp): DEFVAR_LISP and initialize it.
8344 (last_arrow_position, last_arrow_string): Replace by properties.
8345 (Qlast_arrow_position, Qlast_arrow_string)
8346 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
8347 (syms_of_xdisp): Intern and staticpro them.
8348 (overlay_arrow_string_or_property, update_overlay_arrows)
8349 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
8350 (overlay_arrow_at_row): New functions for multiple overlay arrows.
8351 (redisplay_internal): Use them instead of directly accessing
8352 Voverlay_arrow_position etc. for multiple overlay arrows.
8353 (mark_window_display_accurate): Use update_overlay_arrows.
8354 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
8355 (try_window_id): Use overlay_arrows_changed_p.
8356 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
8357 (display_line): Use overlay_arrow_at_row to check multiple
8358 overlay arrows, and get relevant overlay-arrow-string and
8359 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
8360 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
8361 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
8362
8363 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
8364 (update_window_fringes): Remove unused code.
8365
8366 2004-03-01 Jason Rumney <jasonr@gnu.org>
8367
8368 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
8369
8370 2004-03-01 Juanma Barranquero <lektu@terra.es>
8371
8372 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
8373
8374 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
8375
8376 2004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8377
8378 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
8379 how many colors can be displayed.
8380
8381 2004-03-01 Kenichi Handa <handa@m17n.org>
8382
8383 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
8384 correctly.
8385
8386 2004-02-28 Kim F. Storm <storm@cua.dk>
8387
8388 * dispnew.c (update_window): Update header line also if there are
8389 no other changes in window (move code after set_cursor label).
8390
8391 * lisp.h (mark_window_display_accurate): Remove prototype.
8392
8393 * window.c (window_loop, Fforce_window_update): Force mode line
8394 updates by setting prevent_redisplay_optimizations_p and
8395 update_mode_lines.
8396
8397 2004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8398
8399 * xfns.c (x_window): Fix indentation.
8400
8401 * xterm.c (x_calc_absolute_position): Call x_real_positions
8402 to get WM window sizes and use those to calculate position.
8403 (x_set_offset): Remove code commented out.
8404
8405 2004-02-28 Miles Bader <miles@gnu.org>
8406
8407 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
8408
8409 2004-02-28 Kim F. Storm <storm@cua.dk>
8410
8411 * keyboard.c (kbd_buffer_store_event_hold): New function to store
8412 an event into kbd fifo, but with special handling of quit event;
8413 a quit event is saved for later, and further events are discarded
8414 until the saved quit event has been processed.
8415 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
8416 (gen_help_event): Store help event in kbd fifo.
8417 (NREAD_INPUT_EVENTS): Remove.
8418 (read_avail_input): Adapt to new read_socket_hook interface.
8419 Remove allocation and initialization of local input_event buffer,
8420 as read_socket_hook stores events directly in fifo. Allocate and
8421 initialize local hold_quit event to handle postponed quit event
8422 (and store it if set by kbd_buffer_store_event_hold).
8423
8424 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
8425 (gen_help_event): Fix prototype.
8426
8427 * macterm.c (XTread_socket): Remove bufp_r and
8428 numcharsp args. Add hold_quit arg.
8429 Rework to use just one, local, inev input_event. Store inev
8430 directly in fifo using kbd_buffer_store_event_hold.
8431
8432 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
8433 (read_input_waiting): Adapt to new read_socket_hook interface.
8434 Remove allocation and initialization of local input_event buffer,
8435 as read_socket_hook stores events directly in fifo. Allocate and
8436 initialize local hold_quit event to handle postponed quit event
8437 (and store it if set by kbd_buffer_store_event_hold).
8438
8439 * term.c (read_socket_hook): Fix arg list.
8440
8441 * termhooks.h (read_socket_hook): Fix prototype.
8442
8443 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
8444 numcharsp args. Add hold_quit arg.
8445 Rework to use just one, local, inev input_event. Store inev
8446 directly in fifo using kbd_buffer_store_event_hold.
8447
8448 * w32inevt.h (w32_console_mouse_position): Fix prototype.
8449
8450 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
8451 Add hold_quit arg. Rework to use just one, local, inev
8452 input_event. Store inev directly in fifo using
8453 kbd_buffer_store_event_hold. Update count in one place.
8454 Postpone call to gen_help_event until inev is stored; use new
8455 local do_help for this.
8456 Remove local emacs_event in handing of ButtonPress event; just use
8457 inev instead (so no reason to copy it later).
8458
8459 * xsmfns.c (x_session_check_input): Remove numchars arg.
8460
8461 * xterm.c (x_focus_changed, x_detect_focus_change):
8462 Remove numchars arg. Always store event into bufp arg.
8463 Return nothing. Callers changed accordingly.
8464 (glyph_rect): Simplify.
8465 (STORE_KEYSYM_FOR_DEBUG): New macro.
8466 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
8467 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
8468 (current_hold_quit) [USE_GTK]: Add.
8469 (event_handler_gdk): Adapt to new handle_one_xevent.
8470 (handle_one_xevent): Remove bufp_r and numcharsp args.
8471 Add hold_quit arg. Rework to use just one, local, inev
8472 input_event. Store inev directly in fifo using
8473 kbd_buffer_store_event_hold. Update count in one place.
8474 Postpone call to gen_help_event until inev is stored; use new
8475 local do_help for this.
8476 Simplify handling of keysyms (consolidate common code). Fix bug
8477 where count was updated with nchars instead of nbytes.
8478 Remove local emacs_event in handing of ButtonPress event; just use
8479 inev instead (so no reason to copy it later).
8480 Remove `out' label. Rename label `ret' to `done'; add various
8481 `goto done' to clarify code flow in deeply nested blocks.
8482 (x_dispatch_event): Simplify as handle_one_xevent now calls
8483 kbd_buffer_store_event itself.
8484 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
8485 arg. Call handle_one_xevent with new arglist. Store event from
8486 x_session_check_input in fifo.
8487 [USE_GTK]: Setup current_hold_quit.
8488 Decrement handling_signal before unblocking input.
8489 (x_initialize) [USE_GTK]: Initialize current_count.
8490
8491 * xterm.h (x_session_check_input): Fix prototype.
8492
8493 2004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8494
8495 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
8496
8497 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
8498 macgui.h).
8499
8500 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
8501
8502 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
8503 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
8504 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
8505 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
8506 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
8507 (Bitmap): Remove typedef.
8508 (Pixmap): Change int to GWorldPtr.
8509
8510 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
8511
8512 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
8513 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
8514 New #define to extract 16-bit depth color components from unsigned
8515 long representation.
8516 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
8517 colors used for masks.
8518 (struct mac_display_info): Add color_p. Remove n_cbits.
8519
8520 * macfns.c: Include sys/types.h and sys/stat.h.
8521 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
8522 Include QuickTime/QuickTime.h.
8523 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
8524 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
8525 functions defined in macterm.c.
8526 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
8527 (ZPixmap): New #define for compatibility with xfns.c.
8528 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
8529 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
8530 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
8531 New functions.
8532 (four_corners_best, x_create_x_image_and_pixmap)
8533 (x_destroy_x_image, unwind_create_frame, x_disable_image)
8534 (x_edge_detection, init_color_table, colors_in_color_table)
8535 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
8536 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
8537 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
8538 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
8539 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
8540 long mixup.
8541 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
8542 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
8543 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
8544 (x_set_cursor_type, Fxw_color_values, valid_image_p)
8545 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
8546 (x_alloc_image_color, clear_image_cache, lookup_image)
8547 (x_find_image_file, xbm_read_bitmap_file_data)
8548 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
8549 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
8550 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
8551 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
8552 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
8553 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
8554 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
8555 #if 0.
8556 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
8557 #if 0. Free white_relief.gc and black_relief.gc.
8558 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
8559 New functions (from xfns.c).
8560 (Fx_create_frame): Record unwind_create_frame.
8561 (Fxw_display_color_p): Use dpyinfo->color_p.
8562 (Fx_display_grayscale_p, Fx_display_planes): Don't use
8563 dpyinfo->n_cbits.
8564 (Fx_display_color_cells): Use dpyinfo->n_planes;
8565 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
8566 (Qheuristic, cross_disabled_images, emboss_matrix)
8567 (laplace_matrix): New variables (from xfns.c).
8568 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
8569 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
8570 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
8571 (image_background_transparent): New function (from xfns.c).
8572 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
8573 (image_load_quicktime): Add declaration.
8574 [MAC_OSX] (image_load_quartz2d): Likewise.
8575 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
8576 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
8577 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
8578 (xbm_load_image_from_file, x_laplace_read_row)
8579 (x_laplace_write_row, pbm_read_file): Remove functions.
8580 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
8581 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
8582 (colors_in_color_table): Sync with xfns.c (although not used).
8583 (lookup_rgb_color): Don't lookup color table. Just do gamma
8584 correction.
8585 (COLOR_INTENSITY): New #define (from xfns.c).
8586 (x_disable_image): New function (from xfns.c).
8587 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
8588 (x_build_heuristic_mask): Sync with xfns.c.
8589 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
8590 (HAVE_PBM): Remove #ifdef.
8591 (pbm_load): Sync with xfns.c. Set img->width and img->height
8592 before IMAGE_BACKGROUND.
8593 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
8594 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
8595 Don't enclose with #if HAVE_PNG.
8596 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
8597 symbol _CGImageCreateWithPNGDataProvider is defined.
8598 Otherwise use image_load_quicktime.
8599 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
8600 [HAVE_PNG] (png_load): Sync with xfns.c.
8601 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
8602 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
8603 HAVE_JPEG.
8604 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
8605 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
8606 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
8607 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
8608 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
8609 (tiff_image_p, tiff_load): Don't enclose declarations with #if
8610 HAVE_TIFF.
8611 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
8612 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
8613 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
8614 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
8615 New functions (from xfns.c).
8616 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
8617 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
8618 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
8619 Don't enclose with #if HAVE_GIF.
8620 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
8621 animated gif. Otherwise use image_load_quicktime.
8622 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
8623 gif_DrawText to avoid conflict with QuickdrawText.h.
8624 [HAVE_GIF] (gif_load): Sync with xfns.c.
8625 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
8626 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
8627 Ghostscript is not supported yet).
8628 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
8629 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
8630 cross_disabled_images (from xfns.c). Remove #if 0 for supported
8631 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
8632 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
8633 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
8634 HAVE_PNG. Call EnterMovies to support animated gifs.
8635 Call init_image_func_pointer to bind a symbol
8636 _CGImageCreateWithPNGDataProvider if it is defined.
8637
8638 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
8639 (x_draw_bar_cursor): Sync declaration with xterm.c.
8640 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
8641 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
8642 graphics).
8643 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
8644 (mac_draw_line_to_pixmap, XCreatePixmap)
8645 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
8646 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
8647 New functions.
8648 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
8649 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
8650 Cast bits to char *.
8651 (reflect_byte): New function (from w32fns.c).
8652 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
8653 due to byte alignment.
8654 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
8655 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
8656 (XSetForeground): Remove static (now used in macfns.c).
8657 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
8658 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
8659 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
8660 (x_draw_glyph_string_box, x_draw_image_foreground)
8661 (x_draw_image_foreground_1, x_draw_image_glyph_string)
8662 (x_draw_stretch_glyph_string, x_draw_glyph_string)
8663 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
8664 Sync with xterm.c.
8665 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
8666 than the xterm.c version when a strictly horizontal or vertical
8667 line is drawn.
8668 (XTset_terminal_window): Add static.
8669 (x_make_frame_visible): Add UNBLOCK_INPUT.
8670 (x_free_frame_resources): New funcion (from xterm.c).
8671 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
8672 occurs in tool bar area.
8673 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
8674 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
8675 Initialize image cache.
8676 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
8677 Enclose unused functions with #if 0.
8678 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
8679 (decode_mac_font_name): New function to apply code conversions
8680 from a mac font name to an XLFD font name according to its script code.
8681 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
8682 font name to a mac font name according to REGISTRY and ENCODING fields.
8683 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
8684 whose name starts with `.'.
8685 (init_font_name_table): Use decode_mac_font_name. Add both
8686 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
8687 of a font is smJapanese.
8688 (mac_do_list_fonts): New function to list fonts that match a given
8689 pattern.
8690 (x_list_fonts, XLoadQueryFont): Use it.
8691 (XLoadQueryFont): Set rbearing field for each variable width
8692 character to avoid needless redraw.
8693 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
8694
8695 2004-02-26 Kim F. Storm <storm@cua.dk>
8696
8697 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
8698 as read_socket_hook handler on X aborts if buffer is too small
8699 and W32 handler doesn't always check buffer limit.
8700
8701 * xdisp.c (handle_single_display_prop): Handle left-fringe and
8702 right-fringe similar to a display margin image. Specifically,
8703 the characters having the fringe prop are no longer shown, and
8704 we use IT_IMAGE/next_element_from_image with image_id = -1 to
8705 do this. Set fringe bitmap face_id in it->face_id.
8706 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
8707 still realize it->face (i.e. the fringe bitmap face).
8708
8709 2004-02-25 Miles Bader <miles@gnu.org>
8710
8711 * xdisp.c (check_it): Check string/string_pos consistency.
8712 (init_iterator): Initialize string-related fields properly.
8713
8714 2004-02-11 Miles Bader <miles@gnu.org>
8715
8716 * xdisp.c (produce_image_glyph): Force negative descents to zero.
8717
8718 2004-02-10 Miles Bader <miles@gnu.org>
8719
8720 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
8721 BLOCK_INPUT can be nested, so it doesn't make much sense.
8722
8723 2004-02-24 Michael Mauger <mmaug@yahoo.com>
8724
8725 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
8726 (xbm_read_bitmap_data): Use unsigned char for image data.
8727
8728 2004-02-23 Luc Teirlinck <teirllm@auburn.edu>
8729
8730 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
8731
8732 2004-02-22 Jason Rumney <jasonr@gnu.org>
8733
8734 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
8735 correctly over other bitmaps.
8736
8737 2004-02-21 Eli Zaretskii <eliz@gnu.org>
8738
8739 * emacs.c (USAGE1): Split into two halves.
8740 (USAGE2): Second half of the old USAGE1.
8741 (USAGE3): Rename from USAGE2.
8742 (USAGE4): Rename from USAGE3.
8743
8744 2004-02-21 Juri Linkov <juri@jurta.org>
8745
8746 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
8747 Fix --multibyte. Move --help, --version to USAGE2. Add alias
8748 --file. Fix -f, -l. Sort options. Untabify.
8749 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
8750
8751 2004-02-19 Luc Teirlinck <teirllm@auburn.edu>
8752
8753 * category.c (Fdefine_category, Fcategory_docstring)
8754 (Fget_unused_category, Fset_category_table)
8755 (Fcategory_set_mnemonics): Doc fixes.
8756
8757 2004-02-20 Kim F. Storm <storm@cua.dk>
8758
8759 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
8760 The following changes are relative to the 2004-01-21 revision.
8761 (NREAD_INPUT_EVENTS): Define as max number of input events to read
8762 in one call to read_socket_hook. Value is 8.
8763 (read_avail_input): Separate and rework handling of read_socket_hook
8764 and non-read_socket_hook cases. Use smaller input_event buffer
8765 in read_socket_hook case, and repeat if full buffer is read.
8766 Use new local variable 'discard' to skip input after C-g.
8767 In non-read_socket_hook case, just use a single input_event, and
8768 call kbd_buffer_store_event on the fly for each character.
8769
8770 2004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
8771
8772 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
8773 Remove unused `gu' alternative.
8774
8775 2004-02-19 Andreas Schwab <schwab@suse.de>
8776
8777 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
8778 warning.
8779
8780 2004-02-18 Kim F. Storm <storm@cua.dk>
8781
8782 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
8783 Fix last change.
8784
8785 2004-02-17 Kim F. Storm <storm@cua.dk>
8786
8787 * xdisp.c (fast_find_position): Fix return value of new version;
8788 it was inverted compared to the 21.1 version.
8789 (get_window_cursor_type): Don't look at glyph if NULL.
8790 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
8791
8792 * keyboard.c: Rework previous change; it didn't consider that the
8793 buf array was allocated on the stack.
8794 (prev_read): Remove variable.
8795 (read_avail_input_buf): New static event buffer array.
8796 (in_read_avail_input): New static variable to handle re-entrancy.
8797 (read_avail_input): Change buf to pinter to read_avail_input_buf.
8798 Use in_read_avail_input to handle re-entrance; when re-entered,
8799 fully initialize and use tmp_buf array instead of read_avail_input_buf.
8800 Do not initialize read_avail_input_buf in full here; instead assume it
8801 is always cleared on entry. To ensure that, we clear (just) the
8802 entries that were used before we return.
8803 (init_keyboard): Initialize read_avail_input_buf here.
8804
8805 2004-02-16 Jesper Harder <harder@ifa.au.dk>
8806
8807 * cmds.c (Fend_of_line): Doc fix.
8808
8809 2004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
8810
8811 * keyboard.c (prev_read): New static variable.
8812 (read_avail_input): Use it to zero out only those slots in buf[]
8813 that were used last time we were called.
8814
8815 2004-02-16 Eli Zaretskii <eliz@gnu.org>
8816
8817 * Makefile.in (obj): Move fringe.o from here...
8818 (XOBJ, MAC_OBJ): ...to here.
8819
8820 2004-02-16 Stephen Eglen <stephen@gnu.org>
8821
8822 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
8823
8824 2004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
8825
8826 * data.c (Fbyteorder):
8827 * fringe.c (Fdefine_fringe_bitmap):
8828 * xdisp.c (handle_single_display_prop):
8829 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
8830
8831 2004-02-16 Jason Rumney <jasonr@gnu.org>
8832
8833 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
8834
8835 2004-02-15 Steven Tamm <steventamm@mac.com>
8836
8837 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
8838 controlling emulation of a three button mouse with option and
8839 command keys.
8840 (Qreverse, mac_get_enumlated_btn): Handle the emulation.
8841 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
8842
8843 2004-02-15 Kim F. Storm <storm@cua.dk>
8844
8845 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
8846
8847 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
8848 Perform byte-swapping.
8849
8850 2004-02-14 Kim F. Storm <storm@cua.dk>
8851
8852 * dispextern.h (struct draw_fringe_bitmap_params): Change member
8853 bits from char to short to facilitate wider bitmaps.
8854 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
8855 member.
8856
8857 * fringe.c (struct fringe_bitmap): Change member bits from char to
8858 short to facilitate 16 bits wide bitmaps. Modify all standard
8859 bitmaps accordingly.
8860 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
8861 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
8862 (draw_fringe_bitmap): Ditto.
8863 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
8864 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
8865 handle up to 16 bits wide bitmaps.
8866 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
8867 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
8868
8869 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
8870 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
8871 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
8872
8873 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
8874 so it is no longer necessary to expand them here.
8875
8876 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
8877
8878 2004-02-12 Kim F. Storm <storm@cua.dk>
8879
8880 * window.c (Fwindow_fringes): Doc fix.
8881
8882 2004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8883
8884 * xselect.c (x_get_foreign_selection): Add new optional parameter
8885 time_stamp.
8886 (Fx_get_selection_internal): Ditto, pass time_stamp to
8887 x_get_foreign_selection.
8888
8889 * data.c (Fbyteorder): New function.
8890
8891 2004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8892
8893 * atimer.c: Move include stdio.h to same place as in other files.
8894
8895 * region-cache.c: Ditto.
8896
8897 * sysdep.c: Ditto.
8898
8899 * xfaces.c: Ditto.
8900
8901 2004-02-09 Sam Steingold <sds@gnu.org>
8902
8903 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
8904
8905 2004-02-09 Kim F. Storm <storm@cua.dk>
8906
8907 * fringe.c: New file. Move original fringe related declarations
8908 and code from dispextern.h and xdisp.c here.
8909 Rework code to support user defined fringe bitmaps, redefining
8910 standard bitmaps, ability to overlay user defined bitmap with
8911 overlay arrow bitmap, and add faces to bitmaps.
8912 (Voverflow_newline_into_fringe): Declare here.
8913 (enum fringe_bitmap_align): New enum.
8914 (..._bits): All bitmaps are now defined without bitswapping; that
8915 is now done in init_fringe_once (if necessary).
8916 (standard_bitmaps): New array with specifications for the
8917 standard fringe bitmaps.
8918 (fringe_faces): New array.
8919 (valid_fringe_bitmap_id_p): New function.
8920 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
8921 (draw_fringe_bitmap): New function which draws fringe bitmap,
8922 possibly overlaying bitmap with cursor in right fringe or the
8923 overlay arrow in the left fringe.
8924 (update_window_fringes): Do not handle overlay arrow here.
8925 Compare and copy fringe bitmap faces.
8926 (init_fringe_bitmap): New function.
8927 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
8928 define and destroy user defined fringe bitmaps.
8929 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
8930 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
8931 (syms_of_fringe): New function. Defsubr new DEFUNs.
8932 DEFVAR_LISP Voverflow_newline_into_fringe.
8933 (init_fringe_once, init_fringe): New functions.
8934 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
8935
8936 * Makefile.in (obj): Add fringe.o.
8937 (fringe.o): New dependencies.
8938
8939 * dispextern.h (FRINGE_ID_BITS): New definition for number of
8940 bits allocated to hold a fringe number. Increase number of bits
8941 from 4 to 8 to allow user defined fringe bitmaps.
8942 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
8943 left_user_fringe_face_id, right_user_fringe_bitmap,
8944 right_user_fringe_face_id.
8945 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
8946 Move to new file fringe.c.
8947 (MAX_FRINGE_BITMAPS): Define here.
8948 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
8949 and overlay_p. Change member which to int.
8950 (struct redisplay_interface): New members define_fringe_bitmap
8951 and destroy_fringe_bitmap.
8952 (valid_fringe_bitmap_id_p): Add prototype.
8953 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
8954
8955 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
8956 arrows.
8957 (update_frame): Do flush_display if force_flush_display_p to
8958 ensure display (specifically fringes) are updated in a timely
8959 manner when resizing the frame by dragging the mouse.
8960 (update_window_line): Update row if overlay arrow changed.
8961 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
8962 or overlay arrow changed.
8963
8964 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
8965 syms_of_fringe, and init_fringe.
8966
8967 * frame.h (struct frame): New member force_flush_display_p.
8968
8969 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
8970 Add prototypes.
8971
8972 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
8973 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
8974 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
8975 Use cursor color for displaying cursor in fringe.
8976 (x_redisplay_interface): Add null handlers for
8977 define_fringe_bitmap and destroy_fringe_bitmap functions.
8978
8979 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
8980 xterm.c to handle overlayed fringe bitmaps and to use cursor color
8981 for displaying cursor in fringe.
8982 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
8983 specific functions to define and destroy fringe bitmaps in fringe_bmp.
8984 (w32_redisplay_interface): Add them to redisplay_interface.
8985 (w32_term_init): Call w32_init_fringe instead of explicitly
8986 defining fringe bitmaps in fringe_bmp array.
8987 (x_delete_display): Call w32_reset_fringes instead of explicitly
8988 destroying fringe bitmaps in fringe_bmp array.
8989
8990 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
8991 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
8992 (continued_bits, continuation_bits, ov_bits, first_line_bits)
8993 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
8994 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
8995 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
8996 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
8997 Move fringe handling vars and code to new file fringe.c.
8998 (handle_display_prop): Handle left-fringe and right-fringe
8999 display properties; store user fringe bitmaps in iterator.
9000 (move_it_in_display_line_to): Handle cursor in fringe at eob.
9001 (clear_garbaged_frames): Set force_flush_display_p if resized.
9002 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
9003 (display_line): Handle cursor in fringe at eob.
9004 (display_line): Set row user fringe bitmaps from iterator.
9005
9006 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
9007 Use cursor color for displaying cursor in fringe.
9008 (x_redisplay_interface): Add null handlers for
9009 define_fringe_bitmap and destroy_fringe_bitmap functions.
9010
9011 2004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9012
9013 * macfns.c (Fx_change_window_property): Make doc string and
9014 parameters same as for X version.
9015
9016 * w32fns.c (Fx_change_window_property): Ditto.
9017
9018 2004-02-07 Kim F. Storm <storm@cua.dk>
9019
9020 * xdisp.c (hscroll_window_tree): Position cursor near to right
9021 margin in hscrolled window when jumping to end of line (rather
9022 than centering cursor).
9023
9024 * process.c (wait_reading_process_input): Don't do adaptive read
9025 buffering if waiting for a specific process.
9026
9027 2004-02-05 Luc Teirlinck <teirllm@auburn.edu>
9028
9029 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
9030 (Fread_minibuffer, Feval_minibuffer)
9031 (Fread_string, Fread_no_blanks_input)
9032 (Fcompleting_read): Doc fixes.
9033 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
9034 completion-regexp-list. Define Qcase_fold_search and staticpro it.
9035 (read_minibuf): Fix initial comment.
9036 (Ftry_completion, Fall_completions, Ftest_completion): Bind
9037 case-fold-search to the value of completion-ignore-case when
9038 checking completion-regexp-list.
9039 (Fdisplay_completion_list): Make it handle arguments that are
9040 symbols. Doc fix.
9041
9042 2004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9043
9044 * xterm.h: Add declaration of free_frame_menubar.
9045
9046 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
9047 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
9048 (Fx_change_window_property): Add declaration of parameters type and
9049 format. Remove unused variable cons.
9050
9051 * xselect.c: Include stdio,h.
9052
9053 2004-02-05 Kenichi Handa <handa@m17n.org>
9054
9055 * fns.c (Fset_char_table_range): Fix previous change.
9056
9057 * buffer.c (Fset_buffer_multibyte): Fix docstring.
9058
9059 2004-02-04 Luc Teirlinck <teirllm@auburn.edu>
9060
9061 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
9062
9063 2004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
9064
9065 * keymap.c (Vmouse_events): Rename from Vmenu_events.
9066 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
9067
9068 2004-02-04 Kenichi Handa <handa@m17n.org>
9069
9070 * fns.c (Fset_char_table_range): Handle charsets ascii,
9071 eight-bit-control, and eight-bit-graphic correctly.
9072
9073 2004-02-03 Jason Rumney <jasonr@gnu.org>
9074
9075 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
9076
9077 * w32fns.c (x_to_w32_font): Likewise.
9078
9079 2004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9080
9081 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
9082 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
9083
9084 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
9085 ClientMessages.
9086
9087 * xselect.c: Include termhooks.h and X11/Xproto.h
9088 (x_check_property_data, x_fill_property_data)
9089 (x_property_data_to_lisp, mouse_position_for_drop)
9090 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
9091 (Fx_send_client_event): Move here from xfns.c.
9092 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
9093
9094 * xfns.c (x-send-client-message): Move to xselect.c
9095 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
9096 OUTER_P.
9097 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
9098 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
9099 if vector_ret_p is true.
9100 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
9101
9102 2004-02-02 Eli Zaretskii <eliz@gnu.org>
9103
9104 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
9105 basename of FILE relative to it, not FILE itself.
9106
9107 2004-02-02 Kenichi Handa <handa@m17n.org>
9108
9109 * coding.c (coding_restore_composition): Check invalid
9110 composition data more rigidly.
9111
9112 2004-01-30 Luc Teirlinck <teirllm@auburn.edu>
9113
9114 * fileio.c (Fread_file_name_internal): Correctly handle the case
9115 where insert-default-directory is nil.
9116 (Fread_file_name): Always return an empty string if the user exits
9117 with an empty minibuffer. Adapt the docstring accordingly.
9118 (syms_of_fileio): Adapt the docstring of insert-default-directory
9119 to the change in Fread_file_name.
9120
9121 2004-01-29 Eli Zaretskii <eliz@gnu.org>
9122
9123 * alloca.c [!alloca]: Fix the prototype for xfree.
9124
9125 2004-01-29 Kenichi Handa <handa@m17n.org>
9126
9127 * fns.c (string_char_to_byte): Optimize for ASCII only string.
9128 (string_byte_to_char): Likewise.
9129
9130 2004-01-28 Peter Runestig <peter@runestig.com>
9131
9132 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
9133
9134 2004-01-27 Steven Tamm <steventamm@mac.com>
9135
9136 * unexmacosx.c (unexec_copy): Do not copy more than was
9137 requested to prevent overwriting during unexec.
9138
9139 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9140
9141 * process.c (sigchld_handler): Add comment about not calling malloc.
9142
9143 * process.h: Add extern to synch_process_termsig.
9144
9145 2004-01-27 Steven Tamm <steventamm@mac.com>
9146
9147 * macterm.c (make_mac_frame, make_mac_terminal_frame):
9148 Move setting of scroll bars from make_mac_frame to
9149 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
9150
9151 2004-01-26 Richard M. Stallman <rms@gnu.org>
9152
9153 * search.c (Freplace_match): Handle nonexistent
9154 back-references properly.
9155
9156 2004-01-03 Richard M. Stallman <rms@gnu.org>
9157
9158 * window.c (decode_any_window): New function.
9159 (Fwindow_height, Fwindow_width, Fwindow_edges)
9160 (Fwindow_pixel_edges, Fwindow_inside_edges)
9161 (Fwindow_inside_pixel_edges): Use decode_any_window.
9162
9163 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9164
9165 * process.h: synch_process_termsig new variable.
9166
9167 * callproc.c: Define synch_process_termsig.
9168 (Fcall_process): Initiate synch_process_termsig to zero and
9169 check if non-zero and get signal name after subprocess has ended.
9170
9171 * process.c (sigchld_handler): Set synch_process_termsig
9172 if terminated by a signal. synch_process_death setting removed.
9173
9174 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
9175
9176 2004-01-26 Andreas Schwab <schwab@suse.de>
9177
9178 * print.c (print_preprocess): Declare size as EMACS_INT to not
9179 lose bits.
9180 (print_object): Likewise.
9181 * alloc.c (Fpurecopy): Likewise.
9182
9183 2004-01-25 Luc Teirlinck <teirllm@auburn.edu>
9184
9185 * window.c (Fwindow_minibuffer_p): Doc fix.
9186
9187 2004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
9188
9189 * editfns.c (Fformat): Make both passes accept the same set of flags.
9190
9191 2004-01-23 Kenichi Handa <handa@m17n.org>
9192
9193 * fns.c (Fmd5): If OBJECT is a buffer different from the current
9194 one, set buffer to OBJECT temporarily.
9195
9196 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
9197
9198 * keyboard.c (kbd_buffer_gcpro): Remove.
9199 (kbd_buffer_store_event, clear_event, Fdiscard_input)
9200 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
9201 Don't initialize and/or maintain the variable any more. It was made
9202 redundant by my commit of 2003-06-15.
9203
9204 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
9205
9206 2004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9207
9208 * lisp.h: Add undef DECL_ALIGN.
9209
9210 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
9211
9212 * process.c (wait_reading_process_input) [SYNC_INPUT]:
9213 Check interrupt_input_pending explicitly.
9214
9215 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
9216
9217 * keyboard.c (handle_async_input): New fun,
9218 extracted from input_available_signal.
9219 (input_available_signal, reinvoke_input_signal): Use it.
9220
9221 2004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
9222
9223 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
9224
9225 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
9226 manipulation macros for when tags are in the lower bits.
9227 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
9228 (DECL_ALIGN): New macro.
9229 (DEFUN): Use it.
9230
9231 * lisp.h [ENABLE_CHECKING]: Don't force union type.
9232
9233 * s/darwin.h (__attribute__): Remove outdated workaround.
9234
9235 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
9236
9237 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
9238 Don't check range of malloc address.
9239 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
9240
9241 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
9242
9243 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
9244
9245 2004-01-19 Kenichi Handa <handa@m17n.org>
9246
9247 * fontset.c (fontset_font_pattern): Fix previous change.
9248
9249 2004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
9250
9251 * xdisp.c (Voverflow_newline_into_fringe)
9252 (move_it_in_display_line_to, redisplay_internal)
9253 (update_window_fringes, redisplay_window, display_line, window):
9254 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
9255 that it compiles without a window-system.
9256 * dispnew.c (direct_output_for_insert, update_window): Likewise.
9257
9258 2004-01-16 Kim F. Storm <storm@cua.dk>
9259
9260 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
9261
9262 * buffer.c (init_buffer_once): Set buffer_defaults and
9263 buffer_local_flags for indicate_buffer_boundaries.
9264 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
9265 default- variable for it.
9266
9267 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
9268 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
9269 New members exact_window_width_line_p and cursor_in_fringe_p for
9270 overflowing newlines into right fringe.
9271 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
9272 and indicate_bottom_line_p for buffer boundaries and scrolling.
9273 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
9274 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
9275 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
9276 and HOLLOW_SQUARE_BITMAP.
9277 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
9278 Add prototypes.
9279
9280 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
9281 instead of related indicator fields.
9282 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
9283 (direct_output_for_insert): Handle exact width lines like
9284 contined lines. Call update_window_fringes.
9285 (update_window): Call update_window_fringes.
9286 (scrolling_window): Don't skip desired rows with changed bitmaps.
9287 Check if fringe bitmaps changes when assigning scrolled rows.
9288
9289 * xdisp.c (Voverflow_newline_into_fringe): New variable.
9290 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
9291 (move_it_in_display_line_to): Overflow newline into fringe for
9292 rows that are exactly as wide as the window.
9293 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
9294 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
9295 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
9296 (fringe_bitmaps): Add new bitmaps.
9297 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
9298 Select proper bitmap for cursor in fringe when appropriate.
9299 Handle alignment of bitmap to top or bottom of row.
9300 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
9301 done by update_window_fringes.
9302 (update_window_fringes, draw_window_fringes): New functions.
9303 (redisplay_internal): Call update_window_fringes in case only
9304 cursor row is updated.
9305 (redisplay_window): Call update_window_fringes.
9306 Explicitly call draw_window_fringes if redisplay was done using
9307 the current matrix or the overlay arrow is in the window.
9308 (try_window_reusing_current_matrix): Mark scrolled rows for
9309 fringe update (to update buffer-boundaries / scrolling icons).
9310 (find_last_unchanged_at_beg_row): Handle exact width lines line
9311 continued lines.
9312 (display_line): Overflow newline into fringe for rows that are
9313 exactly as wide as the window. Don't append space for newline
9314 in this case.
9315 (notice_overwritten_cursor): Explicitly clear cursor bitmap
9316 in fringe as if it had been overwritten.
9317 (erase_phys_cursor): Erase cursor bitmap in fringe.
9318 (syms_of_xdisp): Mark show-trailing-whitespace and
9319 void-text-area-pointer as user options.
9320 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
9321
9322 * xterm.c (x_update_window_end): Call draw_window_fringes.
9323 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
9324 in row instead of actually drawing fringe bitmaps.
9325 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
9326 (x_draw_window_cursor): Draw cursor in fringe.
9327
9328 * w32term.c (x_update_window_end): Call draw_window_fringes.
9329 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
9330 in row instead of actually drawing fringe bitmaps.
9331 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
9332 (w32_draw_window_cursor): Draw cursor in fringe.
9333
9334 * macterm.c (x_update_window_end): Call draw_window_fringes.
9335 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
9336 in row instead of actually drawing fringe bitmaps.
9337 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
9338 (mac_draw_window_cursor): Draw cursor in fringe.
9339
9340 2004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9341
9342 * xterm.c (handle_one_xevent): Don't handle characters that are part
9343 of an old style (XLookupString) compose sequence.
9344
9345 2004-01-15 Kenichi Handa <handa@m17n.org>
9346
9347 * search.c (Freplace_match): Use make_multibyte_string or
9348 make_unibyte_string according to the buffer multibyteness.
9349
9350 2004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
9351
9352 * alloc.c (struct interval_block, struct string_block)
9353 (struct symbol_block, struct marker_block, live_string_p)
9354 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
9355 Better preserve alignment for objects in blocks.
9356 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
9357
9358 * lread.c (defvar_per_buffer): Remove dead declaration.
9359
9360 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
9361 space size.
9362
9363 2004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9364
9365 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
9366 if a key press should pop down. Only pop down if a key is pressed
9367 outside the menu/dialog.
9368 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
9369 popup_get_selection.
9370 (create_and_show_dialog): Pass 1 for down_on_keypress to
9371 popup_get_selection.
9372
9373 2004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9374
9375 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
9376 BLOCK/UNBLOCK_INPUT.
9377
9378 2004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9379
9380 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
9381 specified.
9382
9383 2004-01-08 Kenichi Handa <handa@m17n.org>
9384
9385 * editfns.c (Fformat): Fix '&' to '&&'.
9386
9387 2004-01-08 Andreas Schwab <schwab@suse.de>
9388
9389 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
9390 size if PSEUDOVECTOR_FLAG is set.
9391
9392 2004-01-07 Kenichi Handa <handa@m17n.org>
9393
9394 * charset.c (Fdeclare_equiv_charset): Fix docstring.
9395
9396 * fontset.c (fontset_ref_via_base): Fix previous change.
9397
9398 2004-01-07 Kim F. Storm <storm@cua.dk>
9399
9400 * process.c (read_process_output): Only activate adaptive
9401 buffering if we read less than 256 bytes at a time.
9402
9403 2004-01-06 Kim F. Storm <storm@cua.dk>
9404
9405 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
9406 object and image object. Return glyph width and height.
9407 (mode_line_string, marginal_area_string): Ditto.
9408
9409 * dispextern.h (buffer_posn_from_coords, mode_line_string)
9410 (marginal_area_string): Fix prototypes.
9411
9412 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
9413 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
9414 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
9415
9416 * keyboard.c (make_lispy_position): Use modified mode_line_string,
9417 buffer_posn_from_coords, and marginal_area_string functions to
9418 include both string object and image object in the lispy position.
9419 Also add actual glyph width and height to position.
9420 (read_key_sequence): Use real buffer position from mouse
9421 event to find keymap property even when click is in marginal area.
9422
9423 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
9424 mode_line_string and marginal_area_string functions to handle
9425 both string object and image object properties.
9426
9427 2004-01-06 Andreas Schwab <schwab@suse.de>
9428
9429 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
9430 character.
9431
9432 2004-01-02 Andreas Schwab <schwab@suse.de>
9433
9434 * macterm.c (emacs_options, x_initialized, same_x_server):
9435 Remove unused (and duplicated) definitions.
9436
9437 2004-01-02 Kim F. Storm <storm@cua.dk>
9438
9439 * process.h (struct Lisp_Process): New members for adaptive read
9440 buffering: adaptive_read_buffering, read_output_delay, and
9441 read_output_skip.
9442
9443 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
9444 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
9445 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
9446 (process_output_delay_count, process_output_skip): New vars.
9447 (Vprocess_adaptive_read_buffering): New variable.
9448 (make_process): Initialize adaptive read buffering members.
9449 (Fstart_process): Set adaptive_read_buffering member.
9450 (deactivate_process): Cleanup adaptive read buffering.
9451 (wait_reading_process_input): Temporarily omit delayed
9452 subprocesses from the set of file descriptors to read from;
9453 adjust the select timeout if we skipped any subprocesses.
9454 (read_process_output): Increase adaptive read buffering delay if
9455 we read less than a full buffer; reduce delay when we read a
9456 full buffer.
9457 (send_process): Simplify using local Lisp_Process var.
9458 Reset adaptive read buffering delay after write.
9459 (init_process): Initialize process_output_delay_count and
9460 process_output_skip.
9461 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
9462
9463 2004-01-01 Jason Rumney <jasonr@gnu.org>
9464
9465 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
9466
9467 2003-12-30 Luc Teirlinck <teirllm@auburn.edu>
9468
9469 * print.c (Ferror_message_string): Add hyperlink in the docstring
9470 to the definition of `signal' in the Elisp manual.
9471 * eval.c (Fsignal): Ditto.
9472
9473 2003-12-29 James Clark <jjc@jclark.com>
9474
9475 * fns.c (internal_equal): Return t for two NaN arguments.
9476
9477 2003-12-29 Richard M. Stallman <rms@gnu.org>
9478
9479 * data.c (store_symval_forwarding): Handle setting
9480 default-fill-column, etc., by changing the value in
9481 buffers that use the default.
9482
9483 * minibuf.c (Fset_minibuffer_window): Doc fix.
9484
9485 * fileio.c (choose_write_coding_system): Ignore auto_saving
9486 if using the visited file for auto saves.
9487 (Fwrite_region): Don't update SAVE_MODIFF
9488 if auto-saving in visited file.
9489
9490 2003-12-29 Kenichi Handa <handa@m17n.org>
9491
9492 * dispextern.h (face_font_available_p): Extern it.
9493
9494 * fontset.c (Voverriding_fontspec_alist): New variable.
9495 (lookup_overriding_fontspec): New function.
9496 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
9497 (fontset_font_pattern): Likewise.
9498 (regulalize_fontname): New function.
9499 (Fset_fontset_font): Call regulalize_fontname.
9500 (Fset_overriding_fontspec_internal): New function.
9501 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
9502 Defsubr Sset_overriding_fontspec_internal.
9503
9504 * xfaces.c (face_font_available_p): New function.
9505
9506 2003-12-28 Richard M. Stallman <rms@gnu.org>
9507
9508 * buffer.c (Fother_buffer): Don't crash if BUF is nil
9509 or if its name is nil.
9510
9511 * buffer.c (Fkill_buffer): Don't delete auto-save file
9512 if it's the same as the visited file.
9513
9514 2003-12-28 Luc Teirlinck <teirllm@auburn.edu>
9515
9516 * coding.c (Fcheck_coding_system): Doc fix.
9517
9518 2003-12-28 Kim F. Storm <storm@cua.dk>
9519
9520 * Makefile.in (eval.o): Depend on dispextern.h.
9521
9522 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
9523 image glyph using image's ascent.
9524 (mode_line_string): Return image glyph as object clicked on.
9525 Adjust y0 for image glyph using image's ascent.
9526
9527 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
9528 (struct glyph): New members, ascent and descent. Used to save
9529 this glyph's ascent and descent, instead of having.
9530 (struct glyph): Declare member face_id using FACE_ID_BITS.
9531 (find_hot_spot): Add prototype.
9532
9533 * keyboard.c (Qimage): Remove extern (now in lisp.h).
9534 (QCmap): Declare extern.
9535 (make_lispy_position): When position is inside image hot-spot,
9536 use hot-spot element's id as posn element.
9537
9538 * lisp.h (IMAGEP): New macro to test for image object type.
9539 (Qimage): Declare extern.
9540
9541 * macfns.c (Qimage): Remove extern (now in lisp.h).
9542 (valid_image_p, parse_image_spec): Use IMAGEP macro.
9543
9544 * macterm.c (Qface, Qmouse_face): Remove unused externs.
9545
9546 * w32fns.c (Qimage): Remove extern (now in lisp.h).
9547 (valid_image_p, parse_image_spec): Use IMAGEP macro.
9548
9549 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
9550
9551 * w32term.c (Qface, Qmouse_face): Remove unused externs.
9552
9553 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
9554 pointer types.
9555 (Qrelative_width, Qalign_to): Remove unused variables.
9556 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
9557 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
9558 image maps.
9559 (x_y_to_hpos_vpos): Return glyph relative coordinates through
9560 new dx and dy args.
9561 Remove buffer_only_p arg (always 0). Simplify code accordingly.
9562 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
9563 than row's ascent and height, to get sensible height on tall rows.
9564 (build_desired_tool_bar_string): Remove Qimage extern.
9565 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
9566 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
9567 image glyph is alone on the last line.
9568 (append_glyph, append_composite_glyph, produce_image_glyph)
9569 (append_stretch_glyph): Set glyph's ascent and descent.
9570 (on_hot_spot_p): New function to check if position is inside an
9571 rectangular, circular, or polygon-shaped image hot-spot,
9572 (find_hot_spot): New function to search for image hot-spot.
9573 (Flookup_image_map): New defun to search for image hot-spot.
9574 (define_frame_cursor1): New aux function to determine frame pointer.
9575 (note_mode_line_or_margin_highlight, note_mouse_highlight):
9576 Handle `pointer' text property and :pointer image property to
9577 control frame pointer shape. Detect image hot-spots for pointer
9578 and help_echo properties. Use define_frame_cursor1.
9579 (note_mouse_highlight): Use Vvoid_text_area_pointer.
9580 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
9581 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
9582
9583 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
9584
9585 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
9586 (Qimage): Remove extern (now in lisp.h).
9587 (valid_image_p, parse_image_spec): Use IMAGEP macro.
9588
9589 * xmenu.c (show_help_event): Remove unused code.
9590
9591 * xterm.c (Qface, Qmouse_face): Remove unused externs.
9592 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
9593 row's ascent and descent, to get a sensible height on tall rows.
9594
9595 2003-12-25 Luc Teirlinck <teirllm@auburn.edu>
9596
9597 * minibuf.c (Fcompleting_read): Undo previous change.
9598
9599 2003-12-25 Lars Hansen <larsh@math.ku.dk>
9600
9601 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
9602 Arguments GCPRO'ed in call to file name handler.
9603
9604 2003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
9605
9606 * termcap.c (tgetst1): Scan for "%pN"; if all
9607 N are continuous in [1,9], remove all "%pN".
9608
9609 2003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9610
9611 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
9612
9613 * xfaces.c (lface_fully_specified_p): Take into account that
9614 MAC OS always have unspecified stipple.
9615
9616 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
9617
9618 * tparam.c (tparam1): Add handling for `%pN', which
9619 means use param N for the next substitution.
9620
9621 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
9622
9623 * xfaces.c (Fcolor_gray_p): Fix omission bug:
9624 In case `frame' is nil, consult the selected frame.
9625 (Fcolor_supported_p): Likewise.
9626
9627 2003-12-23 Luc Teirlinck <teirllm@auburn.edu>
9628
9629 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
9630 Doc fixes.
9631
9632 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
9633 and an integer. Adapt the introductory comment accordingly.
9634 (Fread_from_minibuffer): Delete code moved into read_minibuf.
9635 Doc fix.
9636 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
9637 read_minibuf.
9638 (Fcompleting_read): Delete code moved into read_minibuf.
9639 (Ftest_completion): Make it handle obarrays and hash tables correctly.
9640
9641 2003-12-03 Kenichi Handa <handa@m17n.org>
9642
9643 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
9644 encoding sequence.
9645
9646 2003-12-01 Kenichi Handa <handa@m17n.org>
9647
9648 * composite.c (syms_of_composite): Don't make the compostion hash
9649 table week.
9650
9651 2003-11-30 Luc Teirlinck <teirllm@auburn.edu>
9652
9653 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
9654 * textprop.c (Fget_char_property_and_overlay): New function.
9655 (syms_of_textprop): Defsubr it.
9656
9657 2003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9658
9659 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
9660 to compile on terminal configuration.
9661
9662 * fileio.c (Fread_file_name): Check use_file_dialog also before
9663 calling Fx_file_dialog.
9664
9665 * fns.c (use_file_dialog): New variable.
9666 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
9667
9668 2003-11-29 Kim F. Storm <storm@cua.dk>
9669
9670 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
9671 (syms_of_msdos): Don't intern and staticpro them.
9672
9673 2003-11-27 Kim F. Storm <storm@cua.dk>
9674
9675 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
9676 coordinates relative to glyph at posn. If glyph is an image,
9677 return that as object at posn. Callers changed.
9678 (mode_line_string, marginal_area_string): Calculate and return
9679 pixel coordinates relative to glyph. Callers changed.
9680
9681 * dispextern.h (buffer_posn_from_coords, mode_line_string)
9682 (marginal_area_string): Fix prototypes.
9683 (window_box_left_offset, window_box_right_offset): Add prototypes.
9684
9685 * frame.h (get_specified_cursor_type, get_window_cursor_type):
9686 Remove prototypes.
9687
9688 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
9689
9690 * keyboard.c (make_lispy_position): Add x and y coordinates
9691 relative to the current glyph as 7th element of position.
9692 If glyph is an image, return it in the object element.
9693 (read_key_sequence): Skip checks for keymap property in cases
9694 where POSN_STRING is not a string (e.g. an image).
9695
9696 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
9697 (Vshow_text_cursor_in_void): New variable.
9698 (glyph_to_pixel_coords): Don't use negative hpos.
9699 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
9700 (append_stretch_glyph): Change ascent arg to be actual value
9701 in pixels rather than ratio to height. Callers changed.
9702 (calc_pixel_width_or_height): New aux function, implementing
9703 pixel based artihmetic for glyph widths and heights.
9704 (produce_stretch_glyph): Use calc_pixel_width_or_height for
9705 :width, :height, :align-to, and :ascent, thus allowing these to
9706 be specified in pixels as well as multiples of characters.
9707 Don't produce stretch glyphs with zero width or height.
9708 (get_specified_cursor_type): Declare static.
9709 (get_window_cursor_type): Declare static. Add glyph arg to be
9710 able to know when cursor is on an image; always substitute
9711 hollow-box cursor for filled-box cursor on images, to avoid
9712 negative images and flicker when blinking the cursor.
9713 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
9714 (note_mode_line_or_margin_highlight): Use non-text cursor rather
9715 than vertical scroll-bar cursor in display margins.
9716 (note_mouse_highlight): Use non-text cursor rather than text
9717 cursor in fringes and over images in the text area.
9718 Use non-text cursor when mouse pointer is outside editable text,
9719 i.e. in the void after end-of-line or end-of-buffer; this was
9720 already done for W32, but is now standard for all systems --
9721 user can toggle show-text-cursor-in-void to get old behaviour.
9722 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
9723 Vdisplay_pixels_per_inch.
9724
9725 2003-11-25 Andreas Schwab <schwab@suse.de>
9726
9727 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
9728 EMACS_INT to not lose bits.
9729 (Ffillarray): Don't set bits beyond the size of a bool vector.
9730
9731 2003-11-25 Kim F. Storm <storm@cua.dk>
9732
9733 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
9734 define this defun on systems that cannot use stderr as lvalue.
9735
9736 2003-11-24 Gerd Moellmann <gerd@gnu.org>
9737
9738 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
9739 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
9740 ld's default is incompatible with unexec.
9741
9742 2003-11-23 Kim F. Storm <storm@cua.dk>
9743
9744 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
9745 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
9746 (Fforce_window_update): New defun.
9747 (syms_of_window): Defsubr it.
9748 (Fset_window_margins, Fset_window_fringes): Doc fix.
9749
9750 * print.c (Fredirect_debugging_output): New defun.
9751 (syms_of_print): Defsubr it.
9752
9753 2003-11-22 Luc Teirlinck <teirllm@auburn.edu>
9754
9755 * fns.c (Fset_char_table_parent): Doc fix.
9756
9757 2003-11-22 Kim F. Storm <storm@cua.dk>
9758
9759 * dispnew.c (buffer_posn_from_coords): Return actual row/column
9760 for glyph clicked on, rather than (unused) pixel positions.
9761 (mode_line_string, marginal_area_string): Change X and Y args to
9762 pointers for returning actual row/column for glyph clicked on.
9763 Simplify and optimize loops.
9764
9765 * dispextern.h (mode_line_string, marginal_area_string):
9766 Update prototypes.
9767
9768 * keyboard.c (make_lispy_position): New function for generating
9769 mouse click positions from frame and pixel coordinates.
9770 Enhanced to return buffer position and actual row/column for
9771 events outside the text area using updated mode_line_string and
9772 marginal_area_string functions.
9773 Return left-fringe and right-fringe clicks as such, rather than
9774 clicks in text area.
9775 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
9776 pixel_to_glyph_coords, as we never use the results.
9777 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
9778 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
9779 Eliminate unused code in WHEEL_EVENT handling.
9780 (make_lispy_movement): Use make_lispy_position.
9781
9782 * window.c (coordinates_in_window): Remove redundant tests.
9783 Fix returned X pixel value for left-margin.
9784
9785 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
9786 mode_line_string and marginal_area_string parameters.
9787
9788 2003-11-22 Lars Hansen <larsh@math.ku.dk>
9789
9790 * w32.c (struct the_group, getgrgid): Add.
9791 * mac.c (struct my_group, getgrgid): Add.
9792
9793 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
9794
9795 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
9796
9797 2003-11-21 Lars Hansen <larsh@math.ku.dk>
9798
9799 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
9800 include in call to file name handler. Optionally translate numeric
9801 UID and GID to strings. Update docstring.
9802 (directory_files_internal): Add parameter ID-FORMAT.
9803 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
9804 include in call to file name handler and call to
9805 directory_files_internal. Update Docstring.
9806 (Fdirectory_files): Add dummy parameter in call to
9807 directory_files_internal.
9808 * lisp.h (Qinteger): Add.
9809 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
9810 (Ffile_attributes): Add parameter.
9811 * data.c (Qinteger): Export.
9812
9813 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
9814
9815 * fns.c (Freverse, Fnreverse): Doc fixes.
9816
9817 2003-11-19 Kim F. Storm <storm@cua.dk>
9818
9819 * xdisp.c (init_iterator): Initialize it->start to position
9820 before reseating (in case start position is invisible).
9821 (init_to_row_start): Set it->start to row-start.
9822 (redisplay_window): Accept optional_new_start if start position
9823 is invisible (in which case IT_CHARPOS overshoots PT).
9824 (display_line): Setup row->start from it->start (rather than
9825 it->current which is wrong if first char on line is invisible).
9826 When done, reseat it->start to it->current (= start of next row).
9827 (expose_area): Fix exposure of text area when first char (e.g. TAB)
9828 is only partially visible.
9829
9830 * dispextern.h (struct it): New member start.
9831
9832 2003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
9833
9834 * alloc.c (make_float, Fcons): Clear the markbit at init time.
9835 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
9836 of block_index outside of the macro call.
9837 (Fgarbage_collect): Remove null code.
9838
9839 * m/amdx86-64.h: Don't redefine XPNTR.
9840
9841 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
9842 of VALMASK.
9843
9844 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
9845 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
9846 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
9847
9848 * lisp.h (VALMASK): Only define for non-union type.
9849 (MARKBIT): Remove.
9850 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
9851 (XTYPE): Define unconditionally.
9852 (XSETTYPE): Remove one more remnant.
9853 (EQ): Define differently for the union and non-union cases.
9854 (INTMASK): New bit mask.
9855 (struct Lisp_Marker): Move down to prepare for upcoming patch.
9856 (GC_EQ): Delegate to EQ.
9857
9858 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
9859
9860 2003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9861
9862 * xterm.c (x_window_to_scroll_bar): Move check of display to
9863 where window_id is compared.
9864
9865 2003-11-17 Kim F. Storm <storm@cua.dk>
9866
9867 * dispextern.h (struct it): New member first_vpos.
9868
9869 * xdisp.c (start_display): Set it->first_vpos.
9870 (try_window_id): Use first_vpos to start display in first _text_
9871 line if no reusable lines at start of window with header line.
9872
9873 2003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9874
9875 * w32fns.c (XPutPixel):
9876 * w32bdf.c (w32_init_bdf_font):
9877 * sunfns.c (sel_read):
9878 * process.c (Fmake_network_process):
9879 * frame.c (store_frame_param):
9880 * fontset.c (Fset_fontset_font):
9881 * emacs.c (shut_down_emacs):
9882 * ccl.c (ccl_driver): Remove period at end of error message.
9883
9884 * config.in: Regenerate.
9885
9886 * xfns.c (x_window_to_frame, x_any_window_to_frame)
9887 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
9888 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
9889 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
9890 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
9891
9892 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
9893
9894 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
9895 (XTmouse_position, handle_one_xevent): Pass Display* to
9896 x_window_to_scroll_bar.
9897 (x_window_to_scroll_bar): Take a Display* argument.
9898 Check that display for frame is equal to Display* argument.
9899 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
9900 x_display_info_for_display instead. Use Display in xev instead
9901 of GDK_DISPLAY.
9902 (x_dispatch_event): Call x_display_info_for_display.
9903 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
9904 (x_connection_closed): Call xg_display_close for GTK.
9905 (x_term_init): Call xg_display_open for additional displays.
9906 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
9907 for GTK.
9908
9909 * xmenu.c (single_menu_item, mouse_position_for_popup)
9910 (x_activate_menubar): Formatting adjustments.
9911
9912 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
9913 adjustments.
9914
9915 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
9916 (xg_display_close, xg_create_default_cursor)
9917 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
9918 handling.
9919 (xg_left_ptr_cursor): Remove.
9920 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
9921 cursor here.
9922 (xg_win_to_widget): Take Display* argument, call
9923 gdk_xid_table_lookup_for_display.
9924 (xg_create_frame_widgets, xg_get_file_name, create_menus)
9925 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
9926 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
9927 in FRAME_X_DISPLAY_INFO.
9928 (xg_get_scroll_id_for_window): Take Display* argument.
9929 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
9930 (xg_initialize): Remove xg_left_ptr_cursor.
9931
9932 * gtkutil.h (xg_get_scroll_id_for_window, xg_win_to_widget): Add
9933 Display* argument.
9934 (xg_display_open, xg_display_close, xg_create_default_cursor): Declare.
9935
9936 2003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9937
9938 * xterm.c (x_detect_focus_change): Do not change focus frame for
9939 Enter/LeaveNotify if the current focus frame has explicit focus.
9940
9941 2003-11-14 Kim F. Storm <storm@cua.dk>
9942
9943 * dispnew.c (update_text_area): Fix redisplay error when hscroll
9944 is active and first glyph is only partially visible.
9945
9946 2003-11-13 Kenichi Handa <handa@m17n.org>
9947
9948 * xdisp.c (select_frame_for_redisplay): New function.
9949 (redisplay_internal): Record also selected_frame for
9950 unwind_redisplay. Call select_frame_for_redisplay before
9951 redrawing each frame.
9952 (unwind_redisplay): Argument changed to a cons.
9953
9954 2003-11-12 Luc Teirlinck <teirllm@auburn.edu>
9955
9956 * fns.c (Fstring_to_multibyte): Doc fix.
9957
9958 2003-11-11 Kenichi Handa <handa@m17n.org>
9959
9960 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
9961
9962 2003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9963
9964 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
9965 program specified positions.
9966
9967 2003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9968
9969 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
9970
9971 2003-11-08 Kenichi Handa <handa@m17n.org>
9972
9973 * Makefile.in (lisp): Add kannada.el.
9974 (shortlisp): Likewise.
9975
9976 2003-11-07 Kenichi Handa <handa@m17n.org>
9977
9978 * coding.c (coding_allocate_composition_data):
9979 Reset coding->composing to COMPOSITION_NO.
9980 (coding_restore_composition): Detect invalid composition data.
9981 Give Fstring and Fvector a Lispy integer, not C int.
9982
9983 2003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
9984
9985 * floatfns.c (Flogb): Don't use VALMASK.
9986
9987 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
9988 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
9989
9990 * lisp.h (XINT): Move the cast to clarify what is going on.
9991 (GCTYPEMASK, XSETTYPE): Remove.
9992 (XGCTYPE): Make it an alias of XTYPE.
9993
9994 2003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9995
9996 * xterm.c (x_term_init): Fix formatting.
9997
9998 2003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9999
10000 * gtkutil.h (xg_have_tear_offs): Declare.
10001 (xg_keep_popup, xg_did_tearoff): Remove.
10002
10003 * gtkutil.c: Remove variable xg_did_tearoff.
10004 (xg_have_tear_offs): New function.
10005 (tearoff_remove): Just decrease xg_detached_menus.
10006 (tearoff_activate): Increase xg_detached_menus and call
10007 tearoff_remove when tearoff is removed.
10008 (xg_keep_popup): Remove function.
10009 (create_menus): Give add_tearoff_p as argument to recursive
10010 call to create_menus.
10011 (xg_create_widget): Use variables instead of multiple
10012 strcmp. Tell create_menus to create tear off only for
10013 menu bar menus.
10014 (xg_update_menubar): Change title for a detached menu also.
10015 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
10016 of deep_p.
10017 (xg_initialize): Initialize xg_detached_menus, remove
10018 initialization of xg_did_tearoff.
10019
10020 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
10021 xg_have_tear_offs returns non-zero.
10022 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
10023 call to xg_keep_popup.
10024
10025 2003-11-01 Andrew Choi <akochoi@shaw.ca>
10026
10027 * macterm.c (XTread_socket): Handle menubar selection and grow
10028 window only for mouseDown events.
10029
10030 2003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10031
10032 * xterm.c (x_term_init): For GTK part, increase x_initialized
10033 to check for more than one display. Use error instead of return 0.
10034
10035 2003-10-31 Andrew Choi <akochoi@shaw.ca>
10036
10037 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
10038 (copy_dysymtab): Call it.
10039
10040 2003-10-31 Luc Teirlinck <teirllm@auburn.edu>
10041
10042 * eval.c (Fdefvaralias): Doc fix.
10043
10044 2003-10-26 Luc Teirlinck <teirllm@auburn.edu>
10045
10046 * data.c (Fsetplist): Doc fix.
10047
10048 2003-10-14 Lute Kamstra <lute@gnu.org>
10049
10050 * window.c (Fset_window_fringes): Clarify docstring.
10051
10052 2003-10-14 Kim F. Storm <storm@cua.dk>
10053
10054 * window.c (Fset_window_margins): Simplify arg checking.
10055
10056 2003-10-13 Richard M. Stallman <rms@gnu.org>
10057
10058 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
10059 (print_partial_compiled_pattern): Replace assert with a printout.
10060 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
10061
10062 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
10063
10064 * window.c (Fset_window_margins): Allow only integers as args.
10065 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
10066 Doc fixes.
10067
10068 2003-10-13 Lute Kamstra <lute@gnu.org>
10069
10070 * window.c (Fset_window_fringes): Elaborate docstring.
10071
10072 2003-10-12 Andrew Choi <akochoi@shaw.ca>
10073
10074 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
10075
10076 * s/darwin.h (GC_MARK_STACK): Define.
10077
10078 2003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10079
10080 * window.c (shrink_windows): New function.
10081 (size_window): Call shrink_windows to calculate window sizes when
10082 shrinking frame with more than one window.
10083
10084 2003-10-12 Kim F. Storm <storm@cua.dk>
10085
10086 * xdisp.c (compute_fringe_widths): Doc fix.
10087
10088 2003-10-08 Kenichi Handa <handa@m17n.org>
10089
10090 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
10091
10092 2003-10-07 Kenichi Handa <handa@m17n.org>
10093
10094 * coding.c (Qcoding_system_define_form): New variable.
10095 (syms_of_coding): Intern and staticpro it.
10096 (Fcheck_coding_system): Try to autoload the definition of
10097 CODING-SYSTEM.
10098
10099 2003-10-05 Luc Teirlinck <teirllm@auburn.edu>
10100
10101 * fns.c (Frequire): Doc fix.
10102
10103 2003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10104
10105 * xfns.c (Fx_send_client_event): New function as a base for
10106 manipulating extended window manager hints.
10107 (Fx_send_client_event): Remove unused variable s.
10108
10109 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
10110 that function is removed.
10111
10112 * xterm.c (x_set_offset): Use move_offset_left/top instead of
10113 x/y_pixels_outer_diff.
10114 (x_check_expected_move): Calculate move_offset_left/top.
10115
10116 * xterm.h (struct x_output): New members: move_offset_top/left.
10117
10118 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
10119 call x_set_offset directly.
10120
10121 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
10122
10123 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
10124
10125 * xterm.c (x_delete_display): Free font names and font_encoder
10126 in dpyinfo->font_table.
10127
10128 * xfns.c (Fx_close_connection): Only call XFreeFont here.
10129 Move xfree of font names to x_delete_display.
10130
10131 * xterm.h (struct x_display_info): New member, wm_type.
10132 (struct x_output): New members, expected_top/left and
10133 check_expected_move.
10134
10135 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
10136 is received.
10137 (handle_one_xevent): Rename x_check_expected_move from
10138 x_check_fullscreen_move.
10139 (x_set_offset): Only add WM decoration sizes to modified_top/left
10140 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
10141 (x_check_expected_move): Rename from x_check_fullscreen_move.
10142 Removed fullscreen specific code. Use check_expected_move,
10143 expected_left/top instead. Also, set wm_type.
10144 (x_term_init): Initialize wm_type to unknown.
10145
10146 * frame.c (x_fullscreen_move): Remove addition of WM decoration
10147 sizes to move_x/y.
10148
10149 2003-10-03 Kenichi Handa <handa@m17n.org>
10150
10151 * macterm.c (x_load_font): Clear all members of FONTP before start
10152 filling them.
10153
10154 2003-10-02 Kenichi Handa <handa@m17n.org>
10155
10156 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
10157 before calling find_ccl_program_func. Call find_ccl_program_func
10158 only when fontp->font_encoder is not NULL.
10159
10160 * xterm.c (x_load_font): Clear all members of FONTP before start
10161 filling them.
10162
10163 2003-10-03 John Paul Wallington <jpw@gnu.org>
10164
10165 * keymap.c (map_keymap): Don't abort when binding is a vector.
10166
10167 2003-10-02 Jason Rumney <jasonr@gnu.org>
10168
10169 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
10170 Sync dependencies with Makefile.in.
10171 (alloca.o): Remove.
10172
10173 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
10174 filling them.
10175
10176 * w32bdf.c (w32_load_bdf_font): Likewise.
10177
10178 2003-09-30 Richard M. Stallman <rms@gnu.org>
10179
10180 * term.c (set_tty_color_mode): Calculate current_mode_spec
10181 regardless of value of VAL.
10182
10183 * intervals.c (graft_intervals_into_buffer):
10184 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
10185 Handle over_used when splitting UNDER.
10186
10187 2003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10188
10189 * regex.c (regex_compile): Free the stack when returning from function.
10190
10191 2003-09-28 Kenichi Handa <handa@m17n.org>
10192
10193 * fontset.c (Finternal_char_font): Change return value to
10194 cons (FONT-NAME . GLYPH-CODE).
10195
10196 2003-09-28 Eli Zaretskii <eliz@gnu.org>
10197
10198 * term.c (tty_setup_colors): Treat any negative argument as -1.
10199
10200 2003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
10201
10202 * process.c (send_process): Delete unused temp_buf.
10203
10204 2003-09-26 Dave Love <fx@gnu.org>
10205
10206 * xterm.c (x_bitmap_mask): Declare.
10207
10208 2003-09-25 Dave Love <fx@gnu.org>
10209
10210 * Makefile.in (fns.o): Depend on md5.h.
10211
10212 2003-09-25 Kim F. Storm <storm@cua.dk>
10213
10214 * window.c (set_window_buffer): Fix redisplay problems when
10215 switching between buffers with different display margin widths.
10216
10217 2003-09-23 Kim F. Storm <storm@cua.dk>
10218
10219 * process.c (set_socket_option): Fix :bindtodevice option.
10220 (Fset_network_process_option): Update process contact list when
10221 setting option succeeds.
10222 (Fmake_network_process): Doc fix.
10223
10224 2003-09-23 Dave Love <fx@gnu.org>
10225
10226 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
10227
10228 2003-09-22 Eli Zaretskii <eliz@gnu.org>
10229
10230 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
10231 color mode is an integer number (it could be -1).
10232
10233 2003-09-22 Richard M. Stallman <rms@gnu.org>
10234
10235 * intervals.c (graft_intervals_into_buffer): Correct the main loop
10236 in the case where OVER is longer than UNDER.
10237
10238 2003-09-22 Masatake YAMATO <jet@gyve.org>
10239
10240 * window.c (Fset_window_scroll_bars): Validate the value of
10241 `vertical_type'.
10242
10243 2003-09-21 Kim F. Storm <storm@cua.dk>
10244
10245 * frame.c (Vdefault_frame_scroll_bars): New variable.
10246 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
10247 (syms_of_frame): DEFVAR_LISP it, and initialize according to
10248 window-system default scroll bar position.
10249
10250 * window.c (Fwindow_scroll_bars): Doc fix.
10251
10252 2003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10253
10254 * xterm.c (x_set_offset): Take window manager decorations into account.
10255
10256 2003-09-19 Richard M. Stallman <rms@gnu.org>
10257
10258 * atimer.h: Don't include lisp.h.
10259 (P_): Define it here (as well as elsewhere).
10260
10261 * print.c (Fprin1_to_string): Move the PRINTPREPARE
10262 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
10263
10264 * data.c (Fvariable_binding_locus): New function.
10265 (syms_of_data): defsubr it.
10266 (Flocal_variable_p): Delete duplicate call to indirect_variable.
10267
10268 2003-09-18 Dave Love <fx@gnu.org>
10269
10270 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
10271
10272 * process.c (Fnetwork_interface_info): Fix type error.
10273 (Fnetwork_interface_list): Doc fix.
10274 (read_process_output, read_process_output): Delete unused var.
10275
10276 2003-09-17 Kim F. Storm <storm@cua.dk>
10277
10278 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
10279 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
10280 (Fnetwork_interface_info): Check that ifreq struct has required
10281 fields before accessing them; this requires that those fields are
10282 defined as macros, which may be too restrictive on some platforms,
10283 but it is better than failing on other platforms.
10284 (syms_of_process): Only defsubr above fns when included.
10285
10286 2003-09-17 Dave Love <fx@gnu.org>
10287
10288 * unexalpha.c: Don't include varargs.h.
10289
10290 2003-09-17 Kim F. Storm <storm@cua.dk>
10291
10292 * process.c (Fset_process_sentinel): Add sentinel to childp plist
10293 for network process.
10294 (socket_options): Add `:' prefix to option names. Add optbit field.
10295 (set_socket_option): Remove no_error arg and special handling of s < 0.
10296 Return 1<<optbit for known option, 0 for unknown.
10297 Do not interpret 0 as false for boolean option (only nil).
10298 Pass failed option and value to report_file_error.
10299 (Fset_network_process_options): Replace by Fset_network_process_option.
10300 (Fset_network_process_option): New function to set just one option.
10301 (Fmake_network_process): Allow :coding arg to be a cons.
10302 Allow :server arg to be an integer specifying backlog size.
10303 Remove :options arg, and allow options to be specified directly
10304 as :KEY, VALUE pairs. Parse these options before binding socket.
10305 As before, :reuseaddr t is default for a server process, but this
10306 can now be disabled by specifying :reuseaddr nil.
10307 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
10308 (init_process): Availability of network options is now checked with
10309 simpler syntax (featurep 'make-network-process :OPTION); use loop to
10310 setup features.
10311 (syms_of_process): Fix defsubr's for the replaced functions.
10312
10313 2003-09-16 Dave Love <fx@gnu.org>
10314
10315 * Makefile.in: Depend on coding.h.
10316
10317 2003-09-14 Kim F. Storm <storm@cua.dk>
10318
10319 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
10320 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
10321 (syms_of_process): Defsubr them.
10322
10323 * config.in: Regenerate.
10324
10325 2003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
10326
10327 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
10328 * m/news-r6.h (XUNMARK): Remove.
10329 * m/mips.h (XUNMARK): Remove.
10330 * m/mips-siemens.h (XUNMARK): Remove.
10331 * m/iris4d.h (XUNMARK): Remove.
10332 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
10333
10334 2003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
10335
10336 * lisp.h (VALBITS): Don't remove 1 for the markbit.
10337 (union Lisp_Object): Use unsigned int for types. Remove markbit.
10338 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
10339 (XTYPE): Use unsigned right-shift.
10340 (XMARKBIT, XMARK, XUNMARK): Remove.
10341
10342 * alloc.c (init_intervals, init_symbol, init_marker):
10343 Don't preallocate anything.
10344 (Fgarbage_collect, mark_object): Ignore the markbit.
10345
10346 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
10347
10348 2003-09-08 Lute Kamstra <lute@gnu.org>
10349
10350 * xdisp.c (pint2hrstr): New function.
10351 (decode_mode_spec): Add `%i' and `%I' specs.
10352 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
10353 for `mode-line-format'.
10354
10355 2003-09-07 Andreas Schwab <schwab@suse.de>
10356
10357 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
10358 avoid warning.
10359
10360 2003-09-07 Eli Zaretskii <eliz@gnu.org>
10361
10362 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
10363
10364 2003-09-03 Kim F. Storm <storm@cua.dk>
10365
10366 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
10367 change (superseded by 2002-08-30 change); the default blink-off
10368 cursor is now again "no cursor".
10369
10370 2003-09-01 Jason Rumney <jasonr@gnu.org>
10371
10372 * makefile.w32-in (alloca.o): Remove.
10373 (coding.o): Depend on intervals.h
10374 (emacs.o, bytecode.o): Depend on window.h
10375
10376 2003-09-01 Dave Love <fx@gnu.org>
10377
10378 * Makefile.in (alloca.o): Remove commands.
10379 (coding.o): Depend on intervals.h composite.h window.h.
10380 (emacs.o): Depend on window.h keyboard.h keymap.h.
10381 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
10382 (bytecode.o): Depend on window.h.
10383
10384 2003-08-31 Jason Rumney <jasonr@gnu.org>
10385
10386 * w32term.c (w32_per_char_metric): Allow cached metrics to be
10387 returned even when font_type is unknown.
10388
10389 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
10390
10391 2003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10392
10393 * xterm.c (x_term_init): Initialize new fields in x_display_info.
10394
10395 * xterm.h (struct x_display_info): Add red/green/blue_bits and
10396 *_offset.
10397
10398 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
10399 calculate pixel value.
10400
10401 2003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
10402
10403 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
10404 Don't tell redisplay display is accurate when it's actually been
10405 paused for pending input.
10406
10407 2003-08-29 Richard M. Stallman <rms@gnu.org>
10408
10409 * dispnew.c (adjust_glyph_matrix): Call window_box
10410 whenever W is nonzero.
10411
10412 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
10413 (Fkill_local_variable, Fmake_variable_frame_local)
10414 (Flocal_variable_p, Flocal_variable_if_set_p):
10415 Use indirect_variable to trace thru variable aliases.
10416
10417 * config.in: Updated.
10418
10419 * callint.c (Fcall_interactively): Save and restore
10420 Vthis_command, Vthis_original_command, real_this_command,
10421 and current_kboard->Vlast_command.
10422
10423 * abbrev.c (Fexpand_abbrev): Insert before deleting.
10424
10425 2003-08-29 Gerd Moellmann <gerd@gnu.org>
10426
10427 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
10428
10429 2003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
10430
10431 * coding.c (decode_coding_iso2022): Initialize local variable c2.
10432 (decode_coding_sjis_big5): Likewise.
10433
10434 2003-08-27 Jason Rumney <jasonr@gnu.org>
10435
10436 * w32.c (sys_pipe): Protect against file descriptor overflow.
10437
10438 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
10439
10440 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
10441
10442 2003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
10443
10444 * xfns.c (Vgtk_version_string): New variable.
10445 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
10446
10447 2003-08-24 Eli Zaretskii <eliz@gnu.org>
10448
10449 * term.c (term_init): Remove `const' from buffer_size's declaration.
10450
10451 * Makefile.in (msdos.o): Depend on intervals.h.
10452
10453 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
10454
10455 2003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10456
10457 * xterm.h (struct x_display_info): New fields: client_leader_window
10458 and Xatom_wm_client_leader.
10459
10460 * xterm.c (x_initialize): Move call to x_session_initialize to ...
10461 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
10462
10463 * xsmfns.c (create_client_leader_window): New function.
10464 (x_session_initialize): Call create_client_leader_window, take
10465 dpyinfo as argument.
10466
10467 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
10468
10469 * Makefile.in (xsmfns.o): Add more depenedencies.
10470
10471 2003-08-21 Dave Love <fx@gnu.org>
10472
10473 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
10474
10475 2003-08-21 Kenichi Handa <handa@m17n.org>
10476
10477 * term.c (term_init): Fix previous change; don't rely on the
10478 length of `buffer' if TERMINFO is defined.
10479
10480 2003-08-20 Dave Love <fx@gnu.org>
10481
10482 * atimer.h: Include lisp.h.
10483
10484 * lisp.h (EMACS_LISP_H): New.
10485 (popup_activated_flag): Don't declare.
10486
10487 * alloca.c: Some merging with gnulib. Change logic and doc
10488 concerning (x)malloc/(x)free -- no longer Emacs-specific.
10489 [DO_BLOCK_INPUT]: Don't include lisp.h.
10490 (xmalloc, xfree): Declare.
10491 (malloc): Don't declare.
10492
10493 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
10494 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
10495 atimer.h, blockinput.h.
10496
10497 * alloc.c (lisp_align_malloc): Change type of `aligned'.
10498
10499 * alloca.s: Remove.
10500
10501 2003-08-19 Gerd Moellmann <gerd@gnu.org>
10502
10503 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
10504 use -lncurses.
10505
10506 * term.c (term_init): Use a buffer of size 4096 for tgetent since
10507 FreeBSD returns something longer than 2044. Abort if the end of
10508 the buffer is overwritten.
10509
10510 2003-08-19 Miles Bader <miles@gnu.org>
10511
10512 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
10513
10514 2003-08-19 Gerd Moellmann <gerd@gnu.org>
10515
10516 * alloc.c (lisp_align_malloc): Check for memory full when
10517 allocating ablocks, which also avoids freeing a pointer into an
10518 ablocks structure.
10519
10520 * puresize.h (BASE_PURESIZE): Increase to 1100000.
10521
10522 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
10523
10524 2003-08-16 Richard M. Stallman <rms@gnu.org>
10525
10526 * editfns.c (Fencode_time): Doc fix.
10527
10528 2003-08-16 David Ponce <david@dponce.com>
10529
10530 * fileio.c (Fwrite_region): Fix conditional expression to issue
10531 the right message.
10532
10533 2003-08-16 Juri Linkov <juri@jurta.org>
10534
10535 * syntax.c (Fforward_word): Argument changed to optional.
10536 Set default value to 1.
10537
10538 2003-08-15 Kenichi Handa <handa@m17n.org>
10539
10540 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
10541 what autoscaled.
10542 (best_matching_font): Once we find a better scalable font, set
10543 non_scalable_has_exact_height_p to 1.
10544 (try_font_list): Call try_alternative_families to try any family
10545 with the given registry.
10546
10547 2003-08-09 Andreas Schwab <schwab@suse.de>
10548
10549 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
10550
10551 * print.c (print_string): Fix printing of multibyte string with
10552 nontrivial printcharfun.
10553
10554 2003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10555
10556 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
10557
10558 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
10559
10560 2003-07-31 Kenichi Handa <handa@m17n.org>
10561
10562 * process.c (read_process_output): Return the actually read bytes
10563 instead of the result of decoding.
10564
10565 2003-07-31 Kenichi Handa <handa@m17n.org>
10566
10567 * xterm.h (struct x_bitmap_record): New member have_mask.
10568
10569 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
10570 to 0.
10571 (x_create_bitmap_from_file): Likewise.
10572 (x_destroy_bitmap): Check have_mask member before freeing a mask.
10573 (x_destroy_all_bitmaps): Likewise.
10574 (x_create_bitmap_mask): Set have_mask member to 1.
10575
10576 2003-07-30 Richard M. Stallman <rms@gnu.org>
10577
10578 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
10579
10580 2003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10581
10582 * gtkutil.c (xg_mark_data): Update calls to mark_object.
10583
10584 2003-07-29 Richard M. Stallman <rms@gnu.org>
10585
10586 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
10587 Conditionalize XIM code on HAVE_XIM.
10588
10589 * fns.c (Fclear_string): New function.
10590 (syms_of_fns): defsubr it.
10591
10592 2003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
10593
10594 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
10595
10596 2003-07-22 Stefan Monnier <monnier@cs.yale.edu>
10597
10598 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
10599
10600 * buffer.c (delete_all_overlays): New function.
10601 * buffer.h (delete_all_overlays): Declare.
10602 * coding.c (run_pre_post_conversion_on_str):
10603 * print.c (temp_output_buffer_setup):
10604 * fileio.c (Finsert_file_contents):
10605 * minibuf.c (get_minibuffer): Use it.
10606
10607 2003-07-22 Andrew Choi <akochoi@shaw.ca>
10608
10609 * unexmacosx.c (unexec_regions_sort_compare):
10610 (unexec_regions_merge): New functions. Sort and merge unexec
10611 regions before dumping them.
10612
10613 2003-07-22 Dave Love <fx@gnu.org>
10614
10615 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
10616
10617 2003-07-21 Stefan Monnier <monnier@cs.yale.edu>
10618
10619 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
10620 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
10621 MARKBIT as the gcmarkbit for strings.
10622
10623 2003-07-21 Richard M. Stallman <rms@gnu.org>
10624
10625 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
10626
10627 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
10628 (syms_of_fns): Corresponding change.
10629
10630 * alloc.c (syms_of_alloc): Doc fixes.
10631
10632 2003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
10633
10634 * s/netbsd.h: Use -Wl syntax.
10635
10636 2003-07-17 Richard M. Stallman <rms@gnu.org>
10637
10638 * xterm.c (xim_initialize): Redo 6/24 change.
10639
10640 2003-07-15 Stefan Monnier <monnier@cs.yale.edu>
10641
10642 * buffer.c (copy_overlays): Use EMACS_INT for positions.
10643 (Fswitch_to_buffer): Don't signal an error when switching to the same
10644 buffer in a dedicated window.
10645
10646 * alloc.c: Use bitmaps for cons, as was done for floats.
10647 (init_float, init_cons): Let the normal code allocate the first block.
10648 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
10649 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
10650 New macros.
10651 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
10652 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
10653 (live_cons_p): Check the pointer is not past the `conses' array.
10654 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
10655 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
10656 (survives_gc_p): Use CONS_MARKED_P and simplify.
10657 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
10658
10659 2003-07-13 Paul Eggert <eggert@twinsun.com>
10660
10661 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
10662 puts it into BSS instead, at least on Solaris 8 and 9.
10663 This is a valid optimization, and it may occur on other platforms,
10664 so Emacs should not assume that initializing a static variable to
10665 zero puts it into data.
10666 * alloc.c (pure, staticvec):
10667 Initialize these arrays to nonzero, so that they're not
10668 put into BSS by that optimization.
10669
10670 2003-07-13 Stefan Monnier <monnier@cs.yale.edu>
10671
10672 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
10673 (lisp_align_malloc): Use posix_memalign is available.
10674 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
10675 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
10676 for consistency. Update users.
10677
10678 2003-07-13 Richard M. Stallman <rms@gnu.org>
10679
10680 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
10681
10682 2003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
10683
10684 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
10685 and use the Gtk+ function gtk_window_icon_from_file if available.
10686
10687 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
10688 handle mask of bitmaps.
10689 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
10690 mask property.
10691 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
10692
10693 * xterm.h (xg_set_icon): New function.
10694
10695 2003-07-12 Paul Eggert <eggert@twinsun.com>
10696
10697 * unexelf.c (unexec): Consider a section to precede the .bss
10698 section if its addresses overlap that of .bss.
10699
10700 2003-07-12 Richard M. Stallman <rms@gnu.org>
10701
10702 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
10703
10704 * config.in (HAVE_CRTIN): Add #undef.
10705 (INLINE): Really inline only if OPTIMIZE is defined.
10706
10707 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
10708 END_FILES_1.
10709 (START_FILES_1, END_FILES_1): New macros (conditional).
10710 (LD_SWITCH_SYSTEM_TEMACS): Define.
10711
10712 * s/openbsd.h: Don't include bsd4-3.h.
10713 (TERMINFO): Define.
10714 (LIBS_TERMCAP): Define.
10715 (LD_SWITCH_SYSTEM): Define (two definitions).
10716
10717 * xfns.c: Include libpng/png.h instead of png.h.
10718
10719 2003-07-11 Andreas Schwab <schwab@suse.de>
10720
10721 * buffer.c (modify_overlay): Update prototype.
10722 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
10723 Likewise.
10724
10725 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
10726
10727 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
10728 (struct interval): Move to intervals.h.
10729 (struct Lisp_Marker): Use EMACS_INT for position info.
10730 (forward_point): Remove prototype of defunct function.
10731 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
10732 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
10733 (syms_of_textprop, set_text_properties): Remove prototypes that are
10734 already in intervals.h.
10735
10736 * intervals.h (struct interval): Move from lisp.h.
10737 Use EMACS_INT for position and size info.
10738
10739 * coding.c: Include intervals.h for Fset_text_properties.
10740
10741 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
10742 position and length information.
10743
10744 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
10745
10746 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
10747 position and length information.
10748
10749 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
10750
10751 Change overlays_after and overlays_before so the overlays themselves
10752 are linked into lists, rather than using cons cells. After all each
10753 Lisp_Misc already occupies 5 words, so we can add a `next' field to
10754 Lisp_Overlay for free and save up one cons cell per overlay (not
10755 to mention one indirection when traversing the list of overlay).
10756
10757 * lisp.h (struct Lisp_Overlay): New field `next'.
10758
10759 * buffer.h (struct buffer): Change overlays_before and overlays_after
10760 from Lisp lists of overlays to pointers to overlays.
10761
10762 * buffer.c (overlay_strings, recenter_overlay_lists):
10763 Fix typo in eassert in last commit.
10764 (unchain_overlay): New function.
10765 (add_overlay_mod_hooklist): Use AREF.
10766 (copy_overlays, reset_buffer, overlays_at, overlays_in)
10767 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
10768 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
10769 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
10770 (report_overlay_modification, evaporate_overlays, init_buffer_once):
10771 Adjust to new type of overlays_(before|after).
10772
10773 * alloc.c (mark_object): Mark the new `next' field of overlays.
10774 (mark_buffer): Manually mark the overlays_(after|before) fields.
10775
10776 * coding.c (run_pre_post_conversion_on_str):
10777 * editfns.c (overlays_around):
10778 * xdisp.c (load_overlay_strings):
10779 * fileio.c (Finsert_file_contents):
10780 * indent.c (current_column):
10781 * insdel.c (signal_before_change, signal_after_change):
10782 * intervals.c (set_point_both):
10783 * print.c (temp_output_buffer_setup): Use new type for
10784 overlays_(before|after).
10785
10786 2003-07-08 Stefan Monnier <monnier@cs.yale.edu>
10787
10788 * buffer.c (report_overlay_modification): Don't run hooks while
10789 traversing the list of overlays.
10790
10791 * buffer.h (struct buffer): Use an int for overlay_center.
10792 (overlays_at, evaporate_overlays, recenter_overlay_lists)
10793 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
10794
10795 * buffer.c (reset_buffer, recenter_overlay_lists)
10796 (adjust_overlays_for_insert, adjust_overlays_for_delete)
10797 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
10798 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
10799 (overlays_at, evaporate_overlays, recenter_overlay_lists)
10800 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
10801
10802 * xdisp.c (fast_find_position): Remove unused var.
10803
10804 * cmds.c (Qexpand_abbrev): New sym.
10805 (syms_of_cmds): Initialize it.
10806 (internal_self_insert): Use it to call expand-abbrev.
10807
10808 2003-07-09 Kim F. Storm <storm@cua.dk>
10809
10810 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
10811 was configured with --without-xim.
10812 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
10813
10814 2003-07-07 Richard M. Stallman <rms@gnu.org>
10815
10816 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
10817
10818 * alloc.c (Fgarbage_collect): Doc fix.
10819
10820 2003-07-07 Nozomu Ando <nand@mac.com>
10821
10822 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
10823
10824 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
10825
10826 * minibuf.c (read_minibuf): UNGCPRO before returning.
10827 (Ftry_completion, Fall_completions): Doc fix.
10828
10829 * alloc.c (live_float_p): Check that p is not past the `floats' array,
10830 now that `floats' is not the last element of the struct any more.
10831
10832 2003-07-06 Jason Rumney <jasonr@gnu.org>
10833
10834 * w32term.h (ClipboardSequence_Proc): New type.
10835
10836 * w32fns.c (clipboard_sequence_fn): New variable.
10837 (globals_of_w32fns): Initialize it.
10838
10839 * w32select.c (last_clipboard_sequence_number): New variable.
10840 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
10841 number if possible.
10842
10843 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
10844
10845 * m/amdx86-64.h (MARKBIT):
10846 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
10847 MARKBIT and ARRAY_MARK_FLAG any more.
10848
10849 * m/hp800.h (XSETMARKBIT):
10850 * m/sr2k.h (XSETMARKBIT):
10851 * lisp.h (XSETMARKBIT): Remove unused macro.
10852
10853 * lisp.h (mark_object): Change prototype.
10854
10855 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
10856 (last_marked): Change accordingly.
10857 (mark_interval, mark_maybe_object, mark_maybe_pointer)
10858 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
10859 (mark_buffer): Update calls to mark_object.
10860
10861 * bytecode.c (mark_byte_stack):
10862 * fns.c (sweep_weak_table):
10863 * keyboard.c (mark_kboards): Update calls to mark_object.
10864
10865 2003-07-06 Jason Rumney <jasonr@gnu.org>
10866
10867 * alloc.c (struct ablock): Only include padding when there is some.
10868
10869 2003-07-04 Stefan Monnier <monnier@cs.yale.edu>
10870
10871 * alloc.c (ALIGN): Add casts to simplify usage.
10872 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
10873 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
10874 (struct ablock, struct ablocks): New types.
10875 (free_ablock): New global var.
10876 (lisp_align_malloc, lisp_align_free): New functions.
10877 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
10878 (struct float_block): Reorder and add gcmarkbits.
10879 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
10880 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
10881 (init_float, make_float): Use lisp_align_malloc.
10882 (free_float, live_float_p): Don't use `type' any more.
10883 (make_float): Use FLOAT_UNMARK to access to mark bit.
10884 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
10885 Use FLOAT_MARKED_P to access the mark bit.
10886 (pure_alloc): Simplify use of ALIGN.
10887 (mark_object): Use FLOAT_MARK to access the mark bit.
10888 (gc_sweep): Use new macros to access the float's mark bit.
10889 (init_alloc_once): Init free_ablock.
10890
10891 * lisp.h (struct Lisp_Float): Remove unused field `type'.
10892
10893 2003-06-27 Stefan Monnier <monnier@cs.yale.edu>
10894
10895 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
10896 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
10897 (allocate_buffer): Move.
10898 (string_bytes): Don't mask markbit of `size_byte'.
10899 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
10900 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
10901 Use the `size' field of buffers (rather than the `name' field) for
10902 the mark bit, as is done for all other vectorlike objects.
10903 Use the new macros to access the mark bit of vectorlike objects.
10904
10905 2003-06-26 Richard M. Stallman <rms@gnu.org>
10906
10907 * puresize.h (BASE_PURESIZE): Increment base size.
10908
10909 * xdisp.c (fast_find_position): Enable Gerd's new definition.
10910
10911 * xterm.c (xim_initialize): Undo previous change.
10912
10913 2003-06-26 Stefan Monnier <monnier@cs.yale.edu>
10914
10915 * alloc.c (survives_gc_p): Simplify.
10916
10917 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
10918
10919 * window.c (Fset_window_dedicated_p): Simplify.
10920 (display_buffer_1): Don't raise the win from which minibuf was entered.
10921 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
10922 (Fminibuffer_selected_window): Simplify.
10923
10924 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
10925
10926 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
10927 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
10928
10929 * insdel.c (check_markers, adjust_markers_for_delete)
10930 (adjust_markers_for_insert, adjust_markers_for_replace)
10931 (prepare_to_modify_buffer, RESTORE_VALUE):
10932 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
10933 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
10934 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
10935 * alloc.c (Fmake_marker, free_marker, gc_sweep):
10936 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
10937 * editfns.c (save_excursion_restore, transpose_markers):
10938 * window.c (delete_window):
10939 * xdisp.c (message_dolog): Update for new types.
10940
10941 2003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10942
10943 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
10944 (realize_default_face): Use default_face_done_p for the force_p
10945 argument to set_lface_from_font_name. Set default_face_done_p to one.
10946
10947 * frame.c (make_frame): Initialize default_face_done_p.
10948
10949 * frame.h (struct frame): Add default_face_done_p.
10950
10951 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
10952 will be defined.
10953
10954 2003-06-25 Stefan Monnier <monnier@cs.yale.edu>
10955
10956 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
10957 Initialize the new field `gcmarkbit'.
10958 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
10959 (mark_interval_tree): Don't mark the tree separately from the nodes.
10960 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
10961 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
10962 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
10963
10964 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
10965 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
10966 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
10967 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
10968 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
10969
10970 2003-06-24 Dave Love <fx@gnu.org>
10971
10972 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
10973
10974 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
10975 from gnulib.
10976
10977 2003-06-21 Richard M. Stallman <rms@gnu.org>
10978
10979 * fileio.c (Fwrite_region): Alternate messages
10980 for append and partial write.
10981
10982 * keyboard.c (read_key_sequence): When converting upcase fn key to
10983 downcase, update fkey and keytran so `backspace' gets translated.
10984
10985 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
10986
10987 * process.c (wait_reading_process_input): Don't signal SIGIO
10988 in batch mode.
10989
10990 2003-06-17 Kenichi Handa <handa@m17n.org>
10991
10992 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
10993 composite.h.
10994
10995 * xselect.c: Don't include charset.h, coding.h, composite.h.
10996 (Qforeign_selection): New variable.
10997 (syms_of_xselect): Intern and static it.
10998 (selection_data_to_lisp_data): Return a unibyte string made from
10999 data with `foreign-selection' text property.
11000
11001 2003-06-15 Stefan Monnier <monnier@cs.yale.edu>
11002
11003 * termhooks.h (EVENT_INIT): New macro.
11004
11005 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
11006
11007 * alloc.c (mark_kboards): Move to keyboard.c.
11008
11009 * keyboard.c (record_asynch_buffer_change, read_avail_input):
11010 * xterm.c (x_dispatch_event):
11011 * xmenu.c (find_and_call_menu_selection):
11012 * xdisp.c (handle_tool_bar_click):
11013 * w32menu.c (menubar_selection_callback):
11014 * sysdep.c (kbd_input_ast, read_input_waiting):
11015 * msdos.c (dos_rawgetc):
11016 * macterm.c (mac_check_for_quit_char):
11017 * macmenu.c (menubar_selection_callback):
11018 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
11019 data to kbd_buffer_store_event.
11020
11021 2003-06-15 Kim F. Storm <storm@cua.dk>
11022
11023 * xdisp.c (x_fix_overlapping_area): Always use area relative X
11024 to fix redisplay problem with tall characters (such as \e,AC\e(B).
11025
11026 2003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
11027
11028 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
11029
11030 2003-06-12 Kenichi Handa <handa@m17n.org>
11031
11032 * fileio.c (Fwrite_region): Save and restore restriction.
11033
11034 2003-06-12 Dave Love <fx@gnu.org>
11035
11036 * alloca.c (alloca): Declare arg as size_t.
11037
11038 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
11039 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
11040
11041 2003-06-11 Dave Love <fx@gnu.org>
11042
11043 * search.c (shrink_regexp_cache): Use xrealloc.
11044 (syms_of_search): Use xmalloc.
11045
11046 2003-06-10 Kim F. Storm <storm@cua.dk>
11047
11048 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
11049 Adjust phys_cursor.x to be relative to window box, rather than
11050 text area before checking -- to ensure cursor is redrawn when
11051 exposing window.
11052 Note: This also fixes a similar (older) bug if display margins
11053 are present.
11054
11055 2003-06-06 Kenichi Handa <handa@m17n.org>
11056
11057 * coding.c (encoding_buffer_size): If coding->type is
11058 coding_type_ccl, double magnification on CRLF encoding.
11059
11060 2003-06-06 Jason Rumney <jasonr@gnu.org>
11061
11062 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
11063 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
11064
11065 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
11066 Mac too.
11067
11068 2003-06-05 Dave Love <fx@gnu.org>
11069
11070 * strftime.c: Merge changes from gnulib.
11071
11072 * mktime.c (__mktime_internal): Merge changes from gnulib
11073 involving year 69 and dst2.
11074
11075 Changes to merge with gnulib version and be consistent with the
11076 autoconf test:
11077
11078 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
11079 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
11080 [HAVE_LOCALE_H]: Include locale.h.
11081 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
11082
11083 2003-06-05 Kim F. Storm <storm@cua.dk>
11084
11085 * window.c (coordinates_in_window): Convert X and Y to window
11086 relative coordinates inside mode-line and header-line parts.
11087 Convert X and Y to margin area relative coordinates inside left
11088 and right display margin parts.
11089
11090 2003-06-05 Jason Rumney <jasonr@gnu.org>
11091
11092 * w32fns.c (add_system_logical_colors_to_map): New function.
11093 (Fx_open_connection): Use it.
11094
11095 2003-06-04 Stefan Monnier <monnier@cs.yale.edu>
11096
11097 * process.c (allocate_pty): Revert part of the previous patch.
11098 (Faccept_process_output): Simplify.
11099
11100 2003-06-04 Jason Rumney <jasonr@gnu.org>
11101
11102 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
11103
11104 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
11105 (lispy_mouse_wheel_names): Remove.
11106 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
11107 Always define drag_and_drop_syms.
11108
11109 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
11110 WHEEL_EVENT events.
11111
11112 2003-06-03 Stefan Monnier <monnier@cs.yale.edu>
11113
11114 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
11115
11116 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
11117
11118 2003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11119
11120 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
11121 menu item label.
11122
11123 2003-06-03 Richard M. Stallman <rms@gnu.org>
11124
11125 * window.c (Fwindow_edges): Doc fix.
11126 (Fwindow_pixel_edges, Fwindow_inside_edges)
11127 (Fwindow_inside_pixel_edges): New functions.
11128 (syms_of_window): defsubr them.
11129
11130 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
11131 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
11132
11133 2003-06-02 Stefan Monnier <monnier@cs.yale.edu>
11134
11135 * dispnew.c (Fsit_for): Don't lie about the number of args.
11136
11137 2003-06-02 Dave Love <fx@gnu.org>
11138
11139 * callproc.c: Use HAVE_FCNTL_H, not USG5.
11140 (syms_of_callproc) <process-environment>: Doc fix.
11141
11142 * doc.c: Use HAVE_FCNTL_H, not USG5.
11143
11144 * xfaces.c (font_rescale_ratio): Fix for K&R.
11145
11146 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
11147
11148 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
11149
11150 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
11151
11152 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
11153 (xg_create_frame_widgets): Use ENCODE_UTF_8.
11154
11155 * xterm.c (Qutf_8): Move to coding.c
11156
11157 * xmenu.c (ENCODE_MENU_STRING): New.
11158 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
11159 Use it.
11160
11161 * coding.h (ENCODE_UTF_8): New.
11162 (Qutf_8): Declare.
11163
11164 * coding.c (Qutf_8): New.
11165 (syms_of_coding): Intern it.
11166
11167 * fns.c: Doc fixes.
11168
11169 2003-06-02 Kenichi Handa <handa@m17n.org>
11170
11171 * buffer.c (Fset_buffer_multibyte): Fix previous change.
11172
11173 2003-06-01 Stefan Monnier <monnier@cs.yale.edu>
11174
11175 * lread.c (openp): Make sure STR is a string.
11176
11177 2003-06-01 David Ponce <david@dponce.com>
11178
11179 * termhooks.h (enum event_kind): Add new WHEEL_EVENT event.
11180 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
11181
11182 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
11183 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
11184 (discard_mouse_events): Discard WHEEL_EVENT events too.
11185 (lispy_wheel_names, wheel_syms): New.
11186 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
11187 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX defined.
11188 (make_lispy_event): Add WHEEL_EVENT handler.
11189
11190 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
11191 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
11192 WHEEL_EVENT events.
11193
11194 2003-05-31 John Paul Wallington <jpw@gnu.org>
11195
11196 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
11197 timer are in lisp/emacs-lisp.
11198
11199 2003-05-31 Kenichi Handa <handa@m17n.org>
11200
11201 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
11202 region when a buffer is changed to unibyte.
11203
11204 * charset.h (VALID_LEADING_CODE_P): New macro.
11205 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
11206
11207 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
11208 is nonzero, accept multibyte form of eight-bit-control chars.
11209 (decode_composition_emacs_mule): Likewise.
11210 (decode_coding_emacs_mule): Likewise.
11211 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
11212 multibyte form of eight-bit-control chars.
11213
11214 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
11215 (Finsert_file_contents): If coding-system-for-read is bound to
11216 Qauto_save_coding, use the coding system emacs-mule with special
11217 setting for recovering a file.
11218 (choose_write_coding_system): On auto saving, use the coding
11219 system emacs-mule with special setting for auto saving.
11220 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
11221
11222 2003-05-30 Kenichi Handa <handa@m17n.org>
11223
11224 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
11225 properly before calling ccl_driver.
11226
11227 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
11228
11229 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is nonzero.
11230 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
11231 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
11232
11233 2003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
11234
11235 * xfaces.c (realize_default_face): Do not abort if lface is
11236 non-existent - reverts change from 2003-05-19.
11237
11238 2003-05-29 Kenichi Handa <handa@m17n.org>
11239
11240 * coding.c (decode_coding_iso2022): Pay attention to the byte
11241 sequence of CTEXT extended segment, and retain those bytes as is.
11242
11243 2003-05-28 Kenichi Handa <handa@m17n.org>
11244
11245 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjust for the name change
11246 of CODING_REPLACEMENT_CHARACTER.
11247 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
11248 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
11249 check this flag on encoding.
11250 (encode_coding_sjis_big5):
11251 Check CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
11252 (Fset_terminal_coding_system_internal):
11253 Set CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
11254 instead of setting CODING_FLAG_ISO_SAFE flag in terminal_coding.flags.
11255
11256 * coding.h (CODING_REPLACEMENT_CHARACTER): Rename from
11257 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
11258 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
11259
11260 2003-05-28 Richard M. Stallman <rms@gnu.org>
11261
11262 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
11263
11264 * eval.c (unbind_to): Move init of this_binding to separate statement.
11265
11266 2003-05-28 Kim F. Storm <storm@cua.dk>
11267
11268 * xdisp.c (expose_window): Fix error in calculation of
11269 window relative coordinates of area to redisplay.
11270
11271 2003-05-27 Jason Rumney <jasonr@gnu.org>
11272
11273 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
11274
11275 2003-05-27 David Ponce <david@dponce.com>
11276
11277 Handle W32 mouse wheel events as mouse click events, like in X.
11278
11279 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
11280 MOUSE_WHEEL_EVENT anymore.
11281
11282 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
11283 Scrolling down/up the mouse wheel is respectively mapped to mouse
11284 button 4 and 5.
11285 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
11286 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
11287 WM_MOUSEWHEEL events.
11288
11289 2003-05-27 Andreas Schwab <schwab@suse.de>
11290
11291 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
11292
11293 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
11294 partially visible line.
11295
11296 * alloc.c (Fgarbage_collect): Fix last change.
11297
11298 2003-05-26 John Paul Wallington <jpw@gnu.org>
11299
11300 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
11301
11302 2003-05-25 Stefan Monnier <monnier@cs.yale.edu>
11303
11304 * window.c (Fset_window_buffer): Add type of `keep_margins'.
11305 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
11306
11307 * window.h (window_box_text_cols): Declare.
11308
11309 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
11310 (x_draw_vertical_border): Remove unused var `f'.
11311
11312 * xfaces.c (build_scalable_font_name): Remove `unused var
11313 pixel_size' warning.
11314
11315 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
11316
11317 * unexelf.c (unexec): Remove `unused var n' warning.
11318
11319 * strftime.c (my_strftime_localtime_r): Remove `defined but
11320 unused' warning.
11321
11322 * process.c (allocate_pty): Remove `unused var stb' and
11323 `cp might be used uninitialized' warnings.
11324
11325 * dispnew.c (mode_line_string): Remove unused var `f'.
11326
11327 * coding.c (find_safe_codings): Remove unused var `i'.
11328
11329 * bytecode.c (Fbyte_code): Remove `unused val' warning.
11330
11331 * buffer.c (Fkill_buffer): Remove unused var `list'.
11332
11333 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
11334
11335 2003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11336
11337 * frame.c (make_frame): Condition want_fullscreen with
11338 HAVE_WINDOW_SYSTEM.
11339
11340 2003-05-25 Juanma Barranquero <lektu@terra.es>
11341
11342 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
11343 (Fwindow_scroll_bars): Fix typo in docstring.
11344
11345 2003-05-24 Kim F. Storm <storm@cua.dk>
11346
11347 The following changes serve several purposes:
11348
11349 1) Swap the position of fringes and display margins in windows, i.e.
11350 the fringes are now displayed between the margins and the text area
11351 (by default).
11352
11353 2) Allow fringe and scroll bar parameters to be set per-buffer and
11354 per-window (like display margins). Such settings are now stored
11355 in window configurations, preserved when frames are resized, and
11356 copied when windows are split vertically or horizontally.
11357 Several bugs related to display margins have been fixed.
11358
11359 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
11360
11361 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
11362 rather than FRAME_WIDTH (FRAME_FONT (f)).
11363
11364 5) Introduce a consistent naming of variables, members and macros
11365 depending on whether their value is measured in pixels or in
11366 canonical columns/lines. Pixel dimensions are named *_width and
11367 *_height, while canonical columns/lines are named *_cols and
11368 *_lines. Pixel positions are named *_x and *_y, while column/line
11369 positions are named *_col and *_line.
11370
11371 6) Consolidate more of the X, W32, and MAC gui code by moving
11372 common data into struct frame, and generalize it for the non-gui
11373 case by using suitable defaults.
11374
11375 7) Cleanup and consolidate the macros controlling frame and window
11376 layout into frame.h and window.h, and generalize the use of the
11377 various window_box_* functions (enhanced to handle the new fringe
11378 position and the per-window fringe and scroll bar settings).
11379
11380 * frame.h (struct frame): Rename members height to text_lines,
11381 width to text_cols, window_height to total_lines, window_width to
11382 total_cols, new_height to new_text_lines, new_width to
11383 new_text_cols. All uses changed.
11384 (struct frame): New members which consolidate common members of
11385 x_output, w32_output, and mac_output structures: left_pos,
11386 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
11387 win_gravity, size_hint_flags, border_width, internal_border_width,
11388 line_height, fringe_cols, left_fringe_width, right_fringe_width,
11389 want_fullscreen. All uses changed.
11390 (struct frame): New member column_width contaning the canonical
11391 column width, analogue to line_height. All uses changed.
11392 (struct frame): Rename members scroll_bar_pixel_width to
11393 config_scroll_bar_width, and scroll_bar_cols to
11394 config_scroll_bar_cols. All uses changed.
11395 (struct frame): New member scroll_bar_actual_width which
11396 consolidates and renames the vertical_scroll_bar_extra member of
11397 x_output, w32_output, and mac_output structures. All uses changed.
11398 (FRAME_PIXEL_HEIGHT): Rename from PIXEL_HEIGHT and moved
11399 from x/w32/macterm.h files. All uses changed. Also change code
11400 which referred to f->output_data...->pixel_height.
11401 (FRAME_PIXEL_WIDTH): Rename from PIXEL_WIDTH and moved
11402 from x/w32/macterm.h files. All uses changed. Also change code
11403 which referred to f->output_data...->pixel_width.
11404 (FRAME_LINES): Rename from FRAME_HEIGHT. All uses changed.
11405 Also change code which referred to f->height.
11406 (FRAME_COLS): Rename from FRAME_WIDTH. All uses changed.
11407 Also change code which referred to f->width.
11408 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
11409 to update new_text_lines and new_text_cols members directly.
11410 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Rename from
11411 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
11412 (FRAME_CONFIG_SCROLL_BAR_COLS): Rename from
11413 FRAME_SCROLL_BAR_COLS. All uses changed.
11414 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
11415 Rename from FRAME_LEFT_SCROLL_BAR_WIDTH and
11416 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
11417 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
11418 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
11419 (FRAME_TOTAL_COLS): Rename from FRAME_WINDOW_WIDTH.
11420 (SET_FRAME_COLS): Rename from SET_FRAME_WIDTH.
11421 (FRAME_TOTAL_COLS_ARG): Rename from FRAME_WINDOW_WIDTH_ARG.
11422 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
11423 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
11424 (FRAME_LINE_HEIGHT): Rename from CANON_Y_UNIT.
11425 Unconditionally return line_height member (it now has proper value
11426 also for non-window frames).
11427 (FRAME_COLUMN_WIDTH): Rename from CANON_X_UNIT. Unconditionally
11428 return new column_width member (rather than the default font width).
11429 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
11430 (FRAME_RIGHT_FRINGE_WIDTH): Rename from FRAME_X_... and moved
11431 from x/w32/macterm.h files. Unconditionally return corresponding
11432 member of frame structure (they now have proper values also for
11433 non-window frames).
11434 (FRAME_TOTAL_FRINGE_WIDTH): Rename from FRAME_FRINGE_WIDTH.
11435 Calculate return value from left and right widths.
11436 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
11437 internal_border_width member (has proper value for non-window frame).
11438 (FRAME_PIXEL_X_FROM_CANON_X): Rename from PIXEL_X_FROM_CANON_X.
11439 (FRAME_PIXEL_Y_FROM_CANON_Y): Rename from PIXEL_Y_FROM_CANON_Y.
11440 (FRAME_CANON_X_FROM_PIXEL_X): Rename from CANON_X_FROM_PIXEL_X.
11441 (FRAME_CANON_Y_FROM_PIXEL_Y): Rename from CANON_Y_FROM_PIXEL_Y.
11442 (FRAME_LINE_TO_PIXEL_Y): Rename from CHAR_TO_PIXEL_ROW,
11443 consolidated from xterm.h, macterm.h, and w32term.h.
11444 (FRAME_COL_TO_PIXEL_X): Rename from CHAR_TO_PIXEL_COL,
11445 consolidated from xterm.h, macterm.h, and w32term.h.
11446 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Rename from
11447 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
11448 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Rename from
11449 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
11450 (FRAME_PIXEL_Y_TO_LINE): Rename from PIXEL_TO_CHAR_ROW
11451 consolidated from x/mac/w32term.h.
11452 (FRAME_PIXEL_X_TO_COL): Rename from PIXEL_TO_CHAR_COL
11453 consolidated from x/mac/w32term.h.
11454 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Rename from
11455 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
11456 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Rename from
11457 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
11458
11459 * window.h (struct window): Rename members left to left_col,
11460 top to top_line, height to total_lines, width to total_cols,
11461 left_margin_width to left_margin_cols, right_margin_width to
11462 right_margin_cols, orig_height to orig_total_lines, orig_top to
11463 orig_top_line. All uses changed.
11464 (struct window): New members left_fringe_width, right_fringe_width,
11465 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
11466 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
11467 New macros primarily used to simplify other macros.
11468 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
11469 referred to XINT (w->width).
11470 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
11471 referred to XINT (w->height).
11472 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
11473 referred to XINT (w->width) * canon_x_unit.
11474 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
11475 referred to XINT (w->height) * canon_y_unit.
11476 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
11477 referred to XINT (w->left).
11478 (WINDOW_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_EDGE. Change
11479 all uses and code that referred to XINT (w->left) + XINT (w->width).
11480 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
11481 referred to XINT (w->top).
11482 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
11483 referred to XINT (w->top) + XINT (w->height).
11484 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
11485 referred to XINT (w->left) * canon_x_unit.
11486 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
11487 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
11488 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
11489 referred to XINT (w->top) * canon_y_unit.
11490 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
11491 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
11492 (WINDOW_LEFTMOST_P): New macro.
11493 (WINDOW_BOX_LEFT_EDGE_COL): Rename from WINDOW_LEFT_MARGIN.
11494 All uses changed.
11495 (WINDOW_BOX_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_MARGIN.
11496 All uses changed.
11497 (WINDOW_BOX_LEFT_EDGE_X): Rename from
11498 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
11499 Do not exclude left fringe width.
11500 (WINDOW_BOX_RIGHT_EDGE_X): Rename from
11501 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
11502 Do not exclude fringe widths.
11503 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
11504 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
11505 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
11506 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
11507 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
11508 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
11509 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
11510 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
11511 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
11512 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
11513 New macros. Change code which referenced corresponding
11514 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
11515 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
11516 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
11517 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
11518 allow per-window scroll-bar settings.
11519 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
11520 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
11521 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
11522 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
11523 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
11524 FRAME_SCROLL_BAR_WIDTH.
11525 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
11526 (WINDOW_SCROLL_BAR_AREA_X): New macros.
11527 (WINDOW_HEADER_LINE_HEIGHT): Rename from
11528 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
11529 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Rename from
11530 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
11531 (WINDOW_BOX_TEXT_HEIGHT): Rename from
11532 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
11533 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
11534 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
11535 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Move here from dispextern.h.
11536 (WINDOW_LEFT_MARGIN_WIDTH): Rename from
11537 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
11538 (WINDOW_RIGHT_MARGIN_WIDTH): Rename from
11539 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
11540 (window_from_coordinates): Update prototype.
11541 (Fset_window_buffer): Update EXFUN.
11542 (set_window_buffer): Update prototype.
11543
11544 * dispextern.h (struct glyph_matrix): Rename members window_left_x
11545 to window_left_col, window_top_y to window_top_line. All uses
11546 changed.
11547 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
11548 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
11549 internal_border_width is now set to 0 for non-window frames.
11550 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
11551 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
11552 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
11553 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
11554 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
11555 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
11556 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
11557 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
11558 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
11559 Move to window.h and renamed [see window.h changes].
11560 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
11561 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
11562 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
11563 Use WINDOW_TOTAL_LINES.
11564 (frame_update_line_height): Remove prototype.
11565
11566 * buffer.h (struct buffer): Rename members measured in columns:
11567 left_margin_width to left_margin_cols, right_margin_width to
11568 right_margin_cols. All uses changed.
11569 New members left_fringe_width, right_fringe_width,
11570 fringes_outside_margins for per-buffer fringe settings.
11571 New members scroll_bar_width and vertical_scroll_bar_type for
11572 per-buffer scroll bar settings.
11573
11574 * buffer.c (init_buffer_once): Set buffer_defaults and
11575 buffer_local_flags for new buffer-local variables
11576 left_fringe_width, right_fringe_width, fringes_outside_margins,
11577 scroll_bar_width, and vertical_scroll_bar_type.
11578 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
11579 default-* variables for them.
11580
11581 * dispnew.c: Make (many) trivial substitutions for renamed and
11582 new macros in dispextern.h, frame.h and window.h.
11583 (mode_line_string): No need to adjust width for mode lines, as it
11584 is already adjusted by the caller.
11585 (marginal_area_string): Handle fringes inside/outside margins.
11586
11587 * frame.c: Make (many) trivial substitutions for renamed and
11588 new macros in dispextern.h, frame.h and window.h.
11589 (make_frame): Initialize left_fringe_width, right_fringe_width,
11590 fringe_cols, scroll_bar_actual_width, border_width,
11591 internal_border_width, column_width, line_height, x_pixels_diff,
11592 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
11593 members with values suitable for a non-window frames.
11594
11595 * gtkutil.c: Make (many) trivial substitutions for renamed and
11596 new macros in dispextern.h, frame.h and window.h.
11597
11598 * indent.c: Make (few) trivial substitutions for renamed and
11599 new macros in dispextern.h, frame.h and window.h.
11600
11601 * keyboard.c: Make (many) trivial substitutions for renamed and
11602 new macros in dispextern.h, frame.h and window.h.
11603 (make_lispy_event): Use window positions returned from
11604 window_from_coordinates when constructing the lisp event for
11605 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
11606 (incorrect) values locally.
11607 (make_lispy_movement): Use window positions returned from
11608 window_from_coordinates when constructing the lisp event, rather
11609 than calculating (incorrect) values locally.
11610
11611 * scroll.c: Make (some) trivial substitutions for renamed and
11612 new macros in dispextern.h, frame.h and window.h.
11613
11614 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
11615 scroll-bars.
11616
11617 * sysdep.c: Make (few) trivial substitutions for renamed and
11618 new macros in dispextern.h, frame.h and window.h.
11619
11620 * term.c: Make (some) trivial substitutions for renamed and
11621 new macros in dispextern.h, frame.h and window.h.
11622
11623 * widget.c: Make (few) trivial substitutions for renamed and
11624 new macros in dispextern.h, frame.h and window.h.
11625
11626 * window.c: Make (many) trivial substitutions for renamed and
11627 new macros in dispextern.h, frame.h and window.h.
11628 (make_window): Initialize new members
11629 left_margin_cols, right_margin_cols, left_fringe_width,
11630 right_fringe_width, fringes_outside_margins, scroll_bar_width,
11631 and vertical_scroll_bar_type.
11632 (coordinates_in_window): Adapt to new fringe/margin positions
11633 and per-window fringes and scroll-bars.
11634 Fix bug related to incorrectly adjusting coordinates by
11635 frame's internal_border_width (the effect normally negible since
11636 the internal_border_width is typically 0 or 1 pixel, but very
11637 noticeable for an internal_border_width of e.g. 25 pixels).
11638 Upon successful return (other than ON_NOTHING), the coordinates
11639 are now always properly converted to window relative for the
11640 given display element.
11641 (window_from_coordinates): Add new parameters wx and wy to
11642 return the window relative x and y position in the returned
11643 window and part. A null arg means, don't return the position.
11644 All callers changed.
11645 (adjust_window_margins): New function which may reduce the width
11646 of the display margins if a window's text area is too small after
11647 resizing or splitting windows.
11648 (size_window): Fix bug that did not account for display margin
11649 widths when checking the minimum width of a window; use
11650 adjust_window_margins.
11651 (set_window_buffer): Call Fset_window_fringes and
11652 Fset_window_scroll_bars to setup per-window elements.
11653 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
11654 existing display margin, fringe widths, and scroll bar settings
11655 (e.g. after splitting a window or resizing the frame).
11656 All callers changed.
11657 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
11658 (Fsplit_window): Duplicate original window's display margin,
11659 fringe, and scroll-bar settings; then call Fset_window_buffer with
11660 KEEP_MARGINS non-nil. This fixes a bug which caused a split
11661 window to only preserve the display margins in one of the windows.
11662 When splitting horizontally, call adjust_window_margins on both
11663 windows to ensure that the text area of the new windows is non too
11664 narrow. This fixes a bug which could cause Emacs to trap if the
11665 width of the split window was less than the width of the display
11666 margins.
11667 (window_box_text_cols): Rename from window_internal_width.
11668 All uses changed. Adapt to per-window fringes and scroll bars.
11669 Fix bug that caused vertical separator to be subtracted also on
11670 window frames. Fix another bug that did not reduce the returned
11671 value by the columns used for display margins.
11672 (window_scroll_line_based): Fix bug related to scrolling too much
11673 when display margins are present (implicitly fixed by the fix to
11674 window_box_text_cols).
11675 (scroll_left, scroll_right): Fix bug related to scrolling too far
11676 by default when display margins are present (implicitly fixed by
11677 the fix to window_box_text_cols).
11678 (struct saved_window): Rename members left to left_col, top to
11679 top_line, width to total_cols, height to total_lines, orig_top to
11680 orig_top_line, orig_height to orig_total_lines. All uses changed.
11681 New members left_margin_cols, right_margin_cols,
11682 left_fringe_width, right_fringe_width, fringes_outside_margins,
11683 scroll_bar_width, and vertical_scroll_bar_type for saving
11684 per-window display elements.
11685 (Fset_window_configuration): Restore display margins, fringes,
11686 and scroll bar settings. This fixes a bug which caused display
11687 margins to be discarded when saving and restoring a window
11688 configuration.
11689 (save_window_save): Save display margins, fringes, and scroll bar
11690 settings. This fixes a bug which caused display margins to be
11691 discarded when saving and restoring a window configuration.
11692 (Fset_window_margins): Do nothing if display margins are not
11693 really changed. Otherwise, call adjust_window_margins to ensure
11694 the text area doesn't get too narrow. This fixes a bug which
11695 could cause Emacs to trap if setting display margins wider than
11696 the width of the window.
11697 (Fset_window_fringes): New defun to allow user to specifically set
11698 this window's fringe widths and position vs. display margins.
11699 (Fwindow_fringes): New defun to return window's actual fringe settings.
11700 (Fset_window_scroll_bars): New defun to allow user to specifically
11701 set this window's scroll bar width and position.
11702 (Fwindow_scroll_bars): New defun to return window's actual scroll
11703 bar settings.
11704 (compare_window_configurations): Also compare display margins,
11705 fringes, and scroll bar settings.
11706 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
11707
11708 * xdisp.c: Make (many) trivial substitutions for renamed and
11709 new macros in dispextern.h, frame.h and window.h.
11710 (window_box_width): Adapt to per-window fringes and scroll bars,
11711 and new fringe vs. display margin position. Note that returned
11712 value is no longer guaranteed to be a whole multiple of the frame
11713 column width, since per-window fringes may now be any width.
11714 (window_box_left_offset): New function like window_box_left, but
11715 value is relative to left border of window (rather than frame).
11716 (window_box_right_offset): New function like window_box_right,
11717 but value is relative to left border of window.
11718 (window_box_left): Adapt to per-window fringes and scroll bars,
11719 and new fringe vs. display margin position. Simplify by using
11720 WINDOW_LEFT_EDGE_X and window_box_left_offset.
11721 (window_box): Allow null args for unnecessary return values;
11722 change/simplify relevant callers.
11723 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
11724 and new fringe vs. display margin position.
11725 Use window_box_left_offset and window_box_right_offset
11726 (get_glyph_string_clip_rect): Adapt to per-window fringes and
11727 scroll bars, and new fringe vs. display margin position.
11728 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
11729 (draw_fringe_bitmap): Rework to handle per-window fringes and new
11730 fringe vs. display margin position.
11731 (hscroll_window_tree): Use window_box_width instead of window_box.
11732 (redisplay_window): Adapt to per-window scroll bars.
11733 (draw_glyphs): Rework to handle per-window fringes and scroll
11734 bars, and new fringe vs. display margin position.
11735 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
11736 (x_clear_end_of_line): Adapt to per-window fringes and scroll
11737 bars, and new fringe vs. display margin position. Fix bug which
11738 increased total width of full_width rows by width of scroll bars
11739 although window's total width already includes that.
11740 (x_fix_overlapping_area): Simplify using window_box_left_offset.
11741 (expose_area): Simplify using window_box_left_offset.
11742 (x_draw_vertical_border): Handle per-window scroll bar settings,
11743 mixing windows with left, right and no scroll bars.
11744
11745 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
11746 where it's used in x_list_fonts (for clarity).
11747 (frame_update_line_height): Remove unused function; functionality
11748 is now done directly when setting the default font in x_set_font.
11749
11750 * xfns.c: Make (many) trivial substitutions for renamed and
11751 new macros in dispextern.h, frame.h and window.h.
11752
11753 * xmenu.c: Make (some) trivial substitutions for renamed and
11754 new macros in dispextern.h, frame.h and window.h.
11755
11756 * xterm.h (struct x_output): Move members left_pos, top_pos,
11757 border_width, pixel_height, pixel_width, line_height,
11758 internal_border_width, vertical_scroll_bar_extra,
11759 left_fringe_width, right_fringe_width, fringe_cols,
11760 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
11761 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
11762 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
11763 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
11764 (PIXEL_WIDTH, PIXEL_HEIGHT)
11765 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
11766 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
11767 frame.h and renamed [see frame.h changes].
11768 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
11769 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
11770 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
11771 and renamed [see frame.h changes].
11772
11773 * xterm.c: Make (several) trivial substitutions for renamed and
11774 new macros in dispextern.h, frame.h and window.h.
11775 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
11776 (scroll_run): Adapt to new fringe position.
11777 (glyph_rect): Use window coordinates returned from
11778 window_from_coordinates rather than frame_to_window_pixel_xy.
11779 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
11780 scroll-bars.
11781 (handle_one_xevent): Simplify a USE_GTK conditional.
11782 (x_clip_to_row): Remove superfluous whole_line_p arg and code
11783 (fringes are now inside margins, i.e. always in the clipping area).
11784 All callers changed.
11785 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
11786 directly, then call compute_fringe_widths. Don't call
11787 frame_update_line_height.
11788
11789 * w32term.h (struct w32_output): Move members left_pos, top_pos,
11790 border_width, pixel_height, pixel_width, line_height,
11791 internal_border_width, vertical_scroll_bar_extra,
11792 left_fringe_width, right_fringe_width, fringe_cols,
11793 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
11794 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
11795 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
11796 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
11797 (PIXEL_WIDTH, PIXEL_HEIGHT)
11798 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
11799 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
11800 frame.h and renamed [see frame.h changes].
11801 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
11802 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
11803 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
11804 and renamed [see frame.h changes].
11805
11806 * w32term.c: Make (several) trivial substitutions for renamed and
11807 new macros in dispextern.h, frame.h and window.h.
11808 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
11809 (glyph_rect): Use window coordinates returned from
11810 window_from_coordinates rather than frame_to_window_pixel_xy.
11811 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
11812 scroll-bars.
11813 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
11814 (fringes are now inside margins, i.e. always in the clipping area).
11815 All callers changed.
11816 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
11817 directly, then call compute_fringe_widths. Don't call
11818 frame_update_line_height.
11819
11820 * w32console.c: Make (few) trivial substitutions for renamed and
11821 new macros in dispextern.h, frame.h and window.h.
11822
11823 * w32fns.c: Make (many) trivial substitutions for renamed and
11824 new macros in dispextern.h, frame.h and window.h.
11825
11826 * w32menu.c: Make (few) trivial substitutions for renamed and
11827 new macros in dispextern.h, frame.h and window.h.
11828
11829 * macterm.h (struct mac_output): Move members left_pos, top_pos,
11830 border_width, pixel_height, pixel_width, line_height,
11831 internal_border_width, vertical_scroll_bar_extra,
11832 left_fringe_width, right_fringe_width, fringe_cols,
11833 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
11834 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
11835 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
11836 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
11837 (PIXEL_WIDTH, PIXEL_HEIGHT)
11838 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
11839 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
11840 frame.h and renamed [see frame.h changes].
11841 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
11842 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
11843 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
11844 and renamed [see frame.h changes].
11845
11846 * macterm.c: Make (several) trivial substitutions for renamed and
11847 new macros in dispextern.h, frame.h and window.h.
11848 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
11849 (glyph_rect): Use window coordinates returned from
11850 window_from_coordinates rather than frame_to_window_pixel_xy.
11851 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
11852 scroll-bars.
11853 (x_clip_to_row): Remove superfluous whole_line_p arg and code
11854 (fringes are now inside margins, i.e. always in the clipping area).
11855 All callers changed.
11856 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
11857 directly, then call compute_fringe_widths. Don't call
11858 frame_update_line_height.
11859
11860 * macfns.c: Make (several) trivial substitutions for renamed and
11861 new macros in dispextern.h, frame.h and window.h.
11862 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
11863
11864 * macmenu.c: Make (few) trivial substitutions for renamed and
11865 new macros in dispextern.h, frame.h and window.h.
11866
11867 * msdos.h (struct x_output): Remove members left_pos, top_pos,
11868 and line_height, and use corresponding new members in struct
11869 frame. All uses changed.
11870 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
11871 superseeded by corresponding macros in frame.h.
11872
11873 * msdos.c: Make (several) trivial substitutions for renamed and
11874 new macros in dispextern.h, frame.h and window.h.
11875 (IT_note_mouse_highlight): Use updated window coordinates returned
11876 by window_from_coordinates, rather than adjusting them locally.
11877 (internal_terminal_init): No need to initialize line_height here;
11878 it now defaults to 1.
11879
11880 2003-05-24 Stefan Monnier <monnier@cs.yale.edu>
11881
11882 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
11883 dropping `down' events.
11884
11885 2003-05-24 Andreas Schwab <schwab@suse.de>
11886
11887 * coding.c (find_safe_codings): Fix last change.
11888
11889 2003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
11890
11891 * xfns.c (x_window): Fix typo from 2003-05-21 change.
11892
11893 2003-05-23 Stefan Monnier <monnier@cs.yale.edu>
11894
11895 * xdisp.c (display_mode_element): Increase max depth.
11896 Simplify the error handling code. Use a different error string
11897 for the case where we hit the depth limit.
11898
11899 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
11900
11901 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
11902
11903 2003-05-21 Stefan Monnier <monnier@cs.yale.edu>
11904
11905 * intervals.c (get_local_map): Don't get char-property of previous
11906 point any more: get_pos_property already does it and better.
11907
11908 2003-05-21 Dave Love <fx@gnu.org>
11909
11910 [Merged from unicode branch.]
11911
11912 * xfns.c (x_window, x_window): Use use_xim.
11913
11914 * xterm.c (use_xim): Initialize.
11915 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
11916 (x_term_init): Maybe set use_xim.
11917
11918 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
11919
11920 2003-05-21 Jason Rumney <jasonr@gnu.org>
11921
11922 * unexw32.c (_start): Remove _fmode initialization.
11923
11924 * emacs.c (main) [WINDOWSNT]: Move it here.
11925
11926 2003-05-20 Dave Love <fx@gnu.org>
11927
11928 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
11929
11930 2003-05-19 Richard M. Stallman <rms@gnu.org>
11931
11932 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
11933 as value for QCfont attribute.
11934 (realize_default_face): lface should already exist; crash if not.
11935 Specify 0 for FORCE_P when calling set_lface_from_font_name.
11936
11937 * frame.c (Fignore_event): Doc fix.
11938
11939 2003-05-19 Kenichi Handa <handa@m17n.org>
11940
11941 * coding.c (decode_coding_string): Handle post-read-conversion
11942 even if the coding doesn't require decoding.
11943
11944 2003-05-18 Richard M. Stallman <rms@gnu.org>
11945
11946 * callproc.c (Fcall_process_region): Doc fix.
11947
11948 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
11949
11950 * lread.c (Fload): Print a message if package is obsolete.
11951
11952 * window.c (Fselect_window): Add optional `norecord' arg.
11953 (select_window_1): Fold into Fselect_window.
11954 (select_window_norecord): New function.
11955 (temp_output_buffer_show): Use it. Preserve current buffer.
11956
11957 * window.h (Fselect_window): Update declaration.
11958
11959 * window.c (delete_window, Fother_window, Fset_window_configuration):
11960 * minibuf.c (read_minibuf):
11961 * macterm.c (x_new_focus_frame):
11962 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
11963 * callint.c (Fcall_interactively):
11964 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
11965
11966 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
11967
11968 2003-05-17 David Kastrup <dak@gnu.org>
11969
11970 * process.c (read_process_output): Back out change from 2003-03-09.
11971
11972 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
11973
11974 * editfns.c (get_pos_property): Don't assume that `object' = nil.
11975
11976 * textprop.c (text_property_stickiness): New arg `buffer'.
11977
11978 * intervals.h (text_property_stickiness): New arg `buffer'.
11979 (get_pos_property): Declare.
11980
11981 * intervals.c (get_local_map): Use get_pos_property, to obey
11982 stickiness and empty overlays.
11983 (create_root_interval, graft_intervals_into_buffer): Use BEG.
11984 (merge_properties, intervals_equal, merge_properties_sticky):
11985 Use XCAR, XCDR.
11986 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
11987
11988 2003-05-17 Richard M. Stallman <rms@gnu.org>
11989
11990 * minibuf.c (read_minibuf): If buffer is empty, record the default
11991 in the history.
11992 (Fminibuffer_complete_word): When deleting the overlap, take account
11993 of its real position.
11994
11995 * fns.c (map_char_table): Fix previous change.
11996
11997 * syntax.c (find_defun_start):
11998 When open_paren_in_column_0_is_defun_start,
11999 return beginning of buffer.
12000
12001 * lisp.h (map_char_table): Declare added arg.
12002
12003 * fns.c (map_char_table): New arg TABLE gets the master table.
12004 All calls changed.
12005 Process default and inheritance, resorting to Faref if necessary.
12006
12007 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
12008 (Faccessible_keymaps): Pass new arg to map_char_table.
12009
12010 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
12011
12012 * casetab.c (set_case_table): Pass new arg to map_char_table.
12013
12014 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
12015
12016 * lisp.h (specbinding_func): New typedef.
12017 (struct specbinding): Use specbinding_func, to put the `volatile'
12018 in the right place.
12019
12020 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
12021 to avoid GCC warning.
12022
12023 2003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org>
12024
12025 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
12026
12027 2003-05-15 Stefan Monnier <monnier@cs.yale.edu>
12028
12029 * keyboard.c (apply_modifiers): Don't fill the other cache.
12030
12031 2003-05-14 Stefan Monnier <monnier@cs.yale.edu>
12032
12033 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
12034
12035 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
12036 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
12037 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
12038 (Fset_window_configuration, Fcurrent_window_configuration)
12039 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
12040 (Fpos_visible_in_window_p, mark_window_cursors_off)
12041 (window_internal_height, window_internal_width, Frecenter)
12042 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
12043 (replace_buffer_in_all_windows, init_window_once, init_window)
12044 (syms_of_window, keys_of_window): Move from lisp.h.
12045 * lisp.h: Move window.c declarations to window.h.
12046
12047 * bytecode.c: Include window.h.
12048 * emacs.c: Include window.h.
12049
12050 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
12051 (keyremap): Add `parent' field.
12052 (keyremap_step): Use it. Remove `parent' argument.
12053 (read_key_sequence): Setup and use the new `parent' field.
12054
12055 2003-05-11 Stefan Monnier <monnier@cs.yale.edu>
12056
12057 * keyboard.c (adjust_point_for_property): Ensure termination.
12058
12059 2003-05-10 Stefan Monnier <monnier@cs.yale.edu>
12060
12061 * keyboard.c (follow_key): Remove dead variable `did_meta'.
12062 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
12063 duplicated handling of function-key-map and key-translation-map
12064 in read_key_sequence.
12065 (read_key_sequence): Use them.
12066
12067 * keyboard.c (adjust_point_for_property): Try harder to move point
12068 to the non-sticky end of an invisible property.
12069
12070 * xdisp.c (single_display_prop_intangible_p): Make `space' display
12071 property intangible as well.
12072
12073 2003-05-10 Andreas Schwab <schwab@suse.de>
12074
12075 * xmenu.c (single_menu_item): Change last parameter to void* to
12076 avoid warning.
12077
12078 2003-05-09 Richard M. Stallman <rms@gnu.org>
12079
12080 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
12081 Bind Qinhibit_modification_hooks to t so there will be no GC.
12082 Rename local `tem' to `save_deactivate_mark'.
12083
12084 * eval.c (specpdl_ptr): Declare volatile.
12085 (unbind_to): Copy the whole binding and decrement specpdl_ptr
12086 before doing the work of unbinding it.
12087
12088 * lisp.h (struct specbinding): Declare elements volatile.
12089 (specpdl_ptr): Declare volatile.
12090
12091 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
12092
12093 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
12094 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
12095
12096 2003-05-08 Dave Love <fx@gnu.org>
12097
12098 * coding.c (Vlast_coding_system_used): Doc fix.
12099
12100 2003-05-07 Jason Rumney <jasonr@gnu.org>
12101
12102 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
12103 when system does not support them.
12104
12105 2003-05-05 Stefan Monnier <monnier@cs.yale.edu>
12106
12107 * fileio.c (Qwrite_region_annotate_functions): New var.
12108 (build_annotations): Use it to process the global part of the hook.
12109 (syms_of_fileio): Init and staticpro it.
12110
12111 * keyboard.c (safe_run_hooks_error): Display a message instead of
12112 silently ignoring the error.
12113
12114 2003-05-03 Stefan Monnier <monnier@cs.yale.edu>
12115
12116 * keyboard.c (input_available_signal): Mark static.
12117 (menu_bar_items): Use map_keymap.
12118 (menu_bar_one_keymap): Remove.
12119 (menu_bar_item): Adjust arglist (for use in map_keymap).
12120 Properly hide a second binding when not both are keymaps.
12121
12122 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
12123 (single_keymap_panes): Use it and map_keymap.
12124 (single_menu_item): Use skp as well.
12125
12126 * keymap.h (map_keymap_function_t): New type.
12127 (map_keymap): Declare.
12128
12129 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
12130 (map_keymap_call, Fmap_keymap): New functions.
12131 (syms_of_keymap): Defsubr map-keymap.
12132
12133 2003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12134
12135 * gtkutil.c (create_dialog, make_widget_for_menu_item)
12136 (make_menu_item, create_menus, xg_update_menu_item): Don't call
12137 ..._with_mnemonic functions for menu items.
12138
12139 2003-05-01 Kenichi Handa <handa@m17n.org>
12140
12141 * coding.c (coding_system_accept_latin_extra_p): Delete this
12142 function.
12143 (find_safe_codings): Pay attention to
12144 the property tranlsation-table-for-encode of each codings.
12145 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
12146
12147 2003-05-01 Stefan Monnier <monnier@cs.yale.edu>
12148
12149 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
12150
12151 2003-04-30 Stefan Monnier <monnier@cs.yale.edu>
12152
12153 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
12154
12155 * lisp.h (CHECK): Wrap args in parenthesis.
12156 (specbind): Fix doc: symbol = Qnil is not supported any more.
12157
12158 * bytecode.c (Fbyte_code) <unwind-protect>:
12159 Use Fprogn rather than 0 and Qnil.
12160
12161 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
12162 `double', and `triple' modifiers as well.
12163
12164 2003-04-30 Richard M. Stallman <rms@gnu.org>
12165
12166 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
12167
12168 * alloc.c (abort_on_gc): New variable.
12169 (Fgarbage_collect): Abort if abort_on_gc is set.
12170
12171 * lisp.h (abort_on_gc): Add decl.
12172
12173 * eval.c (Fsignal): Clear abort_on_gc.
12174
12175 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
12176 Reinit FORMAT_START and END before second scan.
12177
12178 * xdisp.c (move_it_vertically_backward): Do the final big else
12179 even if nlines is 0.
12180
12181 * xdisp.c (redisplay_internal): Finish the per-frame loop
12182 even if redisplay is suspended by input.
12183
12184 2003-04-24 Andrew Choi <akochoi@shaw.ca>
12185
12186 * macterm.c (x_list_fonts): Return all fonts that match if
12187 maxnames = -1.
12188
12189 2003-04-25 Kenichi Handa <handa@m17n.org>
12190
12191 * syntax.c (skip_chars): Fix previous change.
12192
12193 2003-04-24 Kenichi Handa <handa@m17n.org>
12194
12195 * syntax.c (skip_chars): Make the code faster by using the common
12196 technique of *p, *stop, and *endp.
12197
12198 2003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12199
12200 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
12201 tool_bar_items so GTK tool bar expose callback does not access items
12202 being updated.
12203
12204 2003-04-19 Stefan Monnier <monnier@cs.yale.edu>
12205
12206 * eval.c (Fapply): Undo last change and add a comment about why.
12207
12208 2003-04-18 Miles Bader <miles@gnu.org>
12209
12210 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
12211 pickier PARSE_MULTIBYTE_SEQ.
12212
12213 2003-04-17 Stefan Monnier <monnier@cs.yale.edu>
12214
12215 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
12216 Use XCDR, XCAR, CONSP.
12217 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
12218 (Fapply): Remove unnecessary GCPRO.
12219
12220 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
12221
12222 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
12223
12224 * buffer.h: Don't hardcode BEG==1.
12225
12226 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
12227
12228 2003-04-16 Richard M. Stallman <rms@gnu.org>
12229
12230 * xdisp.c (try_window, try_window_reusing_current_matrix):
12231 When at end of window, set window_end_pos to Z-ZV.
12232
12233 * buffer.c (Foverlay_recenter): Doc fix.
12234
12235 2003-04-14 Stefan Monnier <monnier@cs.yale.edu>
12236
12237 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
12238
12239 2003-04-14 Andrew Choi <akochoi@shaw.ca>
12240
12241 * macterm.c (mac_check_for_quit_char): Don't check more often than
12242 once a second.
12243
12244 2003-04-11 Stefan Monnier <monnier@cs.yale.edu>
12245
12246 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
12247 specially, so that they can't hide an implicit switch-frame event.
12248 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
12249 (head_table): Use switch-frame as event_kind for select-window.
12250 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
12251
12252 * editfns.c (Fformat): Lisp_Object/int mixup.
12253 (format2): Remove unused var numargs.
12254
12255 2003-04-11 Kenichi Handa <handa@m17n.org>
12256
12257 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
12258 (Qafter_insert_file_set_coding): New variable.
12259 (syms_of_fileio): Initialize and staticpro it. Delete declaration
12260 for after-insert-file-adjust-coding-function.
12261 (Finsert_file_contents): Call Qafter_insert_file_set_coding
12262 instead of Vafter_insert_file_adjust_coding_function.
12263
12264 2003-04-11 Kenichi Handa <handa@m17n.org>
12265
12266 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
12267
12268 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
12269 string. Callers changed.
12270
12271 2003-04-10 Kenichi Handa <handa@m17n.org>
12272
12273 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
12274 (syms_of_fileio): Declare it as a lisp variable.
12275 (Finsert_file_contents):
12276 Call Vafter_insert_file_adjust_coding_function before calling
12277 decode-format.
12278
12279 2003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12280
12281 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
12282 get GtkAdjustment as widget now is a GtkRange.
12283
12284 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
12285 GtkRange to avoid memory leak.
12286
12287 2003-04-09 Kenichi Handa <handa@m17n.org>
12288
12289 * xfaces.c (Vface_font_rescale_alist): New variable.
12290 (struct font_name): New member rescale_ratio.
12291 (font_rescale_ratio): New function.
12292 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
12293 (better_font_p): On comparing point sized, pay attention to
12294 recale_ratio member of fonts.
12295 (build_scalable_font_name): Reflect font->rescale_ratio in the
12296 font name.
12297 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
12298
12299 * lread.c (read1): Before calling index, check if the 2nd
12300 arguemnt is in ASCII range.
12301
12302 2003-04-08 Richard M. Stallman <rms@gnu.org>
12303
12304 * fileio.c (Ffile_symlink_p): Doc fix.
12305
12306 * editfns.c (Fformat): Translate positions of text properties
12307 in the format string to apply them to the result.
12308
12309 * fileio.c (Finsert_file_contents): Doc fix.
12310 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
12311
12312 2003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
12313
12314 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
12315
12316 2003-04-08 Steven Tamm <steventamm@mac.com>
12317
12318 * mac.c (init_mac_osx_environment): Switch libexec and bin so
12319 that self-contained application finds libexec files.
12320
12321 2003-04-08 Kenichi Handa <handa@m17n.org>
12322
12323 * coding.c (code_convert_region_unwind):
12324 Set Vlast_coding_system_used to the argument.
12325 (code_convert_region): If post-read-conversion function changed
12326 the value of last-coding-sytem, keep the new value in
12327 coding->symbol so that it won't be overridden.
12328 (run_pre_post_conversion_on_str): Likewise.
12329 (coding_system_accept_latin_extra_p): New function.
12330 (find_safe_codings): Pay attention to characters registered in
12331 latin-extra-code-table.
12332
12333 2003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
12334
12335 * Makefile.in (md5.o): Add missing dependency info.
12336
12337 2003-04-06 Richard M. Stallman <rms@gnu.org>
12338
12339 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
12340
12341 * marker.c (verify_bytepos): New function.
12342
12343 * intervals.c (set_intervals_multibyte_1): When becoming
12344 multibyte, adjust right and left child sizes to a whole set of
12345 characters. If an interval gets zero total-length, delete it.
12346 If an interval consists of just its children, delete one of them.
12347
12348 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
12349 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
12350
12351 * alloc.c (VALIDATE_LISP_STORAGE): Macro deleted.
12352 All calls deleted.
12353 (lisp_malloc): Do the work here directly.
12354
12355 2003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
12356
12357 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
12358 char tables.
12359
12360 2003-04-04 Kenichi Handa <handa@m17n.org>
12361
12362 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
12363 destructively change "%S" to "%s".
12364
12365 2003-04-03 Miles Bader <miles@gnu.org>
12366
12367 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
12368 always set.
12369
12370 2003-04-01 Dave Love <fx@gnu.org>
12371
12372 * xfns.c (xpm_lookup_color): Grok "opaque".
12373
12374 2003-03-31 Andrew Choi <akochoi@shaw.ca>
12375
12376 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
12377 parent window ID.
12378
12379 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
12380
12381 * macterm.h (struct mac_output): Define x_pixels_diff and
12382 y_pixels_diff.
12383
12384 2003-03-31 Juanma Barranquero <lektu@terra.es>
12385
12386 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
12387 blockinput.h and files included from it.
12388
12389 2003-03-31 Kim F. Storm <storm@cua.dk>
12390
12391 The following changes consolidates the common code related to
12392 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
12393 files into frame.c.
12394
12395 * frame.c: Include blockinput.h.
12396 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
12397 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
12398 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
12399 related vars here.
12400 (struct frame_parm_table, frame_parms): New table for describing
12401 frame parameters and their associated Q-variable.
12402 The order of the parameters corresponds to the sequence of the
12403 frame_parm_handlers table in redisplay_interface.
12404 (x_fullscreen_move, x_set_frame_parameters)
12405 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
12406 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
12407 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
12408 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
12409 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
12410 Generic functions for processing of frame parameters.
12411 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
12412 (display_x_get_resource, x_get_resource_string): Functions for
12413 generic access to X resources.
12414 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
12415 (x_default_parameter, Fx_parse_geometry): Functions for generic
12416 access to frame parameters.
12417 (x_figure_window_size): Generic calculation of frame size.
12418 Fixed to add space needed for tool bar. Also setup size_hint_flags.
12419 (syms_of_frame): Intern and staticpro frame parameter variables.
12420 Defvar_lisp Vx_resource_class and Vx_resource_name here.
12421 Defsubr Sx_get_resource and Sx_parse_geometry.
12422
12423 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
12424 parameter related vars defined in frame.c.
12425 (EMACS_CLASS): Define here.
12426 (enum FULLSCREEN_*): Define here.
12427 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
12428 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
12429 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
12430 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
12431 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
12432 (x_set_visibility, x_set_autoraise, x_set_autolower)
12433 (x_set_unsplittable, x_set_vertical_scroll_bars)
12434 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
12435 (x_figure_window_size): Add prototypes.
12436
12437 * dispextern.h (frame_parm_handler): New typedef.
12438 (struct redisplay_interface): New member frame_parm_handlers.
12439 (enum resource_types): Move declaration here.
12440 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
12441 (x_default_parameter): Add prototypes.
12442
12443 * window.c: Remove extern decl for frame parameter vars.
12444 (change_window_heights): New generic function;
12445 replaces x_change_window_heights. All users changed.
12446
12447 * window.h (change_window_heights): Add prototype.
12448
12449 * xfaces.c: Remove extern decl for frame parameter vars.
12450
12451 * xterm.h (EMACS_CLASS): Remove. Use generic define.
12452 (struct w32_display_info): Fix type of xrdb member.
12453 (enum FULLSCREEN_*): Remove.
12454 Remove prototypes for generic functions (in frame.h).
12455
12456 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
12457 parameters now defined in frame.h and frame.c.
12458 (Vx_resource_name): Remove. Use generic var.
12459 (enum x_frame_parms): Remove (bogus, unused enum).
12460 (check_x_display_info): Make non-static (for frame.c).
12461 (struct x_frame_parm_table, x_frame_parms): Remove.
12462 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
12463 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
12464 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
12465 (x_change_window_heights, x_set_autoraise, x_set_autolower)
12466 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
12467 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
12468 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
12469 Remove. Use generic functions instead.
12470 (enum resource_types): Remove.
12471 (x_set_scroll_bar_default_width): New global function (for frame.c).
12472 (Fx_create_frame): Depend on x_figure_window_size to add space for
12473 toolbar and setup size_hint_flags.
12474 (x_frame_parm_handlers): New table for redisplay_interface.
12475 (syms_of_xfns): Don't intern/staticpro removed vars.
12476
12477 * xterm.c: Remove unnecessary extern declarations.
12478 (x_fullscreen_adjust): Remove. Use generic instead.
12479 (x_redisplay_interface): Add x_frame_parm_handlers member.
12480
12481 * w32gui.h (XrmDatabase): New (dummy) typedef.
12482
12483 * w32term.h (EMACS_CLASS): Remove. Use generic define.
12484 (struct w32_display_info): Fix type of xrdb member.
12485 (enum FULLSCREEN_*): Remove.
12486 (x_fullscreen_adjust): Remove prototype.
12487
12488 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
12489 parameters now defined in frame.h and frame.c.
12490 (Vx_resource_name): Remove. Use generic var.
12491 (enum x_frame_parms): Remove (bogus, unused enum).
12492 (check_x_display_info): Make non-static (for frame.c).
12493 (struct x_frame_parm_table, x_frame_parms): Remove.
12494 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
12495 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
12496 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
12497 (x_change_window_heights, x_set_autoraise, x_set_autolower)
12498 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
12499 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
12500 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
12501 Remove. Use generic functions instead.
12502 (enum resource_types): Remove.
12503 (x_set_scroll_bar_default_width): New global function (for frame.c).
12504 (Fx_create_frame): Depend on x_figure_window_size to add space for
12505 toolbar and setup size_hint_flags.
12506 (w32_frame_parm_handlers): New table for redisplay_interface.
12507 (syms_of_w32fns): Don't intern/staticpro removed vars.
12508
12509 * w32term.c: Remove unnecessary extern declarations.
12510 (x_fullscreen_adjust): Remove. Use generic instead.
12511 (x_redisplay_interface): Add w32_frame_parm_handlers member.
12512
12513 * w32reg.c (x_get_string_resource): Use XrmDatabase.
12514
12515 * macgui.h (XrmDatabase): New (dummy) typedef.
12516
12517 * macterm.h (EMACS_CLASS): Remove.
12518 (struct mac_display_info): Add xrdb member.
12519 (struct mac_output): Add want_fullscreen member.
12520
12521 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
12522 parameters now defined in frame.h and frame.c.
12523 (Vx_resource_name): Remove. Use generic var.
12524 (check_x_display_info): Make non-static (for frame.c).
12525 (struct x_frame_parm_table, x_frame_parms): Remove.
12526 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
12527 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
12528 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
12529 (x_change_window_heights, x_set_autoraise, x_set_autolower)
12530 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
12531 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
12532 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
12533 Remove. Use generic functions instead.
12534 (enum resource_types): Remove.
12535 (x_set_scroll_bar_default_width): New global function (for frame.c).
12536 (mac_frame_parm_handlers): New table for redisplay_interface.
12537 (syms_of_macfns): Don't intern/staticpro removed vars.
12538
12539 * macterm.c: Remove unnecessary extern declarations.
12540 (x_redisplay_interface): Add mac_frame_parm_handlers member.
12541
12542 * Makefile.in (frame.o): Add dependency on blockinput.h and files
12543 included from it (atimer.h and systime.h).
12544
12545 2003-03-30 Andreas Schwab <schwab@suse.de>
12546
12547 * xdisp.c (x_insert_glyphs): Fix swapped width and height
12548 parameters for shift_glyphs_for_insert.
12549
12550 * macterm.c (x_redisplay_interface): Add missing entry for
12551 draw_vertical_window_border.
12552
12553 2003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
12554
12555 * fileio.c (Fexpand_file_name): In the no-handler case, after
12556 expanding, look again for a handler and invoke it. This is needed
12557 for filenames like "/foo/../user@host:/bar/../baz" -- the first
12558 expansion produces "/user@host:/bar/../baz" which needs to be
12559 expanded again for the finame result "/user@host:/baz".
12560
12561 2003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12562
12563 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
12564 of area to be redrawn for better performance.
12565
12566 2003-03-28 Stefan Monnier <monnier@cs.yale.edu>
12567
12568 * xterm.c (take_vertical_position_into_account): Remove.
12569 (xt_action_hook): Call set_vertical_scroll_bar if needed.
12570 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
12571 (xm_scroll_callback, x_create_toolkit_scroll_bar)
12572 (x_set_toolkit_scroll_bar_thumb): Simplify.
12573 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
12574 (XTread_socket): Remove unused var.
12575 (x_make_frame_invisible): Replace goto with else.
12576
12577 * xdisp.c (set_vertical_scroll_bar): New fun.
12578 (redisplay_window): Use it.
12579
12580 2003-03-26 Richard M. Stallman <rms@gnu.org>
12581
12582 * xdisp.c (update_tool_bar): Recompute tool bar if
12583 update_mode_lines is set. Set w->update_mode_line
12584 only if the tool bar contents actually change.
12585 (update_menu_bar): Undo previous change.
12586
12587 2003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12588
12589 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
12590 (xg_frame_set_char_size): Calculate scroll bar width before frame
12591 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
12592 (xg_separator_p): Check for all documented separator types.
12593 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
12594 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
12595
12596 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
12597 so tool bar gets updated.
12598
12599 2003-03-26 Stefan Monnier <monnier@cs.yale.edu>
12600
12601 * data.c (store_symval_forwarding): Re-instate part of the code
12602 that was deleted with too much enthusiasm.
12603
12604 2003-03-25 Stefan Monnier <monnier@cs.yale.edu>
12605
12606 * data.c (store_symval_forwarding): Delete special read-only
12607 hack for type == -1, since we now use ->constant instead.
12608 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
12609
12610 * buffer.c (overlays_in): Declare static.
12611 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
12612 `constant' field rather than the variable's `type' field.
12613
12614 2003-03-24 Andrew Choi <akochoi@shaw.ca>
12615
12616 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
12617
12618 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
12619
12620 * fns.c [MAC_OSX]: Do not redefine vector.
12621
12622 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
12623
12624 * macgui.h: Remove definition of No_Cursor.
12625
12626 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
12627
12628 * xdisp.c: Define No_Cursor.
12629 (x_write_glyphs, notice_overwritten_cursor)
12630 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
12631 (note_mouse_highlight): Remove Mac-specific code.
12632 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
12633
12634 2003-03-24 John Paul Wallington <jpw@gnu.org>
12635
12636 * xdisp.c (redisplay_window): If mini window's buffer is not
12637 empty, then redisplay it like other windows.
12638
12639 2003-03-23 Kim F. Storm <storm@cua.dk>
12640
12641 * w32term.c (w32_draw_window_cursor): Fix last change.
12642
12643 2003-03-23 Kenichi Handa <handa@m17n.org>
12644
12645 * alloc.c (make_string_from_bytes, make_specified_string):
12646 Add `const' for the arg CONTENTS.
12647
12648 * lisp.h (make_string_from_bytes, make_specified_string):
12649 Prototypes adjusted.
12650
12651 2003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12652
12653 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
12654
12655 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
12656 (XG_SB_RANGE): New define.
12657
12658 * gtkutil.c (xg_fixed_handle_expose): New function.
12659 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
12660 expose events.
12661 (xg_update_scrollbar_pos): Take two more arguments, left and width
12662 of scroll bar including borders.
12663 Clear left and right part outside scroll bar separately as some
12664 themes have bars that are not an even number of pixels.
12665 Don't set reallocate_redraws, don't call
12666 gdk_window_process_all_updates.
12667 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
12668 so no need to change it. Calculate size and value with XG_SB_RANGE.
12669
12670 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
12671 Pass left and width of scroll bar including borders to
12672 xg_update_scrollbar_pos.
12673
12674 2003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
12675
12676 * Makefile.in: Make sure space precedes end-of-line backslashes.
12677
12678 2003-03-22 Kim F. Storm <storm@cua.dk>
12679
12680 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
12681 Add generic versions here. Remove system specific versions
12682 defined elsewhere.
12683
12684 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
12685 Add prototypes.
12686
12687 * xterm.h (STORE_NATIVE_RECT): New macro.
12688
12689 2003-03-21 Kim F. Storm <storm@cua.dk>
12690
12691 * xdisp.c (get_glyph_string_clip_rect):
12692 Use FRAME_INTERNAL_BORDER_WIDTH.
12693
12694 * dispextern.h (struct redisplay_interface): Add active_p
12695 argument to draw_window_cursor member. All uses changed.
12696
12697 2003-03-21 Kim F. Storm <storm@cua.dk>
12698
12699 The following changes consolidate code related to writing and
12700 inserting glyphs, exposing frame, the tool bar, the mouse face,
12701 the output cursor, and help echo from xterm.c, w32term.c and
12702 macterm.c into xdisp.c. It also generalizes the use of the
12703 window_part enum instead of using numeric values throughout.
12704
12705 * xdisp.c: Consolidate gui-independent code here.
12706 Include keymap.h.
12707 (Qhelp_echo): Import.
12708 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
12709 (help_echo_string, help_echo_window, help_echo_object)
12710 (previous_help_echo_string, help_echo_pos): Declare here.
12711 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
12712 (estimate_mode_line_height): Define here. Handle windowing
12713 systems directly (without using estimate_mode_line_height_hook).
12714 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
12715 (update_window_cursor, update_cursor_in_window_tree)
12716 (fast_find_position, fast_find_string_pos)
12717 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
12718 (expose_area, expose_line, expose_overlaps, expose_window)
12719 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
12720 declared static as they are only used locally in xdisp.c.
12721 (draw_glyphs): Rename from x_draw_glyphs and make static.
12722 (tool_bar_item_info, notice_overwritten_cursor): Make static.
12723 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
12724 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
12725 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
12726 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
12727 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
12728 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
12729 (note_mouse_highlight, x_clear_window_mouse_face)
12730 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
12731 (x_intersect_rectangles): New generic functions for use by xdisp.c
12732 and GUI front-ends.
12733 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
12734 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
12735
12736 * dispextern.h (Display_Info): Generic typedef for *_display_info.
12737 (NativeRectangle): Generic typedef for rectangle type.
12738 (enum window_part): Move here from window.c.
12739 (struct redisplay_interface): New members flush_display_optional,
12740 define_frame_cursor, clear_frame_area, draw_window_cursor,
12741 draw_vertical_window_border, shift_glyphs_for_insert.
12742 Rename member clear_mouse_face to clear_window_mouse_face.
12743 (estimate_mode_line_height_hook): Remove hook.
12744 (auto_raise_tool_bar_buttons_p): Don't declare extern.
12745 (tool_bar_item_info): Remove prototype.
12746 (help_echo_string, help_echo_window, help_echo_object)
12747 (previous_help_echo_string, help_echo_pos)
12748 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
12749 (x_stretch_cursor_p, output_cursor): Declare extern.
12750 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
12751 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
12752 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
12753 (display_and_set_cursor, set_output_cursor, x_cursor_to)
12754 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
12755 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
12756 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
12757 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
12758 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
12759 Add prototypes.
12760 (mode_line_string, marginal_area_string): Fix prototypes.
12761
12762 * window.c (enum window_part): Move to dispextern.h.
12763 (coordinates_in_window): Use enum window_part member names
12764 instead of numbers to describe return value.
12765 (struct check_window_data): Change part member to window_part.
12766 (check_window_containing): Return window_part unaltered.
12767 (window_from_coordinates): Change part arg from int to enum
12768 window_part. Allow part arg to be null. All users changed.
12769
12770 * window.h (window_from_coordinates): Fix prototype.
12771
12772 * term.c (estimate_mode_line_height): Move to xdisp.c.
12773
12774 * keyboard.c (make_lispy_event): Use enum window_part.
12775
12776 * dispnew.c (mode_line_string, marginal_area_string): Use enum
12777 window_part instead of int in arg list. Users changed.
12778
12779 * xterm.h (No_Cursor): Declare as None for X.
12780 (struct mac_output): Replace member cross_cursor by hand_cursor.
12781
12782 * xterm.c: Remove consolidated defines and code.
12783 (BETWEEN): Remove unused macro.
12784 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
12785 (x_define_frame_cursor, x_clear_frame_area)
12786 (x_draw_window_cursor): New X-specific functions for RIF.
12787 (x_redisplay_interface): Add new members.
12788
12789 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
12790
12791 * w32term.h (struct w32_output): Remove cross_cursor member.
12792
12793 * w32term.c: Remove consolidated defines and code.
12794 (BETWEEN): Remove unused macro.
12795 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
12796 (w32_define_frame_cursor, w32_clear_frame_area)
12797 (w32_draw_window_cursor): New W32-specific functions for RIF.
12798 (w32_redisplay_interface): Add new members.
12799
12800 * w32gui.h (No_Cursor): Define as 0 for W32.
12801 (XRectangle): Add X compatible rectangle type.
12802 (NativeRectangle): Declare as RECT for W32.
12803 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
12804
12805 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
12806
12807 * w32console.c: Remove consolidated defines and code.
12808
12809 * msdos.h (Display_Info): Add generic typedef.
12810
12811 * msdos.c: Remove consolidated defines and code.
12812 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
12813
12814 * macterm.h (struct mac_output): Replace member cross_cursor by
12815 hand_cursor.
12816 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
12817
12818 * macterm.c: Remove consolidated defines and code.
12819 (BETWEEN): Remove unused macro.
12820 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
12821 (mac_define_frame_cursor, mac_clear_frame_area)
12822 (mac_draw_window_cursor): New Mac-specific functions for RIF.
12823 (x_redisplay_interface): Add new members.
12824
12825 * macgui.h (No_Cursor): Define as 0 for Mac.
12826 (XRectangle): Add X compatible rectangle type.
12827 (NativeRectangle): Declare as Rect for Mac.
12828 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
12829
12830 * macfns.c (x_set_mouse_color): Setup hand_cursor.
12831 (x_set_cursor_color): Use x_display_and_set_cursor.
12832
12833 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
12834 included from it. Add dependency on keymap.h.
12835
12836 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
12837
12838 2003-03-21 Kenichi Handa <handa@m17n.org>
12839
12840 * fileio.c (Fexpand_file_name): Fix previous change.
12841
12842 2003-03-19 Kenichi Handa <handa@m17n.org>
12843
12844 * fileio.c (Ffile_name_directory): Reconstruct file name by
12845 make_specified_string.
12846 (Ffile_name_nondirectory, Ffile_name_as_directory)
12847 (Fdirectory_file_name, Fexpand_file_name)
12848 (Fsubstitute_in_file_name): Likewise.
12849 (Fread_file_name): Compare decoded homedir with DIR and
12850 DEFAULT_FILENAME.
12851
12852 * alloc.c (make_specified_string): If NCHARS is negative, count
12853 the number of characters.
12854
12855 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12856
12857 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
12858 all widgets.
12859
12860 * gtkutil.h: Removed xg_ignore_next_thumb.
12861
12862 2003-03-18 Kenichi Handa <handa@m17n.org>
12863
12864 * coding.c (Vchar_coding_system_table): Remove this variable.
12865 (Vcoding_system_safe_chars): New variable.
12866 (intersection): Remove this function.
12867 (find_safe_codings): Don't use Vchar_coding_system_table, but try
12868 all codings in SAFE_CODINGS.
12869 (Ffind_coding_systems_region_internal): Adjust for the change of
12870 find_safe_codings. Get generic coding systems from
12871 Vcoding_system_safe_chars.
12872 (Fdefine_coding_system_internal): New function.
12873 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
12874 Initialize and staticpro Vcoding_system_safe_chars.
12875
12876 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12877
12878 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
12879 equal old values before updating.
12880
12881 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
12882
12883 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
12884
12885 2003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12886
12887 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
12888 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
12889 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
12890 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
12891 (xg_create_scroll_bar): Pass bar to button event callback.
12892 (xg_find_top_left_in_fixed): New function.
12893 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
12894 whole scroll bar area. Get old position with
12895 xg_find_top_left_in_fixed, calculate and only clear needed areas.
12896 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
12897 dragging is in progress. Calculate whole as for Motif.
12898 Remove code that saved last values. Call gtk_range functions to
12899 set scroll bar sizes.
12900
12901 * gtkutil.h: Removed xg_ignore_next_thumb.
12902
12903 2003-03-17 Juanma Barranquero <lektu@terra.es>
12904
12905 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
12906 and files included from it.
12907
12908 2003-03-18 Stefan Monnier <monnier@cs.yale.edu>
12909
12910 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
12911 multiple occurrences of the same keymap under different prefixes.
12912 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
12913
12914 2003-03-16 Jason Rumney <jasonr@gnu.org>
12915
12916 * w32gui.h: Use HDC for Display.
12917
12918 * w32term.c (w32_encode_char): Prevent double-byte chars from
12919 crashing Emacs.
12920
12921 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
12922 as binary.
12923
12924 2003-03-16 Juanma Barranquero <lektu@terra.es>
12925
12926 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
12927
12928 2003-03-16 Kim F. Storm <storm@cua.dk>
12929
12930 The following changes consolidate some of the gui-independent
12931 parts of the processing and drawing of "glyph strings" from
12932 xterm.c, w32term.c, and macterm.c into xdisp.c.
12933
12934 * dispextern.h (struct glyph): Reduce face_id member from 22 to
12935 21 bits (this reduces number of faces from 4M to 2M).
12936 Replace W32 specific w32_font_type member (2 bits) by generic
12937 font_type member (3 bits) for portability.
12938 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
12939 (enum draw_glyphs_face): Define here.
12940 (struct glyph_string): Define here. Merge W32 and X versions.
12941 (struct redisplay_interface): New members per_char_metric,
12942 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
12943 (VCENTER_BASELINE_OFFSET): Define here.
12944 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
12945 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
12946
12947 * xdisp.c: Consolidate gui-independent "glyph string" code here.
12948 (dump_glyph_string): Moved here.
12949 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
12950 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
12951 (fill_composite_glyph_string, fill_glyph_string)
12952 (fill_image_glyph_string, fill_stretch_glyph_string)
12953 (left_overwritten, left_overwriting, right_overwritten)
12954 (right_overwriting, get_char_face_and_encoding)
12955 (set_glyph_string_background_width, compute_overhangs_and_x)
12956 (append_glyph, append_composite_glyph, produce_image_glyph)
12957 (take_vertical_position_into_account, append_stretch_glyph)
12958 (produce_stretch_glyph): New generic functions (based on X version).
12959 Call platform specific functions through rif.
12960 (INIT_GLYPH_STRING): New macro, hides W32 details.
12961 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
12962 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
12963 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
12964 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
12965 (notice_overwritten_cursor):
12966 Generic functions exported to platform modules. Users changed.
12967
12968 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
12969 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
12970 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
12971 New macros for consolidated code.
12972
12973 * xterm.c: Remove consolidated defines and code.
12974 (x_per_char_metric, x_encode_char)
12975 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
12976 (x_redisplay_interface): Add new members.
12977
12978 * w32gui.h (Display): Add dummy typedef for consolidation.
12979 (XChar2b): Define alias for wchar_t for consolidation.
12980 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
12981
12982 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
12983 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
12984 New macros for consolidation.
12985
12986 * w32term.c: Remove consolidated defines and code.
12987 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
12988 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
12989 (w32_per_char_metric): Change font_type arg to int for RIF.
12990 (w32_encode_char): Return int according to RIF requirements.
12991 (w32_compute_glyph_string_overhangs): Adapt to RIF.
12992 (w32_get_glyph_overhangs): New function for RIF. Uses generic
12993 x_get_glyph_overhangs.
12994 (w32_redisplay_interface): Add new members.
12995
12996 * macgui.h (XChar2b): Move typedef here for consolidation.
12997 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
12998
12999 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
13000 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
13001 consolidation.
13002
13003 * macterm.c: Remove consolidated defines and code.
13004 (mac_per_char_metric): New function for RIF.
13005 (mac_encode_char): Adapt to new RIF requirements.
13006 (mac_compute_glyph_string_overhangs): Adapt for RIF.
13007 (x_redisplay_interface): Add new members.
13008
13009 2003-03-15 Stefan Monnier <monnier@cs.yale.edu>
13010
13011 * keymap.c (Vmenu_events): New var.
13012 (syms_of_keymap): Initialize it.
13013 (where_is_internal): Check more carefully what is a menu event.
13014
13015 2003-03-14 Richard M. Stallman <rms@gnu.org>
13016
13017 * lread.c (read1): After #!, exit loop on eof.
13018
13019 2003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13020
13021 * gtkutil.h: Add declaration for xg_frame_cleared.
13022
13023 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
13024
13025 * gtkutil.c (struct xg_last_sb_pos): New structure.
13026 (handle_fixed_child): New function.
13027 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
13028 and force a redraw on them.
13029 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
13030 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
13031 so we can avoid unneeded redraws.
13032 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
13033 and force a redraw on the scroll bar.
13034 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
13035 if xg_last_sb_pos shows the positions are up to date.
13036 (xg_frame_cleared): New function.
13037
13038 2003-03-13 Kenichi Handa <handa@m17n.org>
13039
13040 * coding.c (Fdetect_coding_region): Fix docstring.
13041 (Fdetect_coding_string): Fix docstring.
13042
13043 2003-03-13 Andreas Schwab <schwab@suse.de>
13044
13045 * gtkutil.c: Add prototype for create_menus.
13046
13047 * data.c (long_to_cons): Fix type of top.
13048
13049 * xselect.c (selection_data_to_lisp_data): Use int instead of
13050 long for an integer of size 4.
13051
13052 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
13053 (xg_tool_bar_help_callback): Likewise.
13054
13055 2003-03-12 Andreas Schwab <schwab@suse.de>
13056
13057 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
13058
13059 2003-03-12 Kim F. Storm <storm@cua.dk>
13060
13061 The following changes consolidate the fringe handling from
13062 xterm.c, w32term.c, and macterm.c into xdisp.c.
13063
13064 * xdisp.c: Consolidate fringe handling code here.
13065 (left_bits, right_bits, continued_bits, continuation_bits)
13066 (ov_bits, zv_bits): Define fringe bitmaps.
13067 (fringe_bitmaps): New array holding fringe bitmaps.
13068 (draw_fringe_bitmap): Draw a specific bitmap; call display
13069 specific drawing routine via rif->draw_fringe_bitmap.
13070 (draw_row_fringe_bitmaps): Generic replacement for
13071 x_draw_row_fringe_bitmaps; all callers changed.
13072 (compute_fringe_widths): Generic replacement for
13073 x_compute_fringe_widths; all callers changed.
13074
13075 * dispextern.h (enum fringe_bitmap_type): Define here.
13076 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
13077 (fringe_bitmaps): Declare extern.
13078 (struct redisplay_interface): New member draw_fringe_bitmap.
13079 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
13080
13081 * xterm.c: Remove generic fringe code.
13082 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
13083 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
13084
13085 * w32term.c: Remove generic fringe code.
13086 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
13087 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
13088
13089 * macterm.c: Remove generic fringe code.
13090 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
13091 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
13092
13093 2003-03-11 Stefan Monnier <monnier@cs.yale.edu>
13094
13095 * print.c (Fprin1_to_string): Return unibyte string if possible.
13096
13097 2003-03-09 David Kastrup <dak@gnu.org>
13098
13099 * process.c (read_process_output): We have allocated enough space
13100 for readmax and carryover, so actually use the alloted space.
13101
13102 2003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13103
13104 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
13105 toolkit scrollbar click.
13106
13107 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
13108 for USE_GTK.
13109 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
13110 also.
13111 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
13112 scrollbar and control is pressed, call x_scroll_bar_handle_click.
13113
13114 * gtkutil.h (xg_get_scroll_id_for_window): Declare.
13115
13116 * gtkutil.c (xg_get_scroll_id_for_window): New function.
13117 (xg_tool_bar_item_expose_callback): New function.
13118 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
13119 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
13120 on the tool bar widget.
13121 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
13122 to expose on the tool bar item widgets.
13123
13124 2003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13125
13126 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
13127 struct image* when deciding to update (struct image* may have been
13128 deleted from the image cache).
13129
13130 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
13131 the event isn't for a frame (i.e. for dialogs).
13132
13133 2003-03-07 Kenichi Handa <handa@m17n.org>
13134
13135 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
13136 composition components reaches the limit, terminate composing.
13137 (COMPOSITION_OK): New macro.
13138 (detect_coding_iso2022): Use it if an escape sequence for
13139 composition is found.
13140 (coding_restore_composition): Adjust the number of composition
13141 components if it is not sane.
13142
13143 2003-03-06 Juanma Barranquero <lektu@terra.es>
13144
13145 * w32term.h (struct w32_display_info): Add xrdb member to support
13146 passing resources via -xrm on Windows.
13147
13148 * w32term.c (w32_make_rdb): New function.
13149 (w32_term_init): Use it to initialize xrdb member of w32_display_info
13150 struct. Delete leftover code.
13151
13152 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
13153 for resources passed on the command line.
13154
13155 * w32reg.c (w32_get_rdb_resource): New function.
13156 (x_get_string_resource): Use it, so resources passed with -xrm
13157 supercede the ones in the registry.
13158
13159 2003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13160
13161 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
13162 instead of x_top_window_to_frame.
13163
13164 2003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13165
13166 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
13167 when restarting Emacs.
13168
13169 2003-03-03 Richard M. Stallman <rms@gnu.org>
13170
13171 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
13172 to run kill-buffer-query-functions.
13173 (Qkill_buffer_query_functions): New var.
13174 (syms_of_buffer): Init and staticpro it.
13175
13176 2003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13177
13178 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
13179
13180 2003-02-25 Kim F. Storm <storm@cua.dk>
13181
13182 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
13183 If centering point failed to make whole line visible and vscroll
13184 is non-zero, disable vscroll and try centering point again.
13185
13186 * lread.c (read1): Accept `single space' syntax like (? x).
13187
13188 2003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13189
13190 * keyboard.c (cancel_hourglass_unwind): Surround with
13191 #ifdef HAVE_X_WINDOWS
13192
13193 2003-02-25 Kenichi Handa <handa@m17n.org>
13194
13195 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
13196 process only when "subprocesses" is defined.
13197
13198 2003-02-24 Stefan Monnier <monnier@cs.yale.edu>
13199
13200 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
13201
13202 2003-02-24 Juanma Barranquero <lektu@terra.es>
13203
13204 * callint.c (fix_command): Declare as static void and move before
13205 Fcall_interactively.
13206
13207 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
13208 (syms_of_xdisp): Don't initialize Qwhen.
13209
13210 2003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13211
13212 * keyboard.c (cancel_hourglass_unwind): New function.
13213 (command_loop_1): Cancel hourglass with unwind-protect.
13214
13215 2003-02-23 Richard M. Stallman <rms@gnu.org>
13216
13217 * callint.c (fix_command): New subroutine, from Fcall_interactively.
13218 Detect (when ... (region-beginning)) etc.
13219 (Fcall_interactively): Call fix_command.
13220 (Qif, Qwhen): New variables.
13221 (syms_of_callint): Init and staticpro them.
13222
13223 * regex.c (print_partial_compiled_pattern): Output to stderr.
13224
13225 2003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
13226
13227 * dired.c (directory_files_internal): Don't expand directory.
13228 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
13229 instead. From Lars Hansen <larsh@math.ku.dk>.
13230
13231 2003-02-22 Stefan Monnier <monnier@cs.yale.edu>
13232
13233 * fns.c (string_to_multibyte): Remove unused var i.
13234 (Flanginfo): Fix int/Lisp_Object mixup.
13235 (void_call2): New fun.
13236 (Fmap_char_table): Use it in place of call2.
13237
13238 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
13239
13240 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
13241
13242 * keymap.c (copy_keymap_1): Make it static.
13243
13244 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
13245
13246 2003-02-22 David Ponce <david@dponce.com>
13247
13248 * lread.c (Fload): Don't check STRING_MULTIBYTE.
13249
13250 2003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13251
13252 * process.h: Removed subtty field from struct Lisp_Process.
13253
13254 * process.c (create_process): Remove setting of subtty.
13255 (emacs_get_tty_pgrp): New function.
13256 (Fprocess_running_child_p, process_send_signal):
13257 Call emacs_get_tty_pgrp instead of ioctl.
13258 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
13259
13260 2003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
13261
13262 * keymap.c (Fdefine_key): Doc fix.
13263
13264 2003-02-21 Juanma Barranquero <lektu@terra.es>
13265
13266 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
13267
13268 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
13269 POLLING_PROBLEM_IN_SELECT.
13270
13271 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
13272 Delete #undef of POLLING_PROBLEM_IN_SELECT.
13273
13274 * s/hpux10-20.h: New file.
13275
13276 * process.c (wait_reading_process_input):
13277 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
13278
13279 2003-02-20 Kenichi Handa <handa@m17n.org>
13280
13281 * fontset.c (check_fontset_name): If NAME is nil, return the
13282 default fontset.
13283 (override_font_info): New function.
13284 (Fset_fontset_font): Document that NAME nil means the default fontset.
13285 (Ffontset_info): If FONTSET is not the default fontset, merge
13286 FONTSET onto the copy of the default fontset, and work on that
13287 copy. Document that NAME nil means the default fontset.
13288 (Ffontset_font): Document that NAME nil means the default fontset.
13289
13290 * process.c (setup_process_coding_systems): If the process's
13291 in/out descriptor is -1, do nothing.
13292
13293 2003-02-19 Andreas Schwab <schwab@suse.de>
13294
13295 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
13296 Add prototypes.
13297
13298 2003-02-19 Kenichi Handa <handa@m17n.org>
13299
13300 * xfaces.c (try_alternative_families): Try all scalable fonts if
13301 Vscalable_fonts_allowed is not Qt.
13302
13303 2003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13304
13305 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
13306
13307 2003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13308
13309 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
13310 names.
13311
13312 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
13313 (sorted_font_list): Move allocation of struct font_name to
13314 x_face_list_fonts.
13315 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
13316 (Fx_list_fonts): Set maxnames to -1 to get all font names.
13317
13318 2003-02-18 Kim F. Storm <storm@cua.dk>
13319
13320 * lread.c (read1): Fix last change.
13321 "`" is not always special. Allow "?" after a character constant.
13322
13323 2003-02-18 Andrew Choi <akochoi@shaw.ca>
13324
13325 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
13326
13327 2003-02-18 Andreas Schwab <schwab@suse.de>
13328
13329 * window.c (window_scroll_pixel_based): Move outside a
13330 multi-glyph character before setting new window start.
13331
13332 * xdisp.c (in_display_vector_p): New function.
13333 * dispextern.h (in_display_vector_p): Declare.
13334
13335 2003-02-18 Kim F. Storm <storm@cua.dk>
13336
13337 * lread.c (read1): Fix and relax read syntax.
13338 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
13339 Only recognize "," after dotted-pair dot if inside backquote.
13340 Never include "`" or "," (inside backquote) in a symbol.
13341 Allow dotted-pair dot after a character constant.
13342 Allow "`" and "," (inside backquote) after a character constant.
13343
13344 2003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13345
13346 * gtkutil.c (xg_tool_bar_expose_callback): New function.
13347 (xg_create_tool_bar): Force style of tool bar to be horizontal with
13348 icons. Set name of tool bar to emacs-toolbar.
13349 (update_frame_tool_bar): Connect expose event to
13350 xg_tool_bar_expose_callback.
13351
13352 2003-02-17 Richard M. Stallman <rms@gnu.org>
13353
13354 * keyboard.c (this_command_key_count_reset): New variable.
13355 Initiatize to 0 where this_command_key_count is set.
13356 (read_char): Save and restore this_command_key_count_reset
13357 around input method code.
13358 (read_char): If this_command_key_count_reset, echo reread commands.
13359 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
13360
13361 2003-02-17 Kenichi Handa <handa@m17n.org>
13362
13363 * fns.c (string_to_multibyte): Always return a multibyte string.
13364
13365 2003-02-16 Jason Rumney <jasonr@gnu.org>
13366
13367 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
13368 Negative max_fonts parameter means list all.
13369
13370 2003-02-14 Dave Love <fx@gnu.org>
13371
13372 * fns.c (Flanginfo): Doc fix.
13373
13374 2003-02-13 Kim F. Storm <storm@cua.dk>
13375
13376 * lread.c (read_escape): Interpret \s as a SPACE character, except
13377 for \s-X in a character constant which still is the super modifier.
13378 (read1): Signal an `invalid read syntax' error if a character
13379 constant is immediately followed by a digit or symbol character.
13380
13381 * search.c (Fmatch_data): Doc fix. Explicitly state that
13382 match-data is undefined if last search failed.
13383
13384 * keymap.c (Fcommand_remapping): Rename from Fremap_command.
13385 All uses changed.
13386
13387 2003-02-12 Juanma Barranquero <lektu@terra.es>
13388
13389 * eval.c (Fdefmacro): Fix typo.
13390
13391 2003-02-12 Kim F. Storm <storm@cua.dk>
13392
13393 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
13394 macro is a string, convert meta modifiers in string when copying
13395 the string into a vector.
13396
13397 2003-02-11 Kim F. Storm <storm@cua.dk>
13398
13399 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
13400
13401 2003-02-11 Kenichi Handa <handa@m17n.org>
13402
13403 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
13404
13405 2003-02-10 Kim F. Storm <storm@cua.dk>
13406
13407 * process.c: Doc fixes.
13408 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
13409
13410 2003-02-10 Kenichi Handa <handa@m17n.org>
13411
13412 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
13413
13414 * process.c (QCfilter_multibyte): New variable.
13415 (setup_process_coding_systems): New function.
13416 (Fset_process_buffer, Fset_process_filter):
13417 Call setup_process_coding_systems.
13418 (Fstart_process): Initialize the member `filter_multibyte' of
13419 struct Lisp_Process.
13420 (create_process): Call setup_process_coding_systems.
13421 (Fmake_network_process): New keyward `:filter-multibyte'.
13422 Initialize the member `filter_multibyte' of struct Lisp_Process.
13423 Call setup_process_coding_systems.
13424 (server_accept_connection): Call setup_process_coding_systems.
13425 (read_process_output): If the process has a filter, decide the
13426 multibyteness of a string to given to the filter by
13427 `filter_multibyte' member of the process. If the process doesn't
13428 have a filter and the result of conversion is unibyte, use
13429 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
13430 multibyte form.
13431 (Fset_process_coding_system): Call setup_process_coding_systems.
13432 (Fset_process_filter_multibyte): New function.
13433 (Fprocess_filter_multibyte_p): New function.
13434 (syms_of_process): Intern and staticpro QCfilter_multibyte.
13435 Defsubr Sset_process_filter_multibyte and
13436 Sprocess_filter_multibyte_p.
13437
13438 * process.h (struct Lisp_Process): New member filter_multibyte.
13439
13440 * lisp.h (setup_process_coding_systems): Add prototype.
13441
13442 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
13443 process, update coding systems for the process.
13444
13445 2003-02-09 Kenichi Handa <handa@m17n.org>
13446
13447 * fns.c (string_to_multibyte): New function.
13448 (Fstring_to_multibyte): New function.
13449 (syms_of_fns): Defsubr it.
13450
13451 2003-02-08 Andreas Schwab <schwab@suse.de>
13452
13453 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
13454 instead of the substitution.
13455
13456 2003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13457
13458 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
13459
13460 * xmenu.c (menu_position_func): Adjust menu popup position so that
13461 the menu is fully visible.
13462
13463 2003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13464
13465 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
13466 (x_make_frame_invisible, x_wm_set_icon_position):
13467 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
13468
13469 * xfns.c (x_set_name, x_set_title): Ditto.
13470
13471 2003-02-04 Richard M. Stallman <rms@gnu.org>
13472
13473 * keyboard.c (echo_now): Update before_command_echo_length.
13474 (Freset_this_command_lengths): Reset this_command_key_count etc.
13475 immediately rather than arranging to do it later.
13476 (before_command_key_count_1, before_command_echo_length_1)
13477 (before_command_restore_flag): Vars deleted.
13478 (add_command_key): Don't handle before_command_restore_flag.
13479 (read_char, record_menu_key): Don't update before_command_key_count or
13480 before_command_echo_length.
13481 (read_char): Don't handle before_command_restore_flag.
13482
13483 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
13484 in direct-output clauses if it wouldn't be called in the ordinary case.
13485
13486 2003-02-04 Kim F. Storm <storm@cua.dk>
13487
13488 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
13489
13490 2003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13491
13492 * gtkutil.c (remove_from_container): Copying list is not needed.
13493 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
13494 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
13495 on list returned from gtk_container_get_children to avoid memory leak.
13496
13497 2003-02-01 Jason Rumney <jasonr@gnu.org>
13498
13499 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
13500 local malloc.
13501 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
13502 definitions in xpm.h.
13503 (init_xpm_functions): New function.
13504 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
13505 (init_external_image_libraries): Try to load libXpm.dll.
13506
13507 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
13508 timestamp.
13509
13510 2003-01-31 Dave Love <fx@gnu.org>
13511
13512 * syntax.c (Fskip_chars_forward)
13513 (open-paren-in-column-0-is-defun-start): Doc fix.
13514
13515 2003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
13516
13517 * fileio.c: Support // at start of name for Cygwin (just added proper
13518 preprocessor tests).
13519
13520 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
13521
13522 * Makefile.in: Use @EXEEXT@ for Cygwin.
13523
13524 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
13525
13526 * s/cygwin.h: Added for Cygwin port.
13527
13528 2003-01-31 Juanma Barranquero <lektu@terra.es>
13529
13530 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
13531 when including gif_lib.h.
13532 (init_gif_functions, init_tiff_functions): New functions.
13533 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
13534 Windows. Disable color table lookups. Call library functions
13535 through pointers determined at runtime.
13536 (init_external_image_libraries): Try to load libungif.dll and
13537 libtiff.dll.
13538
13539 2003-01-31 Kenichi Handa <handa@m17n.org>
13540
13541 * xdisp.c (SKIP_GLYPHS): New macro.
13542 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
13543
13544 2003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13545
13546 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
13547
13548 2003-01-30 Dave Love <fx@gnu.org>
13549
13550 * alloc.c (Vgc_elapsed, gcs_done): New variables.
13551 (Fgarbage_collect): Use them.
13552 (init_alloc, syms_of_alloc): Set them up.
13553
13554 2003-01-30 Juanma Barranquero <lektu@terra.es>
13555
13556 * w32fns.c (init_external_image_libraries): Add missing operator.
13557
13558 2003-01-29 Jason Rumney <jasonr@gnu.org>
13559
13560 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
13561 an alternative name for jpeg.dll.
13562
13563 2003-01-29 Kenichi Handa <handa@m17n.org>
13564
13565 * xdisp.c (set_cursor_from_row): Pay attention to string display
13566 properties.
13567
13568 2003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
13569
13570 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
13571 <escape>.
13572 (keycode_to_xkeysym_table): Reformat and add more comments.
13573 (XTread_socket): Drop special case for backspace.
13574
13575 2003-01-28 Andrew Choi <akochoi@shaw.ca>
13576
13577 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
13578 values in old-style RGB specs.
13579
13580 2003-01-27 Juanma Barranquero <lektu@terra.es>
13581
13582 * w32fns.c (init_external_image_libraries): Try alternate names for the
13583 jpeg dll.
13584
13585 2003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13586
13587 * gtkutil.c (create_dialog, xg_separator_p)
13588 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
13589 before calling strcmp or strlen.
13590
13591 2003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13592
13593 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
13594 and handle image load failure.
13595
13596 2003-01-26 Jason Rumney <jasonr@gnu.org>
13597
13598 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
13599 New functions.
13600 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
13601 Disable color table lookups. Call jpeg library functions
13602 through pointers determined at runtime.
13603 (init_external_image_libraries): Try to load jpeg.dll.
13604
13605 2003-01-25 Richard M. Stallman <rms@gnu.org>
13606
13607 * lisp.h: Declare format2 instead of format1.
13608
13609 * fileio.c (barf_or_query_if_file_exists):
13610 Call format2 instead of format1.
13611
13612 * editfns.c (format2): New function, replaces format1
13613 but takes exactly two Lisp Objects as format args.
13614
13615 * buffer.c (Fkill_buffer): Call format2 instead of format1.
13616
13617 2003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13618
13619 * xterm.h: Change to return value of x_dispatch_event to int.
13620
13621 * xterm.c (x_filter_event): New function.
13622 (event_handler_gdk, XTread_socket): Call x_filter_event.
13623 (x_dispatch_event): Change to return value of finish.
13624 (event_handler_gdk): Use return value from x_dispatch_event.
13625
13626 * xfns.c (x_window): Call create_frame_xic for GTK version to
13627 initialize input methods.
13628
13629 * gtkutil.h: Add (void) prototypes.
13630
13631 * gtkutil.c (create_menus): Remove code that puts the help menu to
13632 the right.
13633
13634 2003-01-25 Jason Rumney <jasonr@gnu.org>
13635
13636 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
13637 [HAVE_PNG]: Sync with xfns.c version.
13638 (png_load): Adjust colors for Windows. Use Windows
13639 bitmaps. Disable color table lookups.
13640 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
13641 (init_png_functions): New function.
13642 (png_read_from_memory, png_load): Call png library functions
13643 through pointers determined at runtime.
13644 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
13645 (init_external_image_libraries): New function.
13646 (init_xfns): Call it.
13647
13648 2003-01-24 Andreas Schwab <schwab@suse.de>
13649
13650 * minibuf.c (Fminibuffer_message): Verify type of parameter.
13651
13652 2003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13653
13654 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
13655 of static initializer.
13656
13657 2003-01-24 Dave Love <fx@gnu.org>
13658
13659 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
13660 architectures.
13661
13662 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
13663 Use __alignof__.
13664
13665 2003-01-24 Kenichi Handa <handa@m17n.org>
13666
13667 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
13668 It it is nonzero, don't pretend that an invisible area doesn't exist.
13669 (command_loop_1): Call adjust_point_for_property with proper
13670 second arg.
13671
13672 2003-01-22 Jason Rumney <jasonr@gnu.org>
13673
13674 Sync changes with xterm.c and xfns.c.
13675
13676 * w32term.c (x_draw_glyph_string_foreground)
13677 (x_draw_composite_glyph_string_foreground): Implement overstriking.
13678
13679 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
13680 phys_cursor's hpos is overwritten. This is still not completely
13681 correct, as it doesn't really make sense to use hpos at all to
13682 get the cursor glyph (as that is relative to the width of the
13683 characters on the line, which may have changed during the update).
13684
13685 * w32term.c (notice_overwritten_cursor): Handle the special case
13686 of the cursor being in the first blank non-text line at the
13687 end of a window.
13688
13689 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
13690 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
13691 Compute from the x position returned by x_draw_glyphs.
13692
13693 (x_display_and_set_cursor): Don't set phys_cursor_width here,
13694 except for NO_CURSOR and system caret, to make phys_cursor_width
13695 contain what its name suggests.
13696 (notice_overwritten_cursor): Consider the cursor image erased if
13697 the output area intersects the cursor image in y-direction.
13698
13699 * w32term.c (note_mode_line_or_margin_highlight): Rename from
13700 note_mode_line_highlight and extend.
13701
13702 * w32term.c (last_window): New variable.
13703 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
13704 (note_mouse_movement): Remove reimplemented code in #if 0.
13705
13706 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
13707 not update_mode_lines, and always set it to 1.
13708
13709 2003-01-21 Jason Rumney <jasonr@gnu.org>
13710
13711 * w32fns.c (IDC_HAND): Define it if system headers don't.
13712
13713 2003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
13714
13715 * w32term.h (struct w32_output): New member hand_cursor.
13716 (WM_EMACS_SETCURSOR): New message definition.
13717
13718 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
13719 function w32_define_cursor.
13720 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
13721 position, change member name output_data.x to output_data.w32 and
13722 add function w32_define_cursor.
13723 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
13724 and change member name output_data.x to output_data.w32.
13725 (w32_initialize_display_info):
13726 Setup dpyinfo->vertical_scroll_bar_cursor.
13727
13728 * w32fns.c (Vx_hand_shape): New variable.
13729 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
13730 WM_EMACS_SETCURSOR.
13731 (x-create-frame): Setup Cursor types.
13732
13733 2003-01-21 David Ponce <david@dponce.com>
13734
13735 * w32term.c (w32_encode_char): For DIM=1 charset, set
13736 ccl->reg[2] to -1 before calling ccl_driver.
13737 (Sync. with xterm.c x_encode_char change by Kenichi Handa
13738 <handa@m17n.org> on 2002-09-30.)
13739 (w32_draw_relief_rect): Declare all args.
13740 (w32_define_cursor): New.
13741
13742 * w32fns.c (w32_load_cursor): New function.
13743 (w32_init_class): Use it.
13744 (x_put_x_image): Declare all args.
13745
13746 2003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk>
13747
13748 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
13749
13750 2003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13751
13752 * gtkutil.c: Must include stdio.h before termhooks.h
13753
13754 2003-01-21 Dave Love <fx@gnu.org>
13755
13756 * alloc.c (Fgc_status): Print zombie list.
13757 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
13758 Fix assignment of zombies.
13759 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
13760 Don't take car of non-cons.
13761
13762 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
13763
13764 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
13765
13766 2003-01-20 David Ponce <david@dponce.com>
13767
13768 * w32menu.c (digest_single_submenu): Declare all args.
13769
13770 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
13771 changes in xmenu.c:
13772
13773 (parse_single_submenu): Use individual keymap's prompt
13774 string as pane name, if there is one.
13775 (set_frame_menubar): Save menu_items_n_panes from each call to
13776 parse_single_submenu and use it when calling digest_single_submenu.
13777
13778 2003-01-20 Steven Tamm <steventamm@mac.com>
13779
13780 * macterm.c (XTread_socket): Check for valid, visible window
13781 before sending a scroll-wheel event.
13782
13783 2003-01-20 Richard M. Stallman <rms@gnu.org>
13784
13785 * xdisp.c (redisplay_window): If mini window's buffer is not
13786 a minibuffer, then redisplay it like other windows.
13787
13788 2003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13789
13790 * gtkutil.c (xg_create_frame_widgets): Check if there is an
13791 external tool bar before setting tool bar height.
13792
13793 2003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13794
13795 * xterm.c (handle_one_xevent): Surround popup_activated
13796 with #ifdef:s for non-toolkit version.
13797
13798 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
13799 (gtkutil.o): New file.
13800 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
13801 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
13802
13803 * gtkutil.c: New file for GTK version.
13804
13805 * gtkutil.h: New file for GTK version.
13806
13807 * xterm.h: Add xt_or_gtk_widget.
13808 Include gtk files for USE_GTK.
13809 (struct x_output): Add toolbar_height.
13810 (struct x_output): Add GTK widgets and Gdk size_hints.
13811 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
13812 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
13813 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
13814
13815 * xterm.c: Include gtkutil.h for USE_GTK.
13816 (free_frame_menubar): Declare extern void for USE_GTK.
13817 (note_mouse_highlight): Check popup_activated for USE_GTK.
13818 (xt_action_hook): Don't compile if USE_GTK.
13819 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
13820 (xg_scroll_callback): New function.
13821 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
13822 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
13823 for USE_GTK.
13824 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
13825 xg_show_scroll_bar for USE_GTK.
13826 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
13827 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
13828 (event_handler_gdk): New function for USE_GTK.
13829 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
13830 (handle_one_xevent): Make sure widget is mapped before
13831 calling x_real_positions for USE_GTK.
13832 (XTread_socket): Add GTK event loop for USE_GTK.
13833 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
13834 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
13835 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
13836 (x_iconify_frame): Add code for USE_GTK.
13837 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
13838 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
13839 is in gtkutil.c.
13840 (x_term_init): Add initialization for GTK.
13841 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
13842
13843 * xmenu.c: Include gtkutil.h for USE_GTK.
13844 (Fx_popup_menu): Use current position if x and y is NIL.
13845 (single_menu_item, single_menu_item, Fx_popup_dialog):
13846 Check for USE_GTK.
13847 (popup_widget_loop): New function for USE_GTK.
13848 (x_activate_menubar): Add code for USE_GTK.
13849 (popup_activate_callback, popup_deactivate_callback)
13850 (menu_highlight_callback, menubar_selection_callback):
13851 Add USE_GTK versions.
13852 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
13853 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
13854 (free_frame_menubar): Only compile if not USE_GTK. GTK version
13855 is in gtkutil.c.
13856 (popup_selection_callback): New version for USE_GTK.
13857 (create_and_show_popup_menu): New fuction, one USE_GTK version and
13858 one USE_X_TOOLKIT version.
13859 (xmenu_show): Call create_and_show_popup_menu.
13860 (dialog_selection_callback): New version for USE_GTK.
13861 (create_and_show_dialog): New fuction, one USE_GTK version and
13862 one USE_X_TOOLKIT version.
13863 (xdialog_show): Call create_and_show_dialog.
13864
13865 * xfns.c: Include gtkutil for USE_GTK.
13866 (x_window_to_frame, x_any_window_to_frame)
13867 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
13868 (x_top_window_to_frame): Add code for USE_GTK.
13869 (x_set_background_color): Call xg_set_background_color for GTK.
13870 (x_set_menu_bar_lines): Check for USE_GTK.
13871 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
13872 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
13873 (x_window): Call xg_create_frame_widgets for USE_GTK.
13874 (Fx_create_frame): Check for USE_GTK
13875 (Fx_file_dialog): New implementation for USE_GTK.
13876
13877 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
13878 (update_menu_bar): Add check for USE_GTK.
13879 (update_tool_bar): Add check for USE_GTK and external tool bar.
13880 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
13881 (redisplay_internal): Add check for USE_GTK and popup_activated.
13882 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
13883 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
13884 (display_menu_bar): Add check for USE_GTK
13885
13886 * lisp.h (Vx_resource_name): Declare extern.
13887
13888 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
13889 for USE_GTK.
13890 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
13891
13892 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
13893 (FRAME_EXTERNAL_TOOL_BAR): New macro.
13894 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
13895
13896 * fileio.c (Fread_file_name): Add check for USE_GTK.
13897
13898 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
13899 Add check for USE_GTK.
13900
13901 * config.in: Added HAVE_GTK
13902
13903 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
13904
13905 2003-01-18 Stefan Monnier <monnier@cs.yale.edu>
13906
13907 * charset.h (Funibyte_char_to_multibyte): Export.
13908
13909 2003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13910
13911 * xmenu.c (mouse_position_for_popup): New function.
13912 (Fx_popup_menu): Call mouse_position_for_popup for X and
13913 mouse_position_hook for others.
13914
13915 2003-01-17 Kim F. Storm <storm@cua.dk>
13916
13917 * editfns.c (Finsert): Mention `string-make-multibyte' and
13918 `string-as-multibyte' in doc string.
13919
13920 2003-01-17 Kenichi Handa <handa@m17n.org>
13921
13922 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
13923
13924 * editfns.c (Fformat): Convert an unibyte char argument that is
13925 formatted by "%c" to multibyte if the total result must be a
13926 multibyte string.
13927
13928 2003-01-16 Kim F. Storm <storm@cua.dk>
13929
13930 * process.c (set-process-filter): Document unibyte/multibyte-ness
13931 of string argument.
13932
13933 2003-01-16 Kenichi Handa <handa@m17n.org>
13934
13935 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
13936
13937 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
13938 (re_search_2): Likewise.
13939
13940 2003-01-15 Kenichi Handa <handa@m17n.org>
13941
13942 * xdisp.c (message_dolog): Fix bug of the case that *Message*
13943 buffer is unibyte.
13944
13945 2003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
13946
13947 * fns.c (Fsubstring): Clarify doc string.
13948
13949 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
13950 (Fprevious_char_property_change)
13951 (Fnext_single_char_property_change)
13952 (Fprevious_single_char_property_change, Fnext_property_change)
13953 (Fnext_single_property_change, Fprevious_property_change)
13954 (Fprevious_single_property_change, Fadd_text_properties)
13955 (Fput_text_property, Fset_text_properties)
13956 (Fremove_text_properties, Fremove_list_of_text_properties)
13957 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
13958
13959 2003-01-14 Kim F. Storm <storm@cua.dk>
13960
13961 * process.h (struct Lisp_Process): New member plist replaces old
13962 member private_vars. All uses changed.
13963
13964 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
13965 (QCplist): Rename from QCvars. Change all uses.
13966 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
13967 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
13968 (syms_of_process): Intern, staticpro, defsubr these.
13969 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
13970
13971 2003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
13972
13973 * m/delta.h: Remove (obsolete).
13974
13975 2003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
13976
13977 * fileio.c (Fdelete_directory, Fdelete_file): Document the
13978 behaviour in front of symlinks.
13979 (Fdelete_file): Raise an error on directories.
13980
13981 2003-01-13 Dave Love <fx@gnu.org>
13982
13983 * fns.c (Freverse): Use QUIT.
13984
13985 2003-01-13 Richard M. Stallman <rms@gnu.org>
13986
13987 * minibuf.c (minibuffer_completion_contents):
13988 Error if point is inside prompt.
13989
13990 * keyboard.c (command_loop_1): Don't redisplay directly
13991 if there's a post-command-hook.
13992
13993 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
13994 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
13995
13996 2003-01-12 Kim F. Storm <storm@cua.dk>
13997
13998 * process.h (struct Lisp_Process): New member private_vars.
13999
14000 * process.c (QCvars): New variable.
14001 (syms_of_process): Intern and staticpro it.
14002 (Fset_process_contact): Removed function.
14003 (Fprocess_variable, Fset_process_variable): New functions.
14004 (syms_of_process): Defsubr them.
14005 (Fstart_process): Initialize private_vars plist to nil.
14006 (Fmake_network_process): New arg :vars to setup the private
14007 variables for new network process.
14008 (server_accept_connection): Copy server's private variables to
14009 client process.
14010
14011 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
14012 crashes). Code rewritten and simplified. Now directly aligns the
14013 pointer and recalculates pure_bytes_used, rather than aligning the
14014 size and adjusting the pointer.
14015
14016 2003-01-11 Kim F. Storm <storm@cua.dk>
14017
14018 * process.c (Fset_process_contact): New function.
14019 (syms_of_process): defsubr it.
14020 (make-network-process): Update doc.
14021
14022 2003-01-10 Andreas Schwab <schwab@suse.de>
14023
14024 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
14025 Reported by Berthold Gunreben <b.gunreben@web.de>.
14026
14027 2003-01-10 Dave Love <fx@gnu.org>
14028
14029 * composite.c (syms_of_composite): Make composition_hash_table weak.
14030
14031 2003-01-09 Kim F. Storm <storm@cua.dk>
14032
14033 * process.c (Fmake_network_process): Convert new port number
14034 to host byte order for `:service t' case. From Mario Lang.
14035
14036 2003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14037
14038 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
14039 instead of XtAppProcessEvent.
14040
14041 * xterm.c (handle_one_xevent): New function.
14042 (x_dispatch_event): New function.
14043 (XTread_socket): Call handle_one_xevent.
14044
14045 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
14046
14047 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
14048 call XQueryPointer to get coordinates.
14049 (popup_get_selection): Do not set popup_activated_flag to zero,
14050 let popup_deactivate_callback do that. Needed for Motif.
14051 Call x_dispatch_event instead of XtDispatchEvent.
14052 (xmenu_show): Calculate root coordinate from frame top/left position.
14053
14054 2003-01-08 Kim F. Storm <storm@cua.dk>
14055
14056 * process.c (server_accept_connection): Fix recording of new
14057 connection's local address in :local property of contact info.
14058 (Fmake_network_process): Record local network address for new
14059 client processes in :local property of contact info.
14060 (format-network-address): Add arg OMIT-PORT. Change callers.
14061
14062 2003-01-07 Dave Love <fx@gnu.org>
14063
14064 * Makefile.in (fns.o): Depend on coding.h.
14065
14066 2003-01-07 Markus Rost <rost@math.ohio-state.edu>
14067
14068 * minibuf.c (Fread_variable): Doc fix.
14069
14070 * eval.c (Fuser_variable_p): Doc change. For custom variables,
14071 use the same test as for custom-variable-p.
14072
14073 2003-01-05 Richard M. Stallman <rms@gnu.org>
14074
14075 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
14076 Count LAST_LINE_MISFIT in scroll margin for end of window.
14077 Move label too_near_end before setting SCROLL_MARGIN_POS.
14078 Set LAST_LINE_MISFIT before jumping there.
14079
14080 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
14081 scroll_conservatively case. If scrolling that much doesn't change
14082 STARTP, move it down one line.
14083
14084 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
14085 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
14086
14087 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
14088 selected frame.
14089
14090 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
14091 (syms_of_keymap): Staticpro them.
14092 (Fapropos_internal): Initialize them and clear them out.
14093 Don't GCPRO them.
14094
14095 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
14096 Doc fixes.
14097
14098 * lisp.h: New misc type Lisp_Save_Value.
14099 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
14100 (XSAVE_VALUE): New macro.
14101 (struct Lisp_Save_Value): New data type.
14102 (union Lisp_Misc): Add u_save_value alternative.
14103 (make_save_value): Declare.
14104
14105 * alloc.c (make_save_value): New function.
14106
14107 * xterm.c (x_catch_errors): Save dpy using make_save_value.
14108 (x_catch_errors_unwind): Call XSync.
14109
14110 2003-01-01 Richard M. Stallman <rms@gnu.org>
14111
14112 * window.c (window_scroll_pixel_based): Partially undo last change.
14113
14114 * keyboard.c (command_loop_1): Call adjust_point_for_property
14115 in direct action cases for Qforward_char and Qbackward_char.
14116 Set already_adjusted so it won't be done twice.
14117
14118 2002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk>
14119
14120 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
14121 type definition of size_t.
14122
14123 2003-01-02 Steven Tamm <steventamm@mac.com>
14124
14125 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
14126 distinguish Carbon GUI builds from X11 builds on darwin.
14127
14128 2002-12-30 Steven Tamm <steventamm@mac.com>
14129
14130 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
14131 to default to t.
14132
14133 2002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
14134
14135 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
14136
14137 2002-12-28 Steven Tamm <steventamm@mac.com>
14138
14139 * Makefile.in (macosx-bundle): Fix Mac OS X/Carbon port to
14140 allow building in a different directory than source. Uses some
14141 GNU Make extensions, but there is no other make on Mac OS X.
14142
14143 2002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
14144
14145 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
14146 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
14147 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
14148 (Fstring_to_number): Mention the returned value in the doc strings.
14149
14150 2002-12-23 Richard M. Stallman <rms@gnu.org>
14151
14152 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
14153 <scroll-down-aggressively>: Doc fix.
14154
14155 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
14156 string as pane name, if there is one.
14157 (set_frame_menubar): Save menu_items_n_panes from each call to
14158 parse_single_submenu and use it when calling digest_single_submenu.
14159
14160 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
14161 Don't try to make last line fully visible if it is past end of window.
14162
14163 2002-12-22 Steven Tamm <steventamm@mac.com>
14164
14165 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
14166 (mac_menu_show): Add support for hierarchical popup menus.
14167 (add_menu_item): Remove indentation support.
14168 (fill_submenu, fill_menu): Create hierarchical menus
14169 instead of using indentation.
14170
14171 2002-12-22 Richard M. Stallman <rms@gnu.org>
14172
14173 * xdisp.c (try_cursor_movement): Don't call try_window here.
14174 (redisplay_window): Never redisplay minibuffer when inactive.
14175
14176 * window.c (select_window_1): Undo 9/21 change.
14177
14178 2002-12-22 Steven Tamm <steventamm@mac.com>
14179
14180 * macterm.c (XTread_socket): Call KeyTranslate for control and
14181 meta to deal correctly shifted non-alpha characters, like C-S-5
14182 being treated like C-%. Do not look for shift key to deal
14183 with masking off control-key with mac-reverse-ctrl-meta.
14184
14185 2002-12-21 Richard M. Stallman <rms@gnu.org>
14186
14187 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
14188 If it is non-nil, run timers. Use an unwind-protect to requeue
14189 the events that were read ahead.
14190 (popup_get_selection_unwind): New subroutine.
14191 (popup_get_selection_queue): File-scope variable now holds that queue.
14192 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
14193 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
14194 Use an unwind-protect to pop down the dialog box.
14195 (xdialog_show_unwind): New subroutine implements that.
14196
14197 * xdisp.c (row_containing_pos): Change exit test using last_y.
14198 (try_window_id): Abort if row_containing_pos returns null.
14199
14200 * lread.c (load_error_handler): New function.
14201 (Fload): Handle errors in Fsubstitute_in_file_name.
14202 Don't expect Fsignal to return.
14203
14204 * eval.c: Errors and throws work right with interrupt blocking.
14205 (struct catchtag): New elt interrupt_input_blocked.
14206 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
14207 (internal_catch, Fcondition_case, internal_condition_case)
14208 (internal_condition_case_1, internal_condition_case_2): Save it.
14209 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
14210
14211 * editfns.c (Fformat): Add parens.
14212
14213 * dired.c (file_name_completion): Fix that change.
14214 Delete special quit-handling code; just use QUIT.
14215
14216 2002-12-21 Tak Ota <Takaaki.Ota@am.sony.com>
14217
14218 * dired.c (file_name_completion): Close directory on error
14219 just as in directory_files_internal.
14220
14221 2002-12-19 David Kastrup <David.Kastrup@t-online.de>
14222
14223 * window.c (Fset_window_configuration): Set old_point to correct
14224 value when new_current_buffer == current_buffer.
14225
14226 2002-12-17 Ben Key <bkey1@tampabay.rr.com>
14227
14228 Revisited my earlier fix for the following entry in etc/PROBLEMS:
14229 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
14230 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
14231
14232 These changes were in part based upon suggestions made by Peter
14233 'Luna' Runestig [peter@runestig.com].
14234
14235 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token)
14236 (g_b_init_get_token_information, g_b_init_lookup_account_sid)
14237 (g_b_init_get_sid_identifier_authority ): Add several static
14238 global variables.
14239
14240 * w32.c (globals_of_w32): New function. Used to initialize those
14241 global variables that must always be initialized on startup even
14242 when the global variable initialized is non zero. Its primary
14243 purpose at this time is to set the global variables
14244 g_b_init_is_windows_9x, g_b_init_open_process_token,
14245 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
14246 g_b_init_get_sid_identifier_authority to 0 on startup.
14247 Called from main.
14248
14249 * w32.c (is_windows_9x): Perform initialization only if
14250 g_b_init_is_windows_9x is equal to 0. On initialization set
14251 g_b_init_is_windows_9x equal to 1.
14252
14253 * w32.c (open_process_token): Perform initialization only if
14254 g_b_init_open_process_token is equal to 0. On initialization set
14255 g_b_init_open_process_token equal to 1.
14256
14257 * w32.c (get_token_information): Perform initialization only if
14258 g_b_init_get_token_information is equal to 0. On initialization
14259 set g_b_init_get_token_information equal to 1.
14260
14261 * w32.c (lookup_account_sid): Perform initialization only if
14262 g_b_init_lookup_account_sid is equal to 0. On initialization
14263 set g_b_init_lookup_account_sid equal to 1.
14264
14265 * w32.c (get_sid_identifier_authority): Perform initialization
14266 only if g_b_init_get_sid_identifier_authority is equal to 0.
14267 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
14268
14269 * w32fns.c (globals_of_w32fns): New function. Used to initialize
14270 those global variables that must always be initialized on startup
14271 even when the global variable initialized is non zero.
14272 Its primary purpose at this time is to initialize the global variable
14273 track_mouse_event_fn.
14274
14275 * w32fns.c (w32_wnd_proc): Remove initialization of
14276 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
14277
14278 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
14279
14280 * w32menu.c (globals_of_w32menu): New function. Used to
14281 initialize those global variables that must always be initialized
14282 on startup even when the global variable initialized is non zero.
14283 Its primary purpose at this time is to initialize the global
14284 variables get_menu_item_info and set_menu_item_info.
14285
14286 * w32menu.c (initialize_frame_menubar): Remove initialization of
14287 get_menu_item_info and set_menu_item_info.
14288
14289 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
14290
14291 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
14292 Declare them.
14293
14294 * emacs.c (main): Call globals_of_w32 prior to calling
14295 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
14296 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
14297 is defined.
14298
14299 * w32term.c (x_update_window_begin): Fix Windows API error
14300 detected by BoundsChecker. Test to determine if
14301 w32_system_caret_hwnd is NULL prior to attempting to use
14302 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
14303
14304 * w32term.c (x_update_window_end): Fix Windows API error
14305 detected by BoundsChecker. Test to determine if
14306 w32_system_caret_hwnd is NULL prior to attempting to use
14307 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
14308
14309 2002-12-17 Kenichi Handa <handa@m17n.org>
14310
14311 * coding.c (coding_system_require_warning): New variable.
14312 (syms_of_coding): DEFVAR it.
14313
14314 * coding.h (coding_system_require_warning): Extern it.
14315
14316 * fileio.c (choose_write_coding_system): Even if
14317 Vcoding_system_for_write is non-nil, if
14318 coding_system_require_warning is nonzero, call
14319 Vselect_safe_coding_system_function.
14320
14321 2002-12-17 Markus Rost <rost@math.ohio-state.edu>
14322
14323 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
14324 (lisp): Add font-core.
14325
14326 2002-12-13 Stefan Monnier <monnier@cs.yale.edu>
14327
14328 * textprop.c (text_read_only): New arg `propval'.
14329 (get_char_property_and_overlay): Remove unused var `next_overlay'.
14330 (verify_interval_modification): Use text_read_only's new arg.
14331
14332 2002-12-13 Kenichi Handa <handa@m17n.org>
14333
14334 * coding.c (Funencodable_char_position): Set pend correctly.
14335
14336 2002-12-12 Jason Rumney <jasonr@gnu.org>
14337
14338 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
14339 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
14340 Be more careful about when help_events are generated.
14341
14342 2002-12-12 Steven Tamm <steventamm@mac.com>
14343
14344 * macterm.c (mac_check_for_quit_char): Correctly set the
14345 modifiers of the event to 0.
14346 * mac.c (sys_select): Duplicate rfds before calling select to
14347 ensure that rfds survive the while loop.
14348
14349 2002-12-11 Kim F. Storm <storm@cua.dk>
14350
14351 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
14352 row_containing_pos returned NULL.
14353
14354 2002-12-10 Steven Tamm <steventamm@mac.com>
14355
14356 * mac.c (sys_read): Fix sys_read to not call select if IO is
14357 non-blocking.
14358 (sys_select): Fix sys_select to not use a timeout larger than
14359 the one given.
14360
14361 2002-12-10 Juanma Barranquero <lektu@terra.es>
14362
14363 * editfns.c (Fformat): Use alloca, not _alloca.
14364
14365 2002-12-09 Richard M. Stallman <rms@gnu.org>
14366
14367 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
14368 as the last thing.
14369
14370 2002-12-09 Dave Love <fx@gnu.org>
14371
14372 * s/sol2-8.h: Removed. (Not necessary.)
14373
14374 2002-12-09 Matthew Swift <swift@alum.mit.edu>
14375
14376 * editfns.c (Fformat): Handle precision in string conversion
14377 specifiers like libc functions do (ie, print at most that many
14378 characters).
14379
14380 2002-12-08 Richard M. Stallman <rms@gnu.org>
14381
14382 * xdisp.c (row_containing_pos): Check more carefully
14383 whether charpos is really in the row before returning it.
14384
14385 2002-12-07 Steven Tamm <steventamm@mac.com>
14386
14387 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
14388
14389 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
14390 each stack frame. This may change as it could be time consuming.
14391
14392 * macterm.c (mac_check_for_quit_char, quit_char_comp)
14393 (init_quit_char_handler, mac_determine_quit_char_modifiers)
14394 (mac_initialize): Add code to check for pressing of quit_char
14395 in the OS event queue.
14396
14397 * mac.c (sys_select): Call mac_check_for_quit_char every second
14398 while blocking on select.
14399
14400 * mac.c (sys_read): Use sys_select to test for input first
14401 before calling read, to allow C-g to break.
14402
14403 2002-12-07 Richard M. Stallman <rms@gnu.org>
14404
14405 * minibuf.c (Fcompleting_read): Doc fix.
14406
14407 * lread.c (syms_of_lread) <load-history>: Doc fix.
14408
14409 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
14410
14411 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
14412 autoload.
14413
14414 * data.c (Fdefalias): Record in load-history redefining an autoload.
14415
14416 * alloca.c: Undo ifdef change accidentally made on 12-04.
14417
14418 2002-12-06 Francesco Potorti` <pot@gnu.org>
14419
14420 * xfns.c (png_load): Avoid double gamma correction for PNG images.
14421
14422 2002-12-04 Richard M. Stallman <rms@gnu.org>
14423
14424 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
14425
14426 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
14427
14428 * alloca.c: Don't use #error.
14429
14430 2002-12-03 Dave Love <fx@gnu.org>
14431
14432 * buffer.c (Qucs_set_table_for_input): New.
14433 (Fget_buffer_create): Use it.
14434 (Qset_buffer_major_mode_hook): Deleted.
14435 (Fset_buffer_major_mode): Revert previous change.
14436 (init_buffer_once): Intern ucs-set-table-for-input.
14437 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
14438 Add &Qucs_set_table_for_input.
14439
14440 2002-12-03 Andreas Schwab <schwab@suse.de>
14441
14442 * callint.c (Fcall_interactively): Use next_event only if less
14443 than key_count.
14444
14445 2002-12-02 Andrew Choi <akochoi@shaw.ca>
14446
14447 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
14448 names to 255 characters.
14449
14450 * macterm.c (XTread_socket): If all frames have been collapsed,
14451 expand the first one before handling drag-and-drop events.
14452
14453 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
14454 which is detected by autoconf.
14455
14456 2002-12-01 Steven Tamm <steventamm@mac.com>
14457
14458 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
14459 offset in two hints table to allow prebinding to be redone and
14460 allow the executable to be stripped.
14461
14462 2002-11-29 Dave Love <fx@gnu.org>
14463
14464 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
14465 already provided.
14466
14467 2002-11-29 Richard M. Stallman <rms@gnu.org>
14468
14469 * xdisp.c (start_display): Check more intelligently for
14470 whether the line is continued.
14471 (move_it_vertically_backward): Clear it->continuation_lines_width.
14472
14473 2002-11-28 Dave Love <fx@gnu.org>
14474
14475 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
14476 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
14477
14478 2002-11-27 Steven Tamm <steventamm@mac.com>
14479
14480 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
14481 more descriptive error output from lread.c:Fload upon most require
14482 cycles during boostrapping.
14483
14484 2002-11-27 Jason Rumney <jasonr@gnu.org>
14485
14486 * fileio.c (Finsert_file_contents): Give a more appropriate error
14487 for files bigger than 2Gb when off_t is 32 bit.
14488
14489 * dired.c (Ffile_attributes): Don't return negative file sizes for
14490 files bigger than 2Gb when off_t is 32 bit.
14491
14492 2002-11-27 Dave Love <fx@gnu.org>
14493
14494 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
14495
14496 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
14497 Test GETPGRP_VOID instead.
14498 [BSD_TERMIOS]: Remove definitions (never used).
14499
14500 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
14501 Don't define.
14502 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
14503
14504 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
14505
14506 2002-11-25 Jason Rumney <jasonr@gnu.org>
14507
14508 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
14509 supported.
14510
14511 2002-11-25 Dave Love <fx@gnu.org>
14512
14513 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
14514
14515 * Makefile.in (TEMACS_LDFLAGS): Update last change.
14516
14517 2002-11-25 Andreas Schwab <schwab@suse.de>
14518
14519 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
14520
14521 2002-11-24 Steven Tamm <steventamm@mac.com>
14522
14523 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
14524 determine the size of pointers alloced in unexed space instead
14525 of using possibly invalid emacs_zone pointers. This fixes the
14526 binary incompatibility problems caused by updates to libSystem.B.
14527
14528 2002-11-24 Richard M. Stallman <rms@gnu.org>
14529
14530 * search.c (Fstring_match): Doc fix.
14531
14532 * callint.c (Fcall_interactively): If a command fails because
14533 `*' detects a read-only buffer, but RECORD_FLAG is set,
14534 record it anyway if the args don't actually do tty input.
14535
14536 2002-11-22 Dave Love <fx@gnu.org>
14537
14538 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
14539
14540 * keyboard.c (interrupt_signal): Provide forward declaration.
14541 (kbd_buffer_store_event): Don't declare interrupt_signal.
14542
14543 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
14544
14545 2002-11-21 Richard M. Stallman <rms@gnu.org>
14546
14547 * eval.c (interactive_p): Skip any number of bytecode
14548 and special form frames, in any order.
14549
14550 2002-11-20 Jason Rumney <jasonr@gnu.org>
14551
14552 * w32fns.c (convert_mono_to_color_image): New function.
14553 (xbm_load, xbm_load_image): Use it when foreground or background
14554 is explicitly set.
14555
14556 2002-11-19 Dave Love <fx@gnu.org>
14557
14558 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
14559
14560 2002-11-18 Jason Rumney <jasonr@gnu.org>
14561
14562 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
14563 (XPutPixel): Swap blue and red.
14564 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
14565 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
14566 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
14567 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
14568
14569 2002-11-18 Dave Love <fx@gnu.org>
14570
14571 * m/orion105.h (HAVE_ALLOCA): Don't define.
14572
14573 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
14574
14575 * m/intel386.h: Don't include alloca.h or define alloca.
14576
14577 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
14578 malloc, realloc, calloc.
14579
14580 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
14581 (bcmp): Don't define.
14582
14583 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
14584
14585 * m/amdahl.h: Don't define LIB_STANDARD.
14586
14587 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
14588
14589 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
14590
14591 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
14592 Don't include alloca.h.
14593
14594 * s/aix3-2.h (HAVE_FSYNC): Don't define.
14595
14596 * regex.c (_GNU_SOURCE): Don't define.
14597
14598 * process.c (_GNU_SOURCE): Don't define.
14599
14600 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
14601
14602 2002-11-18 Markus Rost <rost@math.ohio-state.edu>
14603
14604 * s/sol2-8.h: Include sol2-6.h.
14605
14606 2002-11-18 Miles Bader <miles@gnu.org>
14607
14608 * dispextern.h (struct face): Add `overstrike' field.
14609 * xterm.c (x_draw_glyph_string_foreground)
14610 (x_draw_composite_glyph_string_foreground): Implement overstriking.
14611 * xfaces.c (load_face_font): Set `face->overstrike' based on
14612 result from choose_face_font.
14613 (best_matching_font, choose_face_font): Add `needs_overstrike'
14614 argument, and use it to return whether overstriking is desirable
14615 for this face/font combo.
14616 (set_font_frame_param: Pass new argument to choose_face_font.
14617
14618 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
14619
14620 This change is my fix for the following entry in etc/PROBLEMS:
14621 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
14622 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
14623
14624 * w32.c: Added wrapper functions around the win32 API functions
14625 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
14626 GetSidIdentifierAuthority. These wrapper functions serve two
14627 purposes:
14628 1. They ensure that the wrapped function can never be called
14629 when Emacs is running on an operating system on which they are
14630 not supported (Microsoft Windows 95 / 98 / ME).
14631 2. They call the wrapped functions via function pointers rather
14632 than calling them directly. This avoids taking advantage of the
14633 undocumented fact that although these functions are not supported
14634 in the 9x branch of Microsoft Windows, the functions do exist in
14635 the version of advapi32.dll that is found in the 9x branch of
14636 Microsoft Windows.
14637
14638 * w32.c (init_user_info): Replace the calls to the win32 API
14639 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
14640 and GetSidIdentifierAuthority with calls to the newly added
14641 wrapper functions.
14642
14643 * w32.h: Added extern declarations for the following functions:
14644 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
14645 syms_of_w32menu, and void syms_of_fontset.
14646
14647 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
14648 function pointer track_mouse_event_fn in the handler for the
14649 WM_SETFOCUS message.
14650
14651 * w32menu.c (initialize_frame_menubar): Add code to
14652 reinitialize the function pointers set_menu_item_info and
14653 get_menu_item_info.
14654
14655 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
14656
14657 * sound.c: Added a partial implementation of play-sound-internal
14658 for Microsoft Windows. Added various #ifdef / #else / #endif
14659 code blocks to separate the code that will compile under
14660 Microsoft Windows from the code that is specific to GNU/Linux.
14661 Moved several blocks of code around to make this separation of code
14662 into Windows compatible and GNU/Linux compatible code blocks easier.
14663
14664 * makefile.w32-in: Include sound.c and link with WinMM.lib.
14665
14666 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
14667 added support for play-sound-internal under Windows would be
14668 included in the build of Emacs.
14669
14670 2002-11-16 Jason Rumney <jasonr@gnu.org>
14671
14672 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
14673
14674 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
14675
14676 2002-11-15 Stefan Monnier <monnier@cs.yale.edu>
14677
14678 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
14679 (adjust_point_for_property): Move out of display and invisible even if
14680 we were already inside before (in case a property was added while
14681 we weren't looking). Be more careful when handling invisible props.
14682 Skip invisible text as if it really wasn't there at all.
14683
14684 2002-11-15 Jason Rumney <jasonr@gnu.org>
14685
14686 * w32term.c (x_draw_image_foreground)
14687 (w32_draw_image_foreground_1): Use standard copy and invert
14688 operations to draw images.
14689
14690 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
14691 depth of 1.
14692 (xbm_read_bitmap_data): Invert bits as xbm is read in.
14693 (XPutPixel): Don't invert bits here.
14694
14695 2002-11-15 Jason Rumney <jasonr@gnu.org>
14696
14697 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
14698 (w32_draw_image_foreground_1): Handle image masks.
14699 (x_draw_image_glyph_string): Don't BitBlt transparently.
14700
14701 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
14702 (x_from_xcolors): Adjust RGB values for W32.
14703 (image_background, image_background_transparent)
14704 (postprocess_image, x_to_xcolors, x_disable_image)
14705 (x_build_heuristic_mask): Adapt for W32 and enable.
14706 (x_create_x_image_and_pixmap): Mark images with palettes as such.
14707 (xbm_load): Remove unused variable.
14708
14709 2002-11-14 Richard M. Stallman <rms@gnu.org>
14710
14711 * buffer.c (syms_of_buffer): Doc fix.
14712
14713 2002-11-14 Dave Love <fx@gnu.org>
14714
14715 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
14716
14717 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
14718 * xmenu.c (unuse_menu_items, digest_single_submenu):
14719 * xfns.c (x_put_x_image):
14720 * xdisp.c (message2_nolog, set_message):
14721 * undo.c (record_point):
14722 * terminfo.c (tparam):
14723 * syntax.c (scan_sexps_forward):
14724 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
14725 * composite.c (update_compositions):
14726 * cm.c (calccost, cmgoto):
14727 * charset.c (c_string_width): Declare all args (per C99).
14728
14729 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
14730
14731 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
14732 Don't declare.
14733
14734 * emacs.c (main) [!VMS]: Avoid third arg.
14735
14736 * fns.c (Fcopy_sequence): Doc fix.
14737 (Fmap_char_table): Cast `call2'.
14738
14739 2002-11-14 Francesco Potorti` <pot@gnu.org>
14740
14741 * s/sol2-8.h: New file.
14742
14743 2002-11-14 Kim F. Storm <storm@cua.dk>
14744
14745 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
14746 dependency on `risky-local-variable' and the :propertize form.
14747
14748 2002-11-12 Stefan Monnier <monnier@cs.yale.edu>
14749
14750 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
14751
14752 * syntax.c (scan_sexps_forward): Undo last patch.
14753 Use a more obvious fix: check eob before updating the syntax table.
14754
14755 2002-11-09 Stefan Monnier <monnier@cs.yale.edu>
14756
14757 * syntax.c (scan_sexps_forward): Update syntax table before reading
14758 a char rather than after so we don't update the table past eob.
14759
14760 2002-11-09 Dave Love <fx@gnu.org>
14761
14762 * buffer.c (Fset_buffer_major_mode): Fix last change.
14763
14764 * regex.c (regexec): Fix pmatch declaration.
14765
14766 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
14767
14768 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
14769 to self-inserting characters.
14770 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
14771
14772 * coding.c (Vtranslation_table_for_input): New.
14773 (syms_of_coding): DEFVAR it.
14774
14775 2002-11-08 Juanma Barranquero <lektu@terra.es>
14776
14777 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
14778 window.
14779
14780 2002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14781
14782 * process.c (Fformat_network_address): Remove unused locals p,
14783 cp, and i.
14784
14785 2002-11-06 Dave Love <fx@gnu.org>
14786
14787 * buffer.c (Qset_buffer_major_mode_hook): New.
14788 (Fset_buffer_major_mode): Use it.
14789
14790 2002-11-06 Richard M. Stallman <rms@gnu.org>
14791
14792 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
14793 and stop_polling.
14794
14795 * process.c (wait_reading_process_input):
14796 Test POLLING_PROBLEM_IN_SELECT, not hpux.
14797 Avoid initialization for auto Lisp_Object var.
14798
14799 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
14800
14801 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
14802
14803 2002-11-05 Richard M. Stallman <rms@gnu.org>
14804
14805 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
14806
14807 * callint.c (Fcall_interactively): New local filter_specs.
14808 (Fcall_interactively): Check for progn as well as let.
14809 Add a gcpro.
14810 (Qprogn): New variable.
14811 (syms_of_callint): Staticpro and init Qprogn.
14812
14813 2002-11-04 John Paul Wallington <jpw@shootybangbang.com>
14814
14815 * lread.c (Feval_buffer): Doc fix.
14816
14817 2002-11-04 Dave Love <fx@gnu.org>
14818
14819 * keyboard.c (read_char): Always translate iff
14820 Vkeyboard_translate_table is a char table and c is valid.
14821
14822 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
14823 and fix C types.
14824
14825 2002-11-03 Stefan Monnier <monnier@cs.yale.edu>
14826
14827 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
14828
14829 * editfns.c (get_pos_property): Don't hardcode Qfield.
14830
14831 * keyboard.c (adjust_point_for_property): Handle `display' prop on
14832 overlays. Also handle `invisible' prop.
14833
14834 2002-11-02 Stefan Monnier <monnier@cs.yale.edu>
14835
14836 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
14837 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
14838
14839 2002-11-01 Andreas Schwab <schwab@suse.de>
14840
14841 * editfns.c (Fmessage): Revert last change to properly handle %%.
14842
14843 2002-11-01 Stefan Monnier <monnier@cs.yale.edu>
14844
14845 * xmenu.c (unuse_menu_items): New fun.
14846 (menu_items_inuse): New var.
14847 (syms_of_xmenu): Initialize it.
14848 (init_menu_items): Use it to detect re-entrance.
14849 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
14850 (Fx_popup_menu): Remove spurious XSETFRAME.
14851
14852 * editfns.c (find_field): Make an exception for nil fields.
14853
14854 2002-11-01 Dave Love <fx@gnu.org>
14855
14856 * m/gec63.h: Deleted.
14857
14858 2002-10-31 Dave Love <fx@gnu.org>
14859
14860 * xterm.c (XTread_socket): Fix last change.
14861 (xaw_scroll_callback): Cast call_data to long to avoid warning.
14862
14863 2002-10-31 Stefan Monnier <monnier@cs.yale.edu>
14864
14865 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
14866
14867 2002-10-30 Stefan Monnier <monnier@cs.yale.edu>
14868
14869 * editfns.c (overlays_around, get_pos_property): New funs.
14870 (find_field): Use them.
14871 Also be careful not to modify POS before its last use.
14872 (Fmessage): Don't Fformat if there's nothing to format.
14873
14874 2002-10-30 Dave Love <fx@gnu.org>
14875
14876 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
14877 [HAVE_PTY_H]; Include pty.h.
14878
14879 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
14880
14881 * xterm.c (Qeql): Declare.
14882 (Vx_keysym_table): New.
14883 (syms_of_xterm): Initialize it.
14884 (XTread_socket): Use it. Deal with ASCII keysyms.
14885 (XSetIMValues) [HAVE_X11R6]: Prototype.
14886
14887 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
14888 (lispy_kana_keys): Comment out.
14889 (make_lispy_event) [XK_kana_A]: Comment out.
14890 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
14891 Fix sprintf call.
14892
14893 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
14894 regexp.h change).
14895 (TERMINFO, LIBS_TERMCAP): Define.
14896
14897 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
14898 (bcmp): Define conditional on HAVE_BCMP.
14899 (NO_SIOCTL_H): Don't define.
14900 (TIOCSIGSEND): Don't make conditional on IRIX6.
14901
14902 * s/sol2-5.h: Don't include strings.h.
14903 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
14904
14905 * s/irix6-0.h (IRIX6): Don't define.
14906 (bcopy, bcmp, bzero): Don't undef.
14907
14908 * s/irix6-5.h: Don't include strings.h.
14909 (IRIX6): Don't define.
14910 (bcopy, bcmp, bzero): Don't undef.
14911
14912 * syntax.c (Fforward_comment): Doc fix.
14913
14914 2002-10-29 Kim F. Storm <storm@cua.dk>
14915
14916 * process.c (Fsignal_process): Allow PROCESS to be specified by
14917 name in addition to pid (as integer or string).
14918
14919 2002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
14920
14921 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
14922 environments.
14923
14924 2002-10-27 Kim F. Storm <storm@cua.dk>
14925
14926 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
14927
14928 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
14929
14930 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
14931
14932 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
14933
14934 2002-10-26 Richard M. Stallman <rms@gnu.org>
14935
14936 * editfns.c (Fformat): Detect invalid format letters for floats.
14937
14938 2002-10-25 Kenichi Handa <handa@m17n.org>
14939
14940 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
14941 (x_set_title): Likewise.
14942
14943 2002-10-25 Juanma Barranquero <lektu@terra.es>
14944
14945 * macgui.h:
14946 * w32gui.h: Remove definition of XColor.
14947
14948 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
14949
14950 2002-10-24 Kim F. Storm <storm@cua.dk>
14951
14952 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
14953 Callers changed (supply dummy arg).
14954
14955 * lisp.h (get_window_cursor_type): Update prototype.
14956
14957 * w32term.c (x_display_and_set_cursor): Get active_cursor from
14958 get_window_cursor_type to track system caret.
14959
14960 2002-10-24 Kim F. Storm <storm@cua.dk>
14961
14962 * process.c (Fformat_network_address): New function.
14963 (syms_of_process): Defsubr it.
14964 (list_processes_1): Use it to format :local/:remote address if
14965 service/host is not set; before Emacs would crash in that case.
14966 (Fmake_network_process): Don't use Ffind_operation_coding_system
14967 to setup coding system if host or service is not set.
14968
14969 2002-10-23 Juanma Barranquero <lektu@terra.es>
14970
14971 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
14972
14973 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
14974 COLORREF.
14975
14976 * macgui.h:
14977 * w32gui.h: Add definition of XColor.
14978
14979 * macfns.c:
14980 * w32fns.c:
14981 * xfaces.c: Remove definition of XColor.
14982
14983 2002-10-22 Stefan Monnier <monnier@cs.yale.edu>
14984
14985 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
14986
14987 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
14988 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
14989 window if it is dedicated.
14990 (Fshrink_window): Add preserve_before as was done for enlarge_window.
14991 (Vspecial_display_function): Update docstring.
14992
14993 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
14994 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
14995 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
14996
14997 2002-10-21 Stefan Monnier <monnier@cs.yale.edu>
14998
14999 * casefiddle.c (casify_region): Don't treat a prefix char as part
15000 of a word when at the beginning.
15001
15002 2002-10-17 Juanma Barranquero <lektu@terra.es>
15003
15004 * lread.c (syms_of_lread): Fix typos.
15005
15006 2002-10-17 Dave Love <fx@gnu.org>
15007
15008 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
15009
15010 2002-10-16 Richard M. Stallman <rms@gnu.org>
15011
15012 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
15013
15014 2002-10-14 Juanma Barranquero <lektu@terra.es>
15015
15016 * w16select.c (syms_of_win16select): Fix docstring for
15017 `selection-coding-system'.
15018
15019 * w32select.c (syms_of_w32select): Likewise.
15020
15021 2002-10-14 Stefan Monnier <monnier@cs.yale.edu>
15022
15023 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
15024 a backslash-quoted char.
15025 (scan_lists, scan_sexps_forward): Pacify the compiler.
15026
15027 2002-10-13 Richard M. Stallman <rms@gnu.org>
15028
15029 * window.c (window_scroll): Set immediate_quit.
15030
15031 * print.c (print): When backquote form is the car of a list,
15032 output in old style. Use old_backquote_output to output all
15033 comma forms inside it in old style too.
15034
15035 * buffer.h (struct buffer): Move `undo_list' down below `name'.
15036
15037 2002-10-11 Markus Rost <rost@math.ohio-state.edu>
15038
15039 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
15040 batch mode).
15041
15042 * lread.c (Fload): Doc fix (load-suffixes).
15043
15044 2002-10-10 Steven Tamm <steventamm@mac.com>
15045
15046 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
15047 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
15048 Also switch the default to Qnil from Qt.
15049
15050 2002-10-08 Kenichi Handa <handa@m17n.org>
15051
15052 * coding.c (code_convert_region): When we need more GAP for
15053 conversion, pay attention to the case that coding->produced is not
15054 greater than coding->consumed.
15055
15056 2002-10-07 Richard M. Stallman <rms@gnu.org>
15057
15058 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
15059
15060 2002-10-06 Andrew Choi <akochoi@shaw.ca>
15061
15062 * macmenu.c (mac_menu_show): Add j to count menu items; match
15063 menu_item_selection to it to find selected item.
15064
15065 2002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15066
15067 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
15068 cases. The correct fix is to pass ReparentNotify to Xt.
15069 The shell widget interprets ConfigureNotify differently depending
15070 on if it has been reparented or not.
15071
15072 2002-10-05 Markus Rost <rost@math.ohio-state.edu>
15073
15074 * editfns.c (Fformat_time_string): Doc fix.
15075
15076 2002-10-05 John Paul Wallington <jpw@shootybangbang.com>
15077
15078 * fns.c (Flength): Doc fix.
15079
15080 2002-10-04 Stefan Monnier <monnier@cs.yale.edu>
15081
15082 * keyboard.c (keyremap): New struct.
15083 (read_key_sequence): Use it: globally replace keytran_foo with
15084 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
15085 keytran_next and fkey_next to just `next'.
15086
15087 2002-10-04 Steven Tamm <steventamm@mac.com>
15088
15089 * macterm.c (keycode_to_xkeysym_table): Change return to be
15090 treated like an X keysym.
15091
15092 2002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15093
15094 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
15095 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
15096 This is to also handle x/y changes that occur because of a resize.
15097
15098 2002-10-02 John Paul Wallington <jpw@shootybangbang.com>
15099
15100 * frame.c (Vdelete_frame_functions): New variable.
15101 (syms_of_frame): Initialize and defvar it.
15102 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
15103 it when frame's `tooltip' parameter is non-nil.
15104
15105 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
15106
15107 * w32fns.c (x_create_tip_frame): Likewise.
15108
15109 * macfns.c (x_create_tip_frame): Likewise.
15110
15111 2002-09-30 Kenichi Handa <handa@m17n.org>
15112
15113 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
15114 -1 before calling ccl_driver.
15115
15116 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
15117 Only when it is non-nil, handle composition sequence.
15118 (setup_coding_system) <0>: Don't force composition handling.
15119
15120 * Makefile.in (lisp, shortlisp): Add utf-16.elc
15121
15122 2002-09-29 Richard M. Stallman <rms@gnu.org>
15123
15124 * search.c (Freplace_match): Adjust match data for the substitution
15125 just made in the buffer.
15126
15127 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
15128 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
15129
15130 2002-09-27 Richard M. Stallman <rms@gnu.org>
15131
15132 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
15133 (read_char): Use them. Do all exits thru the end of the function.
15134
15135 2002-09-27 Kenichi Handa <handa@etl.go.jp>
15136
15137 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
15138 is nil.
15139
15140 2002-09-26 Richard M. Stallman <rms@gnu.org>
15141
15142 * regex.h (__restrict_arr): Don't define if already defined.
15143
15144 * coding.c (run_pre_post_conversion_on_str):
15145 Save and restore Vdeactivate_mark.
15146
15147 2002-09-26 John Paul Wallington <jpw@shootybangbang.com>
15148
15149 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
15150
15151 2002-09-26 Kenichi Handa <handa@etl.go.jp>
15152
15153 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
15154 nonzero, try face's family at first. Otherwise try FAMILY at first.
15155 (choose_face_font): If C is a single byte char or latin-1, call
15156 try_font_list with PREFER_FACE_FAMILY 1.
15157
15158 2002-09-21 Richard M. Stallman <rms@gnu.org>
15159
15160 * window.c (select_window_1): Don't select frame.
15161 Set frame's selected window only when frame itself is selected.
15162 (Fselect_window): Doc fix.
15163
15164 2002-09-18 Kim F. Storm <storm@cua.dk>
15165
15166 * process.c (make-network-process): Doc fix (there is no
15167 network-server-log-function hook).
15168
15169 2002-09-18 Richard M. Stallman <rms@gnu.org>
15170
15171 * print.c (print): Clear out the unused parts of Vprint_number_table.
15172 (syms_of_print): Doc fix for `print-number-table'.
15173
15174 * unexelf.c (unexec): Undo previous change.
15175
15176 2002-09-17 Andreas Schwab <schwab@suse.de>
15177
15178 * m/alpha.h [LINUX]: Don't define DATA_START.
15179
15180 2002-09-16 Dave Love <fx@gnu.org>
15181
15182 * unexelf.c (unexec): Deal with .got, reinstating change from
15183 25-08-1999.
15184
15185 2002-09-13 Richard M. Stallman <rms@gnu.org>
15186
15187 * s/sol2-6.h (UNEXEC): Comment out definition.
15188
15189 * unexsol.c (unexec): Don't downcase first letter of error msg.
15190
15191 * xfaces.c (Fcolor_supported_p): Just one arg is required.
15192
15193 2002-09-12 Markus Rost <rost@math.ohio-state.edu>
15194
15195 * unexsol.c: Include buffer.h, charset.h, coding.h.
15196
15197 2002-09-11 Richard M. Stallman <rms@gnu.org>
15198
15199 * unexsol.c: Don't use report_file_error; do it by hand
15200 using dlerror.
15201
15202 * process.c (wait_reading_process_input, both versions):
15203 Before calling turn_on_atimers, call stop_polling.
15204
15205 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
15206
15207 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
15208 we go to too_near_end, call clear_glyph_matrix.
15209 (redisplay_window): After make_cursor_line_fully_visible,
15210 call clear_glyph_matrix and bypass `goto done'.
15211
15212 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
15213 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
15214
15215 2002-09-10 Richard M. Stallman <rms@gnu.org>
15216
15217 * fileio.c (Fdo_auto_save): Catch error making directory.
15218 Only call push_message if we need to.
15219 At the same time, make an unwind-protect to pop it.
15220 Rename local message_p to old_message_p.
15221 (do_auto_save_make_dir, do_auto_save_eh): New functions.
15222 (do_auto_save_unwind): Don't call pop_message.
15223
15224 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
15225
15226 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
15227
15228 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
15229
15230 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
15231
15232 2002-09-10 Stefan Monnier <monnier@cs.yale.edu>
15233
15234 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
15235 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
15236 (re_match_2_internal): Be more careful with infinite loops.
15237
15238 2002-09-10 Kim F. Storm <storm@cua.dk>
15239
15240 * macros.c (end_kbd_macro): New function.
15241 (Fend_kbd_macro): Use it.
15242
15243 * macros.h (end_kbd_macro): Declare extern.
15244
15245 * keyboard.c (Fdiscard_input): If defining keyboard macro,
15246 end and save it instead of discarding it.
15247
15248 2002-09-09 Markus Rost <rost@math.ohio-state.edu>
15249
15250 * s/sol2-6.h: Fix typo. Add comment.
15251
15252 2002-09-09 Richard M. Stallman <rms@gnu.org>
15253
15254 * regex.c (regnum_t): Use signed int, not unsigned int.
15255
15256 * s/sol2-6.h: New file.
15257
15258 * s/sol2-5.h (UNEXEC): Definition deleted.
15259
15260 2002-09-08 Kim F. Storm <storm@cua.dk>
15261
15262 * macros.c (executing_macro_index): Change type to EMACS_INT.
15263 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
15264
15265 * macros.h (executing_macro_index): Change type to EMACS_INT.
15266
15267 2002-09-06 Richard M. Stallman <rms@gnu.org>
15268
15269 * casetab.c (set_case_table): Make canon table point to eqv table.
15270
15271 2002-09-06 Juanma Barranquero <lektu@terra.es>
15272
15273 * coding.c (syms_of_coding): Fix spacing.
15274
15275 * composite.c (Fcompose_region_internal)
15276 (Fcompose_string_internal): Likewise.
15277
15278 * data.c (Flsh): Likewise.
15279
15280 * fontset.c (Fset_fontset_font): Likewise.
15281
15282 * macfns.c (Fx_server_max_request_size): Likewise.
15283
15284 * w16select.c (syms_of_win16select): Likewise.
15285
15286 * w32select.c (syms_of_w32select): Likewise.
15287
15288 * xselect.c (syms_of_xselect): Likewise.
15289
15290 2002-09-05 Richard M. Stallman <rms@gnu.org>
15291
15292 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
15293 call EXTEND_RANGE_TABLE and return a proper value.
15294 (set_image_of_range): Don't call set_image_of_range_1
15295 if no TRANSLATE or if range includes all of Latin-1.
15296 Only call it for the Latin-1 part of the range.
15297 For other cases, make two separate ranges,
15298 one for the original specified characters and one for
15299 their case-conversions.
15300
15301 2002-09-04 Richard M. Stallman <rms@gnu.org>
15302
15303 * s/sol2-5.h (UNEXEC): Use unexsol.o.
15304
15305 * window.c (displayed_window_lines): Correct for one-off bug
15306 in HEIGHT on non-window displays.
15307
15308 * regex.c (set_image_of_range_1): New function.
15309 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
15310 Return a value to indicate running out of memory.
15311 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
15312 (extend_range_table_work_area): New subroutine.
15313 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
15314 Different calling conventions, and used from set_image_of_range{,_1}.
15315 (IMMEDIATE_QUIT_CHECK): Definitions moved.
15316
15317 2002-09-04 Juanma Barranquero <lektu@terra.es>
15318
15319 * makefile.w32-in: All dependencies updated.
15320
15321 2002-09-01 Richard M. Stallman <rms@gnu.org>
15322
15323 * unexsol.c: New file.
15324
15325 * xfns.c (Qbox): Declare external, don't define.
15326
15327 * xdisp.c (redisplay_window) <force-start case>:
15328 If point is on semi-visible last line, reposition
15329 it at previous line.
15330
15331 * alloc.c (display_malloc_warning): Use display-warning.
15332 (malloc_warning_1): Function deleted.
15333
15334 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
15335
15336 * lread.c (read1): Handle #! by skipping the line.
15337
15338 2002-08-31 Richard M. Stallman <rms@gnu.org>
15339
15340 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
15341 Don't include LDFLAGS.
15342 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
15343
15344 2002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
15345
15346 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
15347 member of x_display_info unless we compile for some window system.
15348
15349 2002-08-31 Kim F. Storm <storm@cua.dk>
15350
15351 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
15352 (get_window_cursor_type): Don't use them.
15353 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
15354
15355 2002-08-30 Kenichi Handa <handa@etl.go.jp>
15356
15357 * xdisp.c (get_next_display_element): Fix previous change.
15358
15359 2002-08-30 Andrew Choi <akochoi@shaw.ca>
15360
15361 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
15362 (expose_window): Use it to fix the display of overlapping
15363 rows (merge code from xterm.c).
15364
15365 * macfns.c (Qbox): Add extern declaration.
15366
15367 2002-08-30 Juanma Barranquero <lektu@terra.es>
15368
15369 * w32fns.c (Qbox): Make extern.
15370 (syms_of_w32fns): Remove initialization of Qbox.
15371
15372 2002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
15373
15374 * xfns.c (Fx_open_connection): Fix error message.
15375
15376 2002-08-30 Kim F. Storm <storm@cua.dk>
15377
15378 The following changes consolidates the handling of the cursor
15379 type in xdisp.c, moving duplicate code and functionality from
15380 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
15381
15382 * frame.h (enum text_cursor_kinds): Consolidated here.
15383 Added DEFAULT_CURSOR value.
15384 (struct frame) <desired_cursor, cursor_width>
15385 <blink_off_cursor, blink_off_cursor_width>: New fields.
15386 Consolidated from output_x, output_w32 and output_mac structs.
15387 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
15388 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
15389
15390 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
15391 Variables consolidated here.
15392 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
15393 (Vcursor_in_non_selected_windows): Renamed from
15394 cursor_in_non_selected_windows and changed to Lisp_Object.
15395 (syms_of_xdisp): Define and staticpro new and moved variables.
15396 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
15397 consolidated here. Recognize Qhollow setting.
15398 (set_frame_cursor_types): New function to set frame cursor types
15399 based on the frame parameters.
15400 (get_window_cursor_type): New function to calculate new cursor
15401 type and width for the specified window. Based on duplicated
15402 code consolidated here.
15403 Enhancements: cursor-in-non-selected-windows may be a cursor type,
15404 check buffer-local alternate-cursor-type and blink-cursor-alist
15405 before using built-in blink off methods.
15406
15407 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
15408
15409 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
15410 (get_specified_cursor_type, get_window_cursor_type)
15411 (set_frame_cursor_types): Added prototypes.
15412
15413 * macfns.c (x_specified_cursor_type): Removed.
15414 (x_set_cursor_type): Use set_frame_cursor_types.
15415 (Qbar, Qbox): Removed.
15416 (syms_of_macfns): Don't intern or staticpro them.
15417
15418 * macterm.c (x_specified_cursor_type): Remove prototype.
15419 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
15420 (x_display_and_set_cursor): Use get_window_cursor_type.
15421 Remove unused local variables cursor_non_selected, active_cursor.
15422 Redraw cursor if hbar cursor width changes.
15423 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
15424
15425 * macterm.h (enum text_cursor_kinds): Removed.
15426 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
15427 <blink_off_cursor, blink_off_cursor_width>: Members removed.
15428 (FRAME_DESIRED_CURSOR): Macro removed.
15429
15430 * w32fns.c (Vblink_cursor_alist): Removed.
15431 (Qbar, Qhbar, Qbox, Qhollow): Removed.
15432 (syms_of_w32fns): Don't intern, staticpro, or define them.
15433 (x_specified_cursor_type): Removed.
15434 (x_set_cursor_type): Use set_frame_cursor_types.
15435
15436 * w32term.c (x_specified_cursor_type): Remove prototype.
15437 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
15438 (x_display_and_set_cursor): Use get_window_cursor_type.
15439 Remove unused local variables cursor_off_state.
15440 Redraw cursor if hbar cursor width changes.
15441 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
15442
15443 * w32term.h (enum text_cursor_kinds): Removed.
15444 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
15445 <blink_off_cursor, blink_off_cursor_width>: Members removed.
15446 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
15447 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
15448 (struct w32_display_info) <x_highlight_frame>: Renamed member from
15449 w32_highlight_frame.
15450
15451 * xfns.c (Vblink_cursor_alist): Removed.
15452 (Qbar, Qhbar, Qbox, Qhollow): Removed.
15453 (syms_of_xfns): Don't intern, staticpro, or define them.
15454 (x_specified_cursor_type): Removed.
15455 (x_set_cursor_type): Use set_frame_cursor_types.
15456
15457 * xterm.c (x_specified_cursor_type): Remove prototype.
15458 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
15459 (x_display_and_set_cursor): Use get_window_cursor_type.
15460 Remove unused local variables cursor_off_state.
15461 Redraw cursor if hbar cursor width changes.
15462
15463 * xterm.h (enum text_cursor_kinds): Removed.
15464 (struct output_x) <current_cursor, desired_cursor, cursor_width>
15465 <blink_off_cursor, blink_off_cursor_width>: Members removed.
15466 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
15467 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
15468 (x_specified_cursor_type): Remove prototype.
15469
15470 2002-08-28 Richard M. Stallman <rms@gnu.org>
15471
15472 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
15473 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
15474 (Vblink_cursor_alist): New variable.
15475 (syms_of_w32fns): Initialize and defvar it.
15476 (x_specified_cursor_type): Recognize Qbox for filled box.
15477 Exceptions are hollow boxes.
15478 (Qbox, Qhollow): New variables.
15479 (syms_of_w32fns): Initialize and staticpro them.
15480
15481 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
15482 New macros.
15483 (struct w32_output): New fields blink_off_cursor,
15484 blink_off_cursor_width.
15485 (FRAME_CURSOR_WIDTH): New macro.
15486
15487 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
15488 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
15489
15490 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
15491 for bar cursor.
15492
15493 * w32term.c (expose_overlaps): New function.
15494 (expose_window): Use it to fix the display of overlapping rows.
15495
15496 2002-08-28 Simon Josefsson <jas@extundo.com>
15497
15498 * xfns.c (Fx_open_connection): Improve help when X connection
15499 fails, xhost is insecure and xauth is better.
15500
15501 2002-08-28 Juanma Barranquero <lektu@terra.es>
15502
15503 * makefile.w32-in: Add missing dependencies on w32term.h and
15504 composite.h.
15505
15506 * emacs.c (USAGE1): Add missing newline.
15507
15508 2002-08-27 Andrew Choi <akochoi@shaw.ca>
15509
15510 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
15511
15512 2002-08-27 Richard M. Stallman <rms@gnu.org>
15513
15514 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
15515 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
15516 (Vblink_cursor_alist): New variable.
15517 (syms_of_xfns): Initialize and defvar it.
15518 (x_specified_cursor_type): Recognize Qbox for filled box.
15519 Exceptions are hollow boxes.
15520 (Qbox, Qhollow): New variables.
15521 (syms_of_xfns): Initialize and staticpro them.
15522
15523 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
15524 New macros.
15525 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
15526
15527 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
15528 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
15529
15530 * emacs.c (main): Handle --script.
15531 (USAGE1): Mention --script.
15532 (standard_args): Define sort order for --script.
15533
15534 2002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
15535
15536 * xdisp.c (redisplay_updating_p): Variable removed.
15537 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
15538 New variables.
15539 (init_iterator): Don't free realized faces if
15540 inhibit_free_realized_faces is set.
15541 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
15542 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
15543 initialize Qinhibit_free_realized_faces.
15544
15545 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
15546 when iterator is adding glyphs to a glyph matrix.
15547
15548 2002-08-27 Kenichi Handa <handa@etl.go.jp>
15549
15550 * xdisp.c (get_next_display_element): In unibyte case, don't use
15551 octal form for such eight-bit characters that can be converted to
15552 multibyte char.
15553
15554 2002-08-26 Kim F. Storm <storm@cua.dk>
15555
15556 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize
15557 foreground and background colors. From Joe Buehler.
15558
15559 2002-08-26 Miles Bader <miles@gnu.org>
15560
15561 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
15562
15563 2002-08-25 Andrew Choi <akochoi@shaw.ca>
15564
15565 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
15566 defined instead of MAC_OSX.
15567
15568 * s/darwin.h (select): Define select to sys_select only if
15569 HAVE_CARBON is defined.
15570 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
15571 (DONT_REOPEN_PTY): #def it.
15572
15573 * macterm.c (XTread_socket): Remove code to call
15574 SendEventToEventTarget for keys with command modifiers when
15575 mac_command_key_is_meta is nil.
15576
15577 2002-08-24 Andreas Schwab <schwab@suse.de>
15578
15579 * eval.c (Fdefvar): Fix last change.
15580
15581 2002-08-23 Richard M. Stallman <rms@gnu.org>
15582
15583 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
15584 Record variables in load history as (defvar . VAR).
15585 (Fdefvar): Don't record in load history if no initial value.
15586 (Qdefvar): New variable.
15587 (syms_of_eval): Init and staticpro it.
15588
15589 * lread.c (syms_of_lread): Doc fix.
15590 (build_load_history): Use Fmember to see if a definition
15591 is already in the Vload_history element.
15592
15593 * process.c (Fstart_process): Remove /: from program name.
15594
15595 * emacs.c (decode_env_path): Don't add /: if file name handler
15596 has a `safe-magic' property.
15597
15598 * callproc.c (Fcall_process): Remove /: from program name.
15599
15600 2002-08-23 Stefan Monnier <monnier@cs.yale.edu>
15601
15602 * regex.c (PATFETCH): Remove the translating fetch.
15603 (PATFETCH_RAW): Rename to PATFETCH.
15604 (set_image_of_range): New fun.
15605 (SET_RANGE_TABLE_WORK_AREA): Use it.
15606 (regex_compile): Don't translate the pattern chars so eagerly.
15607 Only do it when inserting an `exactn' bytecode or when handling
15608 a char-range.
15609 (mutually_exclusive_p): Avoid empty statement.
15610
15611 2002-08-22 Kim F. Storm <storm@cua.dk>
15612
15613 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
15614 end up on a partially visible line; this reverts a specific part
15615 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
15616 display error which has been reported several times now.
15617 However it introduces the problem that changes was supposed to fix.
15618 See my comments in the source if you want to debug this further.
15619
15620 2002-08-20 Kenichi Handa <handa@etl.go.jp>
15621
15622 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
15623
15624 2002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
15625
15626 * msdos.c (croak): Add `void' to definition.
15627
15628 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
15629 Don't define them, they are defined in msdos.c.
15630
15631 * mem-limits.h [MSDOS]: Declare etext.
15632
15633 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
15634 `const' since CORRECT_DIR_SEPS modifies its target.
15635
15636 2002-08-19 Kim F. Storm <storm@cua.dk>
15637
15638 * keyboard.c (Fclear_this_command_keys): Add optional arg
15639 KEEP-RECORD to avoid clearing lossage when we just want to clear
15640 the current key sequence (kmacro needs this).
15641
15642 2002-08-19 Kenichi Handa <handa@localhost>
15643
15644 * composite.c (run_composition_function): Call FUNC if it is fboundp.
15645
15646 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
15647 cons, return Qnil.
15648
15649 2002-08-17 Richard M. Stallman <rms@gnu.org>
15650
15651 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
15652
15653 * sysdep.c [!VMS]: Include sys/files.h.
15654
15655 * editfns.c (save_restriction_restore): Defend from unchained marker.
15656
15657 * buffer.c (overlays_at): Handle extending vec uniformly.
15658 (overlays_in): Handle extending vec from length 0 as in overlays_at.
15659
15660 2002-08-15 Andrew Choi <akochoi@shaw.ca>
15661
15662 * mac.c (init_mac_osx_environment): New function.
15663
15664 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
15665
15666 2002-08-14 Kim F. Storm <storm@cua.dk>
15667
15668 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
15669 executing macro before appending to it (when used from Lisp).
15670 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
15671 which is called prior to each iteration of macro (for kmacro.el).
15672 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
15673
15674 * lisp.h (Fexecute_kbd_macro): Update prototype.
15675
15676 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
15677
15678 2002-08-14 Kenichi Handa <handa@etl.go.jp>
15679
15680 * xselect.c (QUTF8_STRING): New variable.
15681 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
15682 (x_atom_to_symbol): Likewise.
15683 (x_get_local_selection): New argument local_request. If it is
15684 nonzero, call handler_fn with the second arg nil.
15685 (x_handle_selection_request): Call x_get_local_selection with
15686 local_request 0.
15687 (lisp_data_to_selection_data): Don't encode the string here.
15688 (Fx_get_selection_internal): Call x_get_local_selection with
15689 local_request 1.
15690 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
15691
15692 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
15693
15694 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
15695
15696 2002-08-13 Richard M. Stallman <rms@gnu.org>
15697
15698 * minibuf.c (Fminibufferp): New function.
15699 (syms_of_minibuf): Defsubr it.
15700 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
15701
15702 2002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
15703
15704 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
15705
15706 2002-08-12 Richard M. Stallman <rms@gnu.org>
15707
15708 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
15709 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
15710 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
15711 already.
15712
15713 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
15714
15715 2002-08-11 Andrew Choi <akochoi@shaw.ca>
15716
15717 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
15718 (Vmac_pass_command_to_system): New variable.
15719 (Vmac_pass_control_to_system): New variable.
15720 (do_mouse_moved): Check wp with is_emacs_window.
15721 (XTread_socket): Check window_ptr with is_emacs_window.
15722 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
15723 events back to Mac Toolbox for processing, depending on values of
15724 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
15725 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
15726 Vmac_pass_control_to_system.
15727
15728 2002-08-10 Kenichi Handa <handa@etl.go.jp>
15729
15730 * coding.c (unencodable_char_position): New function.
15731 (Funencodable_char_position): New function.
15732 (syms_of_coding): Defsubr Funencodable_char_position.
15733
15734 2002-08-10 Andrew Choi <akochoi@shaw.ca>
15735
15736 * mac.c (sys_select) [MAC_OSX]: New function.
15737
15738 * macterm.c (MakeMeTheFrontProcess): New function.
15739 (mac_initialize): Call MakeMeTheFrontProcess.
15740
15741 * s/darwin.h: Define select to sys_select.
15742
15743 2002-08-09 Richard M. Stallman <rms@gnu.org>
15744
15745 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
15746
15747 2002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
15748
15749 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
15750 end of the buffer.
15751
15752 2002-08-08 Ken Raeburn <raeburn@mit.edu>
15753
15754 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
15755
15756 * puresize.h (BASE_PURESIZE): Increase to 910000.
15757
15758 2002-08-08 Kenichi Handa <handa@etl.go.jp>
15759
15760 * coding.c (Ffind_operation_coding_system): For write-region, if
15761 VISIT is a filename, make it the target.
15762
15763 2002-08-07 Richard M. Stallman <rms@gnu.org>
15764
15765 * alloc.c (mark_object): Detect long lists for debugging.
15766 (mark_object_loop_halt): New variable.
15767
15768 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
15769
15770 * data.c (Fmake_variable_frame_local): Doc fix.
15771
15772 2002-08-01 David Ponce <david@dponce.com>
15773
15774 * w32menu.c (local_heap, local_alloc, local_free): New macros.
15775 (malloc_widget_value, free_widget_value)
15776 (w32_free_submenu_strings): Use them.
15777
15778 (push_submenu_start, push_submenu_end, push_left_right_boundary)
15779 (push_menu_pane, push_menu_item, single_keymap_panes)
15780 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
15781 (single_submenu, set_frame_menubar)
15782 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
15783
15784 (Fx_popup_menu): Don't show pop up menu until preceding one is
15785 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
15786
15787 * w32menu.c: Changes adapted from xmenu.c
15788 (set_frame_menubar): First parse all submenus,
15789 then make widget_value trees from them.
15790 Don't allocate any widget_value objects
15791 until we are done with the parsing.
15792 (parse_single_submenu): New function.
15793 (digest_single_submenu): New function.
15794 (single_submenu): Function deleted, replaced by those two.
15795
15796 2002-08-04 Andrew Choi <akochoi@shaw.ca>
15797
15798 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
15799 returns a valid window pointer before proceeding for keyDown and
15800 autoKey events.
15801
15802 2002-08-03 Andrew Choi <akochoi@shaw.ca>
15803
15804 * macterm.c (USE_CARBON_EVENTS): New macro.
15805 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
15806 (x_iconify_frame): Call CollapseWindow.
15807 (Vmac_reverse_ctrl_meta): New variable.
15808 (Vmac_wheel_button_is_mouse_2): New variable.
15809 (init_mac_drag_n_drop): New function.
15810 (mac_do_receive_drag): New function.
15811 (mac_handle_service_event): New function.
15812 (init_service_handler): New function.
15813 (mac_to_emacs_modifiers): New function.
15814 (mac_event_to_emacs_modifiers): New function.
15815 (mac_get_mouse_btn): New function.
15816 (mac_convert_event_ref): New function.
15817 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
15818 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
15819 mac_get_mouse_btn.
15820 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
15821
15822 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
15823 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
15824 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
15825 TOOL_BAR_EVENT for MAC_OS as well.
15826 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
15827 as for WINDOWS_NT.
15828 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
15829
15830 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
15831
15832 2002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
15833
15834 * xdisp.c (forward_to_next_line_start): Fix a condition that
15835 lead to a newline being skipped.
15836
15837 2002-08-02 Andrew Choi <akochoi@shaw.ca>
15838
15839 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
15840
15841 2002-08-01 Richard M. Stallman <rms@gnu.org>
15842
15843 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
15844
15845 2002-07-31 Andrew Choi <akochoi@shaw.ca>
15846
15847 * macfns.c: #undef init_process before #define-ing it.
15848
15849 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
15850 HAVE_CARBON is defined.
15851
15852 2002-07-31 Richard M. Stallman <rms@gnu.org>
15853
15854 * xmenu.c (set_frame_menubar): First parse all submenus,
15855 then make widget_value trees from them.
15856 Don't allocate any widget_value objects
15857 until we are done with the parsing.
15858 (parse_single_submenu): New function.
15859 (digest_single_submenu): New function.
15860 (single_submenu): Function deleted, replaced by those two.
15861
15862 2002-07-30 Juanma Barranquero <lektu@terra.es>
15863
15864 * w32proc.c (syms_of_ntproc): Fix docstring of
15865 `w32-get-true-file-attributes'.
15866
15867 2002-07-28 Richard M. Stallman <rms@gnu.org>
15868
15869 * s/hpux8.h (HPUX8): Define this before including hpux.h.
15870 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
15871
15872 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
15873
15874 * keyboard.c (make_lispy_event):
15875 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
15876 Explicitly clear up_modifier in event->modifiers.
15877
15878 2002-07-27 Richard M. Stallman <rms@gnu.org>
15879
15880 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
15881
15882 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
15883 for bar cursor.
15884
15885 2002-07-26 Kenichi Handa <handa@etl.go.jp>
15886
15887 * coding.c (detect_coding_iso2022): While checking a byte sequence
15888 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
15889 it in the normal loop.
15890
15891 2002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
15892
15893 * xterm.c (expose_overlaps): New function.
15894 (expose_window): Use it to fix the display of overlapping rows.
15895
15896 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
15897
15898 2002-07-23 Ken Raeburn <raeburn@gnu.org>
15899
15900 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
15901 since it only depends on XUINT.
15902
15903 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
15904 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
15905 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
15906 Macros deleted.
15907
15908 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
15909 its value over other approaches.
15910 * sysdep.c (start_of_data): Don't define the function if a macro
15911 form has been defined.
15912
15913 2002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
15914
15915 * xdisp.c (redisplay_updating_p): New variable.
15916 (init_iterator): Don't free realized faces when
15917 redisplay_updating_p is set.
15918 (redisplay_internal): Set redisplay_updating_p while updating
15919 the display.
15920
15921 2002-07-23 Richard M. Stallman <rms@gnu.org>
15922
15923 * editfns.c (Fmessage): Treat "" like nil.
15924
15925 2002-07-23 Kenichi Handa <handa@etl.go.jp>
15926
15927 * xdisp.c (face_before_or_after_it_pos):
15928 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
15929
15930 2002-07-22 Juanma Barranquero <lektu@terra.es>
15931
15932 * callproc.c (init_callproc) [DOS_NT]:
15933 Initialize Vshared_game_score_directory to nil.
15934 (syms_of_callproc) [DOS_NT]: Likewise.
15935
15936 2002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
15937
15938 * xdisp.c (display_line): Replace an abort with xassert.
15939
15940 2002-07-21 Richard M. Stallman <rms@gnu.org>
15941
15942 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
15943 and END_UNCHANGED when setting buffer_unchanged_p.
15944 Use current_matrix_up_to_date_p to decide whether to use
15945 try_cursor_movement.
15946
15947 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
15948
15949 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
15950
15951 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
15952 Set to nil if dir does not exist.
15953 (syms_of_callproc): Init unconditionally and simply.
15954
15955 * buffer.c (Fbuffer_list): Doc fix.
15956
15957 2002-07-21 Ken Raeburn <raeburn@gnu.org>
15958
15959 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
15960
15961 * buffer.c (mmap_realloc): When shrinking, make sure number of
15962 pages to unmap is rounded towards zero.
15963
15964 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
15965 (XSETINT): Deleted.
15966
15967 * m/att3b.h (XINT): Don't define.
15968 (VALBITS, VALMASK, XTYPE): Deleted.
15969 (DATA_SEG_BITS): Define.
15970 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
15971 ARRAY_MARK_FLAG): Deleted.
15972 (DATA_SEG_BITS): Define.
15973 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
15974 (DATA_SEG_BITS): Define.
15975
15976 2002-07-20 Richard M. Stallman <rms@gnu.org>
15977
15978 * print.c (print_error_message): New args CONTEXT and CALLER.
15979 Calls changed.
15980
15981 * lisp.h (print_error_message): Declare new args.
15982
15983 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
15984 and CONTEXT to print_error_message, don't print them here.
15985 For a Quit, don't use Vsignaling_function.
15986 Call message_log_maybe_newline.
15987
15988 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
15989
15990 2002-07-20 Kim F. Storm <storm@cua.dk>
15991
15992 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
15993
15994 2002-07-19 Ken Raeburn <raeburn@gnu.org>
15995
15996 * bytecode.c (struct byte_stack): Pointers into byte string now
15997 point to const.
15998 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
15999 const.
16000 * charset.h (BCOPY_SHORT): Source pointer now points to const.
16001 * coding.c (encode_eol, detect_coding, detect_eol):
16002 (decode_coding, encode_coding, detect_coding_system):
16003 Source strings now treated as const.
16004 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
16005 modify Lisp string contents.
16006 * coding.h (decode_coding, encode_coding, detect_coding,
16007 detect_eol): Declarations updated.
16008 * composite.c (compose_chars_in_text): Treat Lisp string contents
16009 as const.
16010 * dispnew.c (safe_bcopy): Source pointer now points to const.
16011 * lisp.h (STRING_COPYIN): New macro.
16012 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
16013 (internal_with_output_to_temp_buffer): Declarations updated.
16014 * print.c (temp_output_buffer_setup):
16015 (internal_with_output_to_temp_buffer): Buffer name argument is now
16016 pointer to const.
16017 * sound.c (struct sound_device): Function pointer field "write"
16018 buffer argument now points to const.
16019 (vox_write): Buffer argument points to const.
16020 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
16021 contents as const.
16022 * sysdep.c (emacs_write): Buffer pointer now const.
16023 * term.c (encode_terminal_code): Buffer pointer now const.
16024 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
16025 (x_face_list_fonts, x_update_menu_appearance):
16026 (hash_string_case_insensitive): Treat Lisp string contents as const.
16027
16028 2002-07-19 Juanma Barranquero <lektu@terra.es>
16029
16030 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
16031
16032 * fileio.c (syms_of_fileio): Likewise.
16033 (Ffile_name_as_directory): Fix argument name in docstring.
16034 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
16035
16036 2002-07-18 Richard M. Stallman <rms@gnu.org>
16037
16038 * data.c (Fdefalias): Doc fix.
16039
16040 2002-07-17 Dave Love <fx@gnu.org>
16041
16042 * intervals.h (text_property_stickiness): Use P_.
16043
16044 * ccl.c: Remove `emacs' conditionals.
16045 (ccl_backtrace_table): Fix size spec.
16046 (ccl_driver): Fix type errors.
16047
16048 2002-07-16 Ken Raeburn <raeburn@gnu.org>
16049
16050 * alloc.c (xstrdup, make_string, make_unibyte_string)
16051 (make_multibyte_string, build_string): String pointer args now
16052 point to const.
16053 * charset.c (find_charset_in_text, c_string_width):
16054 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
16055 * fileio.c (report_file_error):
16056 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
16057 (count_combining_before, count_combining_after, insert_1_both):
16058 (insert, insert_and_inherit, insert_string):
16059 (insert_before_markers, insert_before_markers_and_inherit):
16060 * lread.c (intern, oblookup, hash_string):
16061 * minibuf.c (temp_echo_area_glyphs):
16062 * search.c (fast_c_string_match_ignore_case):
16063 * sysdep.c (emacs_open, set_file_times):
16064 * xfaces.c (xstricmp):
16065 * xdisp.c (store_frame_title, string_char_and_length):
16066 (message_dolog, message2, message2_nolog, set_message): Likewise.
16067 (set_message_1): Cast message string argument to const pointer.
16068 * editfns.c (general_insert_function): Insertion function now
16069 takes pointer to const for input data.
16070 * charset.h (find_charset_in_text, c_string_width):
16071 (parse_str_as_multibyte): Declarations updated.
16072 * dispextern.h (xstricmp): Declaration updated.
16073 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
16074 (count_size_as_multibyte, count_combining_before):
16075 (count_combining_after, insert_1, insert_1_both, message_dolog):
16076 (insert, insert_and_inherit, insert_before_markers)
16077 (insert_before_markers_and_inherit, set_message, message2):
16078 (message2_dolog, build_string, make_string, make_unibyte_string):
16079 (make_multibyte_string, intern, oblookup, report_file_error):
16080 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
16081 (emacs_open, xstrdup): Declarations updated.
16082 * systime.h (set_file_times): Declaration updated.
16083
16084 * charset.c (find_charset_in_text, lisp_string_width): Use const
16085 for pointer to lisp string data.
16086 * charset.h (FETCH_STRING_CHAR_ADVANCE):
16087 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
16088 * coding.c (Ffind_coding_systems_region_interval):
16089 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
16090 (Fmake_directory_internal, Fdelete_directory):
16091 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
16092 * fontset.c (font_family_registry, fs_query_fontset):
16093 (list_fontsets):
16094 * frame.c (Fframe_parameter):
16095 * keyboard.c (cmd_error_internal):
16096 * keymap.c (Fdescribe_buffer_bindings):
16097 * lread.c (complete_filename_p, openp):
16098 * minibuf.c (Fminibuffer_complete_word):
16099 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
16100 (face_before_or_after_it_pos, next_element_from_string):
16101 (get_overlay_arrow_glyph_row, display_mode_element):
16102 (decode_mode_spec_coding):
16103 * xterm.c (same_x_server): Likewise.
16104
16105 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
16106 settings of non-existent fields.
16107
16108 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
16109 copy a lisp value.
16110
16111 * lread.c (Fintern_soft): Use string macros instead of
16112 Lisp_String fields.
16113 * keyboard.c (echo_char, parse_modifiers_uncached):
16114 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
16115 * textprop.c (validate_interval_range, interval_of): Likewise.
16116
16117 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
16118
16119 * charset.h (FETCH_STRING_CHAR_ADVANCE)
16120 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
16121 XSTRING()->size_byte.
16122
16123 * lisp.h (SDATA, SREF): Produce rvalue.
16124 (SSET): New macro.
16125 * alloc.c (make_event_array): Use SSET for storing into a string.
16126 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
16127 a string.
16128 * casefiddle.c (casify_object): Use SSET.
16129 * charset.h (FETCH_STRING_CHAR_ADVANCE)
16130 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
16131 address of string contents.
16132 * data.c (Faref): Use SDATA.
16133 (Faset): Use SDATA, SSET.
16134 * dired.c (directory_files_internal): Use SSET.
16135 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
16136 (Fread_file_name): Use SREF, SSET.
16137 * fns.c (concat): Use SSET.
16138 (concat, Fdelete): Use SDATA.
16139 * insdel.c (insert_from_string_1): Use SDATA.
16140 * keyboard.c (Fevent_convert_list): Use SREF.
16141 * lread.c (Fload): Use SDATA, SSET.
16142 * macfns.c (validate_x_resource_name): Use SSET.
16143 * process.c (status_message): Use SSET.
16144 * search.c (wordify): Use SDATA.
16145 (Freplace_match): Use SREF.
16146 * w32fns.c (validate_x_resource_name): Use SSET.
16147 * xfns.c (validate_x_resource_name): Use SSET.
16148 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
16149
16150 2002-07-16 Richard M. Stallman <rms@gnu.org>
16151
16152 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
16153
16154 * xdisp.c (reconsider_clip_changes):
16155 Don't test prevent_redisplay_optimizations_p.
16156 (redisplay_internal): Test prevent_redisplay_optimizations_p
16157 along with clip_changed in some cases.
16158 (try_window_id): Likewise.
16159 (redisplay_window): New local var buffer_unchanged_p.
16160
16161 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
16162
16163 * process.c (create_process): Test USG_SUBTTY_WORKS.
16164 (process_send_signal): Clean up handling of GID.
16165 Detect errors in ioctls meant to set GID.
16166
16167 * window.c (temp_output_buffer_show):
16168 Don't set prevent_redisplay_optimizations_p.
16169
16170 2002-07-15 Juanma Barranquero <lektu@terra.es>
16171
16172 * eval.c (Fdefvaralias): Add docstring argument.
16173
16174 2002-07-15 Ken Raeburn <raeburn@gnu.org>
16175
16176 * lisp.h (STRING_INTERVALS): Produce rvalue.
16177 (STRING_SET_INTERVALS): New macro.
16178 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
16179 * fns.c (Fstring_as_multibyte): Likewise.
16180 * intervals.c (balance_possible_root_interval, delete_interval)
16181 (create_root_interval, copy_intervals_to_string): Likewise.
16182 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
16183 instead of 0.
16184
16185 2002-07-14 Ken Raeburn <raeburn@gnu.org>
16186
16187 * lisp.h (STRING_SET_CHARS): New macro.
16188 (SCHARS, SBYTES): Produce rvalues.
16189 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
16190 * fns.c (concat): Likewise.
16191 * lread.c (read_vector): Likewise.
16192
16193 * lisp.h (SMBP): Delete. All uses changed to STRING_MULTIBYTE.
16194 (STRING_SET_UNIBYTE): New macro.
16195 (SET_STRING_BYTES): Delete. Callers (all of which supplied a
16196 length of -1) changed to use STRING_SET_UNIBYTE.
16197 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
16198 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
16199 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
16200 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
16201 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
16202 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
16203 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
16204 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
16205 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
16206 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
16207 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
16208 STRING_BYTES or indirection changed to SCHARS, SBYTES,
16209 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
16210 unchanged for now.
16211
16212 2002-07-13 Kim F. Storm <storm@cua.dk>
16213
16214 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
16215
16216 2002-07-12 Richard M. Stallman <rms@gnu.org>
16217
16218 * fileio.c (Fwrite_region): Doc fix.
16219
16220 * print.c (print_error_message): Don't handle Vsignaling_function here.
16221
16222 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
16223 (command_loop_1): Avoid certain actions after memory-full error.
16224
16225 * eval.c (Fsignal): Don't call cancel_hourglass.
16226 For a memory-full error, don't call Vsignal_hook_function
16227 and don't set Vsignaling_function.
16228
16229 * process.c (process_send_signal): Add abort call.
16230
16231 2002-07-11 Markus Rost <rost@math.ohio-state.edu>
16232
16233 * keymap.c (Fkey_binding): Fix typo.
16234
16235 2002-07-11 Richard M. Stallman <rms@gnu.org>
16236
16237 * alloc.c (Vmemory_full): New variable.
16238 (Vmemory_signal_data): Rename from memory_signal_data.
16239 Uses changed.
16240 (syms_of_alloc): Defvar them.
16241 (memory_full, buffer_memory_full): Set Vmemory_full.
16242
16243 * lisp.h (Vmemory_full): Add declaration.
16244 (current_column, indented_beyond_p): Change declaration.
16245
16246 * indent.c (last_known_column): Declare as double, not float.
16247 (current_column, current_column_1, string_display_width)
16248 (position_indentation): Return `double'.
16249 (indented_beyond_p): Arg `column' is `double'. Callers changed.
16250
16251 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
16252 (back_to_previous_visible_line_start)
16253 (reseat_at_next_visible_line_start, next_element_from_buffer):
16254 Use `double', not `float', when calling indented_beyond_p.
16255
16256 * s/hpux11.h (BROKEN_SA_RESTART): Define.
16257
16258 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
16259
16260 2002-07-11 Juanma Barranquero <lektu@terra.es>
16261
16262 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
16263 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
16264 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
16265 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
16266 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
16267 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
16268
16269 2002-07-10 Juanma Barranquero <lektu@terra.es>
16270
16271 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
16272 All callers changed.
16273
16274 2002-07-09 Stefan Monnier <monnier@cs.yale.edu>
16275
16276 * data.c (Fdefalias): Add an optional `docstring' argument.
16277 (set_internal, Fsetq_default): Use XCAR/XCDR.
16278
16279 * composite.c (HASH_VALUE, HASH_KEY):
16280 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
16281
16282 2002-07-09 Kenichi Handa <handa@etl.go.jp>
16283
16284 * callproc.c (Fcall_process): Fix previous change.
16285
16286 2002-07-07 Stefan Monnier <monnier@cs.yale.edu>
16287
16288 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
16289 Add support for hash-tables.
16290 (Ftry_completion): Return t even if the string appears multiple times.
16291
16292 * fns.c (Fnconc): Use XCDR.
16293 (Fprovide): Use CONSP and XCDR.
16294 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
16295 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
16296 (Fmake_hash_table): Accept `:size nil'.
16297 (Fmakehash): Delete: moved to subr.el.
16298 (syms_of_fns): Don't defsubr makehash.
16299
16300 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
16301 (HASH_TABLE_SIZE): Move from fns.c.
16302
16303 2002-07-07 Richard M. Stallman <rms@gnu.org>
16304
16305 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
16306 Instead just return 0 when there is something to be done.
16307 (try_scrolling): If make_cursor_line_fully_visible returns 0,
16308 retry scrolling as if cursor were off the bottom.
16309 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
16310 return CURSOR_MOVEMENT_MUST_SCROLL.
16311 (redisplay_window): If make_cursor_line_fully_visible returns 0,
16312 go to try_to_scroll.
16313
16314 * buffer.c (Fbuffer_local_value): Store current value into its binding
16315 so we get the up-to-date value for the binding that is loaded.
16316
16317 * eval.c (Fdefmacro): Doc fix.
16318
16319 2002-07-05 Dave Love <fx@gnu.org>
16320
16321 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
16322 correctly.
16323
16324 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
16325 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
16326 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
16327 CCL_LookupCharConstTbl.
16328 (syms_of_ccl): Defvar translation-hash-table-vector.
16329
16330 2002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16331
16332 * xdisp.c: Remove unused variable `face'.
16333
16334 2002-07-04 Juanma Barranquero <lektu@terra.es>
16335
16336 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
16337 obsolescence information.
16338
16339 2002-07-03 Andrew Choi <akochoi@shaw.ca>
16340
16341 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
16342 pattern. Search cache first.
16343 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
16344 for Japanese font.
16345 (XLoadQueryFont): Use it.
16346
16347 2002-07-02 Richard M. Stallman <rms@gnu.org>
16348
16349 * keymap.c (Fdefine_key): Doc fix.
16350
16351 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
16352
16353 2002-07-02 Juanma Barranquero <lektu@terra.es>
16354
16355 * keymap.c (syms_of_keymap): Fix typo.
16356
16357 2002-07-01 Andrew Choi <akochoi@shaw.ca>
16358
16359 * s/darwin.h: Define POSIX_SIGNALS.
16360
16361 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
16362 and FSRefMakePath to convert FSSpec returned with Apple Event to
16363 Posix pathname.
16364 (mac_initialize) [TARGET_API_MAC_CARBON]:
16365 Call init_required_apple_events and disable the `Quit' menu item
16366 provided automatically by the Carbon Toolbox.
16367
16368 2002-07-01 Dave Love <fx@gnu.org>
16369
16370 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
16371 for K&R.
16372
16373 * xterm.c: Fix prototype for K&R.
16374
16375 * term.c (costs_set): Declare static, non-initialized for pcc.
16376
16377 2002-07-01 Richard M. Stallman <rms@gnu.org>
16378
16379 * keyboard.c (timer_last_idleness_start_time): New variable.
16380 (timer_start_idle): Set that.
16381 (read_key_sequence): Use that to reset timer_idleness_start_time
16382 to previous value.
16383
16384 * window.c (Frecenter): With arg, set optional_new_start.
16385
16386 * xdisp.c (redisplay_internal): Make optional_new_start really work.
16387
16388 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
16389 buffer for completion.
16390
16391 2002-06-29 Ken Raeburn <raeburn@gnu.org>
16392
16393 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
16394
16395 2002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16396
16397 * keyboard.c (readable_filtered_events): New function that filters
16398 FOCUS_IN_EVENT depending on parameter.
16399 (readable_events): Calls readable_filtered_events, not filtering
16400 FOCUS_IN_EVENT.
16401 (get_filtered_input_pending): New function, filtering parameter passed
16402 to readable_filtered_events.
16403 (get_input_pending): Calls get_filtered_input_pending, not filtering
16404 FOCUS_IN_EVENT.
16405 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
16406 FOCUS_IN_EVENT.
16407
16408 * xterm.h (struct x_output): Add focus_state.
16409
16410 * xterm.c (x_focus_changed): New function.
16411 (x_detect_focus_change): New function.
16412 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
16413 EnterNotify and LeaveNotify to track X focus changes.
16414
16415 2002-06-28 Andreas Schwab <schwab@suse.de>
16416
16417 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
16418
16419 2002-06-27 Kim F. Storm <storm@cua.dk>
16420
16421 * xdisp.c (mode_line_string_list, mode_line_string_face)
16422 (mode_line_string_face_prop): New variables.
16423 (store_mode_line_string): New function.
16424 (display_mode_element): Use store_mode_line_string to
16425 add mode-line string elements to mode_line_string_list
16426 when mode_line_string_list is non-nil.
16427 (Fformat_mode_line): Now returns propertized string by
16428 default. New arg NO-PROPS to ignore properties.
16429 (decode_mode_spec): Only add two dashes for %- in propertized
16430 mode-line string.
16431 (syms_of_xdisp): Init and staticpro mode_line_string_list.
16432
16433 2002-06-27 Stefan Monnier <monnier@cs.yale.edu>
16434
16435 * minibuf.c (minibuffer_completion_contents): Add return type.
16436
16437 2002-06-27 Juanma Barranquero <lektu@terra.es>
16438
16439 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
16440
16441 2002-06-26 Juanma Barranquero <lektu@terra.es>
16442
16443 * fileio.c (read_file_name_cleanup): Add missing return.
16444
16445 2002-06-26 Richard M. Stallman <rms@gnu.org>
16446
16447 * window.c (Frecenter): Don't set force_start flag.
16448
16449 * minibuf.c (do_completion, Fminibuffer_complete_word)
16450 (Fminibuffer_completion_help): Complete just the text before point.
16451 (minibuffer_completion_contents): New function.
16452
16453 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
16454
16455 * frame.c (frames_bury_buffer): Function deleted.
16456
16457 2002-06-25 Miles Bader <miles@gnu.org>
16458
16459 * callint.c (Fcall_interactively): When checking to see if doprnt hit
16460 the end of callint_message, allow for a terminating '\0'.
16461
16462 2002-06-24 Juanma Barranquero <lektu@terra.es>
16463
16464 * w32select.c: Include composite.h.
16465
16466 * w16select.c: Likewise.
16467
16468 2002-06-24 Kenichi Handa <handa@etl.go.jp>
16469
16470 * callproc.c (Fcall_process): If code detection is necessary,
16471 call detect_coding directly here.
16472
16473 * coding.c (detect_eol): Preserve coding->cmp_data.
16474
16475 * w16select.c (Fw16_get_clipboard_data):
16476 * w32fns.c (w32_to_x_font):
16477 * w32select.c (Fw32_get_clipboard_data):
16478 * xselect.c (selection_data_to_lisp_data):
16479 * xterm.c (XTread_socket): Disable composition handling.
16480
16481 2002-06-24 Stefan Monnier <monnier@cs.yale.edu>
16482
16483 * print.c (temp_output_buffer_setup): Kill all local variables.
16484
16485 2002-06-22 Stefan Monnier <monnier@cs.yale.edu>
16486
16487 * lread.c (Fread): Remove redundant and imprecise declaration.
16488
16489 * xfns.c (check_x_display_info): Use check_x_frame.
16490
16491 * .gdbinit (xprintsym): Use the new `xname' field.
16492 (xsymbol): Use it.
16493
16494 2002-06-22 Jason Rumney <jasonr@gnu.org>
16495
16496 * w32fns.c (file_dialog_callback): New function.
16497 (Fx_file_dialog): Allow selecting directories as well as files.
16498
16499 2002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16500
16501 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
16502 OpenBSD. Add support for mipseb-*-netbsd* machines.
16503
16504 2002-06-17 Andrew Choi <akochoi@shaw.ca>
16505
16506 * macterm.c (mac_scroll_area): Set foreground and backcolor to
16507 black and white before scrolling. Restore frame background and
16508 foreground color after scrolling.
16509 (do_window_update): Call XClearWindow before calling expose_frame.
16510 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
16511 FRAME_FOREGROUND_PIXEL of frame.
16512
16513 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
16514 test Mac command key as <ALT> key.
16515
16516 2002-06-17 Stefan Monnier <monnier@cs.yale.edu>
16517
16518 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
16519
16520 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
16521 Lookup keys in function-key-map immediately so that key-translation-map
16522 can be applied earlier.
16523 Remove function_key_possible and key_translation_possible, replaced
16524 by checking `keytran_start < t'.
16525
16526 * .gdbinit (xsymbol): Use the new `xname' field.
16527
16528 2002-06-17 Andrew Choi <akochoi@shaw.ca>
16529
16530 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
16531 test Mac command key as <ALT> key.
16532
16533 * mac.c (do_applescript): Call initialize_applescript if necessary
16534 when first called. Dispose of result_desc only when there is no error.
16535 (Fdo_applescript): Use %d format specifier instead of %ld.
16536
16537 2002-06-16 Andrew Choi <akochoi@shaw.ca>
16538
16539 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
16540 of FrontWindow for cases keyDown and autoKey.
16541
16542 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
16543 Vdefault_fontset to Monaco with mac-roman coding.
16544
16545 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
16546 init_process before and after inclusion of Carbon/Carbon.h, resp.
16547
16548 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
16549 cursor_gc.
16550 (add_font_name_table_entry): New function.
16551 (init_font_name_table): Use add_font_name_table_entry; add italic,
16552 bold, and bold-italic entries for truetype fonts.
16553
16554 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
16555 for Mac too.
16556 (try_font_list) [MAC_OS]: If no font matches given registry, try
16557 fonts with any registry matching face_family.
16558 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
16559
16560 * s/darwin.h: If autoconf detects the Ncurses library, define
16561 LIBS_TERMCAP to -lncurses to use it.
16562
16563 2002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
16564
16565 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
16566
16567 2002-06-15 Richard M. Stallman <rms@gnu.org>
16568
16569 * window.c (Fset_window_configuration): Explicitly preserve
16570 the point value that new_current_buffer had at the start.
16571
16572 2002-06-14 Juanma Barranquero <lektu@terra.es>
16573
16574 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
16575 Fix typos.
16576
16577 2002-06-14 Kim F. Storm <storm@cua.dk>
16578
16579 * insdel.c (insert_1_both, insert_from_string_1)
16580 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
16581 insert happened in the end_unchanged region. Otherwise, the
16582 redisplay may be confused and duplicate the last line in the
16583 buffer [seen after save-buffer when require-final-newline==t].
16584
16585 2002-06-13 Jason Rumney <jasonr@gnu.org>
16586
16587 * w32.c (init_environment): Remove EMACSLOCKDIR.
16588 (stat): Swap _S_IFDIR and _S_IFREG.
16589
16590 2002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16591
16592 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
16593 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
16594 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
16595 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
16596 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
16597 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
16598 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
16599 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
16600 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
16601 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
16602 SELECTION_REQUEST_EVENT, selection_clear_event to
16603 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
16604 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
16605 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
16606 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
16607 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
16608 no_event to NO_EVENT.
16609
16610 2002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16611
16612 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
16613
16614 2002-06-12 Stefan Monnier <monnier@cs.yale.edu>
16615
16616 * intervals.c (textget): Don't forget to `return'.
16617 (lookup_char_property): Use XCAR/XCDR.
16618
16619 2002-06-12 Juanma Barranquero <lektu@terra.es>
16620
16621 * xdisp.c (Fformat_mode_line): Fix typo.
16622
16623 2002-06-12 Kim F. Storm <storm@cua.dk>
16624
16625 * xdisp.c (Fformat_mode_line): New function.
16626 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
16627 (store_frame_title_char, store_frame_title): Use unconditionally.
16628 (init_xdisp): Defsubr Fformat_mode_line.
16629 Initialize frame_title_buf etc. unconditionally.
16630
16631 2002-06-11 Stefan Monnier <monnier@cs.yale.edu>
16632
16633 * keyboard.c (read_key_sequence):
16634 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
16635 things through those maps after downcasing events.
16636 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
16637 applies after function-key-map.
16638 Make sure that keytran can be done in the middle in the sequence.
16639 Be careful not to throw away events past the one we downcase.
16640
16641 * lread.c (read_integer): Remove unused var `tem'.
16642 (read1): Fix int/Lisp_Object mixup.
16643
16644 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
16645
16646 2002-06-11 Richard M. Stallman <rms@gnu.org>
16647
16648 * keyboard.c (readable_events): Ignore any number of
16649 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
16650
16651 2002-06-09 Miles Bader <miles@gnu.org>
16652
16653 * xfaces.c (Ftty_supports_face_attributes_p): New function.
16654 (parse_rgb_list, tty_lookup_color): New functions.
16655 (tty_defined_color): Use `tty_lookup_color' to do all the work.
16656 (color_distance, Fcolor_distance): New functions.
16657 (TTY_SAME_COLOR_THRESHOLD): New macro.
16658 (Qtty_color_standard_values): New variable.
16659 (syms_of_xfaces): Initialize new vars & functions.
16660
16661 2002-06-08 Colin Walters <walters@verbum.org>
16662
16663 * textprop.c (Vchar_property_alias_alist): New variable.
16664 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
16665
16666 * intervals.c (lookup_char_property): New function for looking up
16667 overlay and text properties, created from textget.
16668 (textget): Use it.
16669
16670 * intervals.h (lookup_char_property): Declare.
16671 (Vchar_property_alias_alist): Declare.
16672
16673 * buffer.c (Foverlay_get): Use lookup_char_property.
16674
16675 2002-06-07 Sam Steingold <sds@gnu.org>
16676
16677 * xselect.c (lisp_data_to_selection_data): Fix last change:
16678 *data_ret is not a Lisp string, while unibyte_string is.
16679
16680 2002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
16681
16682 * xselect.c (lisp_data_to_selection_data): Fix last change:
16683 set size_ret.
16684
16685 2002-06-07 Andreas Schwab <schwab@suse.de>
16686
16687 * m/amdx86-64.h: New file.
16688
16689 2002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
16690
16691 * fns.c (Fstring_make_unibyte): Doc fix.
16692
16693 * xselect.c (lisp_data_to_selection_data): If the requested type
16694 is STRING, call string_make_unibyte to encode the selected text
16695 as a string.
16696
16697 * window.c (Fset_window_hscroll): Doc fix.
16698
16699 2002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16700
16701 * fileio.c (choose_write_coding_system):
16702 Call select-safe-coding-system properly.
16703
16704 2002-06-03 Richard M. Stallman <rms@gnu.org>
16705
16706 * xdisp.c (message_with_string): Error if STRING is not a string.
16707
16708 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
16709
16710 * fileio.c (choose_write_coding_system): Pass FILE arg to
16711 Vselect_safe_coding_system_function.
16712
16713 2002-06-03 Ken Raeburn <raeburn@gnu.org>
16714
16715 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
16716
16717 2002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
16718
16719 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
16720 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
16721 * keymap.c (describe_command): Likewise.
16722 * minibuf.c (read_minibuf): Likewise.
16723
16724 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
16725 Cast `current_column' return value to int.
16726 (back_to_previous_visible_line_start)
16727 (reseat_at_next_visible_line_start, next_element_from_buffer):
16728 Cast `indented_beyond_p' 3rd arg to float.
16729
16730 * indent.c (last_known_column): Now a float.
16731 (current_column_1, position_indentation, current_column)
16732 (string_display_width): Return float.
16733 (Fcurrent_column): Cast `current_column' return value to int.
16734 (Fcurrent_indentation): Cast `position_indentation' retval to int.
16735 (indented_beyond_p): Third arg now a float.
16736 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
16737
16738 * lisp.h (current_column): Now returns float.
16739 (indented_beyond_p): 3rd arg now a float.
16740
16741 2002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
16742
16743 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
16744 is Qcompound_text_with_extensions.
16745
16746 * xselect.c (lisp_data_to_selection_data): Always set selection
16747 type as string if x_encode_text returns streingp non-NULL.
16748
16749 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
16750
16751 2002-05-30 Richard M. Stallman <rms@gnu.org>
16752
16753 * window.c (Fset_window_configuration): Correct the handling
16754 of point in current buffer, to work with multiple windows.
16755
16756 2002-05-29 Colin Walters <walters@verbum.org>
16757
16758 * lread.c (Fread_from_string): Don't depend on order of evaluation
16759 for C function parameters.
16760
16761 2002-05-28 Richard M. Stallman <rms@gnu.org>
16762
16763 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
16764 way for blinked-off state and for a nonselected window.
16765
16766 * window.c (window_scroll_pixel_based): Don't call Fbolp;
16767 instead, see if the new start pos is at beginning of line.
16768
16769 * fileio.c (Fwrite_region): If START is a string, don't
16770 make any annotations.
16771
16772 * eval.c (syms_of_eval): Doc fix.
16773
16774 2002-05-28 Colin Walters <walters@debian.org>
16775
16776 * emacs.c (USAGE1): Add --no-splash.
16777 (standard_args): Ditto.
16778
16779 2002-05-28 Colin Walters <walters@gnu.org>
16780
16781 * lread.c (readchar_count): New variable.
16782 (readchar): Increment it.
16783 (unreadchar): Decrement it.
16784 (read_multibyte): Decrement it.
16785 (Vread_with_symbol_positions): New variable.
16786 (Vread_symbol_positions_list): New variable.
16787 (read_internal_start): New function, created from Fread and
16788 Fread_from_string. Handle Vread_symbol_positions_list and
16789 Vread_with_symbol_positions.
16790 (readevalloop, Fread, Fread_from_string): Use it.
16791 (read1): Use readchar_count to add symbol positions to
16792 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
16793 (syms_of_lread): DEFVAR_LISP and initialize them.
16794
16795 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
16796 (substitute_object_recurse, substitute_object_in_subtree)
16797 (substitute_in_interval): Prototype.
16798 (read_multibyte): Return c if it's less than zero.
16799
16800 2002-05-28 Kim F. Storm <storm@cua.dk>
16801
16802 * fileio.c (Fread_file_name_internal): Added brute-force
16803 speed up for using predicate file-directory-p.
16804
16805 2002-05-28 Kim F. Storm <storm@cua.dk>
16806
16807 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
16808 New variables.
16809 (syms_of_fileio): DEFVAR_LISP them.
16810 (read_file_name_cleanup): New unwind function.
16811 (Fread_file_name_internal): Only return completions satifying
16812 Vread_file_name_predicate. Temporarily unwind protect and rebind
16813 default-directory while checking completions against the predicate.
16814 (Fread_file_name): Added PREDICATE argument. Specbind it to
16815 Vread_file_name_predicate during completion.
16816 Call Vread_file_name_function to read the file name if non-nil.
16817
16818 * lisp.h (Fread_file_name): Now has 6 args.
16819
16820 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
16821 predicate for Fread_file_name when reading directory name.
16822 Supply Qnil for predicate in other calls to Fread_file_name.
16823
16824 2002-05-26 Miles Bader <miles@gnu.org>
16825
16826 * term.c (tty_capable_p): New function.
16827 * dispextern.h (tty_capable_p): New function declaration.
16828 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
16829 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
16830
16831 2002-05-23 Stefan Monnier <monnier@cs.yale.edu>
16832
16833 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
16834 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
16835 (Vwrite_region_annotate_functions): Docstring fix.
16836
16837 2002-05-23 Kim F. Storm <storm@cua.dk>
16838
16839 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
16840 phys_cursor's hpos is overwritten. This is still not completely
16841 correct, as it doesn't really make sense to use hpos at all to
16842 get the cursor glyph (as that is relative to the width of the
16843 characters on the line, which may have changed during the update).
16844
16845 2002-05-22 Jason Rumney <jasonr@gnu.org>
16846
16847 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
16848 Lisp_Object.
16849 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
16850 Use modified enumfont_t struct.
16851
16852 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
16853
16854 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
16855 Handle the `hbar' cursor type.
16856 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
16857
16858 * w32fns.c (Qhbar): New variable.
16859 (x_specified_cursor_type): Use it.
16860
16861 2002-05-21 Ken Raeburn <raeburn@gnu.org>
16862
16863 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
16864 now, when the address is needed.
16865
16866 2002-05-21 Colin Walters <walters@gnu.org>
16867
16868 * Makefile.in (shortlisp): Add font-core.el.
16869
16870 2002-05-20 Richard M. Stallman <rms@gnu.org>
16871
16872 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
16873
16874 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
16875 equivalent key bindings here.
16876
16877 2002-05-20 Ken Raeburn <raeburn@gnu.org>
16878
16879 Change symbol structure to contain a lisp object for the symbol
16880 name:
16881 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
16882 object field named "xname".
16883 (SYMBOL_NAME): New macro.
16884 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
16885 name field.
16886 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
16887 (mark_object, gc_sweep): Use symbol xname field and XSTRING
16888 instead of name field.
16889 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
16890 SYMBOL_NAME instead of XSYMBOL and name field.
16891 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
16892 instead of XSYMBOL and name field.
16893 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
16894 and SYMBOL_NAME instead of XSYMBOL and name field.
16895 * coding.c (Fread_coding_system, code_convert_region1)
16896 (code_convert_string1, code_convert_string_norecord)
16897 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
16898 XSYMBOL and name field.
16899 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
16900 (Fmake_variable_buffer_local, Fmake_local_variable)
16901 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
16902 of XSYMBOL and name field.
16903 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
16904 XSYMBOL and name field.
16905 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
16906 instead of XSYMBOL and name field.
16907 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
16908 XSYMBOL and name field.
16909 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
16910 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
16911 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
16912 instead of XSYMBOL and name field.
16913 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
16914 (parse_modifiers, apply_modifiers, Fevent_convert_list)
16915 (parse_solitary_modifier, Fexecute_extended_command):
16916 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
16917 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
16918 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
16919 of XSYMBOL and name field.
16920 (describe_command, describe_translation): Use SYMBOL_NAME and
16921 assignment instead of XSYMBOL and name field and XSETSTRING.
16922 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
16923 instead of XSYMBOL and name field.
16924 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
16925 name field and XSETSTRING.
16926 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
16927 of XSYMBOL and name field.
16928 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
16929 assignment instead of XSYMBOL and name field and XSETSTRING.
16930 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
16931 XSTRING instead of XSYMBOL and name field.
16932 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
16933 and XSTRING instead of XSYMBOL and name field.
16934 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
16935 and XSTRING instead of XSYMBOL and name field.
16936 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
16937 XSTRING instead of XSYMBOL and name field.
16938 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
16939 of XSYMBOL and name field.
16940 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
16941 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
16942
16943 2002-05-19 Ken Raeburn <raeburn@gnu.org>
16944
16945 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
16946 and XCDR real rvalues in most configurations.
16947
16948 * buffer.c (fix_overlays_in_range, fix_overlays_before):
16949 Don't take the address of the cdr part of a cons cell; instead, track
16950 the parent cell and call XSETCDR, or set the variable for the head
16951 of the list if we haven't started down the list yet.
16952
16953 2002-05-19 Richard M. Stallman <rms@gnu.org>
16954
16955 * doc.c (reread_doc_file): Don't ask for confirmation.
16956
16957 2002-05-18 Jason Rumney <jasonr@gnu.org>
16958
16959 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
16960 (xbm_load_image): Use it.
16961 (xbm_load): Ditto.
16962 (xbm_read_bitmap_data): Reverted to xfns.c version.
16963 From David Ponce <david@dponce.com>.
16964
16965 2002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
16966
16967 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
16968 2.02 and later.
16969
16970 2002-05-16 Juanma Barranquero <lektu@terra.es>
16971
16972 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
16973
16974 2002-05-15 Stefan Monnier <monnier@cs.yale.edu>
16975
16976 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
16977 meaningful test.
16978 (read_char_minibuf_menu_prompt): Fix typo.
16979
16980 2002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
16981
16982 * eval.c (Fcommandp): Doc fix.
16983
16984 2002-05-13 Stefan Monnier <monnier@cs.yale.edu>
16985
16986 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
16987 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
16988 (Fset_keymap_parent): Gcpro a bit more.
16989 (access_keymap): Gcpro around meta_map call and around the main loop.
16990 (get_keyelt): Gcpro when following indirect references.
16991 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
16992 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
16993 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
16994 Remove useless ad-hoc remap code.
16995
16996 2002-05-13 Richard M. Stallman <rms@gnu.org>
16997
16998 * search.c (search_buffer): Give up boyer moore search if inverse
16999 translation change charset_base.
17000
17001 2002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
17002
17003 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
17004 characters is carried over from the previous block of text, adjust
17005 coding->produced to account for the extra character.
17006
17007 2002-05-11 Andreas Schwab <schwab@suse.de>
17008
17009 * coding.c (intersection): Keep the elements of the returned list
17010 in the same order as in the first list.
17011
17012 2002-05-11 Kim F. Storm <storm@cua.dk>
17013
17014 * keymap.c (current_minor_maps): Fix resizing of cmm_maps;
17015 only update cmm_size if realloc actually succeeds.
17016 Testing with initial size of 2 elements revealed that using
17017 realloc on GNU/Linux would cause a random trap in xmalloc
17018 later on, so I rewrote the code to use malloc/bcopy/free instead
17019 of realloc.
17020
17021 2002-05-10 Jason Rumney <jasonr@gnu.org>
17022
17023 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
17024
17025 2002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
17026
17027 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
17028 parens, to ensure correct evaluation order.
17029
17030 2002-05-10 Kim F. Storm <storm@cua.dk>
17031
17032 * keymap.c (Vemulation_mode_map_alists): New variable.
17033 (syms_of_keymap): DEFVAR_LISP it.
17034 (current_minor_maps): Process keymap alists in that list before
17035 minor-mode-overriding-map-alist and minor-mode-map-alist.
17036
17037 2002-05-09 Richard M. Stallman <rms@gnu.org>
17038
17039 * search.c (Freplace_match): Doc fix.
17040
17041 2002-05-09 Kim F. Storm <storm@cua.dk>
17042
17043 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
17044 Enlarge cursor rectangle drawn around image with non-zero relief.
17045
17046 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
17047 Enlarge cursor rectangle drawn around image with non-zero relief.
17048
17049 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
17050 Enlarge cursor rectangle drawn around image with non-zero relief.
17051
17052 2002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
17053
17054 * xselect.c (lisp_data_to_selection_data): Don't set selection
17055 type if comes from the Lisp object's car. If the selection
17056 contains a pure ASCII text, always return QSTRING as its type.
17057
17058 2002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17059
17060 * mac.c (mac-cut-function): Doc fix.
17061
17062 2002-05-05 Richard M. Stallman <rms@gnu.org>
17063
17064 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
17065
17066 2002-05-04 Jason Rumney <jasonr@gnu.org>
17067
17068 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
17069 for event-click-count.
17070
17071 * process.c (init_process): Only add server subfeature if we can
17072 use non-blocking I/O.
17073
17074 2002-05-04 Andrew Choi <akochoi@shaw.ca>
17075
17076 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
17077 repeatedly.
17078
17079 2002-05-03 Jason Rumney <jasonr@gnu.org>
17080
17081 * process.c (Fmake_network_process): Only support server sockets
17082 when we can make them non-blocking.
17083
17084 * s/ms-w32.h (HAVE_SELECT): Define.
17085
17086 * w32.h (FILE_NDELAY): New flag.
17087
17088 * w32.c (sys_getpeername, fcntl): New functions.
17089 (_sys_read_ahead): Temporarily block on non-blocking sockets.
17090
17091 * w32proc.c: Include sys/file.h.
17092
17093 2002-05-03 Colin Walters <walters@verbum.org>
17094
17095 * callproc.c (Vgame_score_directory): Renamed to
17096 Vshared_game_score_directory.
17097
17098 2002-04-30 Richard M. Stallman <rms@gnu.org>
17099
17100 * s/gnu.h [emacs]: Include stdio.h.
17101 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
17102
17103 * eval.c (do_autoload): Error if called while preparing to dump.
17104
17105 * fns.c (Frequire): Error if need to load while preparing to dump.
17106
17107 2002-04-28 Colin Walters <walters@verbum.org>
17108
17109 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
17110 Default to "~/.emacs.d/games".
17111
17112 2002-04-29 Stefan Monnier <monnier@cs.yale.edu>
17113
17114 * lread.c (openp): Change arg exec_only to predicate.
17115 (build_load_history): Use XCAR/XCDR.
17116 (Flocate_file_internal): New fun.
17117 (syms_of_lread): Defsubr it.
17118 (Fload): Update call to openp.
17119
17120 * lisp.h (openp): Update prototype.
17121
17122 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
17123 * w32proc.c (sys_spawnve):
17124 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
17125 * w32.c (check_windows_init_file):
17126 * sound.c (Fplay_sound_internal):
17127 * process.c (Fstart_process):
17128 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
17129 * mac.c (run_mac_command):
17130 * emacs.c (init_cmdargs):
17131 * callproc.c (Fcall_process): Update call to openp.
17132
17133 * textprop.c (remove_properties): Don't use XCAR without CONSP.
17134
17135 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
17136
17137 2002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17138
17139 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
17140 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
17141
17142 2002-04-28 Richard M. Stallman <rms@gnu.org>
17143
17144 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
17145
17146 * eval.c (Fcommandp): New arg for_call_interactively.
17147 * lisp.h (Fcommandp): Declare new arg.
17148
17149 2002-04-28 Jason Rumney <jasonr@gnu.org>
17150
17151 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
17152
17153 * w32.c (stat, fstat): Use file index information to generate
17154 inodes for directories where available.
17155
17156 2002-04-26 Andrew Choi <akochoi@shaw.ca>
17157
17158 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
17159 [HAVE_CARBON]: Include Mac object files.
17160
17161 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
17162 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
17163 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
17164 MAC_OSX, and MAC_OS instead of macintosh.
17165
17166 * editfns.c [MAC_OS8]: Include stdio.h.
17167
17168 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
17169
17170 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
17171 Apple Monaco.
17172
17173 * process.c (QCfamily, QCfilte): Declare extern.
17174 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
17175 calling select.
17176
17177 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
17178
17179 * tparam.c [MAC_OSX]: Don't define BC and UP.
17180
17181 * config.in [HAVE_CARBON]: Add.
17182
17183 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
17184 Move here from mac/src and mac/inc.
17185
17186 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
17187
17188 2002-04-26 Gerd Moellmann <gerd@gnu.org>
17189
17190 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
17191 Compute phys_cursor_width from the x position returned
17192 by x_draw_glyhs, which is cheaper.
17193 (x_display_and_set_cursor): Compute the buffer-local value
17194 of `cursor-in-non-selected-windows' only when needed.
17195
17196 2002-04-25 Gerd Moellmann <gerd@gnu.org>
17197
17198 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
17199 cursor on a stretch glyph has a width that depends on
17200 x_stretch_cursor_p.
17201
17202 2002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17203
17204 * abbrev.c (abbrev-start-location): Doc fix.
17205
17206 * indent.c (Fvertical_motion): Fix last change.
17207
17208 2002-04-25 Gerd Moellmann <gerd@gnu.org>
17209
17210 * indent.c (Fvertical_motion): Move to the start of the line
17211 containing PT before moving up or down.
17212
17213 2002-04-24 Gerd Moellmann <gerd@gnu.org>
17214
17215 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
17216 case of writing a whole row, more or less analogous to the case of
17217 writing only parts of a row.
17218
17219 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
17220 0 for NO_CURSOR.
17221
17222 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
17223
17224 2002-04-23 Colin Walters <walters@verbum.org>
17225
17226 * buffer.c (syms_of_buffer): Doc fix.
17227
17228 2002-04-23 Gerd Moellmann <gerd@gnu.org>
17229
17230 * xterm.c (notice_overwritten_cursor): Handle the special case
17231 of the cursor being in the first blank non-text line at the
17232 end of a window.
17233
17234 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
17235 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
17236 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
17237 bar cursors only, to make phys_cursor_width contain what its name
17238 suggests.
17239 (notice_overwritten_cursor): Consider the cursor image erased if
17240 the output area intersects the cursor image in y-direction.
17241
17242 2002-04-23 Simon Marshall <simon@gnu.org>
17243
17244 * xfns.c (x_set_mouse_color): Change default for cross_cursor
17245 to XC_hand2.
17246
17247 2002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17248
17249 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
17250
17251 2002-04-22 Kim F. Storm <storm@cua.dk>
17252
17253 * textprop.c (remove_properties): Fixed trap for malformed plist.
17254
17255 2002-04-22 Richard M. Stallman <rms@gnu.org>
17256
17257 * cmds.c (Fend_of_line): Handle intangible text in mid line.
17258
17259 * window.c (make_window): Initialize height_fixed_p,
17260 last_cursor_off_p, and p->cursor_off_p slots.
17261
17262 2002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17263
17264 * fns.c (use-dialog-box): Doc fix.
17265
17266 2002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17267
17268 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
17269 variables `row', `i' and `area'.
17270 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
17271 toolkit library.
17272
17273 2002-04-19 Stefan Monnier <monnier@cs.yale.edu>
17274
17275 * xfaces.c (clear_font_table): Don't free the default font of
17276 a frame even if it's on another display.
17277 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
17278 that could be Qt.
17279
17280 2002-04-19 Juanma Barranquero <lektu@terra.es>
17281
17282 * indent.c (Fmove_to_column): Remove unused local variable
17283 `next_boundary_byte'.
17284 (current_column_1): Likewise.
17285
17286 2002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
17287
17288 * msdos.c (Qhbar): New variable.
17289 (syms_of_msdos): Intern and staticpro it.
17290 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
17291 cursor type.
17292
17293 2002-04-19 Dave Lambert <dlambert@acm.org>
17294
17295 Theses change implement an underscore-like (`hbar') cursor.
17296
17297 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
17298
17299 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
17300 Handle the `hbar' cursor type.
17301 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
17302
17303 * xfns.c (Qhbar): New variable.
17304 (syms_of_xfns): Intern and staticpro it.
17305 (x_specified_cursor_type): Handle `hbar' cursor.
17306
17307 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
17308 not defined.
17309
17310 2002-04-18 Richard M. Stallman <rms@gnu.org>
17311
17312 * textprop.c (remove_properties): New arg LIST allows scanning
17313 either a list or a plist.
17314 (interval_has_some_properties_list): New function, like
17315 interval_has_some_properties using list instead of plist.
17316 All callers changed.
17317 (Fremove_list_of_text_properties): New function.
17318 (syms_of_textprop): Defsubr it.
17319
17320 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
17321
17322 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
17323
17324 2002-04-17 Juanma Barranquero <lektu@terra.es>
17325
17326 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
17327
17328 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
17329
17330 * window.c (coordinates_in_window): Don't report on margin area
17331 if its width is zero.
17332
17333 2002-04-16 Jason Rumney <jasonr@gnu.org>
17334
17335 * w32fns.c (Fx_file_dialog): Decode file name before using.
17336
17337 * w32term.c (construct_drag_n_drop): Likewise.
17338
17339 2002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
17340
17341 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
17342 store load-history in pure space.
17343
17344 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
17345
17346 2002-04-16 Stefan Monnier <monnier@cs.yale.edu>
17347
17348 * xterm.c (Qlatin_1, Qutf_8): New vars.
17349 (syms_of_xterm): Initialize them.
17350 (XTread_socket): Eliminate incorrect optimization that tried to avoid
17351 decoding the output of X*LookupString.
17352 Always use latin-1 to decode the output of XLookupString.
17353 Try Xutf8LookupString if XmbLookupString failed.
17354
17355 * region-cache.c (new_region_cache): Use BEG.
17356
17357 2002-04-16 Gerd Moellmann <gerd@gnu.org>
17358
17359 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
17360 configuration files.
17361 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
17362 returns 0.
17363
17364 2002-04-15 Andreas Schwab <schwab@suse.de>
17365
17366 * config.in: Regenerated using autoheader.
17367
17368 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
17369 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
17370 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
17371 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
17372 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
17373 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
17374 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
17375 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
17376 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
17377 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
17378 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
17379 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
17380 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
17381 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
17382 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
17383 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
17384 STACK_DIRECTION, now set by autoconf.
17385
17386 2002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17387
17388 * dispnew.c (marginal_area_string): Sort arguments.
17389
17390 * dispextern.h (marginal_area_string): Add prototype.
17391
17392 2002-04-13 Richard M. Stallman <rms@gnu.org>
17393
17394 * fileio.c (Finsert_file_contents):
17395 Don't call temp_output_buffer_setup--do just part, by hand.
17396
17397 * coding.c (run_pre_post_conversion_on_str):
17398 Don't call temp_output_buffer_setup--do just part, by hand.
17399
17400 * keyboard.c (command_loop_1): Don't call start_hourglass
17401 or cancel_hourglass when executing a macro.
17402
17403 * marker.c (count_markers): New function.
17404
17405 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
17406 grow without limit. Move recently used elements to the front.
17407
17408 2002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
17409
17410 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
17411
17412 2002-04-12 Gerd Moellmann <gerd@gnu.org>
17413
17414 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
17415 rows marginal areas.
17416 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
17417 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
17418
17419 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
17420
17421 2002-04-12 Dave Love <fx@gnu.org>
17422
17423 * dispnew.c (marginal_area_string): New.
17424
17425 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
17426 (Qleft_margin, Qright_margin): Declare.
17427 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
17428
17429 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
17430 note_mode_line_highlight and extended.
17431
17432 * keyboard.c (Qleft_margin, Qright_margin): Declare.
17433 (make_lispy_event): Deal with mouse events in margins.
17434
17435 2002-04-12 Stefan Monnier <monnier@cs.yale.edu>
17436
17437 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
17438
17439 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
17440 than deactivating the mark if tmm is set to `lambda'.
17441 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
17442 Use a single event for HELP_EVENT.
17443 (Fexecute_extended_command): Save last_point_position.
17444
17445 2002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17446
17447 * lisp.h (Fpropertize): Add prototype.
17448
17449 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
17450
17451 2002-04-10 Colin Walters <walters@verbum.org>
17452
17453 * config.in: Add HAVE_SHARED_GAME_DIR.
17454
17455 * callproc.c (Vgame_score_directory): New variable.
17456 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
17457
17458 2002-04-10 Richard M. Stallman <rms@gnu.org>
17459
17460 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
17461
17462 2002-04-09 Stefan Monnier <monnier@cs.yale.edu>
17463
17464 * minibuf.c (read_minibuf): Use empty_string.
17465 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
17466 Short-circuit the search as soon as it "failed".
17467 (Fall_completions): Allow lambda forms and lists of strings for alist.
17468 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
17469 when require_match is nil.
17470 (Ftest_completion): Rename from `test_completion' and export to elisp.
17471 Call the predicate also when alist is a list.
17472 Obey Vcompletion_regexp_list.
17473 (do_completion, Fminibuffer_complete_and_exit): Use it.
17474 (Fassoc_string): Rename from `assoc_for_completion'.
17475 Allow list of strings as well and export to elisp.
17476
17477 2002-04-08 Stefan Monnier <monnier@cs.yale.edu>
17478
17479 * puresize.h (BASE_PURESIZE): Increase to 900KB.
17480
17481 2002-04-08 Juanma Barranquero <lektu@terra.es>
17482
17483 * w32.c (sys_accept): Don't hide variable `s'.
17484
17485 2002-04-05 Gerd Moellmann <gerd@gnu.org>
17486
17487 * callint.c (Fcall_interactively): Use INTEGERP instead of
17488 NUMBERP for checking Vhistory_length.
17489
17490 2002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17491
17492 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
17493 Doc fix to reflect it.
17494
17495 2002-04-04 Richard M. Stallman <rms@gnu.org>
17496
17497 * xdisp.c (display_mode_element): New arg RISKY.
17498 Disregard text props found or specified within a variable
17499 that isn't marked risky-local-variable.
17500 (Qrisky_local_variable): New variable.
17501 (syms_of_xdisp): Init and staticpro it.
17502
17503 2002-04-04 Stefan Monnier <monnier@cs.yale.edu>
17504
17505 * undo.c (record_point): New fun.
17506 (record_delete, record_insert): Use it.
17507
17508 2002-04-03 Juanma Barranquero <lektu@terra.es>
17509
17510 * doc.c (Fdocumentation): Add missing parentheses.
17511 (Fdocumentation_property): Likewise.
17512
17513 2002-04-03 Stefan Monnier <monnier@cs.yale.edu>
17514
17515 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
17516 data is 0, just return nil.
17517
17518 2002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
17519
17520 * msdos.c (syms_of_msdos): Fix last change with
17521 mouse_autoselect_window.
17522
17523 2002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17524
17525 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
17526 mouse_autoselect_window.
17527
17528 2002-04-02 Stefan Monnier <monnier@cs.yale.edu>
17529
17530 * keyboard.c (make_lispy_event): Handle unknown keysyms together
17531 with system-specific keysyms. Use it also for unknown function keys.
17532
17533 * doc.c (reread_doc_file): Return whether reload was attempted.
17534 (Fdocumentation, Fdocumentation_property): Don't try to reload
17535 if the doc is 0 and only ask once.
17536
17537 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
17538
17539 2002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
17540
17541 * keyboard.c (read_char): If the event was Qselect_window,
17542 restore timer_idleness_start_time to its previous value.
17543
17544 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
17545
17546 2002-04-01 Stefan Monnier <monnier@cs.yale.edu>
17547
17548 * region-cache.c (new_region_cache): Use BEG.
17549
17550 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
17551 Use BEG and BEG_BYTE.
17552
17553 * doc.c (get_doc_string): Return nil if the location is wrong.
17554 (reread_doc_file): New fun.
17555 (Fdocumentation, Fdocumentation_property):
17556 Call it if get_doc_string fails.
17557 (Fsnarf_documentation): Make it work for a dumped Emacs.
17558
17559 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
17560 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
17561
17562 * charset.c (Fstring): Allow 0 arguments.
17563
17564 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
17565
17566 * process.c (DATAGRAM_CONN_P, list_processes_1)
17567 (Fprocess_datagram_address, Fset_process_datagram_address)
17568 (Fset_network_process_options, server_accept_connection):
17569 Fix some int/Lisp_Object confusions (thank you union types).
17570
17571 2002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17572
17573 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
17574
17575 * w32term.c: Likewise.
17576 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
17577
17578 * keyboard.c (Qselect_window): New symbol.
17579 (head_table): Use it.
17580 (keys_of_keyboard): Bound select-window event to handle-select-window.
17581 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
17582
17583 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
17584 (last_window): New variable.
17585 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
17586 (note_mouse_movement): Remove reimplemented code in #if 0.
17587 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
17588 Emacs windows.
17589
17590 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
17591
17592 2002-03-31 Gerd Moellmann <gerd@gnu.org>
17593
17594 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
17595 Callers changed.
17596
17597 2002-03-30 Richard M. Stallman <rms@gnu.org>
17598
17599 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
17600 loop whenever it stops making progress.
17601
17602 * widget.c (set_frame_size): Don't call change_frame_size.
17603
17604 2002-03-30 Gerd Moellmann <gerd@gnu.org>
17605
17606 * dispnew.c (direct_output_for_insert):
17607 Call mark_window_display_accurate.
17608
17609 2002-03-29 Jason Rumney <jasonr@gnu.org>
17610
17611 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
17612
17613 2002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
17614
17615 * Makefile.in (lread.o): Depend on coding.h.
17616
17617 * lread.c (openp, Fload): Encode the file name before passing it
17618 to `stat', `access', and `emacs_open'.
17619 (openp): GCPRO the encoded file name. Don't recompute Lisp
17620 strings unnecessarily.
17621
17622 2002-03-29 Kim F. Storm <storm@cua.dk>
17623
17624 * fns.c (Flax_plist_put): Doc fix.
17625
17626 2002-03-28 Miles Bader <miles@gnu.org>
17627
17628 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
17629
17630 2002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17631
17632 * process.c (set-network-process-options): Add usage.
17633 (make-network-process): Doc fix.
17634
17635 2002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
17636
17637 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
17638
17639 2002-03-26 Richard M. Stallman <rms@gnu.org>
17640
17641 * fns.c (Fsubstring_no_properties): New function.
17642 (Flax_plist_get, Flax_plist_put): New functions.
17643 (syms_of_fns): defsubr them.
17644
17645 * xdisp.c (update_menu_bar): Test only update_mode_lines;
17646 don't test or alter w->update_mode_line.
17647
17648 * window.c (Fdisplay_buffer): Doc fix.
17649
17650 2002-03-24 Richard M. Stallman <rms@gnu.org>
17651
17652 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
17653
17654 2002-03-24 Gerd Moellmann <gerd@gnu.org>
17655
17656 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
17657 (Fdefmacro): Handle `(declare ...)'.
17658 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
17659 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
17660
17661 2002-03-24 Jason Rumney <jasonr@gnu.org>
17662
17663 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
17664 (xbm_file_p): Add prototypes.
17665 (xbm_format, xbm_image_p): Sync with xfns.c.
17666 (reflect_byte): New function.
17667 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
17668 (xbm_load_image): Create bitmaps with a depth of 1.
17669 (init_xfns): Enable XBM images.
17670
17671 2002-03-23 Jason Rumney <jasonr@gnu.org>
17672
17673 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
17674 correctly. Do not pass up_modifier to keyboard buffer.
17675
17676 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
17677
17678 2002-03-22 Stefan Monnier <monnier@cs.yale.edu>
17679
17680 * Makefile.in (bootstrapclean): New target.
17681 (bootstrap-temacs, bootstrap-doc): Remove.
17682 (bootstrap-emacs): Use a bog-standard `temacs'.
17683 Don't bother to build a DOC file.
17684
17685 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
17686
17687 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
17688 in temacs even if !CANNOT_DUMP.
17689 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
17690
17691 * alloc.c (check_pure_size): Only output a warning.
17692
17693 2002-03-22 Jason Rumney <jasonr@gnu.org>
17694
17695 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
17696 supported.
17697
17698 * w32term.c (zv_bits): Declare as short, for word alignment.
17699 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
17700 (syms_of_w32term): Define x-use-underline-position-properties.
17701
17702 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
17703 (clear_image_cache): Block input, fix logic, clear matrices in
17704 all frames that share this cache.
17705
17706 2002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
17707
17708 * emacs.c (main): Update the Copyright year in the blurb printed
17709 by "emacs --version".
17710
17711 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
17712
17713 * xterm.c (XTread_socket): If XK_ISO_Lock and
17714 XK_ISO_Last_Group_Lock are defined, handle keysyms between
17715 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
17716
17717 2002-03-21 Kim F. Storm <storm@cua.dk>
17718
17719 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
17720 menu-bar bindings in keymap and local-map properties _are_ used.
17721 But try keymap property first in accordance with 2002-01-03 patch.
17722 Added comment describing why this is not always reliable.
17723 (tool_bar_items): Ditto for tool-bar.
17724
17725 2002-03-21 Jason Rumney <jasonr@gnu.org>
17726
17727 * w32fns.c (x_clear_image_1): Disable color table code.
17728
17729 2002-03-21 Kim F. Storm <storm@cua.dk>
17730
17731 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
17732 removed the wrong version of the DEFUN macro; fixed it.
17733
17734 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
17735 Fmember rather than Fmemq).
17736 (Fprovide): Check that subfeatures is a list.
17737
17738 * process.c (QCfeature, QCdatagram): Removed variables.
17739 (QCtype, Qdatagram): New variables.
17740 (network_process_featurep): Removed function.
17741 (Fmake_network_process): Removed :feature check.
17742 Use :type 'datagram instead of :datagram t to create a datagram
17743 socket. This allows us to add other connection types (e.g. raw
17744 sockets) later in a consistent manner.
17745 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
17746 supported subfeatures for feature make-network-process.
17747 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
17748 Intern and staticpro QCtype and Qdatagram.
17749 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
17750
17751 * xfns.c: (QCtype): Remove duplicate declaration and
17752 initialization (is now declared in process.c).
17753
17754 * w32fns.c: (QCtype): Remove duplicate declaration and
17755 initialization (is now declared in process.c).
17756
17757 2002-03-21 Richard M. Stallman <rms@gnu.org>
17758
17759 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
17760 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
17761 when jumping to `fail' to avoid undoing reg changes in the
17762 last iteration of the loop.
17763 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
17764
17765 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
17766 Depend on process.h.
17767
17768 2002-03-20 Jason Rumney <jasonr@gnu.org>
17769
17770 Most of the following changes are still conditional on HAVE_IMAGES
17771 which is not set by default on Windows.
17772
17773 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
17774
17775 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
17776 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
17777 (four_corners_best, x_clear_image_1, x_clear_image)
17778 (x_alloc_image_color, postprocess_image)
17779 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
17780 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
17781 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
17782
17783 * w32gui.h (struct XImage): Define.
17784
17785 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
17786 extract mouse co-ordinates.
17787
17788 2002-03-20 Jason Rumney <jasonr@gnu.org>
17789
17790 * w32.c (init_winsock): Dynamically load new server and UDP
17791 socket functions.
17792 (socket_to_fd): New function.
17793 (sys_socket): Use it.
17794 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
17795 (sys_recvfrom, sys_sendto): New wrapper functions.
17796
17797 * process.c (QCfamily, QCfilter): Remove duplicate declaration
17798 and initialization.
17799
17800 * makefile.w32-in (LIBS): Remove $(WSOCK32).
17801
17802 2002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
17803
17804 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
17805 Don't use "sun" as a variable, it's a predefined constant on Sun
17806 machines.
17807
17808 2002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17809
17810 * bytecode.c (Fbyte_code): Revert last change.
17811
17812 2002-03-19 Kim F. Storm <storm@cua.dk>
17813
17814 * makefile.w32-in (LIBS): Add $(WSOCK32).
17815 From David Ponce <dponce@voila.fr>.
17816
17817 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17818
17819 * process.c (wait_reading_process_input): Move variables `pname'
17820 and `pnamelen' down where they are used.
17821
17822 * bytecode.c (Fbyte_code): Discard unused computed value to
17823 prevent gcc warning.
17824
17825 * lisp.h (Fplist_member): Add prototype.
17826
17827 2002-03-18 Kim F. Storm <storm@cua.dk>
17828
17829 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
17830 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
17831
17832 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
17833 Remove explicit GNU_LINUX settings for datagram support.
17834
17835 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17836
17837 * process.c (Fmake_network_process): Remove unused variable `sa'.
17838 Doc fix. Add usage:.
17839 (set_socket_options): Remove unused variables `optnum' and `opttype'.
17840
17841 2002-03-17 Richard M. Stallman <rms@gnu.org>
17842
17843 * xdisp.c (cursor_type_changed): New variable.
17844 (redisplay_internal): Redisplay all windows if cursor_type_changed.
17845 Clear it when clearing windows_or_buffers_changed.
17846 (try_cursor_movement, redisplay_window, try_window_id)
17847 (try_window_reusing_current_matrix): Test cursor_type_changed
17848 along with windows_or_buffers_changed.
17849
17850 * window.h (cursor_type_changed): New variable.
17851
17852 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
17853 not update_mode_lines, and always set it to 1.
17854
17855 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
17856 if no frames needed redrawing.
17857
17858 2002-03-17 Kim F. Storm <storm@cua.dk>
17859
17860 The following changes add support for network server processes,
17861 datagram connections, and local (unix) sockets.
17862
17863 * process.h (struct Lisp_Process): New member log.
17864 Doc fix: Member command used to indicate stopped network process.
17865 Doc fix: Member childp contains plist for network process.
17866 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
17867
17868 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
17869 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
17870 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
17871 New variables.
17872 (NETCONN1_P): New macro.
17873 (DATAGRAM_SOCKETS): New conditional symbol.
17874 (datagram_address): New array.
17875 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
17876 (status_message): Use concat3.
17877 (Fprocess_status): Add `listen' status to doc string. Return `stop'
17878 for a stopped network process.
17879 (Fset_process_buffer): Update contact plist for network process.
17880 (Fset_process_filter): Ditto. Don't enable input for stopped
17881 network processes. Server must listen, even if filter is t.
17882 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
17883 New functions.
17884 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
17885 (Fprocess_contact): Added KEY argument. Handle datagrams.
17886 (list_processes_1): Optionally show only processes with the query
17887 on exit flag set. Dynamically adjust column widths. Omit tty
17888 column if not needed. Report stopped network processes.
17889 Identify server and datagram network processes.
17890 (Flist_processes): New optional arg `query-only'.
17891 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
17892 (conv_lisp_to_sockaddr, set_socket_options)
17893 (network_process_featurep, unwind_request_sigio): New helper functions.
17894 (Fprocess_datagram_address, Fset_process_datagram_address):
17895 (Fset_network_process_options): New lisp functions.
17896 (Fopen_network_stream): Removed. Now defined in simple.el.
17897 (Fmake_network_process): New lisp function. Code is based on previous
17898 Fopen_network_stream, but heavily reworked with new property list based
17899 argument list, support for datagrams, server processes, and local
17900 sockets in addition to old client-only functionality.
17901 (server_accept_connection): New function.
17902 (wait_reading_process_input): Use it to handle incoming connects.
17903 Do not enable input on a new connection if process is stopped.
17904 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
17905 (send_process): Handle datagram sockets.
17906 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
17907 network process is indicated by setting command field to t .
17908 (Fprocess_send_eof): No-op if datagram connection.
17909 (Fstatus_notify): Don't read input for a stream server socket or a
17910 stopped network process.
17911 (init_process): Initialize datagram_address array.
17912 (syms_of_process): Intern and staticpro new variables, defsubr new
17913 functions.
17914
17915 2002-03-16 Jason Rumney <jasonr@gnu.org>
17916
17917 * w32fns.c (w32_to_all_x_charsets): Return correct type in
17918 startup case.
17919
17920 2002-03-16 Richard M. Stallman <rms@gnu.org>
17921
17922 * xdisp.c (redisplay_internal, redisplay_windows):
17923 Use list_of_error to call internal_condition_case_1.
17924 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
17925 so as to catch all errors with no possibility of debugger redisplay.
17926 (list_of_error): New variable.
17927 (syms_of_xdisp): Init and staticpro it.
17928
17929 * print.c (print_object): Delete `\ ' from printed rep of frame.
17930
17931 2002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
17932
17933 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
17934 until its implementation is fixed.
17935
17936 2002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17937
17938 * xfns.c (png_load): Remove unused variable `gamma_str'.
17939
17940 2002-03-14 Richard M. Stallman <rms@gnu.org>
17941
17942 * xfns.c (x_real_positions): Handle failure in XQueryTree.
17943
17944 2002-03-14 Miles Bader <miles@gnu.org>
17945
17946 * intervals.c (adjust_for_invis_intang): New function.
17947 (set_point_both): Use `adjust_for_invis_intang' to do most of the
17948 work for dealing with invisible+intangible regions. Do so before
17949 and after both forward and backward movements, to handle both
17950 front-sticky and rear-sticky cases.
17951 * textprop.c (text_property_stickiness): Function moved here from
17952 `editfns.c'.
17953 * intervals.h (text_property_stickiness): New declaration.
17954 * editfns.c (char_property_eq): Function removed.
17955 (text_property_stickiness): Function moved to `textprop.c'.
17956
17957 2002-03-13 Jason Rumney <jasonr@gnu.org>
17958
17959 * config.in: Add STRFTIME_NO_POSIX2.
17960
17961 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
17962 and %OX when underlying strftime does not.
17963
17964 2002-03-13 Stefan Monnier <monnier@cs.yale.edu>
17965
17966 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
17967 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
17968 line) to avoid annoying flicker.
17969 (xm_scroll_callback): Get rid of the now unnecessary kludge.
17970 (XTread_socket): Mark it static.
17971
17972 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
17973
17974 2002-03-13 Kim F. Storm <storm@cua.dk>
17975
17976 * puresize.h (BASE_PURESIZE): Increase to 775000.
17977
17978 2002-03-12 Juanma Barranquero <lektu@terra.es>
17979
17980 * editfns.c (syms_of_editfns): Fix typo.
17981
17982 2002-03-12 Gerd Moellmann <gerd@gnu.org>
17983
17984 * xsmfns.c: Include stdio.h because termhooks.h needs it.
17985 Include termopt.h for interrupt_input.
17986
17987 2002-03-11 Andreas Schwab <schwab@suse.de>
17988
17989 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
17990
17991 2002-03-11 Gerd Moellmann <gerd@gnu.org>
17992
17993 * xterm.c (note_mouse_movement): Put code for
17994 x_autoselect_window_p in #if 0.
17995
17996 * lread.c (Fload): Don't assume that message_with_string uses the
17997 string it is given like a C string.
17998
17999 2002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
18000
18001 * xterm.h (x_session_check_input, x_session_initialize): Declare.
18002
18003 * xterm.c (XTread_socket): Add call to x_session_check_input and
18004 x_session_have_connection.
18005 (x_initialize): Add call to x_session_initialize.
18006
18007 * termhooks.h (enum event_kind): Add save_session_event.
18008
18009 * keyboard.c: Add Emacs event save_session_event.
18010
18011 * emacs.c (main): Add call to syms_of_xsmfns.
18012
18013 * lisp.h (syms_of_xsmfns): Declare extern.
18014
18015 * config.in: Add HAVE_X_SM.
18016
18017 * Makefile.in (LIBXT): Add -lSM -lICE
18018 if HAVE_X_SM and not USE_X_TOOLKIT.
18019 (XOBJ): New file xsmfns.c added.
18020
18021 * xsmfns.c: New file for X session management.
18022
18023 2002-03-09 Jason Rumney <jasonr@gnu.org>
18024
18025 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
18026 read-only when setting modified time.
18027
18028 2002-03-08 Gerd Moellmann <gerd@gnu.org>
18029
18030 * xdisp.c (move_it_vertically_backward): At the end of the function,
18031 when moving forward by lines, treat terminal frames specially.
18032
18033 * keyboard.c (echo_char): Make sure to add a separator between
18034 keys even if echo_dash hasn't been called.
18035
18036 * xdisp.c: Use new string macros.
18037 (update_echo_area): Pass number of bytes to message3 instead of
18038 number of chars.
18039 (set_message_1): Don't access a string's size_byte directly.
18040 (decode_mode_spec_coding): Use number of bytes of eoltype string
18041 instead number of chars.
18042
18043 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
18044
18045 2002-03-08 Juanma Barranquero <lektu@terra.es>
18046
18047 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
18048 24-bit.
18049
18050 2002-03-06 Jason Rumney <jasonr@gnu.org>
18051
18052 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
18053
18054 2002-03-06 Gerd Moellmann <gerd@gnu.org>
18055
18056 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
18057 (cancel_echoing, echo_length, echo_truncate): Changed to
18058 work with new kboard definition.
18059 (echo_now): Use message3_nolog instead of message2_nolog.
18060
18061 * alloc.c (mark_kboards): Mark echo_string.
18062
18063 * keyboard.h (ECHOBUFSIZE): Removed.
18064 (struct kboard): Member echoptr removed, member echobuf renamed
18065 to echo_string.
18066
18067 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
18068 message3 instead of message2 to display the message using STRING's
18069 text properties.
18070
18071 2002-03-05 Andreas Schwab <schwab@suse.de>
18072
18073 * xdisp.c (hscroll_margin): Change to EMACS_INT.
18074
18075 2002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
18076
18077 * frame.c (default-frame-alist): Explain that setting it doesn't
18078 affect existing frames.
18079
18080 2002-03-05 Stefan Monnier <monnier@cs.yale.edu>
18081
18082 * indent.c (skip_invisible): Fix my brain fart.
18083
18084 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
18085
18086 2002-03-04 Stefan Monnier <monnier@cs.yale.edu>
18087
18088 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
18089 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
18090 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
18091 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
18092 and variables to use EMACS_INT instead of just int.
18093
18094 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
18095
18096 2002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
18097
18098 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
18099 environment, pass it down with corrected value.
18100
18101 2002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18102
18103 * lread.c (read_filtered_event): Do not call start_hourglass
18104 before returning.
18105
18106 2002-03-04 Juanma Barranquero <lektu@terra.es>
18107
18108 * w32term.c (x_display_and_set_cursor): Fix typo.
18109
18110 2002-03-03 Richard M. Stallman <rms@gnu.org>
18111
18112 * fileio.c (Fmake_temp_name): Doc fix.
18113
18114 2002-03-03 Gary Wong <gtw@gnu.org>
18115
18116 * termcap.c [!emacs]: Replace ospeed for building standalone
18117 libtermcap, for binary compatibility.
18118
18119 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
18120
18121 2002-03-03 Richard M. Stallman <rms@gnu.org>
18122
18123 * xrdb.c (file_p): Rename arg `path' to `filename'.
18124
18125 * abbrev.c (Fexpand_abbrev): Increment plist as use count
18126 only if it is an integer.
18127
18128 * xfns.c (png_load): Set screen_gamma based on f->gamma.
18129 If png_get_sRGB gives an answer, call png_set_gamma
18130 using the default image gamma value.
18131
18132 * lread.c (read1): When reading from a file, default string to
18133 multibyte only if it has some multibyte characters.
18134
18135 * print.c (print_object): Output multibyte chars 128...255
18136 using \x even if ! print_escape_multibyte.
18137
18138 * xdisp.c (display_mode_element): Move the places where
18139 bytepos, charpos, this, and lisp_string are set.
18140 Use lisp_string to set bytepos.
18141
18142 * xdisp.c (redisplay_internal):
18143 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
18144
18145 * xdisp.c (display_mode_element): Merge properties specified with
18146 :propertize onto those that come with the string.
18147
18148 2002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
18149
18150 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
18151 automatic-hscrolling. Users changed.
18152 <hscroll-margin>: Renamed from automatic-hscroll-margin.
18153 Users changed.
18154 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
18155
18156 2002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
18157
18158 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
18159
18160 2002-03-02 Kim F. Storm <storm@cua.dk>
18161
18162 * window.c (Fminibuffer_selected_window): New function.
18163 (syms_of_window): Defsubr it.
18164
18165 2002-03-01 Kim F. Storm <storm@cua.dk>
18166
18167 * window.h (struct window): New member phys_cursor_width.
18168
18169 * window.c (make_window, replace_window): Init phys_cursor_width.
18170
18171 * xterm.c (x_display_and_set_cursor): Blink box cursor using
18172 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
18173
18174 * w32term.c (x_display_and_set_cursor): Blink box cursor using
18175 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
18176
18177 * lisp.h (GCPRO6): New macro.
18178
18179 * process.c (Fopen_network_stream): Use GCPRO6.
18180
18181 2002-03-01 Kim F. Storm <storm@cua.dk>
18182
18183 * process.c (Qconnect, Qfailed): New variables.
18184 (syms_of_process): Intern and staticpro them.
18185 (Fprocess_status): Document connect and failed return values.
18186 [NON_BLOCKING_CONNECT]: New conditional.
18187 (connect_wait_mask, num_pending_connects): New variables.
18188 (status_message): Convert Qfailed status.
18189 (Fopen_network_stream): Added support for non-blocking connect.
18190 New optional args: filter, sentinel, non_blocking. Doc updated.
18191 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
18192 (deactivate_process): Handle pending non-blocking connect.
18193 (wait_reading_process_input): Poll for status of non-blocking
18194 connects. Exec sentinel directly when connect succeeds.
18195 (status_notify): Don't read process output if not yet connected.
18196
18197 2002-02-28 Kim F. Storm <storm@cua.dk>
18198
18199 * window.c: (minibuf_selected_window): Renamed from
18200 Vminibuf_selected_window. Users changed.
18201 (syms_of_window): Staticpro it.
18202
18203 2002-02-26 Kim F. Storm <storm@cua.dk>
18204
18205 The following changes add a new Vminibuf_selected_window variable
18206 which is similar to Vminibuf_scroll_window, but which is only set
18207 on entry to the minibuffer (from a non-minibuffer window):
18208
18209 * window.c: (Vminibuf_selected_window): New variable.
18210 (struct save_window_data): New member minibuf_selected_window.
18211 (Fset_window_configuration): Restore Vminibuf_selected_window.
18212 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
18213 Set minibuf_scroll_window member to nil if minibuf_level is 0.
18214 (compare_window_configurations): Compare minibuf_selected_window.
18215
18216 * window.h: (Vminibuf_selected_window): Declare extern.
18217
18218 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
18219 entry to minibuffer or on entry from a non-minibuffer window.
18220
18221 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
18222 Vminibuf_selected_window instead of Vminibuf_scroll_window.
18223
18224 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
18225 instead of Vminibuf_scroll_window when deciding in which window
18226 the region should be highlighted. Consequently, the region remains
18227 highlighteded even when a completion buffer is also displayed.
18228
18229 2002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
18230
18231 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
18232
18233 * xselect.c (Qcompound_text_with_extensions): Renamed from
18234 Qcompound_text_no_extensions.
18235 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
18236
18237 2002-02-26 Juanma Barranquero <lektu@terra.es>
18238
18239 * w32proc.c (syms_of_ntproc): Doc fix.
18240
18241 2002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18242
18243 * intervals.h: Include "dispextern.h" unconditionally.
18244
18245 2002-02-24 Jason Rumney <jasonr@gnu.org>
18246
18247 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
18248 and disp-table.elc.
18249 (lisp): Add emacs-lisp/backquote.elc.
18250
18251 2002-02-24 Kim F. Storm <storm@cua.dk>
18252
18253 * keymap.c (Flookup_key): Fix problem in 2001-12-28 patch:
18254 The validation of the event type was too strict as it didn't
18255 allow string events; buffer names are used in bindings for
18256 menu-bar-select-buffer (see `menu-bar-update-buffers').
18257
18258 2002-02-23 Kim F. Storm <storm@cua.dk>
18259
18260 The following changes rework my patch of 2002-02-06 which
18261 added command remapping by entering the commands directly into
18262 the keymaps. Now, command remapping uses an explicit `remap'
18263 prefix in the keymaps, i.e. [remap COMMAND].
18264
18265 * keymap.c (Qremap, remap_command_vector): New variables.
18266 (is_command_symbol): Remove function.
18267 (Fdefine_key): No longer accept a symbol for KEY.
18268 Added validation of [remap COMMAND] argument for KEY.
18269 The DEF is no longer required to be a symbol when remapping a command.
18270 (Fremap_command): New function to remap command through keymaps.
18271 (Flookup_key): Perform command remapping initiated by
18272 Fremap_command directly for speed.
18273 (Fkey_binding): Use Fremap_command for command remapping.
18274 (where_is_internal): Handle new command remapping representation.
18275 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
18276 staticpro them. Defsubr Fremap_command.
18277
18278 * keymap.h (Fremap_command): Declare extern.
18279 (is_command_symbol): Remove extern.
18280
18281 * keyboard.c (command_loop_1): Use Fremap_command for command
18282 remapping; now try command remapping for all symbols.
18283
18284 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
18285
18286 * coding.h (run_pre_post_conversion_on_str): Add prototype.
18287
18288 2002-02-23 Jason Rumney <jasonr@gnu.org>
18289
18290 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
18291 on the string before encoding it.
18292 (Fw32_get_clipboard_data): Run post-read-conversion on the string
18293 after decoding it.
18294
18295 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
18296
18297 2002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18298
18299 * w32term.c (enter_timestamp): Remove unused static variable to
18300 prevent warning.
18301
18302 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
18303
18304 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
18305
18306 * w16select.c (Fw16_get_clipboard_data): Fix last change.
18307
18308 * xselect.c (selection_data_to_lisp_data): Fix last change.
18309
18310 2002-02-22 Jason Rumney <jasonr@gnu.org>
18311
18312 * w32term.h (struct w32_output): New member menu_command_in_progress.
18313
18314 * w32menu.c (menubar_selection_callback): Free the menu and
18315 clear the menu_command_in_progress flag.
18316
18317 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
18318 (menu_free_timer): New variable.
18319 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
18320 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
18321 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
18322 menu command is in progress.
18323 <WM_COMMAND>: Set the menu_command_in_progress flag.
18324 Kill any menu_free_timer that is running.
18325
18326 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
18327 Call ExtTextOutA rather than ExtTextOut.
18328
18329 2002-02-22 Eli Zaretskii <eliz@gnu.org>
18330
18331 * puresize.h (BASE_PURESIZE): Increase to 755000.
18332
18333 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
18334
18335 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
18336 on the string before encoding it.
18337 (Fw16_get_clipboard_data): Run post-read-conversion on the string
18338 after decoding it.
18339
18340 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
18341
18342 Support for ICCCM Extended Segments in X selections:
18343
18344 * xselect.c <Qcompound_text_no_extensions>: New variable.
18345 (syms_of_xselect): Intern and staticpro it.
18346 (selection_data_to_lisp_data): Run post-read-conversion on decoded
18347 selection text.
18348 (lisp_data_to_selection_data): If next-selection-coding-system is
18349 compound-text-no-extensions, set the type of selection to be
18350 compound-text.
18351
18352 * xterm.h (x_encode_text): Update prototype.
18353
18354 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
18355 callers changed. If SELECTIONP is non-zero, run the
18356 pre-write-conversion function before encoding the selection text.
18357
18358 2002-02-21 Kim F. Storm <storm@cua.dk>
18359
18360 * frame.c (syms_of_frame): Change mouse-highlight default to t.
18361
18362 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
18363 Correct composing of language-change event.
18364
18365 2002-02-20 Kim F. Storm <storm@cua.dk>
18366
18367 * keyboard.c (menu_bar_items): Don't include keymap or local-map
18368 bindings at PT when building menu (the menu is not updated often
18369 enough for this to work reliable).
18370 (tool_bar_items): Likewise.
18371 (current_active_maps): Removed unused (and buggy) function.
18372
18373 2002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18374
18375 * xfns.c (gif_load): Use correct width and height for GIF images.
18376
18377 2002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
18378
18379 * floatfns.c (Fatan): Accept an optional second arg and call
18380 atan2 if passed 2 args.
18381
18382 2002-02-18 Jason Rumney <jasonr@gnu.org>
18383
18384 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
18385
18386 2002-02-17 Jason Rumney <jasonr@gnu.org>
18387
18388 * w32term.c (x_autoselect_window_p): New variable.
18389 (syms_of_w32term): DEFVAR_BOOL and initialize it.
18390 (note_mouse_movement): Use it.
18391
18392 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
18393
18394 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
18395
18396 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
18397 New variables.
18398 (syms_of_w32fns): Intern and staticpro them.
18399 (x_frame_parms) <"fullscreen">: New parameter.
18400 (x_fullscreen_move, x_set_fullscreen): New functions.
18401 (x_set_frame_parameters): Support Qfullscreen.
18402 (x_real_positions): Save x/y_pixels_diff frame params.
18403 (x_figure_window_size): Support full-screen frames.
18404 (Fx_create_frame): Default the fullscreen parameter.
18405
18406 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
18407 (x_fullscreen_adjust): New functions.
18408 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
18409 fullscreen. Call x_check_fullscreen_move, and set the
18410 want_fullscreen member of output_data.w32
18411 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
18412
18413 * w32term.h: New enum for FULLSCREEN_* constants.
18414 (struct w32_output): New members want_fullscreen, x_pixels_diff,
18415 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
18416 (x-fullscreen-adjust): New prototype.
18417
18418 2002-02-17 Kim F. Storm <storm@cua.dk>
18419
18420 * frame.c (Vmouse_highlight): New variable.
18421 (syms_of_frame): DEFVAR_LISP it.
18422
18423 * frame.h (Vmouse_highlight): Declare extern.
18424
18425 * xterm.h (struct x_display_info): Add mouse_face_hidden.
18426
18427 * xterm.c (disable_mouse_highlight): Removed variable.
18428 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
18429 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
18430 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
18431 and on after keyboard input.
18432 (x_term_init): Initialize mouse_face_hidden.
18433
18434 * msdos.h (struct display_info): Add mouse_face_hidden.
18435
18436 * msdos.c (disable_mouse_highlight): Removed variable.
18437 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
18438 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
18439 (internal_terminal_init): Initialize mouse_face_hidden.
18440 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
18441 and on after keyboard input.
18442
18443 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
18444
18445 * w32term.c (disable_mouse_highlight): Removed variable.
18446 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
18447 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
18448 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
18449 and on after keyboard input.
18450 (w32_initialize_display_info): Initialize mouse_face_hidden.
18451
18452 2002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
18453
18454 * msdos.c (last_mouse_window): New variable.
18455 (dos_rawgetc): Fix last change--if the mouse is in the same window
18456 as recorded in last_mouse_window, don't select this window.
18457
18458 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
18459
18460 * msdos.c (x_autoselect_window_p): New variable.
18461 (syms_of_msdos): Defvar it.
18462 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
18463 which the last mouse movement occured, unless it is already selected.
18464
18465 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
18466 New variables.
18467 (syms_of_xdisp): DEVFAR them.
18468 (hscroll_window_tree): Use automatic_hscroll_margin and
18469 Vautomatic_hscroll_step to compute the amount of window scrolling.
18470
18471 2002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18472
18473 * xterm.c (x-autoselect-window): New variable.
18474 (note_mouse_movement): Use it.
18475
18476 * keyboard.c: Do not include "systime.h" twice.
18477
18478 2002-02-15 Andreas Schwab <schwab@suse.de>
18479
18480 * puresize.h (PURESIZE_RATIO): Increase to 9/5.
18481
18482 * alloc.c (NSTATICS): Increase to 1280.
18483
18484 2002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
18485
18486 * alloc.c (NSTATICS): Bump to 1026.
18487
18488 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
18489 (Vx_super_keysym): New variables.
18490 (syms_of_xterm): DEFVAR_LISP them.
18491 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
18492 variables to determine which keys to use for the various modifiers.
18493
18494 2002-02-13 Kim F. Storm <storm@cua.dk>
18495
18496 * window.c: (Vmode_line_in_non_selected_windows): Removed.
18497 (mode_line_in_non_selected_windows): New variable.
18498 (syms_of_window): DEFVAR_BOOL it.
18499
18500 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
18501 Use mode_line_in_non_selected_windows.
18502 (mode_line_in_non_selected_windows): Declare extern.
18503 (Vmode_line_in_non_selected_windows): Removed extern.
18504
18505 2002-02-13 Richard M. Stallman <rms@gnu.org>
18506
18507 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
18508 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
18509 (Fclear_this_command_keys): Doc fixes.
18510
18511 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
18512 (update_face_from_frame_parameter): Increment face_change_count
18513 and windows_or_buffers_changed to force redisplay using changed faces.
18514
18515 * xdisp.c (QCpropertize): New variable.
18516 (mode_line_proptrans_alist): New variable.
18517 (display_mode_element): New arg PROPS; all calls changed.
18518 Implement this, for strings.
18519 Handle literal output of strings by sharing the
18520 main-line code for strings, using local var `literal'.
18521 Handle :propertize feature.
18522 (syms_of_xdisp): Initialze and staticpro QCpropertize and
18523 mode_line_proptrans_alist.
18524
18525 2002-02-11 Kim F. Storm <storm@cua.dk>
18526
18527 * window.c: (Vmode_line_in_non_selected_windows): New variable.
18528 (syms_of_window): DEFVAR_LISP it.
18529
18530 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
18531 (CURRENT_MODE_LINE_FACE_ID): Use it.
18532 (Vmode_line_in_non_selected_windows): Declare extern.
18533
18534 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
18535 to get mode line face.
18536
18537 2002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
18538
18539 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
18540 variables; cus-start.el doesn't need them anymore.
18541
18542 2002-02-09 Kim F. Storm <storm@cua.dk>
18543
18544 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
18545 reduction. This fixes a display problem where stray newlines were
18546 inserted in the window (corrected by C-l). Clarified code (IMHO).
18547
18548 2002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
18549
18550 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
18551
18552 * xdisp.c (display_mode_lines): Fix last change.
18553
18554 2002-02-09 Jason Rumney <jasonr@gnu.org>
18555
18556 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
18557 match each other.
18558 (w32_load_system_font): Prevent Cleartype fonts from loading.
18559 (Fx_show_tip): Ensure tip frames are above other topmost windows.
18560
18561 2002-02-09 Kim F. Storm <storm@cua.dk>
18562
18563 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
18564 (CURRENT_MODE_LINE_HEIGHT): Use it.
18565 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
18566
18567 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
18568 (pos_visible_p, handle_face_prop): Likewise.
18569 (display_mode_lines): Likewise, but for the real selected window.
18570 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
18571
18572 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
18573 in non-selected windows.
18574 (realize_basic_faces): Realize it.
18575 (syms_of_term): Intern and staticpro it.
18576
18577 2002-02-08 Kim F. Storm <storm@cua.dk>
18578
18579 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
18580 Changed mail addresses to emacs-devel@gnu.org.
18581
18582 2002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
18583
18584 * fileio.c (Fsubstitute_in_file_name): If the file name includes
18585 ~user, and there's no such user, don't discard everything before ~user.
18586
18587 * floatfns.c (Fround): Doc fix.
18588
18589 2002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18590
18591 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
18592
18593 2002-02-07 Stefan Monnier <monnier@cs.yale.edu>
18594
18595 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
18596
18597 2002-02-07 Kim F. Storm <storm@cua.dk>
18598
18599 * keymap.c (where_is_internal): Only check whether definition is
18600 remapped if it fulfills is_command_symbol.
18601
18602 2002-02-07 Andreas Schwab <schwab@suse.de>
18603
18604 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
18605
18606 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
18607
18608 2002-02-06 Kim F. Storm <storm@cua.dk>
18609
18610 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
18611 defining command remapping. Doc updated.
18612 (Flookup_key): Remap command through keymap if KEY is a symbol.
18613 (is_command_symbol): New function.
18614 (Fkey_binding): Use it. New optional argument NO-REMAP.
18615 Doc updated. Callers changed. Perform command remapping via
18616 recursive call unless that arg is non-nil.
18617 (where_is_internal): New argument no_remap. Callers changed.
18618 Call recursively to find original key bindings for a remapped
18619 comand unless that arg is non-nil.
18620 (Fwhere_is_internal): New optional argument NO-REMAP.
18621 Doc updated. Callers changed. Pass arg to where_is_internal.
18622
18623 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
18624 (is_command_symbol): Add prototype.
18625
18626 * keyboard.c (Vthis_original_command): New variable.
18627 (syms_of_keyboard): DEFVAR_LISP it.
18628 (command_loop_1): Set it, and perform command remapping.
18629
18630 2002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18631
18632 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
18633
18634 2002-02-06 Jason Rumney <jasonr@gnu.org>
18635
18636 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
18637
18638 2002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
18639
18640 * charset.c (get_charset_id): Use if-else instead of ?:.
18641
18642 2002-02-06 Richard M. Stallman <rms@gnu.org>
18643
18644 * filelock.c (S_ISLNK): Define if not defined.
18645
18646 2002-02-03 Richard M. Stallman <rms@gnu.org>
18647
18648 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
18649
18650 * lread.c (read1): Redesign strategy for force_multibyte and
18651 force_singlebyte. Now is_multibyte records whether read_buffer
18652 is multibyte. Encountering any multibyte character makes it so.
18653
18654 2002-02-02 Stefan Monnier <monnier@cs.yale.edu>
18655
18656 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
18657 with the same sequence, map that sequence to f10 rather than f0.
18658
18659 2002-02-03 Andreas Schwab <schwab@suse.de>
18660
18661 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
18662 latter never being defined on GNU/Linux.
18663
18664 2002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
18665
18666 * xfaces.c (realize_default_face): Don't set the weight and slant of
18667 the default face to Qnormal, unless these attributes are unspecified.
18668
18669 2002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18670
18671 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
18672 Call cancel_hourglass unconditionally.
18673
18674 * eval.c (Fsignal): Remove duplicated declaration of
18675 the variable `display_hourglass_p'.
18676
18677 2002-01-31 Richard M. Stallman <rms@gnu.org>
18678
18679 * editfns.c (region_limit): Nicer error message.
18680
18681 * coding.c (decode_composition_emacs_mule):
18682 Give up if NCOMPONENT gets too large to index `component'.
18683
18684 * callint.c (check_mark): New arg to specify clearer error message.
18685 Callers changed.
18686
18687 2002-01-27 Richard M. Stallman <rms@gnu.org>
18688
18689 * minibuf.c (Fcompleting_read): Doc fix.
18690
18691 2002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18692
18693 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
18694 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
18695 Fix doc-strings.
18696
18697 2002-01-26 Richard M. Stallman <rms@gnu.org>
18698
18699 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
18700
18701 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
18702 and scroll_up_aggressively.
18703
18704 2002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18705
18706 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
18707
18708 2002-01-25 Stefan Monnier <monnier@cs.yale.edu>
18709
18710 * textprop.c (Fnext_property_change, Fnext_single_property_change)
18711 (Fprevious_property_change, Fprevious_single_property_change):
18712 Stay within the narrowed-buffer boundaries.
18713
18714 2002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
18715
18716 * term.c (Ftty_display_color_cells): New function.
18717 (syms_of_term): Defsubr it.
18718 (Ftty_display_color_cells, Ftty_display_color_p): Change the
18719 argument name to DISPLAY. Doc fix.
18720
18721 * dispextern.h: Add prototype for set_tty_color_mode and
18722 tty_setup_colors.
18723
18724 2002-01-24 Jason Rumney <jasonr@gnu.org>
18725
18726 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
18727 If region left to draw is not what was expected, mark the frame as
18728 garbaged.
18729
18730 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
18731 Combine the regions returned by BeginPaint and GetUpdateRect.
18732
18733 2002-01-23 Jason Rumney <jasonr@gnu.org>
18734
18735 * w32term.c (x_update_window_begin): Only hide caret if
18736 w32_use_visible_system_caret is set.
18737 (x_update_window_end): Only show caret if
18738 w32_use_visible_system_caret is set.
18739 (syms_of_w32term): Handle SystemParametersInfo call failing.
18740
18741 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
18742
18743 2002-01-22 Richard M. Stallman <rms@gnu.org>
18744
18745 * unexelf.c (unexec): Define n so as to cause compilation error
18746 for the code where people have often written n instead of nn.
18747
18748 * .gdbinit (hookpost-run): Defined.
18749
18750 2002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
18751
18752 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
18753
18754 2002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
18755
18756 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
18757 if fullscreen is being set.
18758
18759 2002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18760
18761 * minibuf.c (Fminibuffer_contents)
18762 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
18763 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
18764
18765 2002-01-21 Richard M. Stallman <rms@gnu.org>
18766
18767 * window.c (check_frame_size): Fix minimum height calculation.
18768
18769 2002-01-20 Ken Raeburn <raeburn@gnu.org>
18770
18771 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
18772 height before comparison.
18773 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
18774
18775 2002-01-20 Jason Rumney <jasonr@gnu.org>
18776
18777 * w32term.c (w32_system_caret_width): Remove.
18778 (w32_use_visible_system_caret): New user flag.
18779 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
18780 Windows reports a screen reader running.
18781 (x_update_window_begin): Hide the system caret.
18782 (x_update_window_end): Show the system caret.
18783 (x_display_and_set_cursor): Don't draw a cursor when
18784 w32_use_visible_system_caret is set. Do not adjust width.
18785
18786 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
18787 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
18788 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
18789 the user requests it. Use system default width when creating.
18790 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
18791
18792 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
18793 New window messages.
18794
18795 2002-01-20 Richard M. Stallman <rms@gnu.org>
18796
18797 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
18798
18799 2002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18800
18801 * doprnt.c (doprnt1): Fix typos in error call.
18802
18803 2002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
18804
18805 * unexelf.c (unexec) [__sgi]: Support the .got sections.
18806
18807 2002-01-20 Jason Rumney <jasonr@gnu.org>
18808
18809 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
18810 that Windows returns. If a double check fails, try to guess how
18811 ExtTextOut is going to act.
18812
18813 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
18814 in place of stricmp.
18815 (w32_list_synthesized_fonts): Removed.
18816 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
18817 (struct enumfont_t): New element; list.
18818 (enum_font_cb2): List all style and charset variations of a font.
18819 (Fw32_select_font): New optional argument; include_proportional.
18820 Exclude vertical fonts. Exclude proportional fonts unless
18821 include_proportional is non-nil.
18822 (w32_enable_synthesized_fonts): Change to a boolean.
18823 (Fw32_send_sys_command): Doc fix.
18824
18825 2002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18826
18827 * dispnew.c (update_frame): Move the variable `tem' to the block
18828 where it is used.
18829
18830 2002-01-19 Jason Rumney <jasonr@gnu.org>
18831
18832 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
18833 call to face-set-after-frame-default.
18834
18835 2002-01-18 Richard M. Stallman <rms@gnu.org>
18836
18837 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
18838 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
18839
18840 2002-01-17 Richard M. Stallman <rms@gnu.org>
18841
18842 * window.c (enlarge_window): When exceeding size of parent,
18843 directly delete all the siblings instead of trying to resize it.
18844
18845 2002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18846
18847 * term.c (set_tty_color_mode): Remove unused variable `tem'.
18848
18849 2002-01-16 Henrik Enberg <henrik@enberg.org>
18850
18851 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
18852
18853 2002-01-16 Kim F. Storm <storm@cua.dk>
18854
18855 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
18856 is invisible. This can happen if cursor is on top line of a
18857 window, and we switch to a buffer with a header line.
18858
18859 * w32term.c (x_erase_phys_cursor): Ditto.
18860
18861 2002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18862
18863 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
18864 `dont_resize' only when used.
18865
18866 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
18867
18868 2002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
18869
18870 * xdisp.c (display_mode_element): When computing charpos, depend
18871 on multibyteness of elt, not the text in field.
18872
18873 2002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18874
18875 * buffer.c (Fkill_all_local_variables):
18876 Increment `update_mode_lines' only once.
18877
18878 2002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18879
18880 * lisp.h (adjust_after_replace_noundo)
18881 (Fupdate_coding_systems_internal): Add prototypes.
18882
18883 * sound.c (Fplay_sound): Initialize header_size also for :data case.
18884
18885 2002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
18886
18887 Support for the --color command-line argument and tty-color-mode
18888 frame parameter:
18889
18890 * term.c (tty_default_color_capabilities, tty_setup_colors)
18891 (set_tty_color_mode): New functions.
18892 (term_init): Call tty_default_color_capabilities.
18893 (Qtty_color_mode_alist): New variable.
18894 (syms_of_term): Intern and staticpro it.
18895
18896 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
18897 frames.
18898 (do_switch_frame): For termcap frames, switch the tty
18899 color mode as specified by the frame's parameters.
18900 (Qtty_color_mode): New variable.
18901 (syms_of_frame): Intern and staticpro it.
18902
18903 * emacs.c (USAGE2): Add the --color option.
18904 (standard_args): Ditto.
18905
18906 2002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
18907
18908 * xterm.h (struct x_output): New members want_fullscreen,
18909 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
18910 y_pixels_outer_diff.
18911 New enum for FULLSCREEN_* constants.
18912 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
18913 is NULL.
18914 (x_fullscreen_adjust): Add prototype.
18915
18916 * emacs.c (USAGE2): Add the new full-screen arguments.
18917 (standard_args): Ditto.
18918
18919 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
18920 New variables.
18921 (syms_of_xfns): Intern and staticpro them.
18922 (x_frame_parms) <"fullscreen">: New parameter.
18923 (x_fullscreen_move, x_set_fullscreen): New functions.
18924 (x_set_frame_parameters): Support for Qfullscreen.
18925 (x_real_positions): More accurate computation of the frame position.
18926 (x_figure_window_size): Support full-screen frames.
18927 (Fx_create_frame): Default the fullscreen parameter.
18928
18929 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
18930 (XTread_socket) <Expose>: Call x_check_fullscreen.
18931 <ConfigureNotify>: Don't resize to fullscreen.
18932 Call x_check_fullscreen_move, and set the want_fullscreen member of
18933 output_data.x.
18934
18935 2002-01-13 Jason Rumney <jasonr@gnu.org>
18936
18937 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
18938 for mice with more than 3 buttons.
18939
18940 * w32term.c (parse_button): New parameter xbutton. Callers changed.
18941 (w32_read_socket): Handle new "XBUTTON" messages.
18942
18943 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
18944 (syms_of_w32fns): DEFVAR_BOOL it.
18945 (w32_wnd_proc): Handle new "XBUTTON" messages.
18946
18947 2002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18948
18949 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
18950
18951 2002-01-13 Andreas Schwab <schwab@suse.de>
18952
18953 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
18954
18955 2002-01-12 Andreas Schwab <schwab@suse.de>
18956
18957 * .gdbinit (xbuffer): Remove address operator since data is now a
18958 pointer.
18959
18960 2002-01-11 Richard M. Stallman <rms@gnu.org>
18961
18962 * insdel.c (adjust_after_replace_noundo): New function.
18963
18964 * coding.c (code_convert_region): Don't copy old text if undo disabled.
18965
18966 2002-01-09 Jason Rumney <jasonr@gnu.org>
18967
18968 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
18969 when checking for multiple frames.
18970
18971 2002-01-08 Richard M. Stallman <rms@gnu.org>
18972
18973 * window.c (delete_window): Rewrite the code for changing the
18974 selected window to handle the case where WINDOW is not a leaf.
18975
18976 2002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
18977
18978 * process.c (send_process): Set src_multibyte to 1 after the call
18979 top setup_coding_system, not before the call.
18980
18981 2002-01-07 Jason Rumney <jasonr@gnu.org>
18982
18983 * xmenu.c (set_frame_menubar, xmenu_show):
18984 (xdialog_show): Initialize wv->help to Qnil.
18985
18986 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
18987 (w32_dialog_show): Initialize wv->help to Qnil.
18988
18989 2002-01-06 Jason Rumney <jasonr@gnu.org>
18990
18991 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
18992
18993 * w32menu.c (w32_menu_display_help): Revert last change.
18994
18995 * xmenu.c (menu_highlight_callback): Revert last change.
18996
18997 2002-01-06 Andreas Schwab <schwab@suse.de>
18998
18999 * insdel.c (make_gap_larger): Make sure buffer size does not
19000 overflow range of int.
19001
19002 2002-01-05 Jason Rumney <jasonr@gnu.org>
19003
19004 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
19005 OVERLAPS_P.
19006
19007 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
19008
19009 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
19010 to the left or to the right of the pointer, put it against
19011 the left screen edge.
19012 (x_frame_parms): Add missing braces around initializer.
19013
19014 * w32term.c (x_setup_relief_colors): Don't compute an image's
19015 background color if it doesn't have a Pixmap.
19016 (notice_overwritten_cursor): Don't depend on
19017 output_cursor and updated_area. Compare pixel coordinates with
19018 window's cursor pixel coordinates.
19019 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
19020 Call notice_overwritten_cursor with new arg list.
19021 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
19022 unconditionally.
19023 (x_draw_image_relief): Use predefined macro instead of
19024 constant when the value of `tool_bar_button_relief' is negative.
19025
19026 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
19027
19028 2002-01-04 Richard M. Stallman <rms@gnu.org>
19029
19030 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
19031
19032 2002-01-03 Richard M. Stallman <rms@gnu.org>
19033
19034 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
19035 (Fkey_binding): Try the `keymap' property map first.
19036 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
19037 minor mode bindings.
19038
19039 2002-01-03 Kim F. Storm <storm@cua.dk>
19040
19041 * keyboard.c (read_key_sequence): Fix cast of submaps arg to bcopy.
19042
19043 2002-01-02 Richard M. Stallman <rms@gnu.org>
19044
19045 * keyboard.c (read_key_sequence): Handle the keymap property
19046 before minor mode maps.
19047
19048 * editfns.c (Fformat): Update thissize from field_width
19049 based on the actual width, in the string case.
19050
19051 2002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19052
19053 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
19054 when used as truth value to prevent gcc warnings.
19055
19056 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
19057 * w32proc.c: Include <config.h>.
19058
19059 2002-01-01 Andreas Schwab <schwab@suse.de>
19060
19061 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
19062 not EMACS_INT, to make them compatible with DEFVAR_INT.
19063 * lisp.h (max_specpdl_size): Adjust declaration.
19064
19065 2002-01-01 Richard M. Stallman <rms@gnu.org>
19066
19067 * print.c (print_object): Test print_escape_nonascii only for
19068 unibyte strings.
19069 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
19070 when outputting to a multibyte buffer.
19071
19072 2001-12-29 Richard M. Stallman <rms@gnu.org>
19073
19074 * print.c (print_object): In multibyte string, use hex escapes.
19075 Use octal only for unibyte strings.
19076 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
19077
19078 * lread.c (read_escape): New arg BYTEREP for reporting whether
19079 escape forces unibyte or multibyte.
19080 (read1): When reading a string, take note of that info.
19081
19082 2001-12-29 Ken Raeburn <raeburn@gnu.org>
19083
19084 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
19085 comparison to test lisp value returned by Fget.
19086
19087 2001-12-29 Richard M. Stallman <rms@gnu.org>
19088
19089 * lisp.h (max_specpdl_size): Add declaration.
19090
19091 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
19092
19093 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
19094 Handle modifier bits. Correct typo in error message.
19095
19096 2001-12-28 Richard M. Stallman <rms@gnu.org>
19097
19098 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
19099 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
19100 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
19101 Update calls to Fdefine_abbrev.
19102 (write_abbrev): Update for changed data format.
19103 Don't list "system" abbrevs.
19104 (Fexpand_abbrev): Update use count with new data format.
19105 (describe_abbrev): Update for changed data format.
19106 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
19107
19108 * config.in (HAVE_MBSINIT): Add #undef.
19109
19110 * strftime.c (mbsinit): Define as no-op if not available.
19111
19112 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
19113 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
19114
19115 * keymap.c (Flookup_key): Error message if key has wrong data type.
19116 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
19117 (exclude_key): New variable.
19118
19119 2001-12-28 Gerd Moellmann <gerd@gnu.org>
19120
19121 * xterm.c (x_setup_relief_colors): Don't compute an image's
19122 background color if it doesn't have a Pixmap.
19123
19124 * xterm.c (notice_overwritten_cursor): Don't depend on
19125 output_cursor and updated_area. Compare pixel coordinates with
19126 window's cursor pixel coordinates.
19127 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
19128 Call notice_overwritten_cursor with new arg list.
19129 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
19130 unconditionally.
19131
19132 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
19133 height of the cursor line to the amount to scroll.
19134
19135 2001-12-27 Richard M. Stallman <rms@gnu.org>
19136
19137 * intervals.c (set_point_both): The position after an invisible,
19138 intangible character is not an acceptable stopping point.
19139
19140 2001-12-27 Ken Raeburn <raeburn@gnu.org>
19141
19142 * window.c (enlarge_window): In new preserve_before code, convert
19143 CURBEG from lisp object to integer before doing arithmetic.
19144
19145 2001-12-27 Richard M. Stallman <rms@gnu.org>
19146
19147 * bytecode.c (Fbyte_code): Undo previous change.
19148
19149 2001-12-26 Kim F. Storm <storm@cua.dk>
19150
19151 * keyboard.c (record_char): Ignore duplicate help-echo events only
19152 separated by mouse-movement. When tracking mouse, only record
19153 first and last mouse-movement event in same window.
19154 Don't record mouse-movement events in keyboard macros.
19155
19156 2001-12-25 Richard M. Stallman <rms@gnu.org>
19157
19158 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
19159 (Fenlarge_window): New arg PRESERVE_BEFORE.
19160
19161 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
19162 instead of Fstring_as_unibyte.
19163
19164 2001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19165
19166 The following changes remove mocklisp support:
19167
19168 * mocklisp.h, mocklisp.c: Files removed.
19169
19170 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
19171 `Qmocklisp' and `Qmocklisp_arguments'.
19172 Remove prototype of syms_of_mocklisp.
19173
19174 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
19175
19176 * callint.c: Do not include mocklisp.h.
19177 (Fcall_interactively): Do not test for mocklisp case.
19178
19179 * eval.c: Remove variables `Qmocklisp_arguments',
19180 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
19181 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
19182 Do not test for mocklisp case.
19183 (Fwhile): Remove unused variable `tem'.
19184 (syms_of_eval): Remove variable `moclisp-arguments'.
19185
19186 * data.c (wrong_type_argument): Remove mocklisp case.
19187
19188 * doc.c (Fdocumentation): Remove mocklisp case.
19189
19190 * emacs.c (main): Do not call syms_of_mocklisp.
19191
19192 2001-12-21 Richard M. Stallman <rms@gnu.org>
19193
19194 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
19195 to the left or to the right of the pointer, put it against
19196 the left screen edge.
19197
19198 2001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
19199
19200 * Makefile.in (distclean): Remove .gdbinit if we are building
19201 outside the source tree.
19202
19203 2001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
19204
19205 * w32.c (emacs_root_dir): New function.
19206
19207 * msdos.c (emacs_root_dir): New function.
19208
19209 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
19210 of the current drive as the fallback for default_directory.
19211
19212 * dired.c (file_name_completion): Run the elements of
19213 completion-ignored-extensions through ENCODE_FILE.
19214
19215 * lisp.h (scmp): Remove prototype, since it's now a static
19216 function private to dired.c.
19217
19218 2001-12-18 Richard M. Stallman <rms@gnu.org>
19219
19220 * dired.c (scmp): Function moved from minibuf.c.
19221 Delete multibyte handling--used only on encoded strings.
19222
19223 * minibuf.c (scmp): Function moved to dired.c.
19224
19225 * fns.c (merge): Add QUIT call.
19226
19227 2001-12-18 Dave Love <fx@gnu.org>
19228
19229 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
19230 language/georgian.el.
19231
19232 2001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
19233
19234 * Makefile.in (lisp, shortlisp): Synchronize with changes to
19235 lisp/Makefile.in:DONTCOMPILE.
19236
19237 2001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19238
19239 * xdisp.c (window_box_height): Do not return negative values.
19240 From Gerd Moellmann <gerd@gnu.org>.
19241
19242 * keyboard.c (head_table): Add missing braces around initializer.
19243
19244 * term.c (keys): Likewise.
19245
19246 * xfns.c (x_frame_parms, visual_classes): Likewise.
19247
19248 2001-12-17 Sam Steingold <sds@gnu.org>
19249
19250 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
19251 patch (COMPOSING_P, not COMPOSING).
19252
19253 2001-12-17 Richard M. Stallman <rms@gnu.org>
19254
19255 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
19256
19257 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
19258 before calling decode_coding.
19259
19260 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
19261
19262 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
19263 instead of only for COMPOSITION_DISABLED.
19264
19265 2001-12-16 Richard M. Stallman <rms@gnu.org>
19266
19267 * alloc.c (pure_alloc): After overflow, allocate just a small block.
19268
19269 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
19270
19271 * buffer.h (struct buffer): New field `display_error_modiff'.
19272 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
19273
19274 * window.c (Frecenter): Clear display_error_modiff field.
19275
19276 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
19277 Call redisplay_window, but not if display_error_modiff field says no.
19278 (redisplay_window_error): New function.
19279 (displayed_buffer): New variable.
19280 (redisplay_internal, redisplay_windows): Call the new functions
19281 instead of redisplay_window directly.
19282
19283 2001-12-15 Richard M. Stallman <rms@gnu.org>
19284
19285 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
19286
19287 2001-12-14 Andrew Innes <andrewi@gnu.org>
19288
19289 * makefile.w32-in (EMACSLOADPATH): Define.
19290 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
19291 (bootstrap-temacs): Remove dependency on bootstrap-clean.
19292
19293 2001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
19294
19295 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
19296 parameter have a numeric value all the time.
19297
19298 * w32fns.c (x_report_frame_params): Likewise.
19299
19300 2001-12-12 Richard M. Stallman <rms@gnu.org>
19301
19302 * fileio.c (Fwrite_region): Doc fix.
19303
19304 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
19305 (redisplay_internal): Call clear_image_cache only for window terminals.
19306
19307 2001-12-12 Gerd Moellmann <gerd@gnu.org>
19308
19309 * xdisp.c (move_it_vertically_backward): Change heuristic
19310 for the case that we didn't move far enough initially.
19311
19312 * window.c (Frecenter): Simplify computation in the case of window
19313 system frames and ARG < 0; use window_box_height.
19314
19315 2001-12-11 Richard M. Stallman <rms@gnu.org>
19316
19317 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
19318 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
19319
19320 2001-12-11 Andrew Innes <andrewi@gnu.org>
19321
19322 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
19323 arg is negative.
19324
19325 2001-12-11 Richard M. Stallman <rms@gnu.org>
19326
19327 * m/hp800.h: Split the __hpux conditional into the parts
19328 that are right for GNU/Linux too and the parts that are not.
19329 Use the former if GNU_LINUX.
19330 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
19331
19332 * s/gnu-linux.h (GNU_LINUX): Defined.
19333
19334 2001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19335
19336 * macros.c, msdos.c, w16select.c: Change doc-string comments to
19337 `new style' [w/`doc:' keyword].
19338
19339 2001-12-10 Jason Rumney <jasonr@gnu.org>
19340
19341 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
19342 before using.
19343
19344 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19345
19346 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
19347 keyword].
19348
19349 2001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
19350
19351 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
19352
19353 * s/hpux10.h (srand48): Don't undefine.
19354
19355 2001-12-09 Jason Rumney <jasonr@gnu.org>
19356
19357 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
19358 Add comment to explain where the struct came from.
19359 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
19360 (add_menu_item): Process pop-up menus first to avoid memory leak.
19361 (add_menu_item, w32_menu_display_help): Use `help' field as
19362 Lisp_Object.
19363 (w32_free_submenu_strings): Only free owner-drawn strings.
19364
19365 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19366
19367 * COPYING: Moved back.
19368
19369 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
19370 Add parentheses around && within ||.
19371
19372 * indent.c (compute_motion): Likewise.
19373
19374 * intervals.c (merge_properties_sticky): Likewise.
19375
19376 * coding.c (setup_coding_system, shrink_encoding_region)
19377 (Fdecode_sjis_char): Likewise.
19378
19379 2001-12-07 Andreas Schwab <schwab@suse.de>
19380
19381 * xdisp.c (display_mode_element): Don't read past end of string if
19382 it ends with '%'.
19383
19384 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
19385 can hold.
19386
19387 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
19388 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
19389 type changed to Lisp_Object.
19390 (syms_of_data): DEFVAR_LISP them.
19391
19392 2001-12-07 Richard M. Stallman <rms@gnu.org>
19393
19394 * callproc.c (init_callproc): Set Vdata_directory based on the source
19395 location whenever Emacs was run uninstalled.
19396
19397 2001-12-06 Paul Eggert <eggert@twinsun.com>
19398
19399 * config.in (HAVE_WORKING_VFORK): New #undefs.
19400 * process.c (create_process):
19401 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
19402 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
19403 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
19404 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
19405 * m/intel386.h (HAVE_VFORK): Likewise.
19406 * m/mips-siemens.h (HAVE_VFORK): Likewise.
19407 * m/mips.h (HAVE_VFORK): Likewise.
19408 * s/freebsd.h (vfork): Remove #define.
19409 * s/lynxos.h (HAVE_VFORK): Remove #undef.
19410 * s/usg5-4-2.h: Fix comment about vfork.
19411
19412 2001-12-06 Richard M. Stallman <rms@gnu.org>
19413
19414 * s/hpux10.h (random): Add undef.
19415 (HAVE_RANDOM): Define it just once.
19416
19417 2001-12-06 Stefan Monnier <monnier@cs.yale.edu>
19418
19419 * eval.c: Undo last change: the standard syntax is not wanted.
19420
19421 2001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
19422
19423 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
19424 scroll bars of the frame before deleting the frame itself. If the
19425 frame has a widget, delete the frame with XtDestroyWidget, and do
19426 not call XDestroyWindow before that.
19427
19428 2001-12-06 Kim F. Storm <storm@cua.dk>
19429
19430 * xfns.c (x_report_frame_params): Return actual fringe widths.
19431
19432 * w32fns.c (x_report_frame_params): Return actual fringe widths.
19433
19434 2001-12-05 Andrew Innes <andrewi@gnu.org>
19435
19436 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
19437 excessively large.
19438
19439 * insdel.c (make_gap_larger): New function.
19440 (make_gap_smaller): New function.
19441 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
19442 Call make_gap_smaller if arg is negative.
19443
19444 2001-12-04 Stefan Monnier <monnier@cs.yale.edu>
19445
19446 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
19447 Pass a dummy argument when calling interrupt_signal.
19448 (parse_menu_item): Mark disabled items before checking for empty def.
19449 (read_char_minibuf_menu_prompt): Make safety more visible.
19450 (read_key_sequence): Add a `first_unbound' variable.
19451 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
19452 unbound prefix as soon as we can detect it.
19453
19454 * doc.c (Fsnarf_documentation): Add prototype.
19455 (get_doc_string): Handle negative arguments.
19456 (Fdocumentation): Use AREF and ASIZE.
19457 Move the calls to get_doc_string to a single place.
19458 Don't confuse an interactive-spec for a docstring reference.
19459 (Fdocumentation_property): Take advantage of the fact that
19460 get_doc_string now ignores the sign of the docstring position.
19461
19462 * eval.c: Use standard syntax for usage in docstrings.
19463
19464 2001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19465
19466 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
19467
19468 2001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19469
19470 * xterm.c (x_draw_image_relief): Use predefined macro instead of
19471 constant when the value of `tool_bar_button_relief' is negative.
19472
19473 2001-12-02 Richard M. Stallman <rms@gnu.org>
19474
19475 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
19476 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
19477
19478 * fileio.c (read_non_regular): Delete Fsignal call.
19479
19480 2001-12-01 Stefan Monnier <monnier@cs.yale.edu>
19481
19482 * lisp.h (run_hook_list_with_args): Undo last change.
19483
19484 2001-12-01 Gerd Moellmann <gerd@gnu.org>
19485
19486 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
19487
19488 2001-12-01 Jason Rumney <jasonr@gnu.org>
19489
19490 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
19491
19492 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
19493 [!WM_MOUSELEAVE]: Define.
19494
19495 * w32menu.c (current_popup_menu, get_menu_item_info):
19496 (set_menu_item_info): New vars.
19497 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
19498 (w32_menu_show): Set current_popup_menu.
19499 (add_menu_item): Allocate new strings for owner-drawn menu items
19500 and help strings.
19501 Use owner-draw for disabled menu items again.
19502 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
19503 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
19504
19505 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
19506 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
19507 <WM_EXITMENULOOP>: Free menu strings.
19508 <WM_MOUSELEAVE>: Stop tracking mouse.
19509 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
19510
19511 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
19512 and mouse face.
19513
19514 2001-12-01 Kim F. Storm <storm@cua.dk>
19515
19516 The following changes add left-fringe and right-fringe
19517 frame parameters to adjust fringe widths, or remove one or
19518 both fringes.
19519
19520 * frame.h (struct frame): Remove trunc_area_pixel_width and
19521 trunc_area_cols fields.
19522 (Qleft_fringe, Qright_fringe): Declare.
19523 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
19524
19525 * frame.c (Qleft_fringe, Qright_fringe): New vars.
19526 (syms_of_frame): Initialize them.
19527
19528 * window.c (coordinates_in_window): Handle separate left and right
19529 fringe widths.
19530
19531 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
19532 and fringe_cols fields.
19533 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
19534 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
19535 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
19536 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
19537 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
19538 (x_compute_fringe_widths): Add prototype.
19539
19540 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
19541 fill fringe evenly with small dashes.
19542 (x_draw_fringe_bitmap): Clear background if necessary. Align and
19543 clip the new ZV bitmap to avoid jitter between rows.
19544 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
19545 background. Don't draw fringe bitmaps if fringe width is zero.
19546 (x_compute_fringe_widths): New function.
19547 (x_new_font, x_set_window_size_1): Use it.
19548
19549 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
19550 (x_set_frame_parameters): Process `font' parameter before other
19551 parameters as fringe widths depend on it.
19552 (x_set_fringe_width): New function.
19553 (x_figure_window_size): Use x_compute_fringe_widths.
19554 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
19555 parameters.
19556
19557 * widget.c (set_frame_size): Use x_compute_fringe_widths.
19558 (EmacsFrameSetCharSize): Ditto.
19559
19560 * w32term.h: Merged changes from xterm.h.
19561 * w32term.c: Merged changes from xterm.c.
19562 * w32fns.c: Merged changes from xfns.c.
19563
19564 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19565
19566 * COPYING: Removed.
19567
19568 2001-11-29 Dave Love <fx@gnu.org>
19569
19570 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
19571 extra extra slot.
19572 (detect_coding_mask): Fix call of detect_coding_iso2022.
19573
19574 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19575
19576 * fileio.c (file-name-coding-system)
19577 (default-file-name-coding-system): Doc fix (links to referenced
19578 variables added).
19579
19580 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
19581
19582 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
19583 Add dummy uses of gcproN variables.
19584
19585 * category.c (describe_category, describe_category_1)
19586 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
19587 (syms_of_category): Don't defsubr Sdescribe_categories.
19588
19589 2001-11-28 Richard M. Stallman <rms@gnu.org>
19590
19591 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
19592
19593 * Makefile.in (lispdir): New variable, referring to build dir.
19594 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
19595
19596 2001-11-28 Andrew Innes <andrewi@gnu.org>
19597
19598 * w32menu.c (w32_menu_display_help): Actually add the new argument
19599 OWNER.
19600
19601 2001-11-28 Jason Rumney <jasonr@gnu.org>
19602
19603 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
19604 menu items. From David Ponce <dponce@wanadoo.fr>.
19605 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
19606 conditionally.
19607 (w32_menu_display_help): New argument OWNER. Rewritten to store a
19608 help event in the owner frame's keyboard buffer.
19609
19610 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
19611 (Fx_show_tip): Don't subtract last width from row width.
19612
19613 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
19614 (w32_read_socket): Use EQ to compare frames.
19615
19616 2001-11-28 Gerd Moellmann <gerd@gnu.org>
19617
19618 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
19619 OVERLAPS_P.
19620
19621 2001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19622
19623 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
19624 `gcpro3' and `gcpro4'.
19625
19626 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
19627
19628 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
19629
19630 * ccl.c: Use AREF and ASIZE.
19631
19632 2001-11-27 Stefan Monnier <monnier@cs.yale.edu>
19633
19634 * lisp.h (run_hook_list_with_args): Remove.
19635 (LIST_END_P): Fix call to wrong_type_argument.
19636 (make_fixnum_or_float): Use EMACS_INT rather than int.
19637
19638 2001-11-26 Stefan Monnier <monnier@cs.yale.edu>
19639
19640 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
19641 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
19642
19643 * eval.c: Use AREF and ASIZE.
19644 (Ffetch_bytecode): Add the file name to the error message.
19645
19646 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
19647 which match the end of the file-name.
19648 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
19649 is not a valid env var, but leave it as is instead.
19650
19651 * keymap.c (access_keymap): Handle t bindings like nil bindings.
19652 Make nil bindings in char-tables transparent.
19653 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
19654
19655 2001-11-26 Richard M. Stallman <rms@gnu.org>
19656
19657 * textprop.c (set_text_properties_1): Allow START, END in either order.
19658 Do nothing if range is empty.
19659
19660 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
19661
19662 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
19663 (clean): Not here.
19664
19665 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
19666
19667 * textprop.c (set_text_properties_1): Clearly mark that the
19668 interval should not be empty.
19669
19670 * intervals.c (graft_intervals_into_buffer):
19671 Don't call set_text_properties_1 on an empty interval.
19672
19673 2001-11-25 Richard M. Stallman <rms@gnu.org>
19674
19675 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
19676
19677 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
19678 don't lose the data in it.
19679
19680 2001-11-25 Juanma Barranquero <lektu@terra.es>
19681
19682 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
19683
19684 * buffer.c (Fkill_buffer): Likewise.
19685
19686 * print.c (temp_output_buffer_setup): Likewise.
19687
19688 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
19689
19690 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
19691
19692 2001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
19693
19694 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
19695 Niemitalo <kon@iki.fi>.
19696
19697 2001-11-25 Jason Rumney <jasonr@gnu.org>
19698
19699 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
19700
19701 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
19702 (Fx_show_tip): Block input during frame creation.
19703 (Fx_show_tip, Fx_hide_tip): Enable.
19704
19705 2001-11-24 Richard M. Stallman <rms@gnu.org>
19706
19707 * lread.c (Fload): Detect recursive load error for more than 3
19708 nestings of the same file.
19709 (Vrecursive_load_depth_limit): Variable deleted.
19710 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
19711
19712 2001-11-24 Jason Rumney <jasonr@gnu.org>
19713
19714 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
19715 mouse position if either left or top is not specified.
19716
19717 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
19718 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
19719 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
19720 (my_create_tip_window): Assign tip_window.
19721 (x_create_tip_frame): Use same defaults as X.
19722 (compute_tip_xy): Remove unused variable. Use full screen width.
19723 (Fx_show_tip): Do not double height. Call ShowWindow directly.
19724
19725 * w32term.c (x_after_update_window_line): Doc fix.
19726 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
19727 frames.
19728 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
19729
19730 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
19731 for all Windowed systems.
19732
19733 2001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
19734
19735 * msdos.c (IT_clear_screen): If the frame's faces are not yet
19736 realized, use the initial screen colors to clear the screen.
19737
19738 2001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19739
19740 * textprop.c (Fset_text_properties): Remove unused variables
19741 `unchanged', `prev_changed', `s' and `len'.
19742
19743 * search.c (Freplace_match): Remove unused variable `inslen'.
19744
19745 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
19746
19747 2001-11-22 Jason Rumney <jasonr@gnu.org>
19748
19749 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
19750 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
19751 (my_create_tip_window): New function.
19752 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
19753 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
19754
19755 2001-11-20 Jason Rumney <jasonr@gnu.org>
19756
19757 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
19758 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
19759
19760 * w32fns.c (Vw32_system_coding_system): Remove.
19761 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
19762
19763 2001-11-19 Stefan Monnier <monnier@cs.yale.edu>
19764
19765 * fileio.c (Fwrite_region): Move choose_write_coding_system to
19766 after build_annotations.
19767
19768 * syntax.c (describe_syntax): Add dummy arg.
19769 (describe_syntax_1): Update call to describe_vector.
19770
19771 * category.c (describe_category): Add dummy arg.
19772 (describe_category_1): Update call to describe_vector.
19773
19774 * keymap.c (Fdescribe_vector): Add `describer' parameter.
19775 (describe_command, describe_translation): Add dummy second param.
19776 (describe_map): Call elt_describer with two arguments.
19777 (describe_vector_princ): Add `fun' parameter.
19778 Call it instead of the hardcoded `princ'.
19779 (describe_vector): Add arg `args'.
19780 Pass it as a new second argument to elt_describer.
19781
19782 * keymap.h (describe_vector): Update prototype.
19783
19784 * frame.c: Don't include keymap.h any more.
19785 (keys_of_frame): Remove.
19786
19787 * lisp.h (keys_of_frame): Remove declaration.
19788
19789 * emacs.c (main): Don't call `keys_of_frame' any more.
19790
19791 2001-11-14 Andreas Schwab <schwab@suse.de>
19792
19793 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
19794 if defined, 0 otherwise.
19795 (MAP_FAILED): Define if not defined and use it to test mmap failure.
19796 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
19797
19798 2001-11-19 Richard M. Stallman <rms@gnu.org>
19799
19800 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
19801
19802 2001-11-18 Jason Rumney <jasonr@gnu.org>
19803
19804 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
19805 (x_draw_bar_cursor): If the background color of the glyph under
19806 the cursor equals the frame's cursor color, use the glyph's
19807 foreground color for drawing the bar cursor.
19808 (x_after_update_window_line): Clear internal border in different
19809 circumstances.
19810 (w32_set_vertical_scroll_bar): Check for width and height > 0.
19811 (w32_draw_relief_rect): Correct relief by 1 pixel.
19812 (x_set_glyph_string_background_width):
19813 Set extends_to_end_of_line_p if the row's fill_line_p is set and
19814 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
19815 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
19816 if cursor_in_non_selected_windows is false.
19817 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
19818 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
19819 Notice if cursor gets overwritten.
19820 (notice_overwritten_cursor): Renamed from
19821 note_overwritten_text_cursor. Rewritten to take glyph widths
19822 into account, and to take X positions as parameters.
19823 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
19824 around call to x_draw_glyphs.
19825 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
19826 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
19827 color to use for image glyph reliefs.
19828 (x_draw_image_relief): Accept zero tool_bar_button_relief.
19829 (glyph_rect): Remove unused variable `area'.
19830
19831 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
19832 some items.
19833 (x_set_internal_border_width): Set frame garbaged when window
19834 doesn't exist yet.
19835 (Fx_create_frame): Accept zero tool_bar_button_relief.
19836 (x_clear_image_1, four_corners_best, image_background)
19837 (image_background_transparent): New functions.
19838 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
19839 (gs_format): Add `:background' entry.
19840 (lookup_image): Set IMG's background color if specified.
19841 (pbm_load, xbm_load_image, png_load): Set IMG's background field
19842 when appropriate.
19843 (x_clear_image_1): Reset `background_valid' and
19844 `background_transparent_valid' fields.
19845 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
19846 calculating it here. Set IMG's background_transparent field.
19847 (enum xpm_keyword_index): Add XPM_BACKGROUND.
19848 (enum png_keyword_index): Add PNG_BACKGROUND.
19849 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
19850 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
19851 (enum gif_keyword_index): Add GIF_BACKGROUND.
19852 (enum gs_keyword_index): Add GS_BACKGROUND.
19853 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
19854 Pre-calculate image background color where necessary.
19855 (x_create_x_image_and_pixmap, xbm_load, gs_load):
19856 Use display info's n_cbits entry for screen depth.
19857 (Fx_show_tip): Remove unused variables `buffer', `top',
19858 `left', `max_width' and `max_height'.
19859
19860 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
19861
19862 2001-11-18 Gerd Moellmann <gerd@gnu.org>
19863
19864 * puresize.h (BASE_PURESIZE): Increase to 750000.
19865
19866 2001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19867
19868 * frame.c (Fframe_live_p): Doc fix.
19869
19870 2001-11-18 Richard M. Stallman <rms@gnu.org>
19871
19872 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
19873 (message_dolog_marker3): New static variables hold three markers.
19874 (syms_of_xdisp): Initialize and staticpro them.
19875 (message_dolog): Use message_dolog_marker1..3 instead of
19876 allocating markers each time. Unchain them when done.
19877
19878 2001-11-17 Richard M. Stallman <rms@gnu.org>
19879
19880 * doc.c (Fsnarf_documentation): Doc fix.
19881
19882 2001-11-17 Andreas Schwab <schwab@suse.de>
19883
19884 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
19885
19886 2001-11-17 Richard M. Stallman <rms@gnu.org>
19887
19888 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
19889
19890 2001-11-17 Jason Rumney <jasonr@gnu.org>
19891
19892 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
19893
19894 2001-11-17 Gerd Moellmann <gerd@gnu.org>
19895
19896 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
19897 with invalid position.
19898
19899 2001-11-16 Richard M. Stallman <rms@gnu.org>
19900
19901 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
19902
19903 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
19904 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
19905 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
19906
19907 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
19908
19909 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
19910
19911 * fileio.c (build_annotations): Split off the tail.
19912 (build_annotations_2): New fun. Extracted from build_annotations.
19913 (Fwrite_region): Split the call to build_annotations into two
19914 calls to build_annotations and build_annotations_2.
19915
19916 2001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19917
19918 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
19919 clear_waiting_for_input with argument.
19920
19921 * xterm.h (x_update_cursor): Remove duplicated prototype.
19922
19923 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
19924
19925 * xterm.c (waiting_for_input): Remove unnecessary declaration.
19926
19927 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
19928
19929 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
19930
19931 * fileio.c (choose_write_coding_system): New fun, extracted
19932 from Fwrite_region.
19933 (Fwrite_region): Use it.
19934
19935 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
19936 (funcall_lambda, run_hook_with_args): Make static and add prototype.
19937 (ml_apply, find_handler_clause): Add prototype.
19938
19939 2001-11-16 Eli Zaretskii <eliz@gnu.org>
19940
19941 * config.in: Add #undef HAVE_COFF_H.
19942
19943 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
19944 Required for ISC 4.1.
19945
19946 2001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
19947
19948 * syswait.h (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
19949 Andrew Wiseman <a.wiseman@btclick.com>.
19950
19951 2001-11-16 Kim F. Storm <storm@cua.dk>
19952
19953 The following changes are made to clean up the various internal
19954 references to the fringes to actually use the term `fringe' for
19955 them. Previously, they were called `flags areas', `bitmap areas',
19956 `left/right side of windows', or implicitly as `flags' or
19957 `bitmaps':
19958
19959 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
19960 Comments fixed. Use renamed symbols.
19961
19962 * dispnew.c: Comment fix. Use renamed symbols.
19963
19964 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
19965 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
19966 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
19967
19968 * msdos.c: Comment fix.
19969
19970 * w32fns.c: Use renamed symbols.
19971
19972 * w32term.c: Comment fixes. Use renamed symbols.
19973 (fringe_bitmap_type): Renamed from bitmap_type.
19974 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
19975 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
19976 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
19977
19978 * w32term.h: Comment fixes. Use renamed symbols.
19979 (fringes_extra): Renamed from flags_areas_extra.
19980 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
19981 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
19982 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
19983 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
19984 (FRAME_X_LEFT_FRINGE_WIDTH):
19985 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
19986 (FRAME_X_RIGHT_FRINGE_WIDTH):
19987 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
19988
19989 * widget.c: Use renamed symbols.
19990
19991 * window.c: Comment fixes. Use renamed symbols.
19992 (coordinates-in-window-p): Doc fix.
19993
19994 * xdisp.c: Comment fixes. Use renamed symbols.
19995
19996 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
19997
19998 * xfns.c: Use renamed symbols.
19999
20000 * xterm.c: Comment fixes. Use renamed symbols.
20001 (fringe_bitmap_type): Renamed from bitmap_type.
20002 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
20003 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
20004 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
20005
20006 * xterm.h: Comment fixes. Use renamed symbols.
20007 (fringes_extra): Renamed from flags_areas_extra.
20008 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
20009 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
20010 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
20011 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
20012 (FRAME_X_LEFT_FRINGE_WIDTH):
20013 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
20014 (FRAME_X_RIGHT_FRINGE_WIDTH):
20015 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
20016
20017 2001-11-15 Jason Rumney <jasonr@gnu.org>
20018
20019 * w32menu.c (add-menu-item): Make help_echo and radio buttons
20020 work for most menu items. From David Ponce
20021 <david.ponce@wanadoo.fr>.
20022
20023 2001-11-15 Gerd Moellmann <gerd@gnu.org>
20024
20025 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
20026 Some x_set_* function expect to be called even if old and new
20027 value are equal.
20028
20029 * xdisp.c (build_desired_tool_bar_string): Accept zero
20030 tool_bar_button_relief.
20031
20032 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
20033
20034 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
20035
20036 * xterm.c (x_draw_bar_cursor): If the background color of the
20037 glyph under the cursor equals the frame's cursor color, use
20038 the glyph's foreground color for drawing the bar cursor.
20039
20040 * dispnew.c (direct_output_forward_char): Fix character/byte
20041 position comparison.
20042
20043 2001-11-15 Miles Bader <miles@gnu.org>
20044
20045 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
20046 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
20047 Update arguments to find_field.
20048 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
20049 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
20050 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
20051 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
20052
20053 2001-11-14 Richard M. Stallman <rms@gnu.org>
20054
20055 * editfns.c (Fpropertize): Allow call with 1 arg.
20056
20057 * dispextern.h (image_background, image_background_transparent):
20058 Conditionalize on HAVE_X_WINDOWS.
20059
20060 2001-11-13 Richard M. Stallman <rms@gnu.org>
20061
20062 * print.c (Fprin1_to_string): Doc fix.
20063
20064 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
20065
20066 * floatfns.c (Fceiling, Ffloor): Doc fixes.
20067
20068 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
20069
20070 * fileio.c (Ffile_accessible_directory_p): Doc fix.
20071
20072 * eval.c (syms_of_eval): Doc fix.
20073
20074 * coding.c (syms_of_coding): Doc fix.
20075
20076 * doc.c (Fsnarf_documentation): Doc fix.
20077
20078 * dispnew.c (syms_of_display): Doc fix.
20079
20080 * category.c (Fget_unused_category): Doc fix.
20081
20082 * buffer.c (syms_of_buffer): Doc fixes.
20083
20084 2001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
20085
20086 * print.c (prin1, print): Doc fix.
20087
20088 2001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20089
20090 * fontset.h: Remove declarations of variables
20091 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
20092
20093 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
20094 `Vclip_large_size_font'.
20095
20096 2001-11-13 Jason Rumney <jasonr@gnu.org>
20097
20098 * w32fns.c: Doc fix.
20099
20100 2001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20101
20102 * xfaces.c (Fface_attributes_as_vector): Doc fix.
20103
20104 * fns.c: Doc fix.
20105
20106 * emacs.c: Doc fix.
20107
20108 * coding.c: Doc fix.
20109
20110 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
20111 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
20112 `new style' [w/`doc:' keyword].
20113
20114 2001-11-12 Richard M. Stallman <rms@gnu.org>
20115
20116 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
20117 LeaveNotify events. Only FocusIn and FocusOut do that now.
20118 (x_display_and_set_cursor): Do display hollow cursors in active
20119 minibuffer windows when they are not selected.
20120
20121 2001-11-12 Jason Rumney <jasonr@gnu.org>
20122
20123 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
20124 * w32term.c: Change doc-string comments to `new style'
20125 [w/`doc:' keyword]. Doc fixes.
20126
20127 * w32fns.c: Don't define max.
20128 (Fx_open_connection): Only execute once.
20129
20130 2001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20131
20132 * ccl.c: Change macros to use do-while block instead of if-else.
20133 Use braces to follow GNU Coding Standards.
20134
20135 2001-11-11 Richard M. Stallman <rms@gnu.org>
20136
20137 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
20138
20139 * lread.c (read_escape): Use end_of_file_error for reporting eof.
20140
20141 * insdel.c (replace_range): Use adjust_markers_for_replace
20142 instead of adjust_markers_for_delete and adjust_markers_for_insert.
20143
20144 * intervals.h (set_text_properties, set_text_properties_1): Declare.
20145
20146 * textprop.c (set_text_properties_1): New subroutine
20147 broken out of set_text_properties.
20148 (set_text_properties): Use set_text_properties_1.
20149
20150 * intervals.c (graft_intervals_into_buffer):
20151 Use set_text_properties_1 to clear out properties.
20152
20153 * search.c (Freplace_match): Use replace_range to insert
20154 and delete. Don't request property inheritance from
20155 surrounding text.
20156
20157 2001-11-10 Jason Rumney <jasonr@gnu.org>
20158
20159 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
20160 vertical fonts. Allow them if face name is explicitly specified.
20161 Do not give up if we find a font that cannot be converted to an xlfd.
20162
20163 2001-11-10 Gerd Moellmann <gerd@gnu.org>
20164
20165 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
20166 instead of malloc/free.
20167
20168 2001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20169
20170 * xfaces.c (merge_face_vectors): Use braces to follow GNU
20171 Coding Standards.
20172 (Finternal_set_lisp_face_attribute): Likewise.
20173
20174 * buffer.c (Fbury_buffer): Likewise.
20175
20176 * indent.c (current_column_1): Remove unused variable `prev_col'.
20177
20178 * coding.c (encode_coding): Use precomputed value of `src'.
20179 (encode_coding): Remove unused variable `src_end'.
20180 (code_convert_region): Remove unused variables `count'.
20181
20182 2001-11-07 Jason Rumney <jasonr@gnu.org>
20183
20184 * w32term.c (x_display_and_set_cursor): Do not move system caret
20185 if cursor_glyph is NULL.
20186
20187 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20188
20189 * keymap.c (access_keymap): Fix compilation error.
20190
20191 2001-11-07 Miles Bader <miles@gnu.org>
20192
20193 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
20194
20195 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20196
20197 * intervals.c (graft_intervals_into_buffer):
20198 Remove #ifdef'd-out code.
20199 (graft_intervals_into_buffer): Remove unused variable `middle'.
20200
20201 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
20202 code (eval-current-buffer).
20203 Change doc-string comments to `new style' [w/`doc:' keyword].
20204
20205 2001-11-06 Richard M. Stallman <rms@gnu.org>
20206
20207 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
20208
20209 2001-11-06 Stefan Monnier <monnier@cs.yale.edu>
20210
20211 * lread.c (read1): Fix behavior with nested backquoting.
20212
20213 * keyboard.c (make_lispy_event): Check integerness and fix
20214 Lisp_Object/int mixup.
20215
20216 2001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20217
20218 * fns.c (copy_hash_table): Remove unused variable `v'.
20219
20220 * fontset.c (fontset_font_pattern): Remove unused variable
20221 `family_registry'.
20222
20223 * indent.c (current_column_1): Remove unused variable `prev_col'.
20224
20225 2001-11-05 Richard M. Stallman <rms@gnu.org>
20226
20227 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
20228
20229 * buffer.c (Fkill_buffer): Don't delete auto save file
20230 if buffer is modified.
20231
20232 2001-11-05 Andrew Innes <andrewi@gnu.org>
20233
20234 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
20235 CHECK_NUMBER_CDR.
20236
20237 2001-11-05 Richard M. Stallman <rms@gnu.org>
20238
20239 * unexelf.c (unexec): Minor changes; clean up comments.
20240
20241 2001-11-05 Sam Steingold <sds@gnu.org>
20242
20243 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
20244
20245 2001-11-05 Andreas Schwab <schwab@suse.de>
20246
20247 * sound.c (sound_perror): Save errno from being clobbered.
20248
20249 2001-11-05 Dale Hagglund <rdh@yottayotta.com>
20250
20251 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
20252 the program image directly.
20253
20254 2001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20255
20256 * buffer.h (Fbuffer_local_value): Add prototype.
20257
20258 2001-11-04 Richard M. Stallman <rms@gnu.org>
20259
20260 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
20261 and CHECK_BUFFER.
20262
20263 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
20264 (record_char): Likewise.
20265
20266 * keyboard.c (make_lispy_event): Don't insist a drag event must
20267 move to a different buffer position. Instead, check for moving at
20268 least double_click_fuzz.
20269
20270 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
20271
20272 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
20273
20274 * indent.c (current_column_1, Fmove_to_column): Separate the code
20275 for display-table glyphs from the code for buffer text, to fix
20276 bugs in the former.
20277
20278 2001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
20279
20280 * buffer.c (Fbuffer_local_value): New function.
20281 (syms_of_buffer): Defsubr it.
20282
20283 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
20284 value of `cursor-in-non-selected-windows'.
20285
20286 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
20287 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
20288 (syms_of_xdisp): Initialize it.
20289
20290 2001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20291
20292 * xfns.c (Fx_create_frame): Doc fix.
20293
20294 * coding.c: Change doc-string comments to `new style' [w/`doc:'
20295 keyword].
20296
20297 * eval.c (top_level_value, top_level_set): Remove commented and
20298 #ifdef'd-out code.
20299 (Fdefvar): Fix usage in doc-string.
20300
20301 2001-11-03 Richard M. Stallman <rms@gnu.org>
20302
20303 * xfns.c: Include unistd.h, if it exists.
20304
20305 * editfns.c: Move the include of ctype.h after unistd.h.
20306
20307 * gmalloc.c: Test BROKEN_PROTOTYPES.
20308
20309 2001-11-03 Ken Raeburn <raeburn@gnu.org>
20310
20311 * lisp.h (CHECK_STRING_CAR): New macro.
20312 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
20313 treating XCAR and XCDR as lvalues.
20314 (openp): Use CHECK_STRING_CAR.
20315 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
20316
20317 2001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
20318
20319 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
20320 (SIGMASKTYPE): Define.
20321
20322 * syssignal.h (sigunblock): Don't define if already defined.
20323
20324 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20325
20326 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
20327 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
20328 Fix typos in comments.
20329
20330 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
20331 and #ifdef'd-out code.
20332 Fix and reindent comments.
20333
20334 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
20335
20336 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
20337 argument `i' in macros.
20338
20339 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
20340 `i' in macros.
20341
20342 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
20343 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
20344 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
20345 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
20346 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
20347 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
20348 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
20349 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
20350 in macros.
20351
20352 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
20353 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
20354 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
20355 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
20356 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
20357 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
20358 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
20359 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
20360 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
20361 (remove unused second argument).
20362
20363 2001-11-02 Stefan Monnier <monnier@cs.yale.edu>
20364
20365 * syntax.c (describe_syntax): New wrapper.
20366 (Finternal_describe_syntax_value): Rename from describe_syntax.
20367 Don't insert space at front and \n at the end.
20368 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
20369
20370 * regex.c (re_wctype): Try to fix some warnings.
20371 (regcomp, regexec): Don't forget the __restrict.
20372
20373 2001-11-02 Richard M. Stallman <rms@gnu.org>
20374
20375 * textprop.c (Fget_char_property): Doc fix.
20376
20377 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20378
20379 * process.c (Fstart_process): Add usage to doc-string.
20380
20381 * data.c (Fsetq_default): Ditto.
20382
20383 * callint.c (Finteractive): Ditto.
20384
20385 2001-11-01 Stefan Monnier <monnier@cs.yale.edu>
20386
20387 * macros.c: Don't include keymap.h any more.
20388
20389 2001-11-01 Richard M. Stallman <rms@gnu.org>
20390
20391 * data.c (Fmake_local_variable): Doc fix.
20392
20393 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
20394 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
20395
20396 * keymap.c (Fdescribe_buffer_bindings): Print character property
20397 bindings along with or instead of the buffer local map.
20398 Make the overriding maps override what they should.
20399
20400 2001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20401
20402 * window.c (grow_mini_window): Fix typo in comment.
20403
20404 2001-11-01 Gerd Moellmann <gerd@gnu.org>
20405
20406 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
20407 (XTset_vertical_scroll_bar): Likewise.
20408
20409 * xfns.c (x_build_heuristic_mask): Use four_corners_best
20410 instead of IMAGE_BACKGROUND.
20411
20412 * xfns.c (four_corners_best): Reindent.
20413
20414 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
20415 Handle :box so that it is possible to specify sexprs.
20416
20417 2001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
20418
20419 * s/hpux11.h: New file.
20420
20421 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20422
20423 * emacs.c (USAGE1): Show command line option --no-window-system
20424 instead of --no-windows in usage.
20425 (standard_args): Rename --no-windows to --no-window-system.
20426 (bug_reporting_address): Follow Emacs coding conventions.
20427
20428 * eval.c (Fcommandp): Doc fix.
20429 Change doc-string comments to `new style' [w/`doc:' keyword].
20430
20431 * frame.c (Fframe_live_p): Doc fix.
20432
20433 * buffer.c (selective-display-ellipses): Doc fix.
20434
20435 2001-10-31 Gerd Moellmann <gerd@gnu.org>
20436
20437 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
20438
20439 * xfaces.c (realize_x_face): If C is not a single-byte character,
20440 set the face's colors_copied_bitwise_p instead of the defaulted_p
20441 members which have a different meaning.
20442 (free_face_colors): Do nothing for a face whose colors have been
20443 copied bitwise.
20444
20445 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
20446
20447 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20448
20449 * marker.c, mocklisp.c: Change doc-string comments to `new style'
20450 [w/`doc:' keyword].
20451
20452 2001-10-31 Gerd Moellmann <gerd@gnu.org>
20453
20454 * fns.c (require_unwind): Return Lisp_Object.
20455
20456 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20457
20458 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
20459 (last-input-char): Revert doc-string to be the same as the
20460 doc-string of `last-input-event'.
20461
20462 * xdisp.c: Fix typos in comments.
20463
20464 2001-10-31 Gerd Moellmann <gerd@gnu.org>
20465
20466 * window.c (grow_mini_window): Handle case that the root
20467 window is already smaller than the nominal mininum height.
20468
20469 2001-10-30 Stefan Monnier <monnier@cs.yale.edu>
20470
20471 * emacs.c (main): Don't call keys_of_macros any more.
20472
20473 * lisp.h (keys_of_macros): Remove.
20474
20475 * macros.c (keys_of_macros): Remove.
20476
20477 * xfaces.c (Fface_attribute_relative_p): Declare args.
20478
20479 2001-10-30 Jason Rumney <jasonr@gnu.org>
20480
20481 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
20482 (enum_font_cb2): Ignore fonts with vertical orientation.
20483
20484 2001-10-30 Richard M. Stallman <rms@gnu.org>
20485
20486 * keyboard.c (Finput_pending_p): Doc fix.
20487
20488 2001-10-30 Gerd Moellmann <gerd@gnu.org>
20489
20490 * xterm.c (x_after_update_window_line): Don't run the code
20491 clearing in borders for rows whose visible height is 0.
20492
20493 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
20494 resized_p flag is set. If not set, use the much less flickering
20495 method previously used.
20496
20497 * dispnew.c (change_frame_size_1): Set frame's resized_p.
20498
20499 * frame.h (struct frame) <resized_p>: New member.
20500
20501 * lread.c (to_multibyte): Ensure read_buffer is at least twice
20502 as large as the number of bytes to convert.
20503
20504 * lread.c (to_multibyte): New function.
20505 (read1): Use it.
20506
20507 2001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
20508
20509 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
20510
20511 2001-10-30 Gerd Moellmann <gerd@gnu.org>
20512
20513 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
20514 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
20515 if the row's fill_line_p is set and drawing the last glyph with
20516 DRAW_IMAGE_{RAISED,SUNKEN}.
20517
20518 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
20519
20520 2001-10-29 Stefan Monnier <monnier@cs.yale.edu>
20521
20522 * xmenu.c: Include coding.h and charset.h.
20523 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
20524 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
20525 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
20526 Explicitly set wv->help. Use `TRUE' rather than `True'.
20527 (menu_help_callback): Use empty_string.
20528
20529 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
20530 (Fx_popup_dialog): Explicitly init f.
20531 (w32_menu_display_help): Use empty_string.
20532
20533 2001-10-29 Richard M. Stallman <rms@gnu.org>
20534
20535 * fns.c (Frequire): Detect recursive try to require the same
20536 feature 3 or more levels deep, and get error.
20537 (require_unwind): New subroutine.
20538 (require_nesting_list): New variable.
20539 (syms_of_fns): Init and staticpro it.
20540
20541 * print.c (print_object): Clarify indication of insertion type.
20542
20543 2001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
20544
20545 * coding.c (syms_of_coding): Document that locale-coding-system is
20546 used for decoding input on X.
20547
20548 * window.c (Fscroll_left, Fscroll_right): Doc fix.
20549
20550 2001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20551
20552 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
20553 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
20554
20555 2001-10-29 Gerd Moellmann <gerd@gnu.org>
20556
20557 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
20558 use NO_CURSOR if cursor_in_non_selected_windows is false.
20559
20560 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
20561 the slant attribute if FRAME is t.
20562
20563 * xfns.c (x_set_internal_border_width): Set frame garbaged
20564 when X window doesn't exist yet.
20565
20566 * xterm.c (x_after_update_window_line): Clear internal border
20567 in different circumstances.
20568
20569 * xterm.c (XTread_socket) <KeyPress>: Don't use
20570 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
20571 <handa@etl.go.jp>.
20572
20573 2001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
20574
20575 * m/ibms390.h: New file. From Adam Thornton
20576 <athornton@sinenomine.net>.
20577
20578 2001-10-28 Gerd Moellmann <gerd@gnu.org>
20579
20580 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
20581
20582 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
20583 a loop counter.
20584
20585 2001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20586
20587 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
20588
20589 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
20590 keyword].
20591 Fix typos in comments.
20592
20593 * emacs.c (bug_reporting_address): New function.
20594 Use it when displaying usage message.
20595
20596 * minibuf.c (read_minibuf): Remove unused external declaration of
20597 variable `Qread_only'.
20598
20599 * keymap.c (access_keymap): Remove unused variable `charset'.
20600
20601 2001-10-28 Miles Bader <miles@gnu.org>
20602
20603 * xfaces.c (merge_face_heights): Handle TO being relative as well.
20604 Remove #ifdef'd-out code.
20605 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
20606 (syms_of_xfaces): Initialize them.
20607
20608 2001-10-27 Jason Rumney <jasonr@gnu.org>
20609
20610 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
20611 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
20612 position using the system caret.
20613
20614 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
20615 (w32_system_caret_height, w32_system_caret_x)
20616 (w32_system_caret_y): New variables for tracking system caret.
20617 (w32_initialize): Initialize them.
20618 (x_display_and_set_cursor): Make system caret follow the active cursor.
20619
20620 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
20621 New messages types.
20622
20623 * w32term.c (note_mouse_highlight): Clear old help_echo.
20624
20625 2001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20626
20627 * xterm.c: Fix typo in a comment.
20628
20629 * emacs.c: Fix typos in comments.
20630 Remove unnecessary spaces.
20631 Change doc-string comments to `new style' [w/`doc:' keyword].
20632 (USAGE2): Fix typos in usage string.
20633
20634 * xterm.c: Fix typo in a comment.
20635
20636 * lisp.h (gdb_lisp_params): Remove code in #if 0 which is now in
20637 emacs.c.
20638
20639 2001-10-27 Gerd Moellmann <gerd@gnu.org>
20640
20641 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
20642 instead of 1/2 line_height in the heuristic for skipping
20643 farther backward when target_y was not reached.
20644
20645 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
20646 Display errno only if non-zero.
20647 (sound_warning): New function.
20648 (vox_configure): Don't treat failing to set sample rate as error.
20649 (various places): Improve error messages.
20650
20651 2001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
20652
20653 * fileio.c (Faccess_file): Run the argument filename through
20654 Fexpand_file_name, before using it.
20655
20656 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
20657 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
20658
20659 2001-10-26 Gerd Moellmann <gerd@gnu.org>
20660
20661 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
20662
20663 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
20664 Fix clearing in the case of scroll bars on the right.
20665
20666 2001-10-26 Juanma Barranquero <lektu@terra.es>
20667
20668 * w32gui.h (XImage): Add a dummy typedef.
20669
20670 2001-10-26 Gerd Moellmann <gerd@gnu.org>
20671
20672 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
20673
20674 2001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
20675
20676 * frame.c (Fframe_parameter): Fix last change.
20677
20678 * fileio.c: Revert last change (which removed old commented-out
20679 version of expand-file-name). Add a comment that explains why
20680 this old version should not be removed.
20681
20682 2001-10-25 Gerd Moellmann <gerd@gnu.org>
20683
20684 * frame.c (Fframe_parameter): Fix a bug whereby some
20685 ``artificial'' frame parameters, like `minibuffer' were not
20686 obtained by calling Fframe_parameters.
20687
20688 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
20689 cursor differently.
20690
20691 * xdisp.c (move_it_vertically_backward): Compute line height
20692 differently. Add heuristic to try to be more compatible to 20.x.
20693
20694 2001-10-25 Stefan Monnier <monnier@cs.yale.edu>
20695
20696 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
20697
20698 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
20699 boolean.
20700
20701 2001-10-25 Miles Bader <miles@gnu.org>
20702
20703 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
20704 BG is a pointer to a structure, not a structure.
20705 (gif_format, png_format): Add missing commas.
20706
20707 2001-10-24 Richard M. Stallman <rms@gnu.org>
20708
20709 * xfaces.c (Fface_attributes_as_vector): New function.
20710 (syms_of_xfaces): Defsubr it.
20711
20712 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20713
20714 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
20715 variable `area'.
20716
20717 2001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20718
20719 * search.c (scan_newline): Remove unused variable `selective_display'.
20720
20721 2001-10-25 Miles Bader <miles@gnu.org>
20722
20723 * dispextern.h (struct image): Add `background',
20724 `background_valid', and `background_transparent' fields.
20725 (image_background, image_background_transparent): New declarations.
20726 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
20727 * xfns.c (image_background, image_background_transparent)
20728 (four_corners_best): New functions.
20729 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
20730 (gs_format): Add `:background' entry.
20731 (lookup_image): Set IMG's background color if specified.
20732 (pbm_load, xbm_load_image, png_load): Set IMG's background field
20733 when appropriate.
20734 (x_clear_image_1): Reset `background_valid' and
20735 `background_transparent_valid' fields.
20736 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
20737 calculating it here. Set IMG's background_transparent field.
20738 (enum xpm_keyword_index): Add XPM_BACKGROUND.
20739 (enum png_keyword_index): Add PNG_BACKGROUND.
20740 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
20741 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
20742 (enum gif_keyword_index): Add GIF_BACKGROUND.
20743 (enum gs_keyword_index): Add GS_BACKGROUND.
20744 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
20745 Pre-calculate image background color where necessary.
20746 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
20747 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
20748 color to use for image glyph reliefs.
20749
20750 2001-10-24 Gerd Moellmann <gerd@gnu.org>
20751
20752 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
20753 in full-width rows.
20754
20755 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
20756 Fix clearing of area not covered by scroll bar.
20757
20758 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20759
20760 * xterm.c (x_insert_glyphs): Remove unused variables `real_end'
20761 and `real_start'.
20762 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
20763 (glyph_rect): Remove unused variable `area'.
20764
20765 2001-10-24 Gerd Moellmann <gerd@gnu.org>
20766
20767 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
20768
20769 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
20770 (row_containing_pos): Take additional argument DY.
20771 Treat rows ending in middle of char differently.
20772 (display_line): Handle tabs on window systems differently.
20773
20774 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
20775 with additional argument.
20776
20777 * dispextern.h (row_containing_pos): Adjust prototype.
20778
20779 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
20780 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
20781 (try_window_id, try_window_reusing_current_matrix)
20782 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
20783 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
20784
20785 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20786
20787 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
20788 gnuemacs).
20789 (HAVE_BOXES): Fix typo in comment.
20790 (push_menu_pane): Fix typo in comment.
20791
20792 * xdisp.c (display_prop_string_p): Remove unused local declaration
20793 of `Qwhen'.
20794 (single_display_prop_string_p): Remove unused local declarations
20795 of `Qwhen' and `Qmargin'.
20796 (string_buffer_position): Remove unused variable `around'.
20797 (store_frame_title): Remove unused variable `width'.
20798
20799 * window.c: Don't define max.
20800 (coordinates_in_window): Remove unused variable `uy'.
20801
20802 * widget.c: Don't define max.
20803
20804 * process.c: Don't define max.
20805 (create_process): Remove unused variable `buffer'.
20806
20807 2001-10-23 Gerd Moellmann <gerd@gnu.org>
20808
20809 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
20810
20811 2001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
20812
20813 * xfaces.c (Finternal_set_lisp_face_attribute)
20814 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
20815 frame is on a windowed display.
20816
20817 2001-10-23 Gerd Moellmann <gerd@gnu.org>
20818
20819 * dispnew.c (sync_window_with_frame_matrix_rows):
20820 Fix handling of windows which aren't full-width, fix handling
20821 of marginal areas.
20822
20823 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
20824
20825 2001-10-23 Andreas Schwab <schwab@suse.de>
20826
20827 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
20828 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
20829
20830 2001-10-23 Gerd Moellmann <gerd@gnu.org>
20831
20832 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
20833 REAL_END. Notice if cursor gets overwritten.
20834 (notice_overwritten_cursor): Take X positions as parameters.
20835 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
20836 around call to x_draw_glyphs.
20837
20838 2001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20839
20840 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
20841 instead of C) and usage.
20842
20843 * editfns.c (char-to-string): Fix argument names (use CHAR instead
20844 of C) and usage.
20845
20846 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
20847 `left', `max_width' and `max_height'.
20848
20849 2001-10-23 Gerd Moellmann <gerd@gnu.org>
20850
20851 * xdisp.c (display_line): For a tab continued to the next line,
20852 set row's ends_in_middle_of_char_p.
20853
20854 2001-10-22 Gerd Moellmann <gerd@gnu.org>
20855
20856 * xdisp.c (display_line): Fix computation of continuation lines
20857 width for TABs.
20858
20859 2001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20860
20861 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
20862 `Qlaplace'.
20863
20864 * fileio.c: Remove unused code.
20865
20866 2001-10-22 Miles Bader <miles@gnu.org>
20867
20868 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
20869 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
20870 Remove `DOC_STRINGS_IN_COMMENTS' cases.
20871
20872 2001-10-21 Jason Rumney <jasonr@gnu.org>
20873
20874 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
20875
20876 2001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
20877
20878 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
20879 (Finsert_string): Avoid the multi-line string literals warning.
20880
20881 2001-10-22 Miles Bader <miles@gnu.org>
20882
20883 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
20884 (Fdocumentation): Don't use it.
20885 (syms_of_doc): Don't initialize it.
20886
20887 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
20888 * print.c (Fwith_output_to_temp_buffer): Likewise.
20889 * window.c (Fsave_window_excursion): Likewise.
20890 * editfns.c (Fsave_excursion, Fsave_current_buffer)
20891 (Fsave_restriction): Likewise.
20892 * eval.c (Frun_hooks, Frun_hook_with_args)
20893 (Frun_hook_with_args_until_failure)
20894 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
20895 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
20896 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
20897 (Funwind_protect, Fcondition_case): Likewise.
20898 * coding.c (Ffind_operation_coding_system): Likewise.
20899 * keyboard.c (Ftrack_mouse): Likewise.
20900
20901 2001-10-21 Miles Bader <miles@gnu.org>
20902
20903 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
20904 (Fmake_hash_table): Add usage: string to doc string.
20905 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
20906 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
20907 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
20908 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
20909 (Fml_prefix_argument_loop): Likewise.
20910
20911 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20912
20913 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
20914
20915 * sysdep.c (init_sys_modes): Change doc-string comments to `new
20916 style' [w/`doc:' keyword].
20917
20918 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
20919 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
20920 comments to `new style' [w/`doc:' keyword].
20921
20922 2001-10-21 Jason Rumney <jasonr@gnu.org>
20923
20924 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
20925
20926 * w32term.c (remember_mouse_glyph): New function.
20927 (w32_mouse_position): Use it.
20928 (note_mouse_movement): If the mouse moved off the glyph, remember
20929 its new position.
20930
20931 * w32term.h (struct w32_output): Correct spelling of x_compatible.
20932 (w32_display_info): Add mouse_face_overlay.
20933
20934 * w32term.c (notice_overwritten_cursor): Renamed from
20935 note_overwritten_text_cursor. Rewritten to take glyph widths into
20936 account.
20937 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
20938 (fast_find_string_pos): New function.
20939 (fast_find_position): Return the correct vpos. Add parameter
20940 STOP. In the final row, stop before glyphs having STOP as object.
20941 Don't consider glyphs that are not from a buffer.
20942 (fast_find_position) [0]: Add a presumably more correct version
20943 for after 21.1.
20944 (expose_window_tree, expose_frame): Don't compute intersections here.
20945 (expose_window): Do it here instead.
20946 (expose_window_tree, expose_window, expose_line): Return 1 when
20947 overwriting mouse-face.
20948 (expose_window): If W is the window currently being updated, mark
20949 the frame garbaged.
20950 (expose_frame): If mouse-face was overwritten, redo it.
20951 (x_use_underline_position_properties): New variable.
20952 (syms_of_xterm): DEFVAR_BOOL it.
20953 (x_draw_glyph_string): Add comment to use it in future.
20954 (x_draw_glyph_string): Restore clipping after drawing box.
20955 Fix a computation of the underline position.
20956 (w32_get_glyph_string_clip_rect): Minor cleanup.
20957 (x_fill_stretch_glyph_string): Remove an assertion.
20958 (x_produce_glyphs): Don't convert multibyte characters
20959 to unibyte characters in unibyte buffers.
20960 (cursor_in_mouse_face_p): New function.
20961 (x_draw_stretch_glyph_string): Use it to choose a different GC
20962 when drawing a cursor within highlighted text. Don't draw
20963 background again if it has already been drawn.
20964 (x_draw_glyph_string_box): Don't draw a full-width
20965 box just because the glyph row's full_width_p flag is set.
20966 (x_draw_glyphs): Fix computation of rightmost x for
20967 full-width rows.
20968 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
20969 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
20970 change bottom shadow accordingly. Some cleanup.
20971 (x_update_window_end): Handle overwritten mouse face
20972 also for tool bar windows.
20973 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
20974 DRAW is DRAW_IMAGE_RAISED.
20975 (clear_mouse_face): Return 1 if text with mouse face was
20976 actually redrawn. Make the function static.
20977 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
20978 optimize away highlighting if we pass over that same overlay again.
20979 (note_mouse_highlight): Call mouse_face_overlay_overlaps
20980 to detect a case where we have to highlight a different region
20981 despite not having left the currently highlighted region.
20982 Set mouse_face_overlay in the x_display_info. Avoid changing the
20983 mouse pointer shape when show_mouse_face has already done it, or
20984 there is no need. Handle mouse-face and help-echo in strings.
20985 (glyph_rect): New function.
20986 (w32_mouse_position): Use it to raise the threshold for mouse
20987 movement event generation.
20988 (w32_initialize_display_info): Initialize the x_display_info's
20989 mouse_face_overlay.
20990 (w32_set_vertical_scroll_bar): Don't clear a zero height
20991 or width area.
20992 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
20993 a widget to zero height.
20994
20995 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
20996 Protect unibyte strings created by replacing their multibyte
20997 equivalents in menu_items.
20998 (w32_menu_show): Don't overwrite an item's name with its key
20999 description in case the description is a multibyte string.
21000 (single_submenu): Some cleanup.
21001
21002 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
21003 (postprocess_image): New function.
21004 (lookup_image): Call it for all image types except PostScript.
21005 (x_kill_gs_process): Call postprocess_image.
21006 (tiff_error_handler, tiff_warning_handler): New functions.
21007 (tiff_load): Install them as handlers.
21008 (x_kill_gs_process): Recognize if someone has cleared the image
21009 cache under us.
21010 (valid_image_p): Protect better against invalid image
21011 specifications. Previous code could signal an error.
21012 (Fx_hide_tip, Fshow_tip): Doc fix.
21013 (Fv_max_tooltip_size): New variable.
21014 (syns_of_xfns): DEFVAR_LISP it.
21015 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
21016 window buffer to *tip* right after creating the frame. Set frame's
21017 window_width. Use a maximum tooltip size specified by
21018 Vx_max_tooltip_size, if that has valid contents.
21019 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
21020 Make sure the tooltip is completely visible.
21021 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
21022 (Fx_create_frame): Adjust the frame's height for presence
21023 of the tool bar before calling x_figure_window_size.
21024 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
21025 when the window gets smaller.
21026 (x_set_foreground_color): Set frame's cursor_pixel.
21027 (x_set_foreground_color, x_set_background_color): Cleaned up.
21028 (x_set_font): Handle case of x_new_fontset returning the same name
21029 as before, although there was a change in fontsets.
21030
21031 2001-10-21 Miles Bader <miles@gnu.org>
21032
21033 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
21034 (Flogxor): Add usage: string to doc string.
21035 * charset.c (Fstring): Likewise.
21036 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
21037 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
21038
21039 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21040
21041 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
21042
21043 * alloc.c: Reindent DEFUNs with doc: keywords.
21044
21045 * abbrev.c (Finsert_abbrev_table_description): Reindent.
21046
21047 * frame.c: Change doc-string comments to `new style' [w/`doc:'
21048 keyword].
21049
21050 See ChangeLog.9 for earlier changes.
21051
21052 ;; Local Variables:
21053 ;; coding: iso-2022-7bit
21054 ;; End:
21055
21056 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
21057 Copying and distribution of this file, with or without modification,
21058 are permitted provided the copyright notice and this notice are preserved.
21059
21060 ;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4