* mh-init.el (mh-image-load-path-called-flag): New variable which
[bpt/emacs.git] / src / ChangeLog
... / ...
CommitLineData
12005-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2
3 * mac.c [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp):
4 Allow nil as argument.
5 [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Regard nil
6 for encoding arguments as UTF-16 in native byte order, no BOM.
7
8 * macfns.c (Fx_create_frame): Add debugging code.
9 (Fx_show_tip): Set frame pixel width and height.
10
11 * macterm.c (MAC_WINDOW_NORMAL_GC): Remove macro.
12 (FRAME_NORMAL_GC): New macro.
13 (mac_draw_line, mac_clear_area, mac_clear_window)
14 (mac_fill_rectangle, mac_draw_string, mac_draw_string_16)
15 (mac_draw_image_string, mac_draw_image_string_16): Rename from
16 XDrawLine, XClearArea, XClearWindow, XFillRectangle, XDrawString,
17 XDrawString16, XDrawImageString, and XDrawImageString16, respectively.
18 All uses changed.
19 (mac_draw_line, mac_erase_rectangle, mac_clear_area)
20 (mac_clear_window, mac_draw_bitmap, mac_draw_rectangle)
21 (mac_invert_rectangle, mac_draw_string_common, mac_draw_string)
22 (mac_draw_string_16, mac_draw_image_string)
23 (mac_draw_image_string_16, mac_copy_area, mac_copy_area_with_mask)
24 (mac_scroll_area): Drawing functions now take frame as destination.
25 All uses changed.
26 (mac_draw_string_common): Get port height with FRAME_PIXEL_HEIGHT.
27 (x_draw_fringe_bitmap): Set clipping area in face->gc.
28
29 * macterm.h (mac_clear_area): Add extern.
30
312005-10-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
32
33 * macterm.c (note_mouse_movement, XTread_socket): Apply 2005-10-14
34 changes for xterm.c.
35
36 * w32term.c (note_mouse_movement, w32_read_socket): Likewise.
37
382005-10-14 Kenichi Handa <handa@m17n.org>
39
40 * search.c (search_buffer): Give up BM search on case-fold-search
41 if one of a target character has a case-equivalence of different
42 charset even if that target charcter is an ASCII.
43
44 * casefiddle.c (casify_object): Fix for the case that case
45 conversion change the byte length.
46
472005-10-14 Kim F. Storm <storm@cua.dk>
48
49 * xterm.c (note_mouse_movement): Return 1 if mouse moved; 0 otherwise.
50 (handle_one_xevent): Only clear help_echo_string; restore it if
51 note_mouse_movement didn't record any mouse movement.
52
53 * xdisp.c (pos_visible_p): Convert w->hscroll to pixels before use.
54 (remember_mouse_glyph): Clear RECT if mouse is over an image glyph.
55
56 * keyboard.c (make_lispy_position): Adjust wx for left margin if ON_TEXT.
57 (Fposn_at_x_y): Fix calculation of x coordinate.
58 (Fposn_at_point): Return nil if point is hscrolled out of view.
59
602005-10-13 Andreas Schwab <schwab@suse.de>
61
62 * sysdep.c (request_sigio, unrequest_sigio): Do nothing in
63 non-interactive mode.
64
652005-10-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
66
67 * xterm.c, w32term.c, macterm.c (note_mouse_movement): Undo last change.
68
692005-10-12 Kim F. Storm <storm@cua.dk>
70
71 * xterm.c (handle_one_xevent): Clear last_mouse_glyph on mouse up/down.
72
732005-10-12 Romain Francoise <romain@orebokech.com>
74
75 * buffer.c (init_buffer): Rename `rc' to `len' for clarity.
76
772005-10-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
78
79 * xdisp.c (remember_mouse_glyph): Use MATRIX_BOTTOM_TEXT_ROW to
80 get end of text rows. Obtain header-line/mode-line rows directly.
81
82 * xterm.c, w32term.c, macterm.c (note_mouse_movement): Restore
83 help_echo_string if mouse is moved inside last_mouse_glyph.
84
852005-10-12 Kim F. Storm <storm@cua.dk>
86
87 * xdisp.c (remember_mouse_glyph): New generic version based on
88 glyph_rect and remember_mouse_glyph from xterm.c enhanced to
89 properly handle all different window areas.
90
91 * dispextern.h (remember_mouse_glyph): Add prototype.
92
93 * xterm.c (glyph_rect, remember_mouse_glyph): Remove X versions.
94 (note_mouse_movement, XTmouse_position): Use generic
95 remember_mouse_glyph, add last_mouse_glyph arg.
96
97 * w32term.c (note_mouse_movement): Fix last_mouse_glyph check.
98 (glyph_rect, remember_mouse_glyph): Remove w32 specific versions.
99 (note_mouse_movement, w32_mouse_position): Use generic
100 remember_mouse_glyph, add last_mouse_glyph arg.
101
102 * macterm.c (note_mouse_movement): Add call to remember_mouse_glyph.
103 (glyph_rect, remember_mouse_glyph): Remove mac specific versions.
104 (XTmouse_position): Adapt to use generic remember_mouse_glyph
105 instead of pixel_to_glyph_coords.
106
107 * window.c (coordinates_in_window): Fix x position for ON_RIGHT_MARGIN.
108 Fix x position for ON_TEXT when left margin width > 0.
109
1102005-10-11 Kim F. Storm <storm@cua.dk>
111
112 * window.c (coordinates_in_window): Fix y position for ON_SCROLL_BAR.
113
114 * keyboard.c (make_lispy_position): Fix buffer calculations for
115 mouse click or movement in right fringe and the margins.
116
1172005-10-11 Juanma Barranquero <lekktu@gmail.com>
118
119 * image.c (fn_jpeg_stdio_src): Don't define it.
120 (init_jpeg_functions): Don't initialize `fn_jpeg_stdio_src'.
121 (our_common_init_source): Rename from `our_init_source'.
122 (our_common_term_source): Rename from `our_term_source'.
123 (our_memory_fill_input_buffer): Rename from
124 `our_fill_input_buffer'.
125 (our_memory_skip_input_data): Rename from `our_skip_input_data'.
126 (jpeg_memory_src): Use the new names.
127 (struct jpeg_stdio_mgr): New struct.
128 (JPEG_STDIO_BUFFER_SIZE): New constant.
129 (our_stdio_fill_input_buffer, our_stdio_skip_input_data)
130 (jpeg_file_src): New functions.
131 (jpeg_load): Use `jpeg_file_src' instead of `fn_jpeg_stdio_src'.
132
1332005-10-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
134
135 * macterm.c (PER_CHAR_METRIC): Remove unused macro.
136 (fm_font_family_alist): New variable.
137 (syms_of_macterm): Initialize and staticpro it.
138 (decode_mac_font_name): Replace '-' in family name with '_' if it
139 occurs just once. Lower family name.
140 (parse_x_font_name): Rename from x_font_name_to_mac_font_name.
141 All uses changed. Remove argument MF and code conversion for it.
142 Add argument SIZE. Rename argument MF_DECODED to FAMILY, and CS
143 to CHARSET. Parse font size. Lower family name. Return integer
144 value for status of parsing.
145 (init_font_name_table) [USE_ATSUI]: Use decode_mac_font_name.
146 Don't use Fdowncase because family name is already lowered by
147 decode_mac_font_name.
148 (init_font_name_table): Always call decode_mac_font_name. Add
149 pair of family name and its reference to fm_font_family_alist.
150 (mac_clear_font_name_table): Clear fm_font_family_alist.
151 (XLoadQueryFont): Move font size parsing part to parse_x_font_name.
152 Lookup fm_font_family_alist to get font family reference.
153 (XLoadQueryFont) [USE_ATSUI]: Don't use Fdowncase because family
154 name is already lowered by parse_x_font_name.
155
1562005-10-11 Kim F. Storm <storm@cua.dk>
157
158 * xterm.c (glyph_rect): Return 0 if position is outside text area.
159
160 * keyboard.c (make_lispy_position): Fix buffer position calculation for
161 mouse click or movement in fringe.
162
1632005-10-10 Jason Rumney <jasonr@gnu.org>
164
165 * xterm.c (remember_mouse_glyph): New function.
166 (note_mouse_movement): Use it to remember the current glyph if changed.
167 (XTmouse_position): Fix calculation of fake glyph under mouse.
168 Move code to calculate glyph under mouse into remember_mouse_glyph.
169
1702005-10-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
171
172 * emacs.c (USAGE3, standard_args): -nb => -nbi.
173
1742005-10-10 Juanma Barranquero <lekktu@gmail.com>
175
176 * frame.c (Fredirect_frame_focus): Fix typos in docstring.
177 (next_frame, prev_frame, set_term_frame_name): Make static.
178
179 * window.c (Fwindow_tree): Fix spelling.
180
1812005-10-09 Romain Francoise <romain@orebokech.com>
182
183 * window.c (Fwindow_end): Don't try to redisplay if non-interactive.
184
1852005-10-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
186
187 * emacs.c (standard_args): Remove options -i, -itype, --icon-type.
188 Add options -nb, --no-bitmap-icon.
189
190 * xfns.c (Fx_create_frame): Make bitmapIcon have default on.
191
1922005-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
193
194 * macgui.h (MAX_CLIP_RECTS): New define.
195 (struct _XGC): New member clip_region.
196 (struct _XGC) [MAC_OSX && USE_ATSUI]: New members n_clip_rects and
197 clip_rects.
198
199 * macterm.c (GC_CLIP_REGION): New macro.
200 (saved_port_clip_region): New variable.
201 (mac_begin_clip, mac_end_clip): New functions.
202 (XDrawLine, mac_erase_rectangle, mac_draw_bitmap, XFillRectangle)
203 (mac_draw_rectangle, mac_draw_string_common, mac_copy_area)
204 (mac_copy_area_with_mask, mac_scroll_area): Use them.
205 (mac_set_clip_rectangle, mac_reset_clipping): Remove functions.
206 [USE_ATSUI] (atsu_get_text_layout_with_text_ptr)
207 [MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Specify kATSLineFractDisable.
208 (mac_draw_string_common) [MAC_OSX && USE_ATSUI]: Clip to clipping
209 rectangles stored in gc.
210 (XFreeGC): Dispose of clipping region.
211 (mac_set_clip_rectangles, mac_reset_clip_rectangles): New functions.
212 (x_draw_fringe_bitmap, x_set_glyph_string_clipping)
213 (x_draw_relief_rect, x_draw_box_rect, x_draw_stretch_glyph_string)
214 (x_draw_glyph_string, x_clip_to_row, x_draw_hollow_cursor)
215 (x_draw_bar_cursor): Use them.
216 (x_set_glyph_string_clipping): Use get_glyph_string_clip_rects to
217 get multiple clipping rectangles.
218
219 * macterm.h (mac_term_init): Add types to extern.
220 (struct mac_output): Remove members mWP and pending_menu_activation.
221 Put members scroll_bar_foreground_pixel and
222 scroll_bar_background_pixel in #if 0.
223 (FRAME_MAC_WINDOW, FRAME_X_WINDOW): Use window_desc.
224
225 * xfaces.c (x_create_gc, x_free_gc) [MAC_OS]: Add BLOCK_INPUT.
226 Add debugging code.
227
2282005-10-08 Kim F. Storm <storm@cua.dk>
229
230 * window.c (window_tree, Fwindow_tree): Rename fns added 2005-10-04.
231
2322005-10-07 Kim F. Storm <storm@cua.dk>
233
234 * dispnew.c (redraw_overlapped_rows, redraw_overlapping_rows)
235 [!HAVE_WINDOW_SYSTEM]: Don't declare them...
236 (update_window) [!HAVE_WINDOW_SYSTEM]: ...and don't call them.
237
2382005-10-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
239
240 * dispextern.h (struct glyph_string): Rename member for_overlaps_p
241 to for_overlaps. Now occupy 3 bits.
242 (OVERLAPS_PRED, OVERLAPS_SUCC, OVERLAPS_BOTH)
243 (OVERLAPS_ERASED_CURSOR): New defines.
244 (struct redisplay_interface): Add new OVERLAPS arg to member
245 fix_overlapping_area.
246 (x_fix_overlapping_area): Add new OVERLAPS arg.
247 (get_glyph_string_clip_rects): Add extern.
248
249 * dispnew.c (redraw_overlapping_rows): Call
250 rif->fix_overlapping_area with new OVERLAPS arg as redrawn part.
251
252 * xdisp.c: Rename member for_overlaps_p in struct glyph_string to
253 for_overlaps.
254 (get_glyph_string_clip_rects): New function created from
255 get_glyph_string_clip_rect. Set clipping rectangles according to the
256 value of for_overlaps. Enable to store multiple clipping rectangles.
257 (get_glyph_string_clip_rect): Use get_glyph_string_clip_rects.
258 (fill_composite_glyph_string, fill_glyph_string, draw_glyphs):
259 Rename argument OVERLAPS_P to OVERLAPS. All uses in macros changed.
260 (x_fix_overlapping_area): Add OVERLAPS arg. Pass it to draw_glyphs.
261 (draw_phys_cursor_glyph): Set width of erased cursor to use it for
262 calculating clipping rectangles later. Call x_fix_overlapping_area
263 with new OVERLAPS arg to draw only erased cursor area.
264 (expose_overlaps): Call x_fix_overlapping_area with new OVERLAPS arg
265 to draw overlaps in both preceding and succeeding rows.
266
267 * xterm.c, w32term.c, macterm.c: Rename member for_overlaps_p in
268 struct glyph_string to for_overlaps.
269
2702005-10-04 Richard M. Stallman <rms@gnu.org>
271
272 * alloc.c (refill_memory_reserve): Conditionalize the body,
273 not the function's existence.
274
2752005-10-04 Kim F. Storm <storm@cua.dk>
276
277 * window.c (window_split_tree): New function.
278 (Fwindow_split_tree): New defun.
279 (syms_of_window): Defsubr it.
280
2812005-10-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
282
283 * macterm.c (mac_invert_rectangle): New function.
284 (XTflash): Use it.
285
2862005-10-04 Stefan Monnier <monnier@iro.umontreal.ca>
287
288 * regex.h (re_char): Don't expose it in the interface.
289 (re_set_whitespace_regexp): Adjust the arg's type to not use it.
290
291 * regex.c (re_char): Move it back here.
292 (re_set_whitespace_regexp): Change the arg's type to not use it.
293
294 * keyboard.c (make_lispy_event): If point has moved between down and up
295 event, make it a drag, not a click, to mirror what
296 mouse-drag-region expects.
297
2982005-10-02 Dan Nicolaescu <dann@ics.uci.edu>
299
300 * lisp.h (fatal): Undo previous change.
301 * term.c (fatal): Undo previous change.
302
3032005-10-01 Richard M. Stallman <rms@gnu.org>
304
305 * xfaces.c (face_color_gray_p): Colors close to black count as gray.
306
3072005-10-01 Kim F. Storm <storm@cua.dk>
308
309 * xdisp.c (try_window): Skip scroll-margin check if ZV is visible.
310
3112005-10-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
312
313 * keyboard.c (init_keyboard) [MAC_OSX]: Don't install SIGINT handler.
314
315 * macfns.c (start_hourglass): Apply 2005-05-07 change for xfns.c.
316 (x_create_tip_frame) [GLYPH_DEBUG]: Uncomment debugging code.
317 (Fx_create_frame, x_create_tip_frame) [USE_ATSUI]:
318 Try ATSUI-compatible 12pt Monaco font first.
319
320 * macgui.h (struct _XCharStruct): New member valid_p.
321 (STORE_XCHARSTRUCT): Set valid_p.
322 (struct MacFontStruct) [USE_ATSUI]: New member mac_style.
323
324 * macterm.c (mac_draw_string_common, x_per_char_metric)
325 (mac_compute_glyph_string_overhangs, init_font_name_table)
326 (XLoadQueryFont, mac_unload_font) [USE_ATSUI]: Add ATSUI support.
327 (atsu_get_text_layout_with_text_ptr) [USE_ATSUI]: New function.
328 (x_draw_glyph_string_background)
329 (x_draw_glyph_string_foreground) [MAC_OS8 && USE_ATSUI]: Don't use
330 XDrawImageString. Always draw background and foreground separately.
331 (x_draw_glyph_string_foreground) [USE_ATSUI]: Don't use 8-bit
332 functions for one-byte chars when using ATSUI-compatible fonts.
333 (atsu_font_id_hash) [USE_ATSUI]: New variable.
334 (syms_of_macterm) [USE_ATSUI]: Initialize and staticpro it.
335 (XLoadQueryFont): Set min_byte1, max_byte1, min_char_or_byte2, and
336 max_char_or_byte2 more in detail.
337 (quit_char_comp, mac_check_for_quit_char) [MAC_OSX]: Remove functions.
338
3392005-09-30 Dan Nicolaescu <dann@ics.uci.edu>
340
341 * image.c (slurp_file, xbm_read_bitmap_data): Cast to the correct type.
342 * xterm.c (handle_one_xevent, handle_one_xevent): Likewise.
343
344 * unexelf.c (fatal): Fix prototype.
345
346 * term.c (fatal): Implement using varargs.
347
348 * regex.c (re_char): Move typedef ...
349 * regex.h (re_char): ... here.
350 (re_iswctype, re_wctype, re_set_whitespace_regexp): New prototypes.
351
352 * emacs.c (malloc_set_state): Fix return type.
353 (endif): Fix type.
354
355 * lisp.h (fatal): Add argument types.
356
357 * dispextern.h (fatal): Delete prototype.
358
359 * systime.h: (make_time): Prototype moved from ...
360 * editfns.c (make_time): ... here.
361
362 * editfns.c: Move systime.h include after lisp.h.
363 * dired.c:
364 * xsmfns.c:
365 * process.c: Likewise.
366
367 * alloc.c (old_malloc_hook, old_realloc_hook, old_realloc_hook):
368 Add parameter types.
369 (__malloc_hook, __realloc_hook, __free_hook): Fix prototypes.
370 (emacs_blocked_free): Change definition to match __free_hook.
371 (emacs_blocked_malloc): Change definition to match __malloc_hook.
372 (emacs_blocked_realloc): Change definition to match __realloc_hook.
373
3742005-09-30 Romain Francoise <romain@orebokech.com>
375
376 * minibuf.c (Fread_buffer): Follow convention for reading from the
377 minibuffer with a default value. Doc fix.
378
3792005-09-29 Juri Linkov <juri@jurta.org>
380
381 * editfns.c (Fmessage, Fmessage_box, Fmessage_or_box):
382 Rename argument name `string' to `format-string'.
383 (Fformat): Doc fix.
384
3852005-09-28 Kim F. Storm <storm@cua.dk>
386
387 * image.c (gif_load): Fix size of allocated image buffer
388 for images where a sub-image may be larger than the image's
389 total height/width specifications.
390
3912005-09-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
392
393 * macgui.h (struct _XCharStruct): Each member now takes short value.
394
3952005-09-27 Dan Nicolaescu <dann@ics.uci.edu>
396
397 * xfaces.c (lookup_derived_face): Add parameter type.
398
399 * xdisp.c (cursor_row_fully_visible_p): Add parameter type.
400
401 * marker.c (verify_bytepos): Add parameter type.
402
403 * process.c (get_operating_system_release): Move prototype ...
404
405 * systime.h (get_operating_system_release): ... here.
406
407 * xterm.c (handle_one_xevent): Refer to union field to match the
408 type required by the function definition.
409 (set_vertical_scroll_bar): Move prototype ...
410
411 * xterm.h: ... here.
412
413 * fns.c (internal_equal, seed_random): Fix prototypes.
414 (internal_equal): Add missing parameter.
415
4162005-09-25 Richard M. Stallman <rms@gnu.org>
417
418 * keyboard.c (update_menu_bindings): Variable deleted.
419 (syms_of_keyboard): Don't defvar it.
420 (parse_menu_item): Don't test it.
421
4222005-09-23 Richard M. Stallman <rms@gnu.org>
423
424 * editfns.c (Fformat): Explicitly test for end of format string
425 and don't use `index'.
426
4272005-09-23 Dan Nicolaescu <dann@ics.uci.edu>
428
429 * s/aix4-2.h (BROKEN_GET_CURRENT_DIR_NAME):
430 Define BROKEN_GET_CURRENT_DIR_NAME.
431
432 * sysdep.c (get_current_dir_name): Also define if
433 BROKEN_GET_CURRENT_DIR_NAME.
434
435 * m/ibmrs6000.h: Test for USG5, not USG5_4.
436
4372005-09-22 Kim F. Storm <storm@cua.dk>
438
439 * xdisp.c (message_dolog): Add warning about GC and Lisp strings.
440 (message2): Fix commentary. Ok to use alloca'ed memory.
441 Still not ok to use Lisp string data (because of GC).
442 (set_message): Add comment why GC cannot happen.
443
4442005-09-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
445
446 * macterm.c (xlfdpat_block_match_1): Fix assertion.
447 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't add style
448 variants for a scalable font multiple times.
449
4502005-09-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
451
452 * process.c (create_process) [RTU || UNIPLUS || DONT_REOPEN_PTY]:
453 Setup slave tty options before forking.
454
4552005-09-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
456
457 * gtkutil.c (xg_set_geometry): Do a gtk_window_move if program
458 positions have been set for the frame (as is done for frames in
459 special-display-buffer-names).
460
4612005-09-19 Kim F. Storm <storm@cua.dk>
462
463 * editfns.c (Fformat): Don't scan past end of format string that
464 ends in %. Reported by: Johan Bockg\e,Ae\e(Brd.
465
4662005-09-18 Andreas Schwab <schwab@suse.de>
467
468 * window.h (struct window): Remove height_fixed_p, no longer set.
469
470 * window.c (make_window): Don't initialize height_fixed_p.
471 (window_fixed_size_p): Don't use it.
472
4732005-09-18 John Paul Wallington <jpw@pobox.com>
474
475 * data.c (Fdefalias): Signal an error if SYMBOL is not a symbol.
476
4772005-09-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
478
479 * Makefile.in (SOME_MACHINE_OBJECTS): Undo previous change.
480
481 * macfns.c (image_cache_refcount, dpyinfo_refcount) [GLYPH_DEBUG]:
482 New variables.
483 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Don't allow multiple
484 file selection.
485
486 * sysdep.c [MAC_OS8]: Don't include stdlib.h. Include sys/param.h.
487
4882005-09-17 Eli Zaretskii <eliz@gnu.org>
489
490 * Makefile.in (XMENU_OBJ) [!HAVE_CARBON]: Reinstate variable.
491 (obj): Use XMENU_OBJ, not a literal xmenu.o.
492
4932005-09-16 Romain Francoise <romain@orebokech.com>
494
495 * fileio.c (syms_of_fileio) <write-region-inhibit-fsync>: Doc fix.
496
4972005-09-15 Richard M. Stallman <rms@gnu.org>
498
499 * xdisp.c (overlay_arrow_at_row): Add HAVE_WINDOW_SYSTEM conditional.
500 (display_mode_element): Instead of `lisp_string' and `this',
501 record `offset' and increment that.
502 `last_offset' replaces `last'.
503
504 * Makefile.in (XMENU_OBJ): Variable deleted.
505 (obj): Use xmenu.o unconditionally.
506 (SOME_MACHINE_OBJECTS): Delete xmenu.o.
507
508 * emacs.c (main): Don't conditionalize syms_of_xmenu on HAVE_XMENU.
509
5102005-09-15 Kim F. Storm <storm@cua.dk>
511
512 * xdisp.c (move_it_vertically): Don't try to fetch byte BEGV-1.
513 (reseat_at_next_visible_line_start): Likewise (in xassert).
514
5152005-09-14 Romain Francoise <romain@orebokech.com>
516
517 * fileio.c (write_region_inhibit_fsync): New variable.
518 (Fwrite_region): Use it to skip call to fsync.
519 (syms_of_fileio): Initialize it.
520
5212005-09-14 Kenichi Handa <handa@m17n.org>
522
523 * coding.c (code_convert_region_unwind): Argument format changed.
524 (run_pre_post_conversion_on_str): If pre-write-conversion function
525 changed the current buffer, delete the new buffer.
526 (run_pre_write_conversin_on_c_str): Likewise.
527
528 * fileio.c (Fexpand_file_name): Check multibyteness of
529 default_directory.
530
5312005-09-13 Kenichi Handa <handa@m17n.org>
532
533 * composite.c (compose_chars_in_text): Delete it.
534
535 * composite.h (compose_chars_in_text): Delete extern.
536
5372005-09-13 Kim F. Storm <storm@cua.dk>
538
539 * print.c (print_error_message): Fix last change.
540
5412005-09-12 Kim F. Storm <storm@cua.dk>
542
543 * composite.c (compose_chars_in_text): Fix setup of `pend'.
544 Unconditionally reload `ptr' and `pend' after eval.
545
546 * xdisp.c (message3): Pass copy of lisp string to message_dolog.
547
548 * print.c (print_error_message): Pass copy of caller name to
549 message_dolog.
550
551 * fileio.c (auto_save_error): Pass copy of lisp string to message2.
552
5532005-09-12 Kenichi Handa <handa@m17n.org>
554
555 * xdisp.c (display_mode_element): Be sure to make variables THIS
556 and LISP_STRING point into a string data of ELT.
557
5582005-09-12 Kim F. Storm <storm@cua.dk>
559
560 * editfns.c (Ftranslate_region_internal): Reload `tt' after
561 signal_after_change that may have GC'ed.
562 (Fmessage, Fmessage_box, Fmessage_or_box): Doc fix.
563
564 * keymap.c (Fdescribe_buffer_bindings): Reload `translate'
565 after insert while runs signal_after_change.
566
567 * minibuf.c (Fminibuffer_complete_word): Move `completion_string'
568 declaration to where it is used.
569
570 * w32.c (check_windows_init_file): Fix allocation of error buffer.
571
572 * xfns.c (x_encode_text): Declare static. Add FREEP arg.
573 (x_set_name_internal): Call x_encode_text with new FREEP arg to
574 know if xfree is needed instead of guessing.
575
576 * xterm.h (x_encode_text): Remove prototype.
577
5782005-09-11 Chris Prince <cprince@gmail.com> (tiny change)
579
580 * w32term.c (x_bitmap_icon): Load small icons too.
581
5822005-09-10 Romain Francoise <romain@orebokech.com>
583
584 * buffer.c (init_buffer): Grow buffer to add directory separator
585 and terminal zero. Fix typos.
586
5872005-09-10 Eli Zaretskii <eliz@gnu.org>
588
589 * buffer.c (init_buffer): Fix error message for failed call to
590 get_current_dir_name.
591 (get_current_dir_name): Remove prototype.
592
593 * xsmfns.c: (get_current_dir_name): Remove prototype.
594
595 * lisp.h: (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]: Add
596 prototype.
597
598 * sysdep.c [WINDOWSNT]: Add prototype for getwd.
599 Don't #undef NULL after including blockinput.h.
600
601 * config.in: Regenerated.
602
6032005-09-10 Giuseppe Scrivano <gscrivano@gmail.com>
604
605 Remove the MAXPATHLEN limitations:
606
607 * sysdep.c (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]:
608 New function.
609
610 * buffer.c (init_buffer): Use it.
611
612 * xsmfns.c (smc_save_yourself_CB): Ditto.
613
6142005-09-09 Kim F. Storm <storm@cua.dk>
615
616 * doc.c (Fsubstitute_command_keys): Lookup key binding for
617 commands that are remapped from some other command.
618
619 * xdisp.c (try_window_reusing_current_matrix): Clear mode_line_p
620 flag in disabled rows below the window.
621
622 * frame.h (struct frame): New member updated_p.
623
624 * xdisp.c (redisplay_internal): Mark updated frames in new updated_p
625 member. Remove local `updated' array and associated variables.
626
6272005-09-07 Kim F. Storm <storm@cua.dk>
628
629 * xdisp.c (handle_display_prop): Respect overlay window property.
630
631 * xdisp.c (try_window): Remove superfluous cursor_height calculation.
632 Fixes crash reported by YAMAMOTO Mitsuharu.
633
6342005-09-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
635
636 * macterm.c (struct xlfdpat_block, struct xlfdpat): New structs.
637 (xlfdpat_destroy, xlfdpat_create, xlfdpat_exact_p)
638 (xlfdpat_block_match_1, xlfdpat_match): New functions.
639 (xlfdpat_block_match): New macro.
640 (mac_to_x_fontname): Don't use tolower for non-ASCII characters.
641 (x_font_name_to_mac_font_name): Set coding.dst_multibyte to 0.
642 (add_font_name_table_entry): Increase font_name_table_size more
643 rapidly.
644 (mac_c_string_match): Remove function.
645 (mac_do_list_fonts): Use XLFD pattern match instead of regular
646 expression match.
647
648 * xfaces.c (xstrlwr): Don't use tolower for non-ASCII characters.
649
6502005-09-03 Richard M. Stallman <rms@gnu.org>
651
652 * xdisp.c (redisplay_internal): Make UPDATED as long as needed.
653 (move_it_in_display_line_to): Stop after last char on line even
654 on a windowing terminal, if that's the specified stop position.
655
656 * fns.c (Fsort): Doc fix.
657
658 * editfns.c (Fpropertize): Don't insist that properties be symbols.
659
6602005-09-02 Stefan Monnier <monnier@iro.umontreal.ca>
661
662 * dired.c (directory_files_internal_unwind, directory_files_internal)
663 (file_name_completion): Use a Save_Value object rather than a cons of
664 two 16bit ints to store the DIR*.
665 (directory_files_internal, file_name_completion): Handle both EINTR and
666 EAGAIN consistently after `readdir'.
667
6682005-09-01 Stefan Monnier <monnier@iro.umontreal.ca>
669
670 * intervals.c (update_interval): Add position info in error.
671
672 * dispnew.c (window_to_frame_hpos, update_window):
673 Avoid gcc warning about unused variable `f'.
674
6752005-08-31 Jason Rumney <jasonr@gnu.org>
676
677 * w32menu.c (add_menu_item): If unicode_append_menu returns an
678 error, revert to using AppendMenu.
679
6802005-08-31 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
681
682 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN): Remove argument.
683 All uses changed.
684 [MAC_OS] (XPutPixel, XGetPixel): Add efficient versions for common
685 cases.
686 (x_create_x_image_and_pixmap) [MAC_OS]: Don't call x_destroy_x_image.
687 [MAC_OS] (find_image_fsspec) [!MAC_OSX]: Don't use FSRef.
688 Use posix_pathname_to_fsspec.
689 [MAC_OS] (xpm_load_image): Fill in background_transparent field
690 while we have mask.
691
692 * macgui.h [!TARGET_API_MAC_CARBON] (GetPixDepth): New define.
693
694 * macterm.h (PIX_MASK_DRAW, PIX_MASK_RETAIN): Move defines to image.c.
695
6962005-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
697
698 * syntax.c (update_syntax_table): Properly reproduce the special +1
699 setting of e_property at the end of the buffer when bumping into the
700 INTERVALS_AT_ONCE limit.
701
7022005-08-27 Eli Zaretskii <eliz@gnu.org>
703
704 * emacs.c (USAGE1): Fix the description of the -Q option.
705
7062005-08-26 Stefan Monnier <monnier@iro.umontreal.ca>
707
708 * xdisp.c (pos_visible_p): Yet another int/Lisp_Object mixup (YAILOM).
709
7102005-08-26 Kim F. Storm <storm@cua.dk>
711
712 * xdisp.c (resize_mini_window): Fix 2005-08-20 change.
713 Don't move PT to new window start.
714
7152005-08-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
716
717 * keyboard.c (kbd_buffer_get_event) [MAC_OS]: Make events for
718 ICONIFY/DEICONIFY_EVENT.
719
720 * macterm.c (mac_copy_area, mac_copy_area_with_mask):
721 Restore background color.
722 (mac_handle_visibility_change): New function.
723 (x_make_frame_invisible, x_iconify_frame)
724 (XTread_socket) [!USE_CARBON_EVENTS]: Use it.
725 [USE_CARBON_EVENTS] (mac_handle_window_event)
726 (install_window_handler): Handle visibility change events.
727 (x_make_frame_visible): Don't reposition window if it is iconified
728 or asked for visible before. Select and uncollapse window when it
729 is made visible.
730 (x_make_frame_invisible): Don't reset x_highlight_frame.
731 (x_iconify_frame): Likewise. Make invisible frame visible before
732 it is iconified.
733 (read_socket_inev): Move variable outside #if USE_CARBON_EVENTS.
734 (do_window_update): Don't change visibility of invisible frame.
735
7362005-08-22 Juri Linkov <juri@jurta.org>
737
738 * term.c (turn_on_face): Check for TS_set_foreground and
739 TS_set_background depending on standout_mode. Simplify.
740
7412005-08-21 Kim F. Storm <storm@cua.dk>
742
743 * fringe.c (update_window_fringes): Only put TOP and BOTTOM
744 bitmaps on fully visible rows.
745
746 * fringe.c (update_window_fringes): Replace FORCE_P arg with
747 KEEP_CURRENT_P arg; if non-zero, don't update current row fringes,
748 and return 0.
749
750 * xdisp.c (redisplay_window): Call update_window_fringes with
751 KEEP_CURRENT_P non-0 if we are going to refresh fringes later.
752
7532005-08-20 Richard M. Stallman <rms@gnu.org>
754
755 * xdisp.c (display_echo_area_1): Get display start pos from w->start.
756 (resize_mini_window): Set w->start, and PT, so as to display the tail
757 end of the buffer, if it doesn't all fit.
758
7592005-08-18 Kim F. Storm <storm@cua.dk>
760
761 * xdisp.c (calc_pixel_width_or_height): Use actual display
762 resolution when available instead of Vdisplay_pixels_per_inch.
763
7642005-08-17 Kim F. Storm <storm@cua.dk>
765
766 * xdisp.c (pos_visible_p): Adjust X value if window is hscrolled.
767
768 * dispnew.c (buffer_posn_from_coords): Check that target row is
769 within matrix.
770
7712005-08-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
772
773 * xterm.c (x_wm_set_icon_pixmap): Move GTK specific code to
774 xg_set_frame_icon and call it.
775
776 * gtkutil.c (xg_set_frame_icon): New function.
777
778 * gtkutil.h (xg_set_frame_icon): Declare it.
779
7802005-08-16 Kim F. Storm <storm@cua.dk>
781
782 * dispnew.c (increment_row_positions): Skip non-enabled rows.
783
784 * window.c (SAVED_WINDOW_VECTOR_SIZE): Remove dangerous define.
785 (Fcurrent_window_configuration): Use VECSIZE macro instead.
786
7872005-08-15 Richard M. Stallman <rms@gnu.org>
788
789 * xdisp.c (message3_nolog): Clear echo_message_buffer.
790
7912005-08-15 Kim F. Storm <storm@cua.dk>
792
793 * lisp.h (QUIT) [!SYNC_INPUT]: Throw t to Vthrow_on_input.
794
795 * process.c (deactivate_process, status_notify, read_process_output)
796 (update_status, status_convert, decode_status, allocate_pty)
797 (make_process, remove_process, list_processes_1)
798 (create_process_1, unwind_request_sigio, read_process_output)
799 (send_process, keyboard_bit_set): Declare static.
800 (Fdelete_process): Simplify. Pass process to status_notify, so we
801 don't try to read output from it.
802 (status_notify): New arg deleting_process--don't try to read
803 output from that process.
804
805 * lisp.h (deactivate_process, status_notify, read_process_output):
806 Remove prototypes.
807
8082005-08-14 Richard M. Stallman <rms@gnu.org>
809
810 * image.c (syms_of_image): Init Qxbm, Qpbm before calling
811 define_image_type.
812
8132005-08-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
814
815 * gtkutil.c (xg_get_pixbuf_from_pix_and_mask): New function.
816 (xg_get_image_for_pixmap): Move some code to
817 xg_get_pixbuf_from_pix_and_mask, and call it.
818
819 * gtkutil.h (xg_get_pixbuf_from_pix_and_mask): Declare.
820
821 * xterm.c (x_wm_set_icon_pixmap): Call xg_get_pixbuf_from_pix_and_mask
822 to get an GTK icon and set it with GTK functions to avoid having GTK
823 override an icon set with just X functions.
824
8252005-08-11 Richard M. Stallman <rms@gnu.org>
826
827 * image.c (syms_of_image): Init image_types here, and call
828 define_image_type.
829 (init_image): Not here.
830
8312005-08-09 Richard M. Stallman <rms@gnu.org>
832
833 * bytecode.c (BYTE_CODE_QUIT): Throw t to Vthrow_on_input.
834
835 * lisp.h (QUIT): Throw t to Vthrow_on_input.
836
8372005-08-09 Thien-Thi Nguyen <ttn@gnu.org>
838
839 * floatfns.c (Fexpt): Use floats for negative exponent.
840
8412005-08-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
842
843 * gtkutil.c (xg_modify_menubar_widgets): Remove semicolon that
844 should not be there, causing menu display errors with GTK 2.6.9.
845
8462005-08-07 Richard M. Stallman <rms@gnu.org>
847
848 * floatfns.c (Fexpt): Undo previous change.
849
850 * dispnew.c (Fframe_or_buffer_changed_p): Take an arg
851 so it can be used with various state vectors.
852
853 * emacs.c (endif): Convert -script into -scriptload.
854 (standard_args): Add -scriptload. Allow -basic-display with one dash.
855
856 * fns.c (syms_of_fns): Add `emacs' to features.
857
858 * term.c (set_terminal_modes): If no TS_termcap_modes string,
859 output newlines to scroll the old screen contents off the screen.
860
8612005-08-06 Thien-Thi Nguyen <ttn@gnu.org>
862
863 * floatfns.c (Fexpt): Use floats for negative exponent.
864 Reported by D Goel.
865
8662005-08-02 Richard M. Stallman <rms@gnu.org>
867
868 * frame.c (Fframe_char_width): Doc fix.
869
8702005-07-30 Juanma Barranquero <lekktu@gmail.com>
871
872 * xdisp.c (syms_of_xdisp) <redisplay-end-trigger-functions>:
873 Defvar it.
874
8752005-07-28 Juanma Barranquero <lekktu@gmail.com>
876
877 * w32fns.c (my_set_window_pos, my_show_window): Don't declare.
878 (my_create_window, my_create_tip_window): Make static.
879
880 * w32term.c (my_show_window, my_set_window_pos, my_set_focus)
881 (my_set_foreground_window, my_destroy_window): Make static.
882
8832005-07-26 Paul Eggert <eggert@cs.ucla.edu>
884
885 Merge gnulib getopt implementation into Emacs.
886
887 * s/cygwin.h (C_SWITCH_SYSTEM): Remove, since gettext.h is
888 now part of lib-src.
889
8902005-07-26 Stefan Monnier <monnier@iro.umontreal.ca>
891
892 * eval.c (Fdefvar): Allow (defvar enable-multibyte-characters).
893
8942005-07-25 Jason Rumney <jasonr@gnu.org>
895
896 * w32menu.c (w32_menu_display_help): Suppress tooltip when
897 navigating menus with the keyboard.
898
8992005-07-23 Richard M. Stallman <rms@gnu.org>
900
901 * insdel.c (syms_of_insdel): staticpro combine_after_change_buffer.
902
903 * bytecode.c (MAYBE_GC): Test gc_cons_threshold and
904 gc_relative_threshold, one by one.
905
906 * keyboard.c (read_char): Test gc_cons_threshold.
907 (syms_of_keyboard): staticpro Qecho_area_clear_hook.
908
909 * eval.c (Feval, Ffuncall): Test gc_cons_threshold and
910 gc_relative_threshold, one by one.
911
912 * alloc.c (gc_cons_threshold): Not static.
913 (gc_cons_combined_threshold): Var deleted.
914 (gc_relative_threshold): New variable.
915 (Fgarbage_collect, init_alloc_once): Compute gc_relative_threshold
916 instead of gc_cons_combined_threshold.
917
918 * lisp.h (gc_cons_threshold, gc_relative_threshold): Declare.
919 (gc_cons_combined_threshold): Declaration deleted.
920
9212005-07-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
922
923 * mac.c: Don't include stdlib.h or string.h.
924 (Fdo_applescript, Fmac_file_name_to_posix)
925 (Fmac_file_name_to_posix): Doc fixes.
926 [TARGET_API_MAC_CARBON] (Fmac_get_preference)
927 (Fmac_code_convert_string): Likewise.
928 [MAC_OSX] (init_mac_osx_environment): Fall back on terminal mode
929 if the executable is not contained in a bundle.
930
931 * macfns.c: Don't include stdlib.h or string.h. Include atimer.h.
932 (gray_width, gray_height): Remove defines.
933 (gray_bits, gray_bitmap_width, gray_bitmap_height)
934 (gray_bitmap_bits): Remove variables.
935 (lispy_function_keys): Remove extern.
936 (free_frame_menubar): Add extern.
937 (x_window_to_frame): Remove function.
938 (unwind_create_tip_frame): Add declaration.
939 (x_set_name_internal): New function.
940 (x_set_name, x_set_title): Use it.
941 (Fx_create_frame, Fx_display_grayscale_p, Fx_display_pixel_width)
942 (Fx_display_pixel_height, Fx_display_planes)
943 (Fx_display_color_cells, Fx_server_max_request_size)
944 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
945 (Fx_display_mm_height, Fx_display_mm_width)
946 (Fx_display_backing_store, Fx_display_visual_class)
947 (Fx_display_save_under, Fx_synchronize, Fx_show_tip): Doc fixes.
948
949 * macmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
950
951 * macselect.c (Fx_own_selection_internal): Follow error conventions.
952 (Fx_get_selection_internal, Fx_selection_owner_p)
953 (Fx_selection_exists_p): Doc fixes.
954 (syms_of_macselect) <selection-converter-alist>: Likewise.
955
9562005-07-21 Juanma Barranquero <lekktu@gmail.com>
957
958 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
959
960 * ccl.c (Fregister_ccl_program): Fix typos in docstring.
961 (Fccl_execute_on_string): Likewise; add usage info.
962
963 * composite.c (Fcompose_region_internal)
964 (Fcompose_string_internal):
965 Improve argument/docstring consistency.
966
967 * minibuf.c (Fminibuffer_prompt_end, Feval_minibuffer):
968 Fix typos in docstrings.
969
970 * textprop.c (Fnext_char_property_change)
971 (Fprevious_char_property_change): Doc fixes.
972
973 * window.c (Fset_window_margins, Fset_window_fringes):
974 Improve argument/docstring consistency.
975
976 * xfaces.c (Finternal_lisp_face_p): Doc fix.
977
9782005-07-21 Andreas Schwab <schwab@suse.de>
979
980 * eval.c (restore_stack_limits): Return a value.
981
9822005-07-20 Juanma Barranquero <lekktu@gmail.com>
983
984 * eval.c (Fdefvar): Doc fix.
985
9862005-07-20 Kim F. Storm <storm@cua.dk>
987
988 * fileio.c (Fdo_auto_save, do_auto_save_unwind):
989 Use make_save_value to unwind protect stream.
990
991 * lread.c (Fload, load_unwind):
992 Use make_save_value to unwind protect stream.
993
9942005-07-19 Juanma Barranquero <lekktu@gmail.com>
995
996 * eval.c (Fprog2, Fcalled_interactively_p),
997 (syms_of_eval) <debug-on-quit>: Doc fixes.
998 (syms_of_eval) <max-specpdl-size>:
999 (Finteractive_p): Fix typos in docstrings.
1000
10012005-07-19 Kim F. Storm <storm@cua.dk>
1002
1003 * w32fns.c (Vx_hand_shape): Variable removed.
1004 (syms_of_w32fns): Intern and staticpro Qw32_charset_default.
1005
10062005-07-19 Kenichi Handa <handa@m17n.org>
1007
1008 * fns.c (Fstring_as_multibyte): Escape backslashes in the docstring.
1009
10102005-07-18 Stefan Monnier <monnier@iro.umontreal.ca>
1011
1012 * buffer.h (Fgenerate_new_buffer_name): Declare (for use in coding.c).
1013
10142005-07-18 Kim F. Storm <storm@cua.dk>
1015
1016 * frame.h (struct frame): New member already_hscrolled_p.
1017
1018 * xdisp.c (redisplay_internal): Only try to hscroll each frame once
1019 to avoid redisplay looping hscrolling back and forth ad infinitum.
1020
10212005-07-18 Juri Linkov <juri@jurta.org>
1022
1023 * buffer.c (scroll-up-aggressively, scroll-down-aggressively):
1024 * keymap.c (Fminor_mode_key_binding):
1025 * macterm.c (mac-emulate-three-button-mouse):
1026 Delete duplicate duplicate words.
1027
10282005-07-18 Ken Raeburn <raeburn@gnu.org>
1029
1030 * minibuf.c (Ftest_completion): Fix odd syntax in test.
1031
10322005-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1033
1034 * macfns.c (x_set_cursor_color): Use XSetBackground and XSetForeground.
1035
1036 * macgui.h (struct _XGC): New struct.
1037 (GC): Use it.
1038 (GCForeground, GCBackground, GCFont): Use X11 mask values.
1039 (XCreateGC, XParseGeometry): Move externs to macterm.h.
1040
1041 * macterm.c (x_bitmap_icon, x_make_frame_visible): Remove declarations.
1042 (XSetFont): Add declaration.
1043 (mac_set_forecolor, mac_set_backcolor, mac_set_colors):
1044 Remove functions.
1045 (GC_FORE_COLOR, GC_BACK_COLOR, GC_FONT, MAC_WINDOW_NORMAL_GC):
1046 New defines.
1047 (XDrawLine, mac_draw_line_to_pixmap, XClearWindow)
1048 (mac_draw_bitmap, XCreatePixmapFromBitmapData, XFillRectangle)
1049 (mac_draw_rectangle, mac_draw_string_common, mac_scroll_area):
1050 Use them.
1051 (mac_erase_rectangle): New function.
1052 (XClearArea, x_draw_fringe_bitmap, x_clear_glyph_string_rect)
1053 (x_draw_stretch_glyph_string): Use it.
1054 (XChangeGC, XCreateGC, XGetGCValues, XSetForeground)
1055 (XSetBackground, XSetFont): Adjust for new GC implementation.
1056 (x_draw_fringe_bitmap, x_draw_box_rect): Use GC to set colors.
1057 (XTset_vertical_scroll_bar): Clear area under scroll bar.
1058
1059 * macterm.h (struct mac_display_info): Change types of
1060 scratch_cursor_gc black_relief.gc, and white_relief.gc to GC.
1061 (XCreateGC, XParseGeometry): Move externs from macgui.h.
1062
1063 * xfaces.c [MAC_OS] (XCreateGC): Remove extern.
1064
10652005-07-16 Richard M. Stallman <rms@gnu.org>
1066
1067 * buffer.c (Fmake_overlay): Doc fix.
1068
10692005-07-16 Eli Zaretskii <eliz@gnu.org>
1070
1071 * w32proc.c (syms_of_ntproc): staticpro Qhigh, Qlow,
1072 Vw32_valid_locale_ids, and Vw32_valid_codepages.
1073
10742005-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1075
1076 * mac.c [TARGET_API_MAC_CARBON] (Fmac_code_convert_string):
1077 Use Fstring_as_unibyte instead of string_make_unibyte.
1078
10792005-07-15 Richard M. Stallman <rms@gnu.org>
1080
1081 * xdisp.c (select_frame_for_redisplay): Use find_symbol_value.
1082
10832005-07-15 Kim F. Storm <storm@cua.dk>
1084
1085 * xdisp.c: Fix redisplay loop in last change.
1086 (IT_POS_VALID_AFTER_MOVE_P): New macro.
1087 (move_it_vertically_backward, move_it_by_lines): Use it.
1088
10892005-07-14 Jason Rumney <jasonr@gnu.org>
1090
1091 * w32.c (init_environment): Default HOME directory to user's
1092 appdata directory if possible.
1093
10942005-07-14 Kim F. Storm <storm@cua.dk>
1095
1096 * .gdbinit (pitx): Fix output format. Print string charpos.
1097
1098 * lread.c (syms_of_lread): Initialize seen_list.
1099
1100 * search.c (syms_of_search): Staticpro searchbuf.whitespace_regexp.
1101
1102 * syntax.c (syms_of_syntax): Staticpro lisp objects in gl_state.
1103 Staticpro re_match_object.
1104
11052005-07-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1106
1107 * macselect.c (get_scrap_target_type_list): Avoid NULL pointer
1108 dereference.
1109
1110 * macterm.c (mac_window_to_frame): Remove duplicate define.
1111
11122005-07-14 Kenichi Handa <handa@m17n.org>
1113
1114 * coding.c (code_convert_region_unwind): ARG is changed to a cons.
1115 (code_convert_region): Adjust for the above change.
1116 (set_conversion_work_buffer): If the work buffer is already in
1117 use, generate a new buffer and return it. Otherwise return Qnil.
1118 (run_pre_post_conversion_on_str): Adjust for the above change.
1119 (run_pre_write_conversin_on_c_str): Likewise.
1120
11212005-07-13 Kim F. Storm <storm@cua.dk>
1122
1123 * xdisp.c (start_display): Don't reseat to next visible line start
1124 if current start position is in a string or image.
1125 (move_it_vertically_backward): Be sure to move out of strings and
1126 images when moving it2 forward.
1127 (move_it_by_lines): When moving forward, move to next buffer
1128 position if we end up in a string or image. When moving backward,
1129 count rows moved over when moving to start of current row in case
1130 row starts in middle of a string or image. Also move further
1131 backward if we end up in a string or image.
1132 (try_cursor_movement): If overlay string spans multiple lines,
1133 move backward to set cursor on start of an overlay string.
1134 (cursor_row_p): Row is ok if cursor is at newline from string, but
1135 string starts on this line (so we always position cursor at start
1136 of string).
1137
1138 * indent.c (Fvertical_motion): If start position is on an image,
1139 don't move back if we move too far (that's almost certain to happen).
1140
1141 * xdisp.c (cursor_row_fully_visible_p): Allow partially visible
1142 row in minibuffer windows.
1143 (try_window): Don't check margins in minibuffer windows.
1144
11452005-07-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1146
1147 * macterm.c: Don't include stdlib.h or composite.h.
1148 (x_use_underline_position_properties, last_mouse_press_frame)
1149 (x_noop_count, Qvendor_specific_keysyms): Remove unused variables.
1150 (syms_of_macterm, mac_initialize): Don't initialize them.
1151 (waiting_for_input, initial_argv, initial_argc)
1152 (Vcommand_line_args, Vx_no_window_manager, errno, window_scroll)
1153 (set_frame_menubar, path_from_vol_dir_name): Remove externs.
1154 (extra_keyboard_modifiers): Fix type in extern.
1155 (x_window_to_frame, x_window_to_scroll_bar): Remove declarations.
1156 (x_scroll_bar_report_motion): Add argument types to declaration.
1157 (mac_compute_glyph_string_overhangs): Add declaration.
1158 (disable_mouse_highlight): Remove unused variable.
1159 [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click)
1160 (x_scroll_bar_handle_press, x_scroll_bar_handle_release)
1161 (x_scroll_bar_handle_drag): Remove argument `timestamp'.
1162 All callers changed.
1163 [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click): Don't set
1164 timestamp.
1165 [USE_CARBON_EVENTS] (mac_handle_mouse_event): Likewise.
1166 (x_scroll_bar_create, XTset_vertical_scroll_bar): Show scroll bar
1167 only when its width is less than the height.
1168 (XTredeem_scroll_bar): Sync with xterm.c.
1169 (font_name_table, font_name_table_size, font_name_count):
1170 Make static.
1171 (drag_and_drop_file_list): Remove variable. Previous use is now
1172 local to function.
1173 (do_ae_open_documents): Move DRAG_N_DROP event construction part
1174 from XTread_socket.
1175 (XTread_socket): Consolidate setting of event timestamp.
1176 Move DRAG_N_DROP event construction part to do_ae_open_documents.
1177 Support extra_keyboard_modifiers.
1178
1179 * xfaces.c (try_font_list) [MAC_OS]: Try font family name
1180 beginning with that for ASCII.
1181
11822005-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
1183
1184 * alloc.c (gc_cons_combined_threshold, Vgc_cons_percentage): New vars.
1185 (Fgarbage_collect, init_alloc_once): Set gc_cons_combined_threshold.
1186 (syms_of_alloc): Declare gc-cons-percentage.
1187
1188 * eval.c (Feval, Ffuncall):
1189 * keyboard.c (read_char):
1190 * bytecode.c (MAYBE_GC): Use gc_cons_combined_threshold.
1191
1192 * lisp.h (gc_cons_combined_threshold): Declare.
1193
11942005-07-12 Kim F. Storm <storm@cua.dk>
1195
1196 * coding.c (Qprocess_argument):
1197 * coding.h (Qprocess_argument): Remove unused var.
1198
1199 * xselect.c (intern): Remove dup. intern and staticpro for QTIMESTAMP.
1200
12012005-07-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1202
1203 * mac.c [!TARGET_API_MAC_CARBON]: Include charset.h, coding.h, and
1204 Endian.h.
1205 [!MAC_OSX] (fchmod, fchown): New functions.
1206 (mac_get_code_from_arg): Don't accept Lisp integer as argument.
1207 Use SBYTES and EndianU32_BtoN.
1208 (mac_get_object_from_code): Return 4 byte string even if argument
1209 is 0. Use make_unibyte_string and EndianU32_NtoB.
1210 (Fmac_get_file_creator, Fmac_get_file_type, Fmac_set_file_creator)
1211 (Fmac_set_file_type): Fix documents and argument declarations.
1212 Don't specify kFSCatInfoNodeFlags. Support Mac OS Classic.
1213
12142005-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
1215
1216 * window.c (Frecenter): Yet another int/Lisp_Object mixup (YAILOM).
1217
12182005-07-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1219
1220 * xfaces.c (x_update_menu_appearance): Use fontSet resource for
1221 Lucid if X_I18N, font otherwise.
1222
12232005-07-10 Steven Tamm <steventamm@mac.com>
1224
1225 * mac.c (Fmac_get_file_type, Fmac_get_file_creator): Add.
1226 (Fmac_set_file_type, Fmac_set_file_creator): Add.
1227 (mac_get_object_from_code, mac_get_code_from_arg): Add.
1228
12292005-07-10 Richard M. Stallman <rms@gnu.org>
1230
1231 * lread.c (Qeval_buffer_list, Veval_buffer_list): New vars.
1232 (syms_of_lread): Set up eval-buffer-list.
1233 (Feval_buffer, Feval_region): Bind eval-buffer-list.
1234
12352005-07-08 Richard M. Stallman <rms@gnu.org>
1236
1237 * eval.c (Fdefvar): Allow defvaring a constant to itself quoted.
1238
12392005-07-08 Kim F. Storm <storm@cua.dk>
1240
1241 * keyboard.c (menu_bar_items): Don't GCPRO menu_bar_items_vector here.
1242 (syms_of_keyboard): Initialize and staticpro menu_bar_items_vector.
1243
12442005-07-07 Kim F. Storm <storm@cua.dk>
1245
1246 * window.c (Frecenter): Fix last change (set iarg before use).
1247
12482005-07-06 Richard M. Stallman <rms@gnu.org>
1249
1250 * window.c (Frecenter): When arg is inside the scroll margin,
1251 move it out of the margin.
1252
12532005-07-06 Jason Rumney <jasonr@gnu.org>
1254
1255 * w32console.c (initialize_w32_display): Detect when the console
1256 dimensions are insane, and default to 80x25 instead.
1257 (w32_use_full_screen_buffer): Default to NIL.
1258
12592005-07-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1260
1261 * macterm.c (mac_draw_vertical_window_border): Use foreground of
1262 VERTICAL_BORDER_FACE_ID for vertical border line.
1263 (mac_encode_char): Call check_ccl_update in advance.
1264 (mac_to_x_fontname, x_font_name_to_mac_font_name)
1265 (init_font_name_table, mac_do_list_fonts, XLoadQueryFont):
1266 Don't assume that font family length is less than 32.
1267 (x_compute_min_glyph_bounds): Make static.
1268 (x_load_font): Never set fonts_changed_p to zero.
1269
12702005-07-04 Lute Kamstra <lute@gnu.org>
1271
1272 * Update FSF's address in GPL notices.
1273
12742005-07-03 Richard M. Stallman <rms@gnu.org>
1275
1276 * xdisp.c (try_window): Fix previous change in how it handles
1277 a partially-visible line or one only partly past the margin.
1278
1279 * window.c (window_scroll_pixel_based): Take account
1280 of this_scroll_margin when finding point when scrolling up.
1281
12822005-06-29 Ralf Angeli <angeli@iwi.uni-sb.de>
1283
1284 * window.c (window_scroll_pixel_based, window_scroll_line_based):
1285 Handle `scroll-preserve-screen-position' non-nil, non-t specially.
1286 (syms_of_window): <scroll-preserve-screen-position>: Doc fix.
1287
12882005-07-02 Juri Linkov <juri@jurta.org>
1289
1290 * w32term.c (w32_draw_vertical_window_border): Use foreground of
1291 VERTICAL_BORDER_FACE_ID for vertical border line.
1292
12932005-07-02 Eli Zaretskii <eliz@gnu.org>
1294
1295 * fileio.c (Fcopy_file): Rearrange the code that calls fchown and
1296 fchmod so that chmod doesn't get called on MSDOS before the file
1297 is closed.
1298
12992005-07-01 Jason Rumney <jasonr@gnu.org>
1300
1301 * w32term.c (cleartype_active): New flag for enabling sub-pixel
1302 workaround.
1303 (w32_initialize): Initialize it.
1304 (w32_native_per_char_metric): Allow a couple of extra pixels when
1305 Cleartype is active.
1306
1307 * w32term.c (w32_initialize): Move check for screen reader here
1308 from syms_of_w32term.
1309
13102005-06-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1311
1312 * xterm.c (handle_one_xevent): bzero compose_status when nbytes
1313 is not zero.
1314
13152005-07-01 Masatake YAMATO <jet@gyve.org>
1316
1317 * emacs.c (main): Passing ADD_NO_RANDOMIZE to `personality'.
1318
13192005-06-30 Juri Linkov <juri@jurta.org>
1320
1321 * xdisp.c (x_draw_vertical_border): If left fringe is not present
1322 decrease x coord of vertical border by 1 pixel to not occupy text
1323 area of the right window.
1324
1325 * xterm.c (x_draw_vertical_window_border): Use foreground of
1326 VERTICAL_BORDER_FACE_ID for vertical border line.
1327
1328 * term.c (turn_on_face): In standout mode apply specified
1329 fg to bg, and specified bg to fg (this makes the logic of
1330 inversion on terminal consistent with X).
1331
13322005-06-29 Juanma Barranquero <lekktu@gmail.com>
1333
1334 * eval.c (user_variable_p_eh): New function.
1335 (Fuser_variable_p): Use it. Clarify docstring.
1336 Return t for aliases of user options, nil for alias loops.
1337
13382005-06-27 Richard M. Stallman <rms@gnu.org>
1339
1340 * eval.c (Fdefvar): Improve error message.
1341
13422005-06-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1343
1344 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Fix last
1345 change.
1346
13472005-06-27 Juanma Barranquero <lekktu@gmail.com>
1348
1349 * eval.c (Fdefvar): Don't try to set constant symbols.
1350
13512005-06-25 Richard M. Stallman <rms@gnu.org>
1352
1353 * macfns.c (Fx_show_tip): Pass new arg to try_window.
1354
1355 * w32fns.c (Fx_show_tip): Pass new arg to try_window.
1356
1357 * xfns.c (Fx_show_tip): Pass new arg to try_window.
1358
1359 * xdisp.c (try_window): New arg CHECK_MARGINS. Calls changed.
1360 (redisplay_window): Handle try_window reporting point in scroll margin.
1361
1362 * dispextern.h (try_window): Declare new arg.
1363
1364 * fileio.c (Fcopy_file): New arg PRESERVE_UID_GID.
1365 Use fchmod to copy the file modes.
1366 (Frename_file): Don't copy UID and GID here;
1367 instead, specify t for PRESERVE_UID_GID when calling Fcopy_file.
1368
1369 * eval.c (call_debugger): Take full care of extending stack limits
1370 to make space for the debugger, and restore the change afterward.
1371 Bind debug-on-error to nil.
1372 (restore_stack_limits): New subroutine.
1373 (Fsignal): Extend specpdl bound along with eval depth bound,
1374 for calling edebug. Don't do either one, for calling debugger.
1375 (find_handler_clause): Don't bind debug-on-error here.
1376 Don't unbind anything either.
1377 Temporarily advance max_specpdl_size for calling
1378 internal_with_output_to_temp_buffer.
1379 (grow_specpdl): Don't alter max_specpdl_size before signaling
1380 an error.
1381 (syms_of_eval) <max-specpdl-size>: Doc fix.
1382
1383 * lread.c (read1): 0.0e+NaN should make a "positive" NaN.
1384
13852005-06-24 Eli Zaretskii <eliz@gnu.org>
1386
1387 * fileio.c (Frename_file): Undo last change: no need to ifdef away
1388 chown on DOS_NT platforms.
1389
1390 * w32.c (sys_chown): New function.
1391
1392 * s/ms-w32.h (chown): New; define to sys_chown.
1393
13942005-06-24 Juanma Barranquero <lekktu@gmail.com>
1395
1396 * xdisp.c (syms_of_xdisp) <nobreak-char-display>: Doc fix.
1397 (syms_of_xdisp) <void-text-area-pointer>: Doc fix.
1398
1399 * fileio.c (Frename_file)[!DOS_NT]: Don't call chown on MSDOS/Windows.
1400
14012005-06-23 Richard M. Stallman <rms@gnu.org>
1402
1403 * xdisp.c (get_next_display_element): Finish reversing the tests of
1404 Vnobreak_char_display.
1405
1406 * xdisp.c (Vnobreak_char_display): Rename from Vshow_nonbreak_escape.
1407 All uses changed.
1408 (Qnobreak_space): Rename from Qno_break_space. All uses changed.
1409 (syms_of_xdisp): Define nobreak-char-display and nobreak-space.
1410
1411 * fileio.c (Frename_file): Preserve owner and group, if possible,
1412 when copying.
1413
14142005-06-23 Juanma Barranquero <lekktu@gmail.com>
1415
1416 * abbrev.c (Funexpand_abbrev):
1417 * category.c (Fmake_category_set):
1418 * dispnew.c (Fsleep_for, Fsit_for):
1419 * editfns.c (Fsubst_char_in_region):
1420 * eval.c (Fdefvar, Fdefconst, Feval, Ffuncall):
1421 * frame.c (make_frame_without_minibuffer):
1422 * lread.c (read_vector):
1423 * macfns.c (check_x_frame):
1424 * process.c (Fstop_process, Fcontinue_process):
1425 * search.c (Freplace_match):
1426 * syntax.c (Fstring_to_syntax):
1427 * w32fns.c (check_x_frame, check_x_display_info):
1428 * xfaces.c (x_supports_face_attributes_p):
1429 * xselect.c (Fx_own_selection_internal): Follow error conventions.
1430
1431 * image.c (fn_png_init_io): Don't define it.
1432 (init_png_functions) [HAVE_NTGUI]: Don't initialize fn_png_init_io.
1433 (png_read_from_file): New function, based on png_read_from_memory.
1434 (png_load): Use it, instead of fn_png_init_io.
1435
14362005-06-23 Kim F. Storm <storm@cua.dk>
1437
1438 * search.c (Fmatch_data): Remove evaporate option.
1439 (Fset_match_data): Do not mention evaporate option in doc string.
1440 Add commentary explaining evaporate arg (for internal use only).
1441 (unwind_set_match_data): Add comment on evaporate use.
1442
14432005-06-22 Miles Bader <miles@gnu.org>
1444
1445 * xfaces.c (Qvertical_border): Rename from `Qvertical_divider'.
1446 (realize_basic_faces, syms_of_xfaces): Update references to it.
1447 * dispextern.h (enum face_id): Rename `VERTICAL_DIVIDER_FACE_ID'
1448 to `VERTICAL_BORDER_FACE_ID'.
1449 * dispnew.c (build_frame_matrix_from_leaf_window): Update references.
1450
14512005-06-21 Juri Linkov <juri@jurta.org>
1452
1453 * dispextern.h: Add extern Qframe_set_background_mode.
1454
1455 * xfaces.c: Rename obsolete function Qframe_update_face_colors to
1456 Qframe_set_background_mode.
1457
1458 * frame.c (Fmodify_frame_parameters):
1459 Call frame-set-background-mode after changing the background color
1460 on non-window non-dos branch.
1461
14622005-06-21 Juanma Barranquero <lekktu@gmail.com>
1463
1464 * fns.c (Fchar_table_range):
1465 * process.c (Fmake_network_process): Fix spellings.
1466
14672005-06-20 Kim F. Storm <storm@cua.dk>
1468
1469 * fns.c (Fsort): Doc fix.
1470
14712005-06-20 Miles Bader <miles@gnu.org>
1472
1473 * xfaces.c (Qvertical_divider): New variable.
1474 (realize_basic_faces): Realize its face.
1475 (syms_of_xfaces): Initialize it.
1476
1477 * dispextern.h (enum face_id): Add `VERTICAL_DIVIDER_FACE_ID'.
1478
1479 * dispnew.c (build_frame_matrix_from_leaf_window): Display vertical
1480 window-separator on ttys using `vertical-divider' face by default.
1481
14822005-06-17 Richard M. Stallman <rms@gnu.org>
1483
1484 * xdisp.c (get_next_display_element):
1485 Reverse test of Vshow_nonbreak_escape.
1486
1487 * term.c (produce_special_glyphs): Use spec_glyph_lookup_face.
1488 (Ftty_no_underline): New function.
1489 (syms_of_term): defsubr it.
1490
1491 * keyboard.c (read_char): Call restore_getcjmp after jump occurs.
1492
1493 * dispnew.c (spec_glyph_lookup_face): New function.
1494 (build_frame_matrix_from_leaf_window): Use it.
1495
1496 * dispextern.h (spec_glyph_lookup_face): Add declaration.
1497
1498 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
1499
15002005-06-12 Richard M. Stallman <rms@gnu.org>
1501
1502 * keyboard.c (read_char): After catching a longjmp,
1503 call restore_getcjmp.
1504
15052005-06-17 Juanma Barranquero <lekktu@gmail.com>
1506
1507 * xselect.c (lisp_data_to_selection_data): Fix spelling.
1508
15092005-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1510
1511 * macterm.c (mac_compute_glyph_string_overhangs): Don't set
1512 overhangs unless the given glyph type is noncomposite CHAR_GLYPH.
1513 [USE_CARBON_EVENTS] (mac_convert_event_ref): Convert dead key down
1514 events.
1515 (XTread_socket): Don't pass keyboard events with the option
1516 modifier to the system when Vmac_command_key_is_meta is nil or
1517 Vmac_option_modifier is non-nil.
1518 [USE_CARBON_EVENTS] (read_socket_inev): New variable.
1519 [USE_CARBON_EVENTS] (init_command_handler): Fix argument.
1520 [USE_CARBON_EVENTS] (mac_handle_mouse_event): New Carbon event
1521 handler function.
1522 (install_window_handler) [USE_CARBON_EVENTS]: Install it.
1523 (XTread_socket) [USE_CARBON_EVENTS]: Move mouse wheel event
1524 handler part to mac_handle_mouse_event.
1525
15262005-06-14 Juanma Barranquero <lekktu@gmail.com>
1527
1528 * eval.c (Fdefvaralias): Rename arguments SYMBOL and ALIASED to
1529 NEW-ALIAS and BASE-VARIABLE, respectively.
1530
15312005-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
1532
1533 * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
1534 (get_phys_cursor_geometry, format_mode_line_unwind_data)
1535 (get_line_height_property, x_produce_glyphs): Remove unused vars.
1536
1537 * coding.c (run_pre_post_conversion_on_str): Remove unused var `buf'.
1538
15392005-06-13 Eli Zaretskii <eliz@gnu.org>
1540
1541 * w32term.c (x_use_underline_position_properties): New variable.
1542 (x_draw_glyph_string): Remind in a comment to change doc string of
1543 x-use-underline-position-properties if/when underline positioning
1544 is implemented.
1545 (syms_of_w32term): DEFVAR_BOOL x-use-underline-position-properties,
1546 and initialize it to nil.
1547
15482005-06-12 Jason Rumney <jasonr@gnu.org>
1549
1550 * w32fns.c (NEWOPENFILENAME): New struct.
1551 (Fx_file_dialog): Use it to trick the system into giving us up to
1552 date dialogs on systems that are documented to support it.
1553 Do not set OFN_FILEMUSTEXIST flag if looking for a directory.
1554
15552005-06-12 Eli Zaretskii <eliz@gnu.org>
1556
1557 * w32fns.c (w32_abort): Use the MB_YESNO dialog instead of
1558 MB_ABORTRETRYIGNORE. Never return, even if DebugBreak does.
1559
15602005-06-11 Eli Zaretskii <eliz@gnu.org>
1561
1562 * image.c (x_create_x_image_and_pixmap) [HAVE_NTGUI]: Cast 4th arg
1563 to CreateDIBSection to avoid a compiler warning.
1564 (pbm_load): Cast 3rd arg to IMAGE_BACKGROUND to avoid a compiler
1565 warning.
1566 (png_load): Cast return values of fn_png_create_read_struct and
1567 fn_png_create_info_struct, to avoid compiler warnings on W32.
1568 Cast 3rd arg to IMAGE_BACKGROUND and image_background_transparent
1569 to avoid compiler warnings.
1570 (jpeg_load): Cast return value of fn_jpeg_std_error to avoid a
1571 compiler warning on W32. Cast 3rd arg to IMAGE_BACKGROUND to
1572 avoid a compiler warning.
1573 (tiff_load): Cast return values of fn_TIFFOpen and
1574 fn_TIFFClientOpen to avoid compiler warning on W32. Cast 3rd arg
1575 to IMAGE_BACKGROUND to avoid a compiler warning.
1576 (gif_load): Cast return values of fn_DGifOpenFileName and
1577 fn_DGifOpen to avoid compiler warnings on W32. Cast 3rd arg to
1578 IMAGE_BACKGROUND to avoid a compiler warning.
1579 (DrawText) [HAVE_NTGUI || MAC_OS]: If already defined, undef
1580 before redefining.
1581
1582 * w32bdf.c (create_offscreen_bitmap): Cast `bitsp' to `void **' in
1583 the call to CreateDIBSection, to avoid a compiler warning.
1584
15852005-06-11 Jason Rumney <jasonr@gnu.org>
1586
1587 * w32fns.c (Fx_file_dialog): Unblock input before falling back to
1588 minibuffer.
1589 * macfns.c (Fx_file_dialog): Likewise.
1590
15912005-06-10 Eli Zaretskii <eliz@gnu.org>
1592
1593 * makefile.w32-in ($(TEMACS)): Depend on addsection.exe.
1594
15952005-06-10 Juanma Barranquero <lekktu@gmail.com>
1596
1597 * process.c (syms_of_process) [ADAPTIVE_READ_BUFFERING]:
1598 * w32fns.c (syms_of_w32fns): Fix spellings.
1599
16002005-06-10 Eli Zaretskii <eliz@gnu.org>
1601
1602 * unexw32.c (COPY_CHUNK, COPY_PROC_CHUNK): Add a new argument
1603 `verbose'; print diagnostic messages only if it is non-zero.
1604 All callers changed to pass a zero value unless DEBUG_DUMP is defined
1605 in the environment.
1606 (copy_executable_and_dump_data): Print section names with %.8s.
1607
16082005-06-10 Masatake YAMATO <jet@gyve.org>
1609
1610 * xdisp.c (note_mode_line_or_margin_highlight): Call clear_mouse_face
1611 when mouse_face is not given.
1612
16132005-06-09 Luc Teirlinck <teirllm@auburn.edu>
1614
1615 * window.c (Fselect_window): Adapt call to Fselect_frame.
1616
1617 * lisp.h: Update EXFUN of Fselect_frame.
1618
1619 * keyboard.c (command_loop_1): Adapt call to Fselect_frame.
1620
1621 * frame.c (Fhandle_switch_frame, Fselect_frame): Delete unused arg
1622 no_enter.
1623 (Fset_mouse_position, Fset_mouse_pixel_position, Ficonify_frame):
1624 Adapt to above change.
1625
16262005-06-10 Juanma Barranquero <lekktu@gmail.com>
1627
1628 * fns.c (Fmemq, Fmaphash): Doc fixes.
1629
16302005-06-09 Juanma Barranquero <lekktu@gmail.com>
1631
1632 * xfaces.c (Fdisplay_supports_face_attributes_p):
1633 Fix typo in docstring.
1634
16352005-06-08 Steven Tamm <steventamm@mac.com>
1636
1637 * unexmacosx.c (copy_data_segment): Copy __la_sym_ptr2 section
1638 used by gcc4 on intel mac.
1639
16402005-06-09 Kim F. Storm <storm@cua.dk>
1641
1642 * search.c (Fmatch_data): Add optional RESEAT arg. Unchain markers
1643 in REUSE list if non-nil; free them if equal to evaporate.
1644 (Fset_match_data): Add optional RESEAT arg. Unchain markers in LIST
1645 if non-nil; free them if equal to evaporate. Use XCAR/XCDR.
1646 (restore_search_regs): Rename from restore_match_data. Uses changed.
1647 (unwind_set_match_data): New function.
1648 (record_unwind_save_match_data): New function like save-match-data.
1649
1650 * lisp.h (Fmatch_data, Fset_match_data): Fix EXFUN.
1651 (record_unwind_save_match_data): Add prototype.
1652 (restore_search_regs): Rename from restore_match_data.
1653
1654 * composite.c (compose_chars_in_text):
1655 * eval.c (do_autoload):
1656 * macmenu.c (set_frame_menubar):
1657 * process.c (read_process_output, exec_sentinel):
1658 * xmenu.c (set_frame_menubar):
1659 * xdisp.c (prepare_menu_bars, update_menu_bar, update_tool_bar):
1660 * w32menu.c (set_frame_menubar):
1661 Use record_unwind_save_match_data.
1662
16632005-06-08 Richard M. Stallman <rms@gnu.org>
1664
1665 * xdisp.c (get_next_display_element): Alter previous change:
1666 Distinguish Vshow_nonbreak_escape = t or not t.
1667 For t, use escape_glyph once again, as before previous change.
1668 Use space or hyphen for display, instead of the non-ASCII char.
1669 (syms_of_xdisp) <show-nonbreak-escape>: Doc fix.
1670
1671 * process.c (Fstart_process): Don't touch command_channel_p slot.
1672
1673 * process.h (struct process): Delete command_channel_p.
1674
16752005-06-07 Masatake YAMATO <jet@gyve.org>
1676
1677 * xdisp.c (note_mode_line_or_margin_highlight):
1678 Check the overlapping of re-rendering area to avoid flickering.
1679 (note_mouse_highlight): Call clear_mouse_face if PART
1680 is not ON_MODE_LINE nor ON_HEADER_LINE.
1681
16822005-06-07 Kim F. Storm <storm@cua.dk>
1683
1684 * process.c: Improve commentary for adaptive read buffering.
1685
16862005-06-06 Stefan Monnier <monnier@iro.umontreal.ca>
1687
1688 * xterm.c (x_create_toolkit_scroll_bar): Use XtNarrowScrollbars
1689 if available.
1690
16912005-06-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1692
1693 * macmenu.c (menu_quit_handler, install_menu_quit_handler):
1694 New functions for popping down menus on C-g.
1695 (set_frame_menubar, mac_menu_show): Call install_menu_quit_handler.
1696
1697 * macterm.c: Make mac_quit_char_modifiers and mac_quit_char_keycode
1698 non-static.
1699
1700 * config.in: Add HAVE_CANCELMENUTRACKING.
1701
17022005-06-06 Eli Zaretskii <eliz@gnu.org>
1703
1704 * w32heap.h (OFFSET_TO_RVA, RVA_TO_OFFSET, RVA_TO_PTR): Remove macros.
1705
1706 * unexw32.c (RVA_TO_PTR): Move here from w32heap.h.
1707
1708 * w32proc.c (RVA_TO_PTR): New macro.
1709
1710 * w32heap.c (RVA_TO_PTR): No need to #undef now.
1711
1712 * makefile.w32-in ($(BLD)/emacs.$(O), $(BLD)/w32select.$(O)):
1713 Depend on w32heap.h.
1714
17152005-06-06 Luc Teirlinck <teirllm@auburn.edu>
1716
1717 * keyboard.c (command_loop_1): Update Vthis_original_command.
1718
17192005-06-06 Richard M. Stallman <rms@gnu.org>
1720
1721 * xmenu.c (popup_get_selection): Undo previous change.
1722
17232005-06-06 Juri Linkov <juri@jurta.org>
1724
1725 * xdisp.c (Qno_break_space): New variable.
1726 (syms_of_xdisp): Initialize it.
1727 (get_next_display_element): Add no-break space and soft hypen
1728 codes for iso8859-2 and iso8859-5. Don't add `\' for them.
1729 Use `no-break-space' face for no-break spaces.
1730
17312005-06-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1732
1733 * window.c (delete_window): Handle the case where a h/vchild has
1734 a h/vchild.
1735
17362005-06-05 Eli Zaretskii <eliz@gnu.org>
1737
1738 * w32.c (sys_setsockopt): Change arg 4 to `const void *'. In the
1739 call to pfn_setsockopt, cast optval to `const char *'.
1740
17412005-06-04 Eli Zaretskii <eliz@gnu.org>
1742
1743 * w32.c (gettimeofday): Use struct _timeb, not struct timeb.
1744 (open_unc_volume): Cast return value of map_w32_filename, to avoid
1745 compiler warnings.
1746
1747 * s/ms-w32.h (fileno): Don't define if already defined.
1748
1749 * emacs.c: Include w32heap.h, to avoid compiler warning about sbrk.
1750
1751 * makefile.w32-in (DOC): Define to point to the generated DOC-X.
1752
17532005-06-04 Richard M. Stallman <rms@gnu.org>
1754
1755 * xmenu.c (popup_get_selection): Click not in menu deactivates menu.
1756
17572005-06-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1758
1759 * macmenu.c (cleanup_popup_menu): New function.
1760 (Fx_popup_menu): Unwind protect cleanup_popup_menu in case
1761 mac_menu_show Quit:s.
1762 (mac_menu_show): Quit on cancel if not popped up on click (i.e.
1763 a dialog).
1764
17652005-06-04 Kim F. Storm <storm@cua.dk>
1766
1767 * coding.c (decode_coding_string): Handle CODING_FINISH_INTERRUPT.
1768
1769 * callproc.c (Fcall_process): Don't use alloca to gradually
1770 increase size of buf, as it effectively uses twice the necessary
1771 space on the stack. Instead, pre-allocate buf of full size, and
1772 gradually increase the read size.
1773
1774 * bytecode.c (BYTE_CODE_QUIT): Check Vthrow_on_input.
1775
1776 * eval.c (unbind_to): Preserve value of Vquit_flag.
1777
1778 * xterm.c (handle_one_xevent): Also ignore mouse motion just
1779 before a button release event.
1780
17812005-06-03 Juanma Barranquero <lekktu@gmail.com>
1782
1783 * xfaces.c (Finternal_lisp_face_equal_p): Really report
1784 on faces in a frame, if the argument FRAME is non-nil.
1785 Improve argument/docstring consistency.
1786
17872005-06-02 Kim F. Storm <storm@cua.dk>
1788
1789 * xdisp.c (MODE_LINE_NOPROP_LEN): New macro.
1790 (x_consider_frame_title, Fformat_mode_line): Save offset into
1791 mode_line_noprop_buf rather than pointer, in case buffer is relocated.
1792
17932005-06-01 Kim F. Storm <storm@cua.dk>
1794
1795 * fns.c (mapcar1): Maybe exit loop if original sequence was modified.
1796
17972005-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1798
1799 * macterm.c (mac_to_x_fontname, mac_do_list_fonts): Set XLFD
1800 resolution fields for scalable fonts to 0.
1801
1802 * xfaces.c (build_scalable_font_name): Round pixel size to the
1803 nearest integer.
1804
18052005-06-01 Kim F. Storm <storm@cua.dk>
1806
1807 * xdisp.c (display_mode_line): Support nested calls to redisplay
1808 and format-mode-line. Set mode_line_target to MODE_LINE_DISPLAY.
1809
18102005-05-31 Stefan Monnier <monnier@iro.umontreal.ca>
1811
1812 * fileio.c (Finsert_file_contents):
1813 * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
1814
18152005-05-31 Kim F. Storm <storm@cua.dk>
1816
1817 * xdisp.c (mode_line_noprop_buf, mode_line_noprop_buf_end)
1818 (mode_line_noprop_ptr): Rename from frame_title_*.
1819 (store_mode_line_noprop_char): Rename from store_frame_title_char.
1820 (store_mode_line_noprop): Rename from store_frame_title.
1821 (mode_line_target): New enum to specify current output target
1822 for mode line formatting.
1823 (display_mode_element): Test it rather than frame_title_ptr and
1824 mode_line_string_list to determine where output should go.
1825 (mode_line_proptrans_alist, mode_line_string_alist): Make static.
1826 (Vmode_line_unwind_vector): New variable.
1827 (format_mode_line_unwind_data, unwind_format_mode_line):
1828 New functions for unwind protection in mode line formatting.
1829 (x_consider_frame_title): Use them and new local var 'title_start'
1830 to support nested calls to format-mode-line and redisplay.
1831 Set mode_line_target to MODE_LINE_TITLE.
1832 (Fformat_mode_line): Use them and new local var 'string_start' to
1833 support nested calls to format-mode-line and redisplay.
1834 Set mode_line_target to MODE_LINE_NOPROP or MODE_LINE_STRING.
1835 Don't trim trailing dashes.
1836 (decode_mode_spec): Don't make infinite number of trailing dashes
1837 for MODE_LINE_NOPROP and MODE_LINE_STRING targets.
1838 (syms_of_xdisp): Initialize and staticpro mode_line_string_face,
1839 mode_line_string_face_prop, and Vmode_line_unwind_vector.
1840 (init_xdisp): Initialize mode_line_noprop_ptr to start of _buf.
1841 Initialize mode_line_target to MODE_LINE_DISPLAY.
1842
18432005-05-29 Richard M. Stallman <rms@gnu.org>
1844
1845 * buffer.c (Fbuffer_local_value): Call indirect_variable.
1846
18472005-05-28 Masatake YAMATO <jet@gyve.org>
1848
1849 * xdisp.c (note_mode_line_or_margin_highlight): Change the
1850 pointer to a hand cursor when hoovering over a mouse-face.
1851
18522005-05-27 Kenichi Handa <handa@m17n.org>
1853
1854 * xterm.c (x_encode_char): Call check_ccl_update in advance.
1855
1856 * ccl.c: Now an element of Vccl_program_table is a vector of
1857 length 4, not 3.
1858 (ccl_get_compiled_code): New arg idx. Caller changed.
1859 Adjust for the change of Vccl_program_table.
1860 (setup_ccl_program): Adjust for the change of Vccl_program_table.
1861 (check_ccl_update): New function.
1862 (Fregister_ccl_program): Use ASET to set an element of a vector.
1863 Adjusted for the change of Vccl_program_table.
1864
1865 * ccl.h (struct ccl_program): New member idx.
1866 (check_ccl_update): Extern it.
1867
18682005-05-27 Juanma Barranquero <lekktu@gmail.com>
1869
1870 * image.c (Vimage_library_alist): Move from image.el.
1871 (syms_of_image): Defvar it.
1872 (lookup_image_type): Use it.
1873
1874 * buffer.c (Fbuffer_local_value): Make argument name match its use
1875 in docstring.
1876
18772005-05-26 Juanma Barranquero <lekktu@gmail.com>
1878
1879 * keyboard.c (Frecursive_edit): Fix typo in docstring.
1880 (Fposn_at_x_y): Make argument name match its use in docstring.
1881
18822005-05-26 Lute Kamstra <lute@gnu.org>
1883
1884 * eval.c (Frun_hooks): Mention run-mode-hooks in docstring.
1885
18862005-05-24 Masatake YAMATO <jet@gyve.org>
1887
1888 * xdisp.c (note_mode_line_or_margin_highlight): Use b and e
1889 as loop sentinels.
1890
18912005-05-24 Nick Roberts <nickrob@snap.net.nz>
1892
1893 * xmenu.c (Fx_popup_dialog): Add a third boolean argument to
1894 select frame title ("Question"/"Information").
1895 (xdialog_show): Use it.
1896
1897 * macmenu.c (Fx_popup_dialog, mac_dialog_show): As for xmenu.c.
1898
1899 * w32menu.c (Fx_popup_dialog, w32_dialog_show): As for xmenu.c.
1900
1901 * fns.c (Fyes_or_no_p, Fy_or_n_p): Call Fx_popup_dialog with
1902 a third argument (Qnil).
1903
1904 * lisp.h: x-popup-dialog can have three arguments.
1905
1906 * editfns.c (Fmessage_box): Use "Information" for frame title.
1907
19082005-05-23 Thien-Thi Nguyen <ttn@gnu.org>
1909
1910 * termcap.c [VMS]: Include <starlet.h>.
1911
19122005-05-23 Masatake YAMATO <jet@gyve.org>
1913
1914 * xdisp.c (note_mode_line_or_margin_highlight): Add code
1915 for mouse-face. Change the type of the first argument from `window'
1916 to `Lisp_Object'.
1917 (note_mouse_highlight): Call note_mode_line_or_margin_highlight with
1918 window instead of w.
1919
19202005-05-22 Andreas Schwab <schwab@suse.de>
1921
1922 * process.c (send_process): Move misplaced volatile.
1923
19242005-05-21 Richard M. Stallman <rms@gnu.org>
1925
1926 * xdisp.c (display_mode_element): If we're processing a list and
1927 padding is specified, put it after the last element.
1928
19292005-05-21 Eli Zaretskii <eliz@gnu.org>
1930
1931 * fileio.c (Fexpand_file_name) [DOS_NT]: Don't try to support
1932 "superroot" on DOS_NT systems.
1933
19342005-05-21 David Hunter <hunterd42@comcast.net> (tiny change)
1935
1936 * process.c (send_process): Restore the SIGPIPE handler if we
1937 catch a SIGPIPE.
1938
19392005-05-20 Juanma Barranquero <lekktu@gmail.com>
1940
1941 * image.c (lookup_image, png_read_from_memory): Remove hacks (and
1942 misleading comments).
1943 (DEF_IMGLIB_FN): Use C calling convention for image libraries.
1944
19452005-05-20 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
1946
1947 * window.c (Fwindow_inside_edges, Fwindow_inside_pixel_edges):
1948 Correct the right value.
1949
19502005-05-19 Nick Roberts <nickrob@snap.net.nz>
1951
1952 * keyboard.c (syms_of_keyboard): Remove Lisp variables
1953 post-command-idle-hook and post-command-idle-delay.
1954 (command_loop_1): Don't try to execute post-command-idle-hook.
1955
19562005-05-16 Kim F. Storm <storm@cua.dk>
1957
1958 * xdisp.c (handle_display_prop): Handle empty replacement.
1959 (handle_single_display_spec): Return -1 for empty replacement.
1960
1961 * keyboard.c (adjust_point_for_property): Skip empty overlay string.
1962
1963 * .gdbinit (pitx): Print more info about iterator.
1964
19652005-05-16 Andreas Schwab <schwab@suse.de>
1966
1967 * unexmacosx.c (unexec_realloc): Move declarations before statements.
1968
19692005-05-14 Richard M. Stallman <rms@gnu.org>
1970
1971 * xdisp.c (message3): Call cancel_echoing.
1972
1973 * alloc.c (Fmemory_full_p): New function.
1974 (syms_of_alloc): defsubr it.
1975
1976 * process.c (send_process_trap): Unblock SIGPIPE.
1977 (send_process): Reset SIGPIPE handler before reporting error.
1978
19792005-05-14 Nick Roberts <nickrob@snap.net.nz>
1980
1981 * emacs.c (syms_of_emacs): Fix doc string for system-type.
1982
19832005-05-13 Richard M. Stallman <rms@gnu.org>
1984
1985 * fileio.c (Ffind_file_name_handler): Handle lambda-exp as handler.
1986 (Finsert_file_contents): If we read 0 bytes from a special file,
1987 unlock the visited file if we locked it.
1988 (Fmake_symbolic_link, Frecent_auto_save_p): Doc fixes.
1989 (Ffile_exists_p, Ffile_symlink_p): Doc fixes.
1990
19912005-05-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1992
1993 * emacs.c (main) [MAC_OS8]: Call init_atimer before mac_term_init.
1994
1995 * keyboard.c (readable_events) [USE_TOOLKIT_SCROLL_BARS]:
1996 Regard toolkit scroll bar thumb drag events as squeezable and prevent
1997 redisplay from being paused by them.
1998
1999 * mac.c [!MAC_OSX]: Include keyboard.h and syssignal.h.
2000 [!MAC_OSX] (target_ticks): Remove variable.
2001 [!MAC_OSX] (check_alarm, pause, index): Remove functions.
2002 [!MAC_OSX && __MRC__] (sys_strftime): Likewise.
2003 [!MAC_OSX] (select): If fd 0 is not set in rfds and some input
2004 event occurs before timeout, behave as if the function were interrupted.
2005 [!MAC_OSX] (sigblock, sigsetmask, alarm): Simulate SIGALRM
2006 handling using Time Manager routines.
2007 [!MAC_OSX] (mac_atimer_task, mac_atimer_qlink, signal_mask):
2008 New variables.
2009 [!MAC_OSX] (mac_atimer_handler, set_mac_atimer, remove_mac_atimer)
2010 (setitimer): New functions.
2011
2012 * macfns.c, macmenu.c: Don't include signal.h.
2013
2014 * macterm.c [USE_TOOLKIT_SCROLL_BARS] (get_control_part_bounds):
2015 Rename from get_control_part_bound. All callers changed.
2016 (x_scroll_bar_clear): New function.
2017 (x_clear_frame): Use it.
2018 (XTset_vertical_scroll_bar): Don't call Draw1Control.
2019 (x_scroll_bar_handle_click): Change type of second argument from
2020 int to ControlPartCode.
2021 (check_alarm): Remove declaration.
2022 (XTread_socket) [!TARGET_API_MAC_CARBON]: Don't call it.
2023 (XTread_socket): Use ControlPartCode instead of SInt16.
2024
20252005-05-13 Nozomu Ando <nand@mac.com>
2026
2027 * unexmacosx.c: Include assert.h.
2028 (MACOSX_MALLOC_MULT16): New define.
2029 [MACOSX_MALLOC_MULT16] (ptr_in_unexec_regions): Determine whether
2030 ptr is in unexec regions by checking it is multiple of 16.
2031 (unexec_malloc_header_t): New typedef.
2032 (unexec_malloc, unexec_realloc, unexec_free): Store and use
2033 allocated size information in unexec_malloc_header.
2034
20352005-05-10 Richard M. Stallman <rms@gnu.org>
2036
2037 * xterm.c (noinclude): Add #undef.
2038
2039 * image.c, xfns.c, xmenu.c: Don't include signal.h.
2040
20412005-05-09 Juanma Barranquero <lekktu@gmail.com>
2042
2043 * fileio.c (Fexpand_file_name, Frename_file, Fadd_name_to_file)
2044 (Fmake_symbolic_link, Faccess_file, Frecent_auto_save_p):
2045 Doc fixes.
2046
2047 * dired.c (Ffile_name_completion): Make argument name
2048 match its use in docstring.
2049
20502005-05-08 Luc Teirlinck <teirllm@auburn.edu>
2051
2052 * eval.c (Fdefvaralias): Remove any pre-existing
2053 variable-documentation property of the alias.
2054
20552005-05-07 Thien-Thi Nguyen <ttn@gnu.org>
2056
2057 * xfns.c (start_hourglass): Do nothing when running on a tty.
2058
20592005-05-07 Juanma Barranquero <lekktu@gmail.com>
2060
2061 * fns.c (Fchar_table_range): Fix typos in docstring.
2062
20632005-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
2064
2065 * fns.c (Fchar_table_range): Yet Another Int/Lisp_Object Mixup.
2066
20672005-05-06 Eli Zaretskii <eliz@gnu.org>
2068
2069 * lread.c (Flocate_file_internal): Doc fix.
2070
2071 * Makefile.in (lisp, shortlisp): Add jka-cmpr-hook.elc.
2072
20732005-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2074
2075 * macselect.c (x_own_selection): Accept Lisp string as result of
2076 selection converter function.
2077 (x_clear_frame_selections): Don't call x-lost-selection-functions
2078 if Emacs is not owner of the selection.
2079 (Vmac_services_selection): Put variable and initialization in
2080 #ifdef MAC_OSX.
2081 (syms_of_macselect) [MAC_OSX]: Set default value of
2082 Vmac_services_selection to PRIMARY.
2083
2084 * macterm.c (toolkit_scroll_bar_interaction): Remove unused variable.
2085 (mac_handle_tool_bar_click): Remove unused function and declaration.
2086 [USE_TOOLKIT_SCROLL_BARS] (scroll_bar_timer_callback)
2087 (install_scroll_bar_timer, set_scroll_bar_timer)
2088 (control_part_code_to_scroll_bar_part, construct_scroll_bar_click)
2089 (get_control_part_bound, x_scroll_bar_handle_press)
2090 (x_scroll_bar_handle_release, x_scroll_bar_handle_drag)
2091 (x_set_toolkit_scroll_bar_thumb): New functions and declarations.
2092 [USE_TOOLKIT_SCROLL_BARS] (last_scroll_bar_part, scroll_bar_timer)
2093 (scroll_bar_timer_event_posted_p): New variables.
2094 [USE_TOOLKIT_SCROLL_BARS] (SCROLL_BAR_FIRST_DELAY)
2095 (SCROLL_BAR_CONTINUOUS_DELAY): New macros.
2096 (x_scroll_bar_create): Set control reference with NewControl.
2097 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
2098 Initialize track_top and track_height to nil.
2099 (x_scroll_bar_set_handle, x_scroll_bar_note_movement):
2100 Put functions in #ifndef USE_TOOLKIT_SCROLL_BARS.
2101 (XTset_vertical_scroll_bar): Don't make space between scroll bar
2102 and associated window.
2103 (XTset_vertical_scroll_bar) [MAC_OSX]: Get scroll bar area width
2104 from window config.
2105 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
2106 Set track_top and track_height to nil when scroll bar size is changed.
2107 Recalculate them if they are nil.
2108 (XTread_socket) [MAC_OSX]: Use control kind to determine if the
2109 clicked control is a scroll bar.
2110 (XTread_socket) [USE_TOOLKIT_SCROLL_BARS]: Use toolkit scroll bar
2111 event handler functions. Don't add modifiers to scroll bar click
2112 events. Call scroll bar release handler when window is deactivated.
2113 (mac_initialize): Remove unused code for X toolkit.
2114 (syms_of_macterm) [!USE_TOOLKIT_SCROLL_BARS]:
2115 Initialize Vx_toolkit_scroll_bars to nil.
2116
2117 * macterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
2118 New members track_top and track_height.
2119
2120 * sysselect.h [DARWIN || MAC_OSX]: Temporarily undefine
2121 init_process when including sys/select.h.
2122
21232005-05-05 Luc Teirlinck <teirllm@auburn.edu>
2124
2125 * eval.c (Fdefvaralias): Doc fix.
2126
2127 * xmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
2128
21292005-05-05 Kim F. Storm <storm@cua.dk>
2130
2131 * buffer.c (init_buffer_once): Set cursor_in_non_selected_windows
2132 default value.
2133 (syms_of_buffer): Add default-cursor-in-non-selected-windows.
2134 Fix type of cursor-in-non-selected-windows.
2135
21362005-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2137
2138 * mac.c: #undef init_process so not to conflict with system headers.
2139
21402005-05-02 Richard M. Stallman <rms@gnu.org>
2141
2142 * buffer.c (syms_of_buffer): Define cursor-in-non-selected-windows.
2143
2144 * buffer.h (struct buffer): Add cursor_in_non_selected_windows slot.
2145
2146 * xdisp.c (Vcursor_in_non_selected_windows)
2147 (Qcursor_in_non_selected_windows): Vars deleted.
2148 (syms_of_xdisp): Don't initialize them.
2149 (get_window_cursor_type): Use cursor_in_non_selected_windows
2150 buffer slot.
2151
21522005-05-02 Kim F. Storm <storm@cua.dk>
2153
2154 * macros.c (executing_kbd_macro_index): Rename from
2155 executing_macro_index. All uses changed.
2156 (executing_kbd_macro_iterations): Rename from
2157 executing_macro_iterations. All uses changed.
2158 (executing_kbd_macro): Rename from executing_macro.
2159 All uses changed.
2160 (syms_of_macros): Rename Lisp var executing-macro-index to
2161 executing-kbd-macro-index.
2162
2163 * xdisp.c (move_it_in_display_line_to): Fix last change.
2164
21652005-05-01 Luc Teirlinck <teirllm@auburn.edu>
2166
2167 * xmenu.c (Fx_popup_menu): Doc fix.
2168
2169 * charset.c (syms_of_charset): Delete defsubr for Schars_in_region.
2170
21712005-05-02 Jason Rumney <jasonr@gnu.org>
2172
2173 * emacs.c (USAGE3, USAGE4): Keep strings below 2048 bytes.
2174
21752005-05-02 Nozomu Ando <nand@mac.com>
2176
2177 * sysselect.h: Fix typo.
2178
21792005-05-02 Nick Roberts <nickrob@snap.net.nz>
2180
2181 * charset.c (Fchars_in_region): Remove as obsolete.
2182
21832005-05-01 Kim F. Storm <storm@cua.dk>
2184
2185 * xdisp.c (move_it_in_display_line_to): Stop if we move beyond
2186 TO_CHARPOS. This may happen if last glyphs was an image or stretch
2187 glyph.
2188
21892005-05-01 Luc Teirlinck <teirllm@auburn.edu>
2190
2191 * dispnew.c (sit_for): Vexecuting_macro -> Vexecuting_kbd_macro.
2192
21932005-05-01 Richard M. Stallman <rms@gnu.org>
2194
2195 * xmenu.c [not HAVE_X_TOOLKIT] (xmenu_show):
2196 If user cancels the menu, quit unless FOR_CLICK.
2197
2198 * macros.c (Vexecuting_kbd_macro): Rename from Vexecuting_macro.
2199 All uses changed.
2200 (syms_of_macros): Define only executing-kbd-macro, not executing-macro.
2201 * keyboard.c: Change Vexecuting_macro to Vexecuting_kbd_macro.
2202 * macros.h (Vexecuting_kbd_macro): Declare instead of Vexecuting_macro.
2203 * commands.h (Vexecuting_kbd_macro): Likewise.
2204
22052005-05-01 Thien-Thi Nguyen <ttn@gnu.org>
2206
2207 * sysdep.c (get_frame_size) [VMS]: Use a fresh i/o channel.
2208
22092005-04-30 Richard M. Stallman <rms@gnu.org>
2210
2211 * fileio.c (Ffind_file_name_handler): Handle the `operations'
2212 property of the file name handler.
2213 (Qoperations): New variable.
2214 (syms_of_fileio): Initialize and staticpro it.
2215
2216 * xdisp.c (set_message_1): Delete xassert.
2217
22182005-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2219
2220 * mac.c: Don't include time.h. Include sysselect.h after systime.h.
2221
2222 * macfns.c (Fx_server_version): Add BLOCK_INPUT around Gestalt.
2223
2224 * macgui.h [HAVE_CARBON && MAC_OSX]: Don't undefine/define mktime
2225 before/after including Carbon.h if there is a working mktime.
2226
22272005-04-28 Kim F. Storm <storm@cua.dk>
2228
2229 * xfaces.c (resolve_face_name): Add arg SIGNAL_P. Calls changed.
2230 Fix cyclic alias check. If alias loop is detected, signal
2231 circular-list error if SIGNAL_P, and return Qdefault if !SIGNAL_P.
2232
22332005-04-28 Lute Kamstra <lute@gnu.org>
2234
2235 * eval.c (do_autoload): Record only autoloads in the autoload
2236 property of symbols.
2237
22382005-04-28 Nick Roberts <nickrob@snap.net.nz>
2239
2240 * emacs.c (USAGE1): Add --basic-display and --quick options.
2241
22422005-04-27 Kim F. Storm <storm@cua.dk>
2243
2244 * data.c (syms_of_data) Staticpro Qcyclic_variable_indirection.
2245
22462005-04-26 Richard M. Stallman <rms@gnu.org>
2247
2248 * window.c (Fsame_window_p, Fspecial_display_p): Doc fixes.
2249 (syms_of_window): Doc fixes.
2250
2251 * indent.c (Fvertical_motion): Undo previous change.
2252
22532005-04-26 Kenichi Handa <handa@m17n.org>
2254
2255 * fns.c (char_table_range): New function.
2256 (Fchar_table_range): Signal an error if characters in the range
2257 have inconsistent values. Don't check the parent.
2258
22592005-04-25 Kenichi Handa <handa@m17n.org>
2260
2261 * fontset.c (fontset_set): Fix previous change.
2262
22632005-04-24 Richard M. Stallman <rms@gnu.org>
2264
2265 * indent.c (Fvertical_motion): Bind fontification-functions to nil.
2266
22672005-04-24 Eli Zaretskii <eliz@gnu.org>
2268
2269 * regex.c (re_search_2, re_match_2_internal): Convert second arg
2270 of RE_TRANSLATE to int, to shut up GCC warnings.
2271
2272 * fileio.c (Fcopy_file): Doc fix.
2273 [MSDOS]: Fix call to emacs_open: buffer_file_type not defined and
2274 not needed.
2275
22762005-04-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2277
2278 * Makefile.in [HAVE_CARBON] (MAC_OBJ): Add macselect.o.
2279 (SOME_MACHINE_OBJECTS): Likewise.
2280 (mac.o): Depend on ccl.h.
2281 (macselect.o): New target.
2282
2283 * emacs.c (main) [MAC_OS8 || MAC_OSX && HAVE_CARBON]:
2284 Call syms_of_macselect.
2285
2286 * frame.c (Fdelete_frame) [MAC_OS]: Call x_clear_frame_selections.
2287
2288 * mac.c [!TARGET_API_MAC_CARBON]: Don't include charset.h or coding.h.
2289 (QCLIPBOARD): Remove variable.
2290 (syms_of_mac): Don't initialize it.
2291 (Fmac_paste_function, Fmac_cut_function, Fx_selection_exists_p):
2292 Remove functions.
2293 (syms_of_mac): Don't defsubr them.
2294 [TARGET_API_MAC_CARBON] (Qmime_charset, QNFD, QNFKD, QNFC, QNFKC)
2295 (QHFS_plus_D, QHFS_plus_C): New variables.
2296 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
2297 [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp)
2298 (cfstring_create_normalized): New functions.
2299 [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Likewise.
2300 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
2301
2302 * macterm.c (handling_window_update, terminate_flag):
2303 Remove variables.
2304 (do_window_update, do_ae_quit_application, XTread_socket):
2305 Don't use them.
2306 (WNE_SLEEP_AT_SUSPEND, WNE_SLEEP_AT_RESUME): Don't define.
2307 [USE_CARBON_EVENTS && MAC_OSX] (mac_handle_service_event)
2308 (init_service_handler): Move to macselect.c. Remove declarations.
2309 [USE_CARBON_EVENTS && MAC_OSX] (init_service_handler): Add extern.
2310 (Qapplication, Qabout): New variables.
2311 (syms_of_mac): Initialize them.
2312 [USE_CARBON_EVENTS && MAC_OSX] (Qpreferences, Qservices, Qpaste)
2313 (Qperform): New variables.
2314 (syms_of_mac) [USE_CARBON_EVENTS && MAC_OSX]: Initialize them.
2315 (do_get_menus) [TARGET_API_MAC_CARBON]: Don't call AppendResMenu.
2316 (do_menu_choice): Unhighlight menu bar also when menu_id is 0.
2317 (mac_store_application_menu_event, init_menu_bar): New functions.
2318 [USE_CARBON_EVENTS] (mac_handle_command_event)
2319 (init_command_handler): New functions.
2320 (mac_handle_window_event): Return noErr on window update event.
2321 (do_ae_quit_application): Call mac_store_application_menu_event.
2322 (mac_initialize) [USE_CARBON_EVENTS]: Call init_command_handler
2323 and init_menu_bar.
2324
2325 * macterm.h (x_clear_frame_selections): Add extern.
2326
2327 * macselect.c: New file for selection processing on Mac OS.
2328
23292005-04-23 Richard M. Stallman <rms@gnu.org>
2330
2331 * fileio.c (Fcopy_file): New arg MUSTBENEW.
2332 (Frename_file): Pass new arg to Fcopy_file.
2333
2334 * window.c (window_size_fixed): Variable deleted.
2335 (syms_of_window): Initialize window-size-fixed to nil.
2336 But don't DEFVAR window_size_fixed.
2337
23382005-04-23 Andreas Schwab <schwab@suse.de>
2339
2340 * m/macppc.h (LD_SWITCH_MACHINE) [LINUX]: Don't define.
2341 (START_FILES, LIB_STANDARD) [LINUX && _ARCH_PPC64]: Override to
2342 use lib64 instead of lib.
2343 (_LP64) [_ARCH_PPC64]: Define if not defined.
2344
23452005-04-23 David Hunter <hunterd42@comcast.net> (tiny change)
2346
2347 * s/ms-w32.h (HAVE_PWD_H): Define.
2348
23492005-04-22 Kenichi Handa <handa@m17n.org>
2350
2351 * fns.c (copy_sub_char_table): Explicitly copy the default value
2352 of the sub-chartable.
2353
2354 * fontset.c (fontset_set): When a sub-chartable is created,
2355 explicitly sets the defalt value.
2356
23572005-04-22 Kim F. Storm <storm@cua.dk>
2358
2359 * fns.c (Fplist_get): Replace by Fsafe_plist_get.
2360 (Fsafe_plist_get): Rename to Fplist_get.
2361 (Fsafe_get): Remove, as Fget now uses safe Fplist_get.
2362 (defsubr): Remove defsubr for Fsafe_plist_get and Fsafe_get.
2363
2364 * lisp.h (Fsafe_plist_get, Fsafe_get): Remove EXFUN.
2365
2366 * xdisp.c (store_mode_line_string, produce_stretch_glyph)
2367 (note_mode_line_or_margin_highlight, note_mouse_highlight):
2368 Use Fplist_get instead of Fsafe_plist_get.
2369
2370 * xfaces.c (resolve_face_name): Use Fget instead of Fsafe_get.
2371
23722005-04-21 Miles Bader <miles@gnu.org>
2373
2374 * xdisp.c (dump_glyph_row): Don't display overlay_arrow_p field.
2375
23762005-04-20 Thien-Thi Nguyen <ttn@gnu.org>
2377
2378 * sysdep.c: Remove reference to defunct vms-pwd.h.
2379 * dired.c: Likewise. Also, for pwd.h, use HAVE_PWD_H, not !VMS.
2380 * editfns.c, fileio.c, filelock.c, sysdep.c, xrdb.c: Likewise.
2381
2382 * config.in: Regenerate.
2383
23842005-04-20 Kenichi Handa <handa@m17n.org>
2385
2386 * lisp.h (CHAR_TABLE_DEFAULT_SLOT_ASCII): New macro.
2387 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_CONTROL): New macro.
2388 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_GRAPHIC): New macro.
2389
2390 * alloc.c (make_sub_char_table): Argument changed to initial
2391 value of the slots.
2392
2393 * data.c (Faref): Handle special slots used as default values of
2394 ascii, eight-bit-control, eight-bit-control. Don't ignore a
2395 default value set for a group of characters.
2396 (Faset): Signal an error if IDXVAL is not a valid character code.
2397 Make a sub-chartable with correct initial value.
2398
2399 * fns.c (Fset_char_table_range): Don't set slots used as default
2400 values for ascii, eight-bit-control, eight-bit-graphic.
2401 Don't call Faref with charset-id.
2402 (Fset_char_table_default): Document how to treat normal character
2403 argument. Handle special slots used as default values of ascii,
2404 eight-bit-control, eight-bit-control. Make a sub chartable if
2405 necessary.
2406
24072005-04-20 Kenichi Handa <handa@m17n.org>
2408
2409 * search.c (boyer_moore): Fix previous change.
2410
24112005-04-19 Kim F. Storm <storm@cua.dk>
2412
2413 * xdisp.c (setup_for_ellipsis): Reset saved_face_id to use default
2414 face unless last visible char and first invisible char have the
2415 same face. Also use default face if saved_face_id is undefined.
2416
24172005-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2418
2419 * macgui.h (MacFontStruct): Remove member `fontname'. Add member
2420 `full_name'.
2421 [TARGET_API_MAC_CARBON] (MacFontStruct): Use type int for
2422 mac_scriptcode member.
2423
2424 * macterm.c (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): Remove variables.
2425 (syms_of_mac): Don't initialize them.
2426 (Vmac_charset_info_alist): New variable.
2427 (syms_of_mac): Defvar it.
2428 (create_text_encoding_info_alist): New function.
2429 (decode_mac_font_name, mac_to_x_fontname)
2430 (x_font_name_to_mac_font_name, init_font_name_table): Don't hard
2431 code the correspondence among XLFD charsets, Mac script codes, and
2432 Emacs coding systems. Use Vmac_charset_info_alist and result of
2433 create_text_encoding_info_alist instead.
2434 (init_font_name_table) [TARGET_API_MAC_CARBON]: Use Font Manager
2435 routines also on Mac OS Classic.
2436 (init_font_name_table) [!TARGET_API_MAC_CARBON]:
2437 Use add_font_name_table_entry.
2438 (mac_do_list_fonts): Regard 0 in XLFD scaleble fields as
2439 specified. Derive unspecified scalable fields from specified one.
2440 (x_list_fonts): Consider Valternate_fontname_alist.
2441 (kDefaultFontSize): Change value from 9 to 12.
2442 (XLoadQueryFont): Get decoded font family, font face, and charset
2443 from x_font_name_to_mac_font_name. Set full name of loaded font.
2444 (mac_unload_font): Free `full_name' member.
2445 (x_load_font): Don't try XLoadQueryFont if x_list_fonts returns
2446 NULL. Copy full_name member of struct MacFontStruct to that of
2447 struct font_info.
2448
24492005-04-19 Kim F. Storm <storm@cua.dk>
2450
2451 * xdisp.c (handle_stop): Set saved_face_id to current face if
2452 selective_display_ellipsis_p so ellipsis will be shown in same
2453 face as preceding text.
2454 (setup_for_ellipsis): Don't set saved_face_id here.
2455 (next_element_from_display_vector): Default to saved_face_id.
2456
2457 * fns.c (Fsafe_get): New function.
2458 (syms_of_fns): Defsubr it.
2459
2460 * lisp.h (Fsafe_get): EXFUN it.
2461
2462 * xfaces.c (resolve_face_name): Use Fsafe_get to avoid redisplay
2463 loops in case of bad face property lists. Limit number of face
2464 alias lookups to 10 (in case of face alias loops).
2465
24662005-04-18 Kim F. Storm <storm@cua.dk>
2467
2468 * dispextern.h (struct glyph_row): New member overlay_arrow_bitmap.
2469 It replaces the corresponding member from struct window, as a
2470 window may now show multiple overlay arrows.
2471 Remove member overlay_arrow_p, superseeded by overlay_arrow_bitmap.
2472
2473 * dispnew.c (row_equal_p, update_window_line, scrolling_window):
2474 Compare overlay_arrow_bitmap than overlay_arrow_p members.
2475
2476 * fringe.c (draw_fringe_bitmap): Use overlay_arrow_bitmap from row
2477 rather than from window.
2478 (update_window_fringes): Compare overlay_arrow_bitmap rather than
2479 overlay_arrow_p members.
2480 (Ffringe_bitmaps_at_pos): Return fringe overlay_arrow_bitmap name
2481 if not default.
2482
2483 * window.h (struct window): Remove member overlay_arrow_bitmap.
2484
2485 * window.c (make_window): Don't initialize overlay_arrow_bitmap.
2486
2487 * xdisp.c (overlay_arrow_string_or_property): Remove PBITMAP arg.
2488 Calls changed. Don't check for overlay-arrow-bitmap property here.
2489 (overlay_arrow_at_row): Remove PBITMAP arg. Instead, if left
2490 fringe is present, return Lisp integer for bitmap (or -1 for default).
2491 Fix value of overlay-arrow-bitmap property to be a symbol, use
2492 lookup_fringe_bitmap to parse it.
2493 (display_line): Change call to overlay_arrow_at_row. Store integer
2494 return value as overlay bitmap in row rather than window.
2495 Only show overlay arrow if row displays text, or if no other overlay
2496 arrow is seen in window (if overlay marker is at point-max).
2497
24982005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
2499
2500 * xfaces.c (realize_x_face) [!HAVE_WINDOW_SYSTEM]: Return NULL.
2501
25022005-04-18 Lute Kamstra <lute@gnu.org>
2503
2504 * lread.c (Vloads_in_progress): Static.
2505 * fns.c (Vloads_in_progress): Remove extern.
2506 (load_in_progress): Add extern.
2507 (Frequire): Use load_in_progress instead of Vloads_in_progress.
2508
25092005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
2510
2511 * xmenu.c (Fx_popup_menu): Initialize error_name to NULL.
2512
25132005-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2514
2515 * macterm.c (XTread_socket): Don't beep on keyboard input even if
2516 no frame is visible.
2517
25182005-04-16 Dan Nicolaescu <dann@ics.uci.edu>
2519
2520 * term.c (struct keys): Add support for shifted keys.
2521
25222005-04-16 Richard M. Stallman <rms@gnu.org>
2523
2524 * xdisp.c (with_echo_area_buffer): Delete WHICH < 0 case.
2525 (set_message): Call with_echo_area_buffer with WHICH = 0.
2526 (set_message_1): Erase the echo area buffer first thing.
2527 (echo_area_display): Don't clear echo_message_buffer.
2528
25292005-04-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2530
2531 * Makefile.in (mac.o): Depend on charset.h and coding.h.
2532
2533 * mac.c: Include charset.h and coding.h.
2534 [TARGET_API_MAC_CARBON] (Qutf_8): Remove extern.
2535 [TARGET_API_MAC_CARBON] (cfstring_create_with_string): New function.
2536 [TARGET_API_MAC_CARBON] (Fmac_get_preference): Use it.
2537
2538 * macfns.c [TARGET_API_MAC_CARBON] (Fx_file_dialog): Likewise.
2539
2540 * image.c [MAC_OSX] (image_load_quartz2d): Likewise.
2541
2542 * macterm.c (x_autoselect_window_p): Remove variable.
2543 (last_window): New variable.
2544 (XTreassert_line_highlight, x_change_line_highlight):
2545 Remove declarations.
2546 (mac_focus_changed, x_detect_focus_change): New functions and
2547 declarations.
2548 (XTextExtents16, front_emacs_window): Remove function.
2549 (mac_focus_frame): New function.
2550 (XTmouse_position, do_menu_choice, do_zoom_window, XTread_socket)
2551 (mac_check_for_quit_char): Use it instead of front_emacs_window.
2552 (x_scroll_bar_report_motion): Obtain window from control owner.
2553 (x_make_frame_invisible): Set window manager size hint.
2554 (do_mouse_moved): Remove function.
2555 (XTread_socket): Move its contents here. Generate select-window
2556 event on mouse movement if needed. Use x_detect_focus_change on
2557 activate/deactivate events. Don't deiconify frame or invalidate
2558 window rectangle when dnd items are dropped.
2559 Don't activate/deactivate root control.
2560 (frame_highlight, frame_unhighlight): Activate/deactivate root
2561 control here.
2562 (syms_of_macterm): Delete DEFVAR_BOOL for x_autoselect_window_p.
2563
2564 * macterm.h (cfstring_create_with_string) [TARGET_API_MAC_CARBON]:
2565 New extern.
2566
25672005-04-15 Luc Teirlinck <teirllm@auburn.edu>
2568
2569 * Makefile.in: Define new macro TOOLTIP_SUPPORT.
2570 (lisp): Use it.
2571 (SOME_MACHINE_LISP): Add tooltip.
2572
25732005-04-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2574
2575 * mac.c [!TARGET_API_MAC_CARBON]: Include MacLocales.h.
2576 Don't include TextEncodingConverter.h.
2577 (mac_system_script_code, Vmac_system_locale): New variables.
2578 (syms_of_mac): Defvar them.
2579 (mac_get_system_locale): New function.
2580
2581 * macfns.c (x_set_name, x_set_title) [!TARGET_API_MAC_CARBON]:
2582 Use ENCODE_SYSTEM to encode title bar string.
2583 (x_create_tip_frame): Apply 2005-03-18 change for xfns.c.
2584 (Fx_file_dialog) [TARGET_API_MAC_CARBON && !MAC_OSX]:
2585 Use CFStringGetSystemEncoding to get system default string encoding.
2586
2587 * macterm.c [!TARGET_API_MAC_CARBON]: Don't include
2588 TextEncodingConverter.h.
2589
25902005-04-13 Steven Tamm <steventamm@mac.com>
2591
2592 * macterm.c (syms_of_macterm): Remove redundant definition of
2593 mac-pass-control-to-system.
2594
25952005-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
2596
2597 * window.c (Fset_window_configuration): Be careful when you choose
2598 among several possible points for the new_current_buffer.
2599
26002005-04-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2601
2602 * keyboard.c (poll_for_input) [SYNC_INPUT]: Don't call
2603 poll_for_input_1. Set interrupt_input_pending to 1 instead.
2604 (Qlanguage_change) [MAC_OS]: New variable.
2605 (syms_of_keyboard) [MAC_OS]: Intern and staticpro it.
2606 (kbd_buffer_get_event) [MAC_OS]: Make event for LANGUAGE_CHANGE_EVENT.
2607
2608 * macterm.c (mac_keyboard_text_encoding)
2609 (current_mac_keyboard_text_encoding): Remove variables.
2610 (XTread_socket): Store language-change event if keyboard script change
2611 is detected. Don't convert input to `mac_keyboard_text_encoding'.
2612 (syms_of_macterm): Delete DEFVAR_INT for mac-keyboard-text-encoding.
2613
2614 * termhooks.h (enum event_kind) [MAC_OS]: Add LANGUAGE_CHANGE_EVENT.
2615
26162005-04-10 Richard M. Stallman <rms@gnu.org>
2617
2618 * emacs.c (standard_args): Rename --bare-bones to --quick.
2619 Add -D aka --basic-display.
2620
2621 * buffer.c (Fmake_indirect_buffer): Clear out some local variables.
2622
26232005-04-09 Richard M. Stallman <rms@gnu.org>
2624
2625 * keymap.c (where_is_internal): Convert a string used as event type
2626 into "(any string)".
2627
2628 * lread.c (Vloads_in_progress): Not static.
2629 * fns.c (Vloads_in_progress): Add extern.
2630 (Frequire): Don't do LOADHIST_ATTACH if Vloads_in_progress is nil.
2631
26322005-04-09 Thien-Thi Nguyen <ttn@surf.glug.org>
2633
2634 * dispnew.c (mirror_line_dance): Avoid crash if W2 is null.
2635
26362005-04-09 Lute Kamstra <lute@gnu.org>
2637
2638 * print.c (PRINTPREPARE): Check if the marker PRINTCHARFUN is
2639 within the accessible part of the buffer.
2640
26412005-04-09 Kim F. Storm <storm@cua.dk>
2642
2643 * lread.c (readevalloop): Add args START and END as region in
2644 current buffer to read. Callers changed.
2645 When specified, narrow to this region only when reading,
2646 not during eval. Track next point to read from during eval.
2647 Also restore point to "real" buffer position before eval.
2648 (Feval_region): Don't save excursion and restriction here, and
2649 don't narrow to region. Just pass region to readevalloop.
2650 Note: Point is now preserved even when PRINTFLAG is nil.
2651
26522005-04-08 Kim F. Storm <storm@cua.dk>
2653
2654 * xdisp.c (syms_of_xdisp): Init overlay-arrow-string to "=>".
2655
26562005-04-06 Kim F. Storm <storm@cua.dk>
2657
2658 * emacs.c (standard_args): Add -Q, --bare-bones, -bare-bones.
2659
26602005-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2661
2662 * mac.c (cfdate_to_lisp): Add `const' for variable `epoch_gdate'.
2663 (Fmac_get_preference): Doc fix.
2664
2665 * macfns.c (Fx_create_frame, x_create_tip_frame):
2666 Add "fontset-mac" to fallback font/fontsets.
2667
26682005-04-04 Kim F. Storm <storm@cua.dk>
2669
2670 * alloc.c (Fgarbage_collect): Call CHECK_CONS_LIST before and after gc.
2671
2672 * eval.c (Ffuncall): Always call CHECK_CONS_LIST on entry.
2673 Call it again after autoload.
2674
26752005-04-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2676
2677 * alloc.c (allocate_string_data): Call BLOCK_INPUT before calling
2678 mallopt.
2679
2680 * ralloc.c (r_alloc_init): Ditto.
2681
26822005-04-01 Kenichi Handa <handa@m17n.org>
2683
2684 * lisp.h (Vascii_upcase_table, Vascii_canon_table)
2685 (Vascii_eqv_table): Extern them.
2686
2687 * casetab.c (set_case_table): If standard is nonzero, setup
2688 Vascii_upcase_table, Vascii_canon_table, and Vascii_eqv_table.
2689
2690 * search.c (looking_at_1): Use current_buffer->case_canon_table,
2691 not DOWNCASE_TABLE.
2692 (string_match_1): Likewise.
2693 (fast_c_string_match_ignore_case): Use Vascii_canon_table, not
2694 Vascii_downcase_table.
2695 (fast_string_match_ignore_case): Likewise.
2696 (search_buffer): Fix checking of boyer-moore usability.
2697 (boyer_moore): Calculate translate_prev_byte1/2/3 in advance.
2698 No need of tranlating characters in PAT. Fix calculation of
2699 simple_translate.
2700
27012005-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
2702
2703 * xterm.c [HAVE_XAW3D]: Include ThreeD.h for XtNbeNiceToColormap.
2704 (x_create_toolkit_scroll_bar): Test XtNbeNiceToColormap before using it.
2705 Use XtNtopShadowPixel and XtNbottomShadowPixel.
2706 (x_set_toolkit_scroll_bar_thumb): Remove ugly old hack that didn't
2707 really work and that breaks with some versions of Xaw3d.
2708
27092005-03-31 Kenichi Handa <handa@m17n.org>
2710
2711 * coding.c (syms_of_coding): Fix previous change.
2712
27132005-03-30 Stefan Monnier <monnier@iro.umontreal.ca>
2714
2715 * fileio.c (search_embedded_absfilename): Fix last change.
2716
27172005-03-25 Kenichi Handa <handa@m17n.org>
2718
2719 * coding.c (syms_of_coding): Suggest to use set-coding-category in
2720 the docstring of coding-category-list.
2721
27222005-03-31 Kim F. Storm <storm@cua.dk>
2723
2724 * keyboard.c (Qmouse_fixup_help_message): New var.
2725 (syms_of_keyboard): Intern and staticpro it.
2726 (show_help_echo): Apply mouse-fixup-help-message to help string.
2727
27282005-03-30 Kim F. Storm <storm@cua.dk>
2729
2730 * xdisp.c (display_line): Allow multiple overlay arrows in window.
2731
27322005-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
2733
2734 * fileio.c (Fexpand_file_name): Use IS_DEVICE_SEP.
2735 (file_name_absolute_p): New fun, extracted from Ffile_name_absolute_p.
2736 (Ffile_name_absolute_p): Use it.
2737 (search_embedded_absfilename): New fun, extracted from
2738 Fsubstitute_in_file_name. Use file_name_absolute_p.
2739 Free the pw data after use.
2740 (Fsubstitute_in_file_name): Use it.
2741 After cutting a prefix, re-check file-name-handler.
2742
27432005-03-26 Lennart Borgman <lennart.borgman.073@student.lu.se>
2744
2745 * w32term.h (x_output): Add focus_state.
2746
2747 * w32term.c (x_focus_changed, w32_detect_focus_change): New functions.
2748 (w32_read_socket) [WM_SETFOCUS]: Call w32_detect_focus_change.
2749
27502005-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
2751
2752 * minibuf.c (Fminibuffer_complete_and_exit, Fself_insert_and_exit):
2753 Use Fexit_minibuffer.
2754 (Fexit_minibuffer): Mark it as no-return, deactivate the mark.
2755
27562005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
2757
2758 * dired.c (Ffile_attributes): Add a missing gcpro.
2759
2760 * alloc.c (make_number): The arg can be bigger than `int'.
2761 * lisp.h (make_number): Make prototype more precise.
2762
2763 * process.c, dired.c (Vfile_name_coding_system)
2764 (Vdefault_file_name_coding_system):
2765 * callproc.c (Vdoc_file_name, Vfile_name_coding_system)
2766 (Vdefault_file_name_coding_system): Remove unused declarations.
2767
27682005-03-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2769
2770 * xmenu.c (create_and_show_popup_menu): Just remove menu and return
2771 if it failed to pop up (Gnome "show pointer on ctrl" option makes
2772 menus fail to pop up).
2773
27742005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
2775
2776 * xdisp.c (get_next_display_element): Also use `\ ' & `\-' for latin-9.
2777 Just prepend a backslash without replacing the NBSP by an SPC.
2778
27792005-03-22 Kim F. Storm <storm@cua.dk>
2780
2781 * xfaces.c (lookup_derived_face): Add arg SIGNAL_P.
2782 * dispextern.h (lookup_derived_face): Fix prototype.
2783 * msdos.c (XMenuActivate): Fix call to lookup_derived_face.
2784
2785 * xdisp.c (handle_single_display_spec): Derive left-fringe and
2786 right-fringe face from fringe face.
2787
2788 * fringe.c (draw_fringe_bitmap_1, Fset_fringe_bitmap_face):
2789 Derive face from fringe face.
2790
27912005-03-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2792
2793 * xrdb.c (x_load_resources): Undo previous change (2005-03-18).
2794
27952005-03-22 David Kastrup <dak@gnu.org>
2796
2797 * textprop.c (Fnext_char_property_change)
2798 (Fprevious_char_property_change): Allow marker as limit.
2799 (Fnext_single_char_property_change)
2800 (Fprevious_single_char_property_change): Check that limit is a
2801 number in strings.
2802 (Fnext_single_char_property_change): Coerce position to integer.
2803 (Fprevious_single_char_property_change): Same here.
2804
28052005-03-21 Thien-Thi Nguyen <ttn@gnu.org>
2806
2807 * s/openbsd.h (LD_SWITCH_SYSTEM_tmp): Define if undefined.
2808
28092005-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
2810
2811 * frame.c (Fignore_event): Remove.
2812 (syms_of_frame): Don't defsubr it.
2813
2814 * keyboard.c (keys_of_keyboard): Just use `ignore' instead of the
2815 redundant `ignore-event'.
2816
28172005-03-19 Eli Zaretskii <eliz@gnu.org>
2818
2819 * unexec.c (write_segment, unexec): Move these functions to avoid
2820 forward references (which cause errors with "gcc -gcoff").
2821
28222005-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2823
2824 * xfns.c (x_create_tip_frame): Remove setting of Vx_resource_name so
2825 that it doesn't become "tooltip". The specbind is enough.
2826
2827 * xrdb.c (x_load_resources): Use different char *helv when I18N
2828 is present.
2829
28302005-03-17 Kenichi Handa <handa@m17n.org>
2831
2832 * coding.c (syms_of_coding): Docstring of coding-category-list fixed.
2833
28342005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
2835
2836 * xfaces.c (x_update_menu_appearance) [HAVE_X_I18N]:
2837 Use xic_create_fontsetname even for non-Motif menus.
2838 Don't forget to free the fontsetname.
2839
2840 * xfns.c (xic_create_fontsetname): Add a final catch-all font pattern.
2841
28422005-03-17 Richard M. Stallman <rms@gnu.org>
2843
2844 * dispnew.c (mirror_line_dance): Set W2 according to FRAME_FROM.
2845
2846 * fileio.c (Fcopy_file, Frename_file, Fadd_name_to_file)
2847 (Fmake_symbolic_link): Use G to read the new file name.
2848
2849 * callint.c (Finteractive): Document G option.
2850 (Fcall_interactively): Implement G option.
2851
2852 * buffer.c (buffer_lisp_local_variables): New function,
2853 broken out from Fbuffer_local_variables.
2854 (clone_per_buffer_values): Use buffer_lisp_local_variables.
2855
28562005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
2857
2858 * xfns.c (xic_create_fontsetname): Add `motif' argument.
2859 Always return a freshly allocated string.
2860 (xic_create_xfontset): Adjust call.
2861
2862 * xfaces.c (x_update_menu_appearance) [USE_MOTIF]:
2863 Use xic_create_fontsetname to create a fontset so utf-8 locales work.
2864 (dump_realized_face): Fix warning.
2865
2866 * emacs.c (Fkill_emacs): YAILOM.
2867
2868 * frame.c (Fignore_event): Fix ancient obscure C-u handling bug.
2869
28702005-03-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2871
2872 * mac.c (HASHKEY_TERMINAL): Remove.
2873 (HASHKEY_MAX_NID): New macro.
2874 (xrm_q_get_resource_1): Rename from xrm_q_get_resource. Add extra
2875 argument.
2876 (xrm_q_get_resource): Call xrm_q_get_resource_1 with extra argument.
2877 (xrm_create_database, xrm_q_put_resource)
2878 (xrm_merge_string_database, xrm_q_get_resource_1)
2879 (xrm_q_get_resource): Change resource database representation so
2880 that it may not use multiple hash tables for a single database.
2881 [TARGET_API_MAC_CARBON] (xrm_cfproperty_list_to_value): YAILOM.
2882
28832005-03-16 Stefan Monnier <monnier@iro.umontreal.ca>
2884
2885 * xmenu.c (ENCODE_MENU_STRING) [HAVE_X_I18N]: Use ENCODE_SYSTEM.
2886
2887 * coding.h (ENCODE_SYSTEM, DECODE_SYSTEM) [!WINDOWSNT]: Use the
2888 locale-coding-system, as was already done for WINDOWSNT.
2889
2890 * keyboard.c (read_char): Only do the 7-bit-meta -> 27-bit-meta
2891 translation for chars in the 0-255 range.
2892
28932005-03-16 Lute Kamstra <lute@gnu.org>
2894
2895 * floatfns.c (Ffloor): Doc fix.
2896
28972005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2898
2899 * mac.c: Include macterm.h instead of directly including Carbon.h.
2900 [TARGET_API_MAC_CARBON] (Qstring, Qnumber, Qboolean, Qdate, Qdata)
2901 (Qarray, Qdictionary): New variables.
2902 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
2903 [TARGET_API_MAC_CARBON] (Qutf_8): Add extern.
2904 [TARGET_API_MAC_CARBON] (DECODE_UTF_8): New macro.
2905 [TARGET_API_MAC_CARBON] (struct cfdict_context): New struct used
2906 in callback for CFDictionaryApplyFunction.
2907 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
2908 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
2909 (cfobject_desc_to_lisp, cfdictionary_add_to_list)
2910 (cfdictionary_puthash, cfproperty_list_to_lisp): New functions.
2911 [TARGET_API_MAC_CARBON] (Fmac_get_preference): New function.
2912 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
2913 (P, LOOSE_BINDING, SINGLE_COMPONENT, HASHKEY_TERMINAL): New macro.
2914 (skip_white_space, parse_comment, parse_include_file)
2915 (parse_binding, parse_component, parse_resource_name, parse_value)
2916 (parse_resource_line, xrm_create_database, xrm_q_put_resource)
2917 (xrm_merge_string_database, xrm_q_get_resource, xrm_get_resource)
2918 (xrm_cfproperty_list_to_value, xrm_get_preference_database):
2919 New functions.
2920
2921 * macfns.c (mac_get_rdb_resource): Remove function.
2922 (x_get_string_resource): Use xrm_get_resource.
2923
2924 * macgui.h (XrmDatabase): Typedef to Lisp_Object.
2925
2926 * macterm.c (x_list_fonts): FONT-LIST-CACHE is now cadr part of
2927 name_list_element.
2928 (mac_make_rdb): Create resource database from preferences and
2929 argument string.
2930 (mac_term_init): Save resource database to cddr part of
2931 name_list_element.
2932
2933 * macterm.h (xrm_merge_string_database, xrm_get_resource)
2934 (xrm_get_preference_database): Add externs.
2935 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
2936 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
2937 (cfobject_desc_to_lisp, cfproperty_list_to_lisp): Likewise.
2938
2939 * process.c (init_process): Change `#ifdef DARWIN' to `#if
2940 defined (DARWIN) || defined (MAC_OSX)'
2941
2942 * s/darwin.h (DARWIN): Don't define.
2943
29442005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2945
2946 * macfns.c (Qhyper, Qsuper, Qmeta, Qalt, Qctrl, Qcontrol, Qshift):
2947 Remove unused variables.
2948 (syms_of_macfns): Don't initialize them. Likewise for
2949 Qface_set_after_frame_default. Defvar and initialize
2950 Vx_window_horizontal_drag_shape.
2951 (x_set_mouse_color): Change mouse pointer shape.
2952 (mac_window) [!MAC_OSX]: Create root control.
2953 (Fx_create_frame): Remove initializations of mouse pointer shapes.
2954 (hourglass_started): New function (from xfns.c).
2955 (start_hourglass, cancel_hourglass): Put function body in #ifdef
2956 MAC_OSX.
2957 (show_hourglass) [TARGET_API_MAC_CARBON]: Create progress
2958 indicator for each non-tooltip frame if needed, and show it.
2959 (hide_hourglass) [TARGET_API_MAC_CARBON]: Hide progress indicators.
2960
2961 * macgui.h [!TARGET_API_MAC_CARBON]: Include Appearance.h and
2962 Controls.h. Use ThemeCursor instead of CursHandle.
2963
2964 * macterm.c (activate_scroll_bars, deactivate_scroll_bars):
2965 Remove functions and declarations.
2966 (mac_set_colors): Take argument for saving background color.
2967 All callers changed.
2968 (XDrawLine, XClearArea, mac_draw_bitmap, XFillRectangle)
2969 (mac_draw_rectangle, mac_draw_string_common): Save and Restore
2970 background color.
2971 (x_update_end, mac_do_track_drag): Don't reset background color.
2972 (mac_define_frame_cursor) [!TARGET_API_MAC_CARBON]:
2973 Use SetThemeCursor.
2974 (x_set_window_size) [TARGET_API_MAC_CARBON]: Move progress
2975 indicator control to the upper-right corner of the window.
2976 (arrow_cursor) [!TARGET_API_MAC_CARBON]: Remove variable.
2977 (do_init_managers) [!TARGET_API_MAC_CARBON]: Don't initialize it.
2978 (do_window_update): Update controls after updating content area.
2979 (mac_handle_window_event): Remove unused extern.
2980 (XTread_socket): Check both control handle and control part code
2981 to determine whether a scroll bar is clicked. Activate/deactivate
2982 root control instead of contained scroll bar controls.
2983 (make_mac_terminal_frame): Use ThemeCursor constants.
2984
2985 * macterm.h (struct mac_output) [TARGET_API_MAC_CARBON]:
2986 New member hourglass_control.
2987 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): New defines.
2988 (activate_scroll_bars, deactivate_scroll_bars): Remove declarations.
2989
29902005-03-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2991
2992 * macterm.c (keycode_to_xkeysym_table): Change mapping so that it
2993 coincides with that in Apple X11 except `clear', `enter' on
2994 laptops, and fn + `enter' on laptops.
2995
29962005-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
2997
2998 * xmenu.c (ENCODE_MENU_STRING): Explicitly use string_make_unibyte.
2999 (list_of_panes, list_of_items, Fx_popup_menu): Use XCAR/XCDR.
3000 (digest_single_submenu, xmenu_show): Use ENCODE_MENU_STRING.
3001
3002 * xfns.c (xic_defaut_fontset): New constant.
3003 (xic_create_fontsetname): New function.
3004 Extracted from create_frame_xic. Try to generate a slightly
3005 better fontset.
3006 (xic_create_xfontset): Use it.
3007 (create_frame_xic): Simplify.
3008
30092005-03-11 Stefan Monnier <monnier@iro.umontreal.ca>
3010
3011 * fileio.c (Fmake_symbolic_link): Fix last change.
3012
30132005-03-11 Richard M. Stallman <rms@gnu.org>
3014
3015 * fileio.c (Frename_file, Fadd_name_to_file)
3016 (Fmake_symbolic_link): If NEWNAME or LINKNAME is a directory,
3017 expand the basename of FILE relative to it.
3018
30192005-03-11 Kenichi Handa <handa@m17n.org>
3020
3021 * fileio.c (Finsert_file_contents): Call Fcheck_coding_system
3022 before calling setup_coding_system so that autoloading of a coding
3023 system work.
3024
30252005-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3026
3027 * xfns.c (hourglass_started): New function.
3028
3029 * dispextern.h: Declare hourglass_started.
3030
3031 * keyboard.c (Fexecute_extended_command): Restart hourglass
3032 after call to Fcompleting_read if already started.
3033
3034 * gtkutil.c (xg_update_scrollbar_pos): Call x_sync so that the
3035 GTK main loop is entered in xterm.c, thus doing the redraw.
3036
30372005-03-10 Kim F. Storm <storm@cua.dk>
3038
3039 * xdisp.c (pos_visible_p): Fix X value in last line of buffer.
3040
30412005-03-08 Kenichi Handa <handa@m17n.org>
3042
3043 * frame.c (x_set_font): Call set_default_ascii_font if an
3044 available font is found.
3045
3046 * fontset.c (set_default_ascii_font): New function.
3047 (syms_of_fontset): Don't set FONTSET_ASCII (Vdefault_fontset) here.
3048
3049 * fontset.h (set_default_ascii_font): Extern it.
3050
30512005-03-07 Kim F. Storm <storm@cua.dk>
3052
3053 * xdisp.c (CLEAR_IMAGE_CACHE_COUNT): New const.
3054 (clear_image_cache_count): New var.
3055 (redisplay_internal): Don't clear face and image caches in the
3056 middle of redisplay; do it afterwards.
3057
3058 * blockinput.h (TOTALLY_UNBLOCK_INPUT): Avoid dangling else.
3059
3060 * xdisp.c (notice_overwritten_cursor): Check that phys_cursor.vpos
3061 is valid. If not, clear phys_cursor_on_p and return.
3062
30632005-03-07 Andreas Schwab <schwab@suse.de>
3064
3065 * blockinput.h (UNBLOCK_INPUT_TO): Always call UNBLOCK_INPUT.
3066
30672005-03-06 Richard M. Stallman <rms@gnu.org>
3068
3069 * keyboard.c (Ftop_level): Let Fthrow deal with UNBLOCK_INPUT.
3070
3071 * eval.c (unwind_to_catch): Use UNBLOCK_INPUT_TO.
3072 (Feval, Ffuncall): Use CHECK_CONS_LIST.
3073
3074 * lisp.h (CHECK_CONS_LIST): New macro (two definitions).
3075
3076 * blockinput.h (UNBLOCK_INPUT_TO): New macro.
3077 (TOTALLY_UNBLOCK_INPUT): Handle a pending signal if any.
3078
30792005-03-05 Juri Linkov <juri@jurta.org>
3080
3081 * emacs.c (USAGE1): Replace Info node name "command arguments"
3082 with "emacs invocation".
3083 (USAGE3): Fix usage of `--color=MODE' which actually doesn't
3084 allow arguments `--color' and `MODE' to be separated by space.
3085 Add --no-blinking-cursor, -nbc.
3086 (standard_args): Add -nbc, --no-blinking-cursor.
3087
30882005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
3089
3090 * s/vms.h: Define NO_HYPHENS_IN_FILENAMES.
3091 * s/vms4-4.h, s/vms5-5.h: Undefine NO_HYPHENS_IN_FILENAMES.
3092 * fileio.c (Fexpand_file_name) [VMS]:
3093 Use NO_HYPHENS_IN_FILENAMES, not VMS4_4.
3094 * doc.c (munge_doc_file_name) [VMS]: Likewise.
3095 (Fsnarf_documentation): Call munge_doc_file_name.
3096
30972005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
3098
3099 * s/vms.h (FILE_SYSTEM_CASE): New macro.
3100 * fileio.c (Fexpand_file_name) [VMS]: Don't upcase the name
3101 "manually"; this is now handled generally via FILE_SYSTEM_CASE.
3102
31032005-03-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3104
3105 * emacs.c (main): Change `#ifdef HAVE_CARBON' to `#if
3106 defined (MAC_OSX) && defined (HAVE_CARBON)'.
3107
3108 * image.c [!MAC_OSX && TARGET_API_MAC_CARBON]: Include QuickTime.h.
3109
3110 * mac.c [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
3111 [!MAC_OSX] (select) [TARGET_API_MAC_CARBON]: Use ReceiveNextEvent.
3112 (posix_pathname_to_fsspec, fsspec_to_posix_pathname): New functions.
3113 (mac_clear_font_name_table): Move extern to macterm.h.
3114
3115 * macfns.c (install_window_handler): Move extern to macterm.h.
3116 (Fx_file_dialog): Check STRINGP (default_filename) to see it is
3117 valid. Don't check !NILP (dir) because it is already checked with
3118 CHECK_STRING.
3119 (Fx_file_dialog) [!MAC_OSX]: Use FSSpec instead of FSRef for
3120 specifying the default location and obtaining the selected filename.
3121
3122 * macgui.h [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
3123
3124 * macmenu.c [TARGET_API_MAC_CARBON]: Don't include headers that
3125 are included via Carbon.h.
3126
3127 * macterm.c [TARGET_API_MAC_CARBON && !MAC_OSX]:
3128 Define USE_CARBON_EVENTS to 1.
3129 (qd) [__MRC__ && TARGET_API_MAC_CARBON]: Don't declare.
3130 (x_free_frame_resources): Call remove_window_handler for
3131 non-tooltip windows.
3132 [TARGET_API_MAC_CARBON]: Don't include headers that are included
3133 via Carbon.h.
3134 [TARGET_API_MAC_CARBON] (mac_do_track_dragUPP)
3135 (mac_do_receive_dragUPP): New variables.
3136 (mac_handle_service_event, init_service_handler): Put declarations
3137 and definitions in #ifdef MAC_OSX.
3138 (install_window_handler) [TARGET_API_MAC_CARBON]: Create UPPs for
3139 drag-and-drop handler functions and register them.
3140 (remove_window_handler): New function.
3141 (do_ae_open_documents, mac_do_receive_drag) [!MAC_OSX]:
3142 Use fsspec_to_posix_pathname.
3143 (main): Change #if !TARGET_API_MAC_CARBON to #ifdef MAC_OS8.
3144 (XTread_socket) [!MAC_OSX]: Don't pass keyboard events to TSM.
3145 [MAC_OS8] (make_mac_terminal_frame) [TARGET_API_MAC_CARBON]:
3146 Set default cursors.
3147 (mac_initialize) [USE_CARBON_EVENTS && !MAC_OSX] : Don't call
3148 init_service_handler or init_quit_char_handler.
3149 (mac_initialize) [!MAC_OSX]: Don't call MakeMeTheFrontProcess.
3150
3151 * macterm.h (install_window_handler, remove_window_handler)
3152 (posix_pathname_to_fsspec, fsspec_to_posix_pathname)
3153 (mac_clear_font_name_table): New externs.
3154
31552005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
3156
3157 * fileio.c (FILE_SYSTEM_CASE): Define macro if not already defined.
3158 (Ffile_name_directory): Use FILE_SYSTEM_CASE unconditionally.
3159 (Fexpand_file_name): Likewise.
3160
31612005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
3162
3163 * emacs.c (Fkill_emacs): Use EXIT_SUCCESS;
3164 no longer special-case VMS. Add bogus return value.
3165
31662005-03-02 Kim F. Storm <storm@cua.dk>
3167
3168 * dispextern.h (XASSERTS): Define to 0 if not already defined.
3169 (xassert) [!XASSERTS]: Define dummy version.
3170
31712005-03-02 Kim F. Storm <storm@cua.dk>
3172
3173 * xdisp.c (redisplay_window): YABX (yet another bogus xassert).
3174 Reported by David Kastrup.
3175
31762005-03-01 Ehud Karni <ehud@unix.mvs.co.il>
3177
3178 * xdisp.c (get_next_display_element): Fix control and escape
3179 glyph from display vector.
3180
31812005-03-01 Stefan Monnier <monnier@iro.umontreal.ca>
3182
3183 * keyboard.c (Fposn_at_x_y): Check integerness of X and Y.
3184
31852005-02-27 Richard M. Stallman <rms@gnu.org>
3186
3187 * xdisp.c (fast_find_position): Rename END to BEG.
3188 (syms_of_xdisp) <menu-bar-update-hook>: Doc fix.
3189
31902005-02-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3191
3192 * gtkutil.c (xg_resize_outer_widget): Remove unneeded call to
3193 gtk_window_resize and x_wm_set_size_hint.
3194
31952005-02-25 Kim F. Storm <storm@cua.dk>
3196
3197 * dispextern.h (OVERLAY_STRING_CHUNK_SIZE): Increase from 3 to 16.
3198
3199 * xdisp.c (init_from_display_pos): Don't read past end of
3200 it->overlay_strings array.
3201
32022005-02-25 Stephan Stahl <stahl@eos.franken.de> (tiny change)
3203
3204 * buffer.c (syms_of_buffer): Fix typo.
3205
32062005-02-23 Lute Kamstra <lute@gnu.org>
3207
3208 * buffer.c (Foverlay_buffer): Doc fix.
3209
32102005-02-22 Kim F. Storm <storm@cua.dk>
3211
3212 * minibuf.c (Ftry_completion, Fall_completions): Allow both string
3213 and symbol keys in alists and hash tables.
3214
3215 * xdisp.c (fast_find_position): Fix search for start of overlay.
3216
32172005-02-21 Kim F. Storm <storm@cua.dk>
3218
3219 * window.c (window_scroll_pixel_based): When scrolling backwards,
3220 handle partial visible line at end of window even when we hit PT.
3221
32222005-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
3223
3224 * keymap.h: Declare Fcurrent_active_maps, used in doc.c.
3225
32262005-02-21 Kim F. Storm <storm@cua.dk>
3227
3228 * xdisp.c (move_it_vertically_backward): Eliminate two xasserts.
3229 I think those asserts are bogus if buffer contains invisible text
3230 or images.
3231
32322005-02-21 David Kastrup <dak@gnu.org>
3233
3234 * gtkutil.c (xg_create_frame_widgets): UNBLOCK_INPUT on error.
3235
32362005-02-20 Kim F. Storm <storm@cua.dk>
3237
3238 * xdisp.c (pos_visible_p): Be sure to move to the specified
3239 position. Always get the full ascent / descent of the
3240 corresponding row, to return reliable rtop and rbot values.
3241 (back_to_previous_visible_line_start): Fix 2005-01-18 change.
3242 Must look one character back, as back_to_previous_line_start
3243 returns position after the newline.
3244 (move_it_vertically_backward): Fix heuristic for when to move further
3245 back in case line_height * 2/3 is larger than window height.
3246 (cursor_row_fully_visible_p): Rename make_cursor_line_fully_visible_p
3247 as it does not do anything anymore. Add arg current_matrix_p to
3248 use current matrix rather than desired matrix when set.
3249 (try_cursor_movement): Don't scroll to make cursor row fully
3250 visible if cursor didn't move. This avoids unexpected recentering
3251 in case of blinking cursor or accepting process output.
3252 Use current matrix to check cursor row visibility.
3253 (redisplay_window): Fix whether to recenter or move to top in case
3254 cursor line is taller than window height.
3255 (find_first_unchanged_at_end_row): Stop search if we reach a row
3256 which not enabled (instead of abort).
3257
32582005-02-18 Kim F. Storm <storm@cua.dk>
3259
3260 * xfaces.c (Finternal_set_lisp_face_attribute): Allow :color property
3261 to be nil in a :box attribute value list; customize prints that
3262 as lisp value when no box color is specified.
3263
3264 * .gdbinit (pitx, pit): Pretty print display iterator.
3265 (prowx, prow): Pretty print glyph row.
3266 (pcursorx, pcursor): Pretty print a window cursor.
3267 (pwinx, pwin): Pretty print struct window.
3268
32692005-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
3270
3271 * alloc.c (BLOCK_BYTES): Harmless typo.
3272
32732005-02-17 Andreas Schwab <schwab@suse.de>
3274
3275 * xfns.c (hack_wm_protocols): Use correct type for last parameter
3276 of XGetWindowProperty to avoid aliasing issues.
3277 (Fx_window_property): Likewise.
3278
3279 * xselect.c (Fx_disown_selection_internal): Use union of struct
3280 input_event and struct selection_input_event to avoid aliasing issues.
3281
3282 * xterm.c (handle_one_xevent): Use union of struct input_event and
3283 struct selection_input_event to avoid aliasing issues.
3284 (SET_SAVED_MENU_EVENT): Adapt reference to inev.
3285
32862005-02-17 Kim F. Storm <storm@cua.dk>
3287
3288 * dispextern.h (enum it_method): New enum.
3289 (GET_FROM_*): Its members.
3290 (struct it): Change member method from function pointer to enum.
3291
3292 * xdisp.c (check_it, init_from_display_pos, handle_stop)
3293 (setup_for_ellipsis, handle_single_display_spec)
3294 (handle_composition_prop, next_overlay_string)
3295 (get_overlay_strings, reseat_1, reseat_to_string)
3296 (next_element_from_ellipsis, BUFFER_POS_REACHED_P)
3297 (in_display_vector_p, display_line, get_next_display_element):
3298 Change it->method from function pointer to enum.
3299 (get_next_element): New array to map it->method to function.
3300 (get_next_display_element): Use it.
3301 (set_iterator_to_next): Use switch instead of if/else chain.
3302
33032005-02-15 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
3304
3305 * w32select.c: Summary: Thorough rework to implement Unicode
3306 clipboard operations and delayed rendering.
3307
3308 Drop last_clipboard_text and related code, keep track of
3309 ownership via clipboard_owner instead. Drop old #if0 sections.
3310
3311 (DEFAULT_LCID, ANSICP, OEMCP, QUNICODE, QANSICP, QOEMCP)
3312 (clipboard_owner, modifying_clipboard, cfg_coding_system)
3313 (cfg_codepage, cfg_lcid, cfg_clipboard_type, current_text)
3314 (current_coding_system, current_requires_encoding)
3315 (current_num_nls, current_clipboard_type, current_lcid):
3316 New static variables.
3317
3318 (convert_to_handle_as_ascii, convert_to_handle_as_coded)
3319 (render, render_all, run_protected, lisp_error_handler)
3320 (owner_callback, create_owner, setup_config)
3321 (enum_locale_callback, cp_from_locale, coding_from_cp):
3322 New local functions.
3323
3324 (term_w32select, globals_of_w32select): New global functions.
3325
3326 (Fw32_set_clipboard_data): Ignore parameter FRAME, use
3327 clipboard_owner instead. Use delayed rendering and provide
3328 all text formats. Provide CF_LOCALE if necessary.
3329
3330 (Fw32_get_clipboard_data): Handle CF_UNICODETEXT and
3331 CF_LOCALE. Fall back to CF_TEXT, if CF_UNICODETEXT is not
3332 available. Force DOS line-ends for decoding.
3333
3334 (Fx_selection_exists_p): Handle CF_UNICODETEXT.
3335
3336 (syms_of_w32select): Init and register new variables.
3337
3338 * w32.h: Add prototypes for globals_of_w32select and
3339 term_w32select. Make the neighboring K&R declarations into
3340 prototypes, too.
3341
3342 * emacs.c: Include w32.h to get function prototypes.
3343 (main): Call globals_of_w32select.
3344
3345 * w32.c (term_ntproc): Call term_w32select.
3346
3347 * s/ms-w32.h: Guard MSC-specific #pragmas with an #ifdef.
3348
33492005-02-16 Kim F. Storm <storm@cua.dk>
3350
3351 * xdisp.c (BUFFER_POS_REACHED_P): Return true if pos reached and
3352 at end of display vector.
3353
33542005-02-15 Richard M. Stallman <rms@gnu.org>
3355
3356 * xdisp.c (get_next_display_element): Fix escape-glyph criterion
3357 for mode and header lines.
3358
3359 * lread.c (syms_of_lread) <user-init-file>: Doc fix.
3360
3361 * keymap.h (describe_map_tree): Change decl.
3362
3363 * keyboard.c (command_loop_1): Always use safe_run_hooks
3364 to run Qdeferred_action_function.
3365
3366 * keymap.c (describe_map_tree): New arg MENTION_SHADOW. Calls changed.
3367 (describe_map, describe_vector): Likewise. When it's 1,
3368 don't omit shadowed bindings, instead mark them as shadowed.
3369
3370 * doc.c (Fsubstitute_command_keys): Compute list of shadowing maps
3371 for describe_map_tree. Pass 1 for MENTION_SHADOW.
3372
3373 * data.c (Fsetq_default): Allow no arg case.
3374
33752005-02-14 Kenichi Handa <handa@m17n.org>
3376
3377 * coding.c (encode_coding_string): Always return a unibyte string.
3378 If NOCOPY is nonzero and there's no need of encoding, make STR
3379 unibyte directly.
3380
3381 * xselect.c (lisp_data_to_selection_data): If OBJ is a non-ASCII
3382 multibyte string, signal an error instead of aborting.
3383
33842005-02-12 Dan Nicolaescu <dann@ics.uci.edu>
3385
3386 * keyboard.c: If HAVE_FCNTL_H include fcntl.h.
3387
33882005-02-12 Kim F. Storm <storm@cua.dk>
3389
3390 * xdisp.c (expose_window): Don't fix overlaps for mode lines.
3391
33922005-02-10 Kim F. Storm <storm@cua.dk>
3393
3394 * xdisp.c (try_window_id): Set first_unchanged_at_end_row to NULL
3395 if it moves outside window or it doesn't display text.
3396
33972005-02-09 Kim F. Storm <storm@cua.dk>
3398
3399 * undo.c (Fprimitive_undo): Check that undo function does not
3400 switch buffer.
3401
34022005-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3403
3404 * xselect.c (selection_data_to_lisp_data): For the special case
3405 type == XA_ATOM, data contains array of int, not array of Atom.
3406 (x_property_data_to_lisp, selection_data_to_lisp_data):
3407 Comment update: data must be array of int for format == 32.
3408
34092005-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
3410
3411 * undo.c (Fprimitive_undo): Check veracity of delta,start,end.
3412
34132005-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3414
3415 * xfns.c (Fx_change_window_property): Use long array when format is 32.
3416 (Fx_window_property): If format is 32 and long is bigger than 32 bits,
3417 convert long array returned from XGetWindowProperty to an int array.
3418 (x_set_tool_bar_lines): Check that width and height is greater than
3419 zero before clearing area.
3420
3421 * xselect.c (x_reply_selection_request): Pass long array to
3422 XChangeProperty so that 64 bit longs are handeled correctly.
3423 (x_get_window_property): If format is 32 and long is bigger than 32
3424 bits convert data from XGetWindowProperty from long array to int array.
3425 (lisp_data_to_selection_data): When the input is a vector and the
3426 format is 32, allocate a long array even if long is bigger than 32 bits.
3427 (x_fill_property_data): Use char, short and long as the man page
3428 for XChangeProperty specifies. This way the data returned is OK for
3429 both 32 and 64 bit machines.
3430 (x_handle_dnd_message): Calculate size correctly even for 64 bit
3431 machines.
3432 (Fx_send_client_event): Undo change from 2005-02-05,
3433 x_fill_property_data now handles that case.
3434
3435 * xfns.c (Fx_backspace_delete_keys_p): Add comment about the
3436 reason for the approach in the code.
3437
34382005-02-07 Kim F. Storm <storm@cua.dk>
3439
3440 * undo.c (Fprimitive_undo): Record max one dummmy apply element.
3441
34422005-02-06 Richard M. Stallman <rms@gnu.org>
3443
3444 * eval.c (Frun_hook_with_args)
3445 (Frun_hook_with_args_until_success)
3446 (Frun_hook_with_args_until_failure): Doc fixes.
3447
34482005-02-05 Andreas Schwab <schwab@suse.de>
3449
3450 * sysdep.c (sys_subshell): Properly terminate execlp argument list.
3451
34522005-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3453
3454 * xselect.c (Fx_send_client_event, x_handle_dnd_message): Handle
3455 the longs in a XClientMessageEvent correctly when long is 64 bits.
3456
34572005-02-05 Eli Zaretskii <eliz@gnu.org>
3458
3459 * xfaces.c (face_color_supported_p): Use HAVE_WINDOW_SYSTEM
3460 instead of HAVE_X_WINDOWS, for non-X windowed sessions.
3461
34622005-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3463
3464 * xmenu.c (menubar_selection_callback): Force out GTK buffered
3465 events so the menu event comes after them. This is to prevent sit-for
3466 from exiting on buffered events directly after a menu selection,
3467 lisp code for Help => About Emacs uses sit-for.
3468
3469 * gtkutil.c (create_menus): Connect selection-done event instead of
3470 the deactivate event to deactivate_cb. This will make the last
3471 leave event come before the call to deactivate_cb, so the leave
3472 event does not make sit-for exit after a menu selection.
3473
34742005-02-03 Kim F. Storm <storm@cua.dk>
3475
3476 * dispnew.c (build_frame_matrix_from_leaf_window)
3477 [!GLYPH_DEBUG]: Fix xassert.
3478
3479 * xfaces.c (x_free_gc) [!GLYPH_DEBUG]: Fix xassert.
3480
3481 * xfns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
3482
34832005-02-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3484
3485 * mac.c: Use MAC_OS_X_VERSION_MAX_ALLOWED to conditionalize by
3486 the compiling OS version.
3487
3488 * macfns.c (x_create_tip_frame): Likewise.
3489
3490 * macterm.c (mac_draw_string_common, x_make_frame_visible): Likewise.
3491
34922005-02-03 Richard M. Stallman <rms@gnu.org>
3493
3494 * xterm.c (x_error_quitter): On GCC 3 and up, specify noinline.
3495
3496 * xdisp.c (echo_area_display): Clear echo_message_buffer.
3497
3498 * buffer.c (Fbury_buffer): Doc fix.
3499
35002005-02-02 Steven Tamm <steventamm@mac.com>
3501
3502 * macfns.c (unwind_create_frame): Fix compile error due to
3503 xassert being uncondition, but predicate is.
3504 * dispnew.c (update_window): Fix compile error due to
3505 xassert being uncondition, but predicate is.
3506
35072005-02-02 Miles Bader <miles@gnu.org>
3508
3509 * dispextern.h (xassert): Enable unconditionally.
3510
35112005-02-02 Kim F. Storm <storm@cua.dk>
3512
3513 * undo.c (Fprimitive_undo): Fix dummy apply undo entry.
3514
35152005-02-02 Kenichi Handa <handa@m17n.org>
3516
3517 * casefiddle.c (casify_object): Enable changing characters of
3518 different byte length.
3519 (casify_region): Fix loop condition, args to replace_range_2, and
3520 update opoint_byte.
3521
3522 * insdel.c (replace_range_2): Fix bugs in adjusting markers and point.
3523
35242005-02-01 Kim F. Storm <storm@cua.dk>
3525
3526 * xdisp.c (back_to_previous_visible_line_start): Reset iterator
3527 stack before calling handle_display_prop.
3528
35292005-01-31 Kim F. Storm <storm@cua.dk>
3530
3531 * undo.c (Qapply): New lisp var.
3532 (syms_of_undo): Intern and staticpro it.
3533 (Fprimitive_undo): Support formats (apply FUNNAME . ARGS) and
3534 (apply DELTA BEG END FUNNAME . ARGS) instead of (FUNNAME . ARGS).
3535
3536 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
3537
35382005-01-30 Jesper Harder <harder@phys.au.dk>
3539
3540 * macterm.c (syms_of_macterm) <mac-reverse-ctrl-meta>
3541 <mac-emulate-three-button-mouse>: Fix docstring indentation.
3542
35432005-01-29 Luc Teirlinck <teirllm@auburn.edu>
3544
3545 * undo.c (syms_of_undo) <undo-outer-limit>: Doc update.
3546 Increase value to 3 Meg.
3547
35482005-01-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3549
3550 * xfns.c (show_hourglass): Use FRAME_X_WINDOW as parent for GTK,
3551 button events are not received otherwise.
3552
35532005-01-29 Richard M. Stallman <rms@gnu.org>
3554
3555 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
3556
3557 * undo.c (Fprimitive_undo): Handle (FUNNAME . ARGS) by calling FUNNAME.
3558
35592005-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
3560
3561 * keymap.c (access_keymap): YAILOM.
3562
35632005-01-27 Kim F. Storm <storm@cua.dk>
3564
3565 * xdisp.c (get_phys_cursor_geometry): New function to calculate
3566 phys cursor position and size for hollow cursor. Position is
3567 aligned with get_glyph_string_clip_rect and ensures that a hollow
3568 cursor is shown, even when the actual glyph is not visible.
3569
3570 * dispextern.h (get_phys_cursor_geometry): Add prototype.
3571
3572 * xterm.c (x_clip_to_row): Ensure y >= 0.
3573 (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
3574
3575 * w32term.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
3576
3577 * macterm.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
3578
35792005-01-27 Stefan Monnier <monnier@iro.umontreal.ca>
3580
3581 * xterm.c (x_error_quitter): Add a prototype. Make it static again.
3582
35832005-01-27 Kim F. Storm <storm@cua.dk>
3584
3585 * xdisp.c (get_glyph_string_clip_rect): Always show a cursor
3586 glyph, even when row is only partially visible and actual cursor
3587 position is not visible.
3588
35892005-01-24 Richard M. Stallman <rms@gnu.org>
3590
3591 * xterm.c (x_error_quitter): No longer static, and moved after
3592 x_error_handler.
3593
35942005-01-24 Kim F. Storm <storm@cua.dk>
3595
3596 * xdisp.c (move_it_by_lines): If we move forward after going too
3597 far back, cancel move if end position is same as start position.
3598
35992005-01-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3600
3601 * dispextern.h (struct glyph_string): New members clip_head and
3602 clip_tail.
3603
3604 * xdisp.c (get_glyph_string_clip_rect): Restrict horizontal clip
3605 region to the area between clip_head and clip_tail.
3606 (draw_glyphs): Record the area that need to be actually redrawn to
3607 the new variables clip_head and clip_tail when there are
3608 overhangs. Set values of these variables to the corresponding
3609 members in struct glyph_string. Refine x coordinates for
3610 notice_overwritten_cursor using clip_head and clip_tail.
3611
3612 * macgui.h (STORE_XCHARSETSTRUCT): New macro.
3613
3614 * macterm.c (mac_compute_glyph_string_overhangs): Implement with
3615 QDTextBounds.
3616 (x_draw_glyph_string): Don't fill the background of the successor
3617 of a glyph with a right overhang if the successor will draw a cursor.
3618 (XLoadQueryFont): Obtain font metrics using QDTextBounds.
3619 (x_redisplay_interface): Add entry for compute_glyph_string_overhangs.
3620
36212005-01-24 Kim F. Storm <storm@cua.dk>
3622
3623 * window.c (window_scroll_pixel_based): Fix scrolling in the wrong
3624 direction if window height was smaller than next-screen-context-lines.
3625 Now always scroll at least one line in the requested direction.
3626 Ensure that we actually do scroll backwards when requested to do so.
3627
3628 * xdisp.c (redisplay_window): Only try to make cursor line fully
3629 visible once (to avoid redisplay loop).
3630
36312005-01-23 Kim F. Storm <storm@cua.dk>
3632
3633 * window.c (Fpos_visible_in_window_p): Simplify return value for
3634 partially visible rows.
3635 (window_scroll_pixel_based): Adapt to that change.
3636
3637 * window.c (window_scroll_pixel_based): Force moving to next line
3638 if scrolling doesn't move start point, e.g. if looking at tall image.
3639
3640 * xdisp.c (pos_visible_p): Return 0 if non-interactive.
3641 Clear last_height before calling line_bottom_y to get real height.
3642 Fix calculation of y.
3643
36442005-01-22 Steven Tamm <steventamm@mac.com>
3645
3646 * s/darwin.h: Removed PTY_ITERATION from here.
3647 (DARWIN): Define.
3648
3649 * process.c (init_process): Default process-connection-type to
3650 nil on darwin 6 or less, t if it is 7 or higher. This way the
3651 broken pty behavior is still allowed on darwin 6 for interactive
3652 processes for people that know what they are doing.
3653
36542005-01-22 Kim F. Storm <storm@cua.dk>
3655
3656 * window.c (auto_window_vscroll_p): New boolean.
3657 (syms_of_window): DEFVAR_BOOL it.
3658 (Fpos_visible_in_window_p): Extend return value to include RTOP
3659 and RBOT values if FULLY is nil.
3660 (window_scroll_pixel_based): Adjust vscroll for partially visible
3661 rows if auto_window_vscroll_p is set.
3662 (Fset_window_vscroll): Do nothing if vscroll is not modified.
3663
3664 * xdisp.c (pos_visible_p): Replace FULLY arg by RTOP and RBOT args
3665 to return number of partially invisible pixels at top and bottom
3666 of the dislay row at POS.
3667
3668 * lisp.h (pos_visible_p): Fix prototype.
3669
36702005-01-21 Richard M. Stallman <rms@gnu.org>
3671
3672 * fileio.c (Fcopy_file): Doc fix.
3673
36742005-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3675
3676 * gtkutil.c (xg_tool_bar_detach_callback): Remove unused variable bw.
3677 (xg_get_file_name): Move declaration ofx_use_old_gtk_file_dialog to
3678 start of function for older compilers.
3679
36802005-01-20 Richard M. Stallman <rms@gnu.org>
3681
3682 * editfns.c (Fmessage): If arg is "", return "" (as before).
3683
3684 * keymap.c (access_keymap): Protect from bad value of meta_prefix_char.
3685
3686 * .gdbinit (xgetptr, xgetint, xgettype): Copy $arg0 into a temp
3687 variable.
3688
36892005-01-20 Steven Tamm <steventamm@mac.com>
3690
3691 * editfns.c (Voperating_system_release): Add.
3692 (init_editfns): Assign new variable operating-system-release
3693 based on call to uname if available.
3694 (get_operating_system_release): Add function to
3695 allow c-level access to operating system release.
3696
3697 * config.h: Regenerated.
3698
3699 * s/darwin.h (PTY_ITERATION): Don't allow PTYs on darwin 6 or less.
3700 (MIN_PTY_KERNEL_VERSION): Define minimum kernel version for
3701 using ptys as '7'.
3702
37032005-01-20 Kim F. Storm <storm@cua.dk>
3704
3705 * alloc.c (STRING_MARKED_P, VECTOR_MARKED_P): Return boolean.
3706
3707 * xterm.c (x_draw_glyph_string_box): Fix last_x for full width rows.
3708 Thanks to Chong Yidong <cyd@stupidchicken.com> for debugging this.
3709
3710 * macterm.c (x_draw_glyph_string_box): Likewise.
3711
3712 * w32term.c (x_draw_glyph_string_box): Likewise.
3713
3714 * indent.c (Fvertical_motion): Temporarily disable selective display.
3715
37162005-01-19 Kim F. Storm <storm@cua.dk>
3717
3718 * xdisp.c (note_mode_line_or_margin_highlight): Fix :pointer
3719 image property.
3720
3721 * fns.c (sweep_weak_table): Advance prev pointer when we keep a pair.
3722
37232005-01-18 Kim F. Storm <storm@cua.dk>
3724
3725 * xdisp.c (fast_find_position): Backtrack to find first row if
3726 charpos is inside a display overlay that spans multiple lines.
3727
37282005-01-18 Kenichi Handa <handa@m17n.org>
3729
3730 * coding.c (decode_coding_iso2022): Translate invalid codes if
3731 translation-table is specified.
3732
37332005-01-18 Kim F. Storm <storm@cua.dk>
3734
3735 * xdisp.c (back_to_previous_visible_line_start): Undo 2004-12-28
3736 change. If handle_display_prop indicates newline is replaced by
3737 image or text, move back to start of relevant overlay or interval
3738 and continue scan from there. Simplify.
3739
37402005-01-17 Kim F. Storm <storm@cua.dk>
3741
3742 * dispnew.c (mode_line_string, marginal_area_string):
3743 Fix off-by-one error in search for glyph.
3744
37452005-01-16 Kim F. Storm <storm@cua.dk>
3746
3747 * macterm.c (syms_of_macterm) <mac-allow-anti-aliasing>: Doc fix.
3748
37492005-01-16 Steven Tamm <steventamm@mac.com>
3750
3751 * macterm.c (mac_to_x_fontname): Remove spurious argument.
3752
37532005-01-16 Andreas Schwab <schwab@suse.de>
3754
3755 * macterm.c (mac_draw_string_common): Fix compilation on OSX 10.1.
3756
37572005-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3758
3759 * fringe.c (Fdefine_fringe_bitmap, init_fringe): When assigning
3760 fringe_faces, cast result from xmalloc/xrealloc to Lisp_Object *.
3761
37622005-01-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3763
3764 * keyboard.c (READABLE_EVENTS_DO_TIMERS_NOW)
3765 (READABLE_EVENTS_FILTER_EVENTS, READABLE_EVENTS_IGNORE_SQUEEZABLES):
3766 New flags for readable_events.
3767 (get_filtered_input_pending, readable_filtered_events): Remove.
3768 (tracking_off): Call readable_events and get_input_pending with
3769 flag READABLE_EVENTS_DO_TIMERS_NOW.
3770 (readable_events): Move code from old readable_filtered_events here,
3771 but check new READABLE_EVENTS_* in argument flags instead of previous
3772 two boolean arguments do_timers_now and filter_events.
3773 If we are doing mouse tracking and the mouse moved, return only if
3774 READABLE_EVENTS_IGNORE_SQUEEZABLES is not set in flags.
3775 (swallow_events): Call get_input_pending with flag
3776 READABLE_EVENTS_DO_TIMERS_NOW.
3777 (get_input_pending): Move code from old get_filtered_input_pending
3778 here. Replace boolean arguments do_timers_now, filter_events with
3779 flags, and pass flags to readable_events. Document new
3780 READABLE_EVENTS_* flags.
3781 (detect_input_pending_ignore_squeezables): New function.
3782 (detect_input_pending_run_timers): Call get_input_pending with flag
3783 READABLE_EVENTS_DO_TIMERS_NOW.
3784 (Finput_pending_p): Call get_input_pending with flags
3785 READABLE_EVENTS_DO_TIMERS_NOW and READABLE_EVENTS_FILTER_EVENTS.
3786
3787 * dispnew.c (update_window, update_frame_1): Replace calls to
3788 detect_input_pending with detect_input_pending_ignore_squeezables
3789 so that redisplay is not paused if the event queue contains only
3790 mouse movements.
3791
3792 * lisp.h: Declare detect_input_pending_ignore_squeezables.
3793
37942005-01-15 Steven Tamm <steventamm@mac.com>
3795
3796 * macterm.c (Vmac_use_core_graphics): Declare variable for
3797 mac-allow-anti-aliasing.
3798 (syms_of_macterm): DEFVAR_LISP and initialize it.
3799 (mac_draw_string_common): Use core graphics text rendering if
3800 mac-allow-anti-aliasing is enabled.
3801
3802 * macfns.c (Fx_file_dialog): Save As dialog includes only the
3803 file name in the text box.
3804
38052005-01-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3806
3807 * macfns.c (x_set_foreground_color, x_set_background_color):
3808 Sync with xfns.c.
3809 (mac_window, x_create_tip_frame): Use XSetWindowBackground.
3810 * macterm.c (XSetBackground, XSetWindowBackground): New functions.
3811 * macterm.h (XSetBackground, XSetWindowBackground): Add externs.
3812
38132005-01-14 Kim F. Storm <storm@cua.dk>
3814
3815 * keyboard.c (Fposn_at_x_y): Add optional arg WHOLE.
3816
38172005-01-13 Richard M. Stallman <rms@gnu.org>
3818
3819 * keymap.c (Fcurrent_active_maps): Ignore Voverriding_local_map
3820 if Voverriding_terminal_local_map is non-nil.
3821
3822 * keyboard.c (syms_of_keyboard): Doc fix.
3823
38242005-01-13 Kim F. Storm <storm@cua.dk>
3825
3826 * xdisp.c (Fformat_mode_line): Fix last change. Remove NO_PROPS arg
3827 (specify 0 for FACE instead). Reorder arg list. Doc fix.
3828
38292005-01-12 Richard M. Stallman <rms@gnu.org>
3830
3831 * xdisp.c (Fformat_mode_line): New arg FACE specifies a default
3832 face property for characters that don't specify one.
3833
3834 * fns.c (Frequire): Record in load-history unconditionally.
3835
38362005-01-10 Kim F. Storm <storm@cua.dk>
3837
3838 * dispextern.h (merge_faces): Rename from merge_into_realized_face.
3839
3840 * xfaces.c (merge_faces): Rename from merge_into_realized_face.
3841 Callers changed.
3842 Add support to merge with lisp face id too (if face_name is t).
3843
3844 * xdisp.c (get_next_display_element, next_element_from_display_vector):
3845 Don't lookup lface_id from display table glyphs here; instead use
3846 merge_faces to merge the lisp face id into current face.
3847
38482005-01-09 Kim F. Storm <storm@cua.dk>
3849
3850 * dispextern.h (struct it): New member dpvec_face_id.
3851 (merge_into_realized_face): Add prototype.
3852
3853 * xfaces.c (merge_into_realized_face): New function. Used to
3854 merge escape-glyph face or face from display table into current face.
3855
3856 * xdisp.c (Vshow_nonbreak_escape): New lisp var.
3857 (syms_of_xdisp): DEFVAR_LISP it.
3858 (escape_glyph_face): Remove var.
3859 (redisplay_window): Don't initialize it.
3860 (setup_for_ellipsis, get_next_display_element):
3861 Set it->dpvec_face_id to -1.
3862 (get_next_display_element): Test Vshow_nonbreak_escape.
3863 Do not setup escape_glyph_face.
3864 Properly merge escape-glyph face or face from display table with
3865 current face for escape and control characters.
3866 Set it->dpvec_face_id to relevant face id instead of adding it to each
3867 element of display vector.
3868 (next_element_from_display_vector): If it->dpvec_face_id is set,
3869 use that instead of lface_id from glyph itself.
3870
38712005-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3872
3873 * xterm.h (struct x_output): New member, toolbar_detached.
3874
3875 * gtkutil.c (xg_create_frame_widgets): Set initial tool bar height to
3876 38.
3877 (xg_tool_bar_detach_callback): Set toolbar_detached to 1.
3878 (xg_tool_bar_attach_callback): Set toolbar_detached to 0.
3879 (xg_create_tool_bar): Initialize toolbar_detached.
3880 (update_frame_tool_bar): Only set FRAME_TOOLBAR_HEIGHT (f) if
3881 toolbar_detached is zero.
3882
38832005-01-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3884
3885 * xmenu.c (create_and_show_popup_menu): Pass zero as button to
3886 gtk_menu_popup if not for_click, so callbacks for the menu are called.
3887
3888 * gtkutil.c (xg_gtk_scroll_destroy, xg_create_scroll_bar)
3889 (xg_tool_bar_callback, xg_tool_bar_help_callback)
3890 (update_frame_tool_bar): Cast to EMACS_INT to avoid compiler warning.
3891
3892 * xselect.c (x_get_foreign_selection, x_fill_property_data)
3893 (Fx_get_atom_name, Fx_send_client_event): Replace XFLOAT with
3894 XFLOAT_DATA to get extract number from Lisp object.
3895
38962005-01-07 Kim F. Storm <storm@cua.dk>
3897
3898 * xdisp.c (set_iterator_to_next): Fix 2004-12-13 change.
3899 Set stop_charpos to current charpos instead of 0.
3900
39012005-01-06 Nick Roberts <nickrob@snap.net.nz>
3902
3903 * xdisp.c (Fformat_mode_line): First arg now required.
3904
39052005-01-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3906
3907 * macterm.c (XLoadQueryFont): Correctly handle 0 size
3908 font widths that are returned from some Japanese fonts.
3909
39102005-01-06 Kim F. Storm <storm@cua.dk>
3911
3912 * fringe.c (fringe_faces): Change to Lisp_Object pointer.
3913 (draw_fringe_bitmap_1): Lookup user defined fringe faces here.
3914 (destroy_fringe_bitmap): Set fringe_faces element to nil.
3915 (Fdefine_fringe_bitmap, init_fringe): Change allocation of
3916 fringe_faces array and init elements to nil.
3917 (Fset_fringe_bitmap_face): Set fringe_faces to face name instead of
3918 non-persistent face id.
3919 (mark_fringe_data): New function for GC.
3920
3921 * alloc.c (mark_fringe_data): Declare extern.
3922 (Fgarbage_collect): Call mark_fringe_data.
3923
3924 * alloc.c (overrun_check_free): Invalidate freed memory if
3925 XMALLOC_CLEAR_FREE_MEMORY is defined.
3926
39272005-01-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3928
3929 * macfns.c: Include sys/param.h.
3930 [TARGET_API_MAC_CARBON] (mac_nav_event_callback): New declaration
3931 and function.
3932 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Use MAXPATHLEN for size
3933 of filename string. Set event callback function when creating
3934 dialog boxes. Add code conversions for filenames. Don't dispose
3935 of apple event descriptor record if failed to create it.
3936
3937 * macterm.c: Include sys/param.h.
3938 [USE_CARBON_EVENTS] (mac_handle_window_event): Add handler for
3939 kEventWindowUpdate.
3940 (install_window_handler) [USE_CARBON_EVENTS]: Register it.
3941 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Get FSRef instead
3942 of FSSpec from apple event descriptor record.
3943 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Use MAXPATHLEN for
3944 size of filename string.
3945 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Likewise.
3946 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Return error when a
3947 file dialog is in action.
3948 [TARGET_API_MAC_CARBON] (mac_do_track_drag): Likewise.
3949 Reject only when there are no filename items. Set background color
3950 before (un)highlighting the window below the dragged items.
3951 (XTread_socket) [USE_CARBON_EVENTS]: Don't call do_window_update.
3952
39532005-01-05 Romain Francoise <romain@orebokech.com>
3954
3955 * term.c (encode_terminal_code): Fix buffer size computation.
3956
39572005-01-04 Richard M. Stallman <rms@gnu.org>
3958
3959 * xdisp.c (Fformat_mode_line): Doc fix.
3960
39612005-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
3962
3963 * alloc.c (refill_memory_reserve): Move.
3964 (emacs_blocked_free, emacs_blocked_malloc, emacs_blocked_realloc)
3965 (reset_malloc_hooks, uninterrupt_malloc) [SYNC_INPUT]: Don't define.
3966
39672005-01-03 Richard M. Stallman <rms@gnu.org>
3968
3969 * window.c (window_scroll_pixel_based): Don't correct preserve_y
3970 for CURRENT_HEADER_LINE_HEIGHT when moving backwards.
3971
39722005-01-03 Jason Rumney <jasonr@gnu.org>
3973
3974 * w32bdf.c (w32_load_bdf_font): Set fontp->average_width and
3975 fontp->space_width to FONT_WIDTH so they are valid.
3976
3977 * w32fns.c (w32_load_system_font): Set FONT_WIDTH to maximum, not
3978 average width. Set fontp->average_width and fontp->space_width to
3979 their appropriate values.
3980
3981 * w32term.c (x_new_font): Set FRAME_COLUMN_WIDTH to
3982 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
3983 fontp->space_width.
3984
39852005-01-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3986
3987 * macterm.c (x_new_font): Set FRAME_SPACE_WIDTH.
3988 (x_font_min_bounds, XLoadQueryFont): Use the correct font width
3989 metrics for max and min bounds.
3990 (x_load_font): Correctly calculate average font width metrics.
3991
39922005-01-02 Richard M. Stallman <rms@gnu.org>
3993
3994 * alloc.c (Fgarbage_collect): Don't truncate_undo_list on dead buffers.
3995
39962004-12-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3997
3998 * xterm.c (handle_one_xevent): Clear area in expose event for GTK.
3999
40002004-12-31 Richard M. Stallman <rms@gnu.org>
4001
4002 * xdisp.c (setup_for_ellipsis, get_next_display_element):
4003 Set it->ellipsis_p to 1 or 0.
4004 (display_line): Record whether row ends in mid-ellipsis.
4005 (set_cursor_from_row): If ends in ellipsis, find start of it.
4006 (cursor_row_p): If PT's at the end of the ellipsis the row
4007 ends within, don't display cursor on this row.
4008
4009 * dispextern.h (struct it): New element ellipsis_p.
4010 (struct glyph_row): New element ends_in_ellipsis_p.
4011
4012 * xdisp.c (BUFFER_POS_REACHED_P): We haven't reached the specified
4013 position if we're reading from something other than the buffer.
4014
4015 * window.c (window_scroll_pixel_based): Only look at
4016 Vscroll_preserve_screen_position if the old PT can't be kept.
4017 (syms_of_window) <scroll-preserve-screen-position>: Doc fix.
4018
40192004-12-30 Kim F. Storm <storm@cua.dk>
4020
4021 * xdisp.c (get_line_height_property): New function extracted from
4022 original calc_line_height_property.
4023 (calc_line_height_property): Rework. Handle t and (nil . ratio).
4024 (x_produce_glyphs): Use them to handle line-height and
4025 line-spacing according to new height spec.
4026 (Qtotal): Remove.
4027 (syms_of_xdisp): Remove intern and staticpro for Qtotal.
4028
40292004-12-30 Kenichi Handa <handa@m17n.org>
4030
4031 * fileio.c (Finsert_file_contents): Don't use
4032 current_buffer->buffer_file_coding_system even if REPLACE is
4033 non-nil. Call Qafter_insert_file_set_coding with the second arg VISIT.
4034
4035 * fontset.h (struct font_info): New members space_width and
4036 average_width.
4037
4038 * frame.h (struct frame): New member space_width.
4039 (FRAME_SPACE_WIDTH): New macro.
4040
4041 * xterm.h (struct x_display_info): New member Xatom_AVERAGE_WIDTH.
4042
4043 * xterm.c (x_new_font): Set FRAME_COLUMN_WIDTH to
4044 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
4045 fontp->space_width.
4046 (x_load_font): Calculate fontp->space_width and fontp->average_width.
4047 (x_term_init): Initialize dpyinfo->Xatom_AVERAGE_WIDTH.
4048
4049 * xdisp.c (x_produce_glyphs): Calculate tab width by
4050 FRAME_SPACE_WIDTH, not FRAME_COLUMN_WIDTH.
4051
40522004-12-29 Sanghyuk Suh <han9kin@mac.com>
4053
4054 * macterm.c (SelectionRange): Add Xcode position apple event struct.
4055 (do_ae_open_documents): Handle Xcode-style file position open events.
4056
40572004-12-29 Luc Teirlinck <teirllm@auburn.edu>
4058
4059 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Correct typo.
4060
40612004-12-29 Richard M. Stallman <rms@gnu.org>
4062
4063 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Doc fix.
4064
40652004-12-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4066
4067 * macfns.c (install_window_handler): Modify extern to return OSErr
4068 value.
4069 (mac_window): Handle return value of install_window_handler.
4070
4071 * macterm.c (reflect_byte): Remove function.
4072 (mac_create_bitmap_from_bitmap_data): Don't call reflect_byte.
4073 Lookup table instead.
4074 (mac_do_font_lists): Simplify calculation of the longest
4075 nonspecial string.
4076 (init_mac_drag_n_drop): Remove function and declaration.
4077 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
4078 init_mac_drag_n_drop.
4079 (mac_do_track_drag): New function and declaration.
4080 (install_window_handler): Return OSErr value.
4081 (install_window_handler) [TARGET_API_MAC_CARBON]:
4082 Register handlers for tracking/receiving drag-and-drop items.
4083 (do_ae_open_documents): Generate unibyte strings for filenames.
4084 (mac_do_receive_drag) [TARGET_API_MAC_CARBON] : Likewise.
4085 Reject only non-filename items. Set event modifiers, and return value.
4086
40872004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
4088
4089 * coding.c (decode_coding): Fix previous change.
4090
40912004-12-28 Richard M. Stallman <rms@gnu.org>
4092
4093 * xdisp.c (back_to_previous_visible_line_start):
4094 Don't call handle_display_prop.
4095
40962004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
4097
4098 * coding.c (decode_coding_XXX, decode_composition_emacs_mule)
4099 (decode_coding_emacs_mule, encode_coding_emacs_mule)
4100 (decode_coding_iso2022, encode_designation_at_bol)
4101 (encode_coding_iso2022, decode_coding_sjis_big5, decode_eol)
4102 (decode_coding): Constify arguments and local vars.
4103
41042004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4105
4106 * xmenu.c (popup_get_selection): Only pop down dialogs
4107 on C-g and Escape.
4108 (popup_get_selection): Remove parameter down_on_keypress.
4109 (create_and_show_popup_menu, create_and_show_dialog):
4110 Remove parameter down_on_keypress to popup_get_selection.
4111
41122004-12-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4113
4114 * dispextern.h: Change HAVE_CARBON to MAC_OS.
4115 (struct glyph_string): Likewise.
4116
4117 * emacs.c (main) [MAC_OS8]: Call mac_term_init instead of
4118 mac_initialize.
4119
4120 * fileio.c (Fnext_read_file_uses_dialog_p, Fread_file_name):
4121 Change TARGET_API_MAC_CARBON to HAVE_CARBON.
4122
4123 * fns.c (vector): Change MAC_OSX to MAC_OS.
4124
4125 * frame.c (x_set_frame_parameters, x_report_frame_params)
4126 (x_set_fullscreen): Remove #ifndef HAVE_CARBON.
4127 (x_set_border_width, Vdefault_frame_scroll_bars):
4128 Change HAVE_CARBON to MAC_OS.
4129
4130 * image.c [MAC_OS]: Include sys/stat.h.
4131 [MAC_OS && !MAC_OSX]: Include sys/param.h, ImageCompression.h, and
4132 QuickTimeComponents.h.
4133
4134 * mac.c [!MAC_OSX] (mac_wait_next_event): Add extern.
4135 [!MAC_OSX] (select): Use mac_wait_next_event.
4136 [!MAC_OSX] (run_mac_command): Change EXEC_SUFFIXES to Vexec_suffixes.
4137 [!MAC_OSX] (select, run_mac_command): Change `#ifdef
4138 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
4139 (mac_clear_font_name_table): Add extern.
4140 (Fmac_clear_font_name_table): New defun.
4141 (syms_of_mac): Defsubr it.
4142 [MAC_OSX] (SELECT_POLLING_PERIOD_USEC): New define.
4143 [MAC_OSX] (select_and_poll_event): New function.
4144 [MAC_OSX] (sys_select): Use it.
4145 [MAC_OSX && SELECT_USE_CFSOCKET] (socket_callback): New function.
4146 [MAC_OSX && SELECT_USE_CFSOCKET]
4147 (SELECT_TIMEOUT_THRESHOLD_RUNLOOP, EVENT_CLASS_SOCK): New defines.
4148 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]: Use CFSocket and
4149 RunLoop for simultaneously monitoring two kinds of inputs, window
4150 events and process outputs, without periodically polling.
4151
4152 * macfns.c (mac_initialized): Remove extern.
4153 (stricmp): Put in #if 0. All callers changed to use xstricmp in
4154 xfaces.c.
4155 (strnicmp): Decrement `n' at the end of each loop, not the beginning.
4156 (check_mac): Use the term "Mac native windows" instead of "Mac OS".
4157 (check_x_display_info, x_display_info_for_name): Sync with xfns.c.
4158 (mac_get_rdb_resource): New function (from w32reg.c).
4159 (x_get_string_resource): Use it.
4160 (install_window_handler): Add extern.
4161 (mac_window): New function.
4162 (Fx_create_frame): Use it instead of make_mac_frame.
4163 Set parameter for Qfullscreen. Call x_wm_set_size_hint.
4164 (Fx_open_connection, Fx_close_connection): New defuns.
4165 (syms_of_macfns): Defsubr them.
4166 (x_create_tip_frame) [TARGET_API_MAC_CARBON]:
4167 Add kWindowNoUpdatesAttribute to the window attribute.
4168 (x_create_tip_frame) [!TARGET_API_MAC_CARBON]: Use NewCWindow.
4169 (x_create_tip_frame): Don't call ShowWindow.
4170 (Fx_show_tip): Call ShowWindow.
4171 (Fx_file_dialog): Change `#ifdef TARGET_API_MAC_CARBON' to `#if
4172 TARGET_API_MAC_CARBON'.
4173 (mac_frame_parm_handlers): Set handlers for Qfullscreen.
4174 (syms_of_macfns) [MAC_OSX]: Initialize mac_in_use to 0.
4175
4176 * macgui.h [!MAC_OSX]: Don't include Controls.h. Include Windows.h.
4177 (Window): Typedef to WindowPtr and move outside `#if
4178 TARGET_API_MAC_CARBON'.
4179 (XSizeHints): New struct.
4180
4181 * macterm.c (x_update_begin, x_update_end)
4182 [TARGET_API_MAC_CARBON]: Disable screen updates during update of a
4183 frame.
4184 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
4185 [MAC_OS8]: Use XDrawImageString/XDrawImageString16.
4186 (construct_mouse_click): Put in #if 0.
4187 (x_check_fullscreen, x_check_fullscreen_move): Remove decls.
4188 (x_scroll_bar_create, x_scroll_bar_handle_click): Change `#ifdef
4189 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
4190 (activate_scroll_bars, deactivate_scroll_bars)
4191 [!TARGET_API_MAC_CARBON]: Use ActivateControl/DeactivateControl.
4192 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Reposition window
4193 if the position is neither user-specified nor program-specified.
4194 (x_free_frame_resources): Free size_hints.
4195 (x_wm_set_size_hint): Allocate size_hints if needed. Set size_hints.
4196 (mac_clear_font_name_table): New function.
4197 (mac_do_list_fonts): Initialize font_name_table if needed.
4198 (x_list_fonts): Don't initialize font_name_table. Add BLOCK_INPUT
4199 around mac_do_list_fonts.
4200 (mac_unload_font): New function.
4201 (x_load_font): Add BLOCK_INPUT around XLoadQueryFont.
4202 (init_mac_drag_n_drop, mac_do_receive_drag): Enclose declarations
4203 and definitions with #if TARGET_API_MAC_CARBON.
4204 [USE_CARBON_EVENTS] (mac_handle_window_event): Add decl.
4205 (install_window_handler): Add decl.
4206 (do_window_update): Add BeginUpdate/EndUpdate for the tooltip
4207 window. Use UpdateControls. Get the rectangle that should be
4208 updated and restrict the target of expose_frame to it.
4209 (do_grow_window): Set minimum height/width according to size_hints.
4210 (do_grow_window) [TARGET_API_MAC_CARBON]: Use ResizeWindow.
4211 (do_zoom_window): Don't use x_set_window_size.
4212 [USE_CARBON_EVENTS] (mac_handle_window_event): New function.
4213 (install_window_handler): New function.
4214 [!USE_CARBON_EVENTS] (mouse_region): New variable.
4215 [!USE_CARBON_EVENTS] (mac_wait_next_event): New function.
4216 (XTread_socket) [USE_CARBON_EVENTS]: Move call to
4217 GetEventDispatcherTarget inside BLOCK_INPUT.
4218 (XTread_socket) [!USE_CARBON_EVENTS]: Use mac_wait_next_event.
4219 Update mouse_region when mouse is moved.
4220 (make_mac_frame): Remove.
4221 (make_mac_terminal_frame): Put in #ifdef MAC_OS8.
4222 Initialize mouse pointer shapes. Change values of f->left_pos and
4223 f->top_pos. Don't use make_mac_frame. Use NewCWindow.
4224 Don't call ShowWindow.
4225 (mac_initialize_display_info) [MAC_OSX]: Create mac_id_name from
4226 Vinvocation_name and Vsystem_name.
4227 (mac_make_rdb): New function (from w32term.c).
4228 (mac_term_init): Use it. Add BLOCK_INPUT. Error if display has
4229 already been opened. Don't pass argument to
4230 mac_initialize_display_info. Don't set dpyinfo->height/width.
4231 Add entries to x_display_list and x_display_name_list.
4232 (x_delete_display): New function.
4233 (mac_initialize): Don't call mac_initialize_display_info.
4234 (syms_of_macterm) [!MAC_OSX]: Don't call Fprovide.
4235
4236 * macterm.h (check_mac): Add extern.
4237 (struct mac_output): New member size_hints.
4238 (FRAME_SIZE_HINTS): New macro.
4239 (mac_unload_font): Add extern.
4240
4241 * xdisp.c (expose_window, expose_frame): Remove kludges for Mac.
4242
4243 * xfaces.c (clear_font_table) [MAC_OS]: Call mac_unload_font.
4244
42452004-12-27 Richard M. Stallman <rms@gnu.org>
4246
4247 * buffer.c (Fbuffer_disable_undo): Delete (move to simple.el).
4248 (syms_of_buffer): Don't defsubr it.
4249
4250 * process.c (list_processes_1): Set undo_list instead
4251 of calling Fbuffer_disable_undo.
4252
4253 * xdisp.c (single_display_spec_string_p): Rename from
4254 single_display_prop_string_p.
4255 (single_display_spec_intangible_p): Rename from
4256 single_display_prop_intangible_p.
4257 (handle_single_display_spec): Rename from handle_single_display_prop.
4258 Rewritten to be easier to understand.
4259
4260 Change in load-history format. Functions now get (defun . NAME),
4261 and variables get just NAME.
4262
4263 * data.c (Fdefalias): Use (defun . FN_NAME) in LOADHIST_ATTACH.
4264
4265 * eval.c (Fdefun, Fdefmacro): Use (defun . FN_NAME) in LOADHIST_ATTACH.
4266 (Fdefvaralias, Fdefvar, Fdefconst): Use just SYM in LOADHIST_ATTACH.
4267 (Qdefvar): Var deleted.
4268 (syms_of_eval): Don't initialze it.
4269
4270 * lread.c (syms_of_lread) <load-history>: Doc fix.
4271
42722004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4273
4274 * xmenu.c (popup_get_selection): Pop down on C-g.
4275 (set_frame_menubar): Install translations for Lucid/Motif/Lesstif that
4276 pops down menu on C-g.
4277 (xdialog_show): If dialog popped down and no button in the dialog was
4278 pushed, call Fsignal to quit.
4279 (xmenu_show): In no toolkit version, if menu returns NO_SELECT call
4280 Fsignal to quit.
4281
4282 * xfns.c (Fx_file_dialog): Motif/Lesstif version: Pop down on C-g.
4283
4284 * gtkutil.c (xg_initialize): Install bindings for C-g so that
4285 dialogs and menus pop down.
4286
42872004-12-27 Kenichi Handa <handa@m17n.org>
4288
4289 * coding.c (code_convert_region): Fix calculation of `ratio'.
4290
42912004-12-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4292
4293 * gtkutil.c (update_frame_tool_bar): Make the value of
4294 tool-bar-button-margin control margins of images in tool bar.
4295
4296 * alloc.c (check_depth): New variable.
4297 (overrun_check_malloc, overrun_check_realloc): Only add
4298 overhead and write check pattern if check_depth is 1 (to handle
4299 recursive calls). Increase/decrease check_depth in entry/exit.
4300 (overrun_check_free): Only check for overhead if check_depth is 1.
4301 Increase/decrease check_depth in entry/exit.
4302
43032004-12-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4304
4305 * keyboard.c (input_available_signal): Call SIGNAL_THREAD_CHECK
4306 before touching input_available_clear_time, to avoid accessing it
4307 from multiple threads.
4308
43092004-12-23 Jason Rumney <jasonr@gnu.org>
4310
4311 * image.c (__WIN32__) [HAVE_NTGUI]: Define for correct behaviour
4312 of JPEG library.
4313
43142004-12-22 Richard M. Stallman <rms@gnu.org>
4315
4316 * emacs.c (main): If batch mode, set Vundo_outer_limit to nil.
4317
4318 * lisp.h (Vundo_outer_limit): Fix decl.
4319
4320 * undo.c (Vundo_outer_limit): Replaces undo_outer_limit.
4321 Uses changed.
4322 (syms_of_undo): Initialize appropriately.
4323 (truncate_undo_list): If it's nil, there's no limit.
4324
43252004-12-22 Kenichi Handa <handa@m17n.org>
4326
4327 * xselect.c (Fx_get_cut_buffer_internal): Return a unibyte string.
4328
43292004-12-21 Richard M. Stallman <rms@gnu.org>
4330
4331 * eval.c (unwind_to_catch): Clear immediate_quit.
4332
4333 * xdisp.c (get_next_display_element): Display codes 8a0 and 8ad
4334 specially as `\ ' and `\-'.
4335
4336 * keyboard.c (kbd_buffer_store_event_hold):
4337 In the code for while-no-input, handle immediate_quit.
4338
4339 * alloc.c (Fgarbage_collect): Update call to truncate_undo_list.
4340 Call that at the very start.
4341 (undo_limit, undo_strong_limit, undo_outer_limit): Move to undo.c.
4342 (syms_of_alloc): Don't define undo-limit,
4343 undo-strong-limit and undo-outer-limit here.
4344
4345 * undo.c (truncate_undo_list): Return void.
4346 Take just one argument, the buffer.
4347 Make it current, and inhibit recursive GC.
4348 Access and update the undo list directly; return void.
4349 Refer to the undo...limit variables directly.
4350 Test undo_outer_limit only after counting the whole current command.
4351 When it's exceeded, call the function in undo-outer-limit-function.
4352 (undo_limit, undo_strong_limit, undo_outer_limit): From alloc.c.
4353 (Vundo_outer_limit_function): New variable.
4354 (syms_of_undo): Define undo-limit, undo-strong-limit
4355 and undo-outer-limit here, and undo-outer-limit-function.
4356 Doc fixes.
4357
4358 * lisp.h (truncate_undo_list): Update decl.
4359
43602004-12-21 Piet van Oostrum <piet@cs.uu.nl>
4361
4362 * fileio.c (Fread_file_name): Delete duplicates in
4363 file-name-history when history_delete_duplicates is true.
4364
43652004-12-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4366
4367 * macterm.c (mac_do_list_fonts): Fix memory leak
4368
43692004-12-20 Richard M. Stallman <rms@gnu.org>
4370
4371 * regex.c (re_match_2_internal) <symend, wordend>:
4372 Fix calls to UPDATE_SYNTAX_TABLE_FORWARD.
4373
43742004-12-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4375
4376 * macterm.c (endif, x_font_name_to_mac_font_name):
4377 Use maccentraleurroman instead of maccentraleuropean
4378 (mac_c_string_match, mac_do_list_fonts): Speed up font search by
4379 quickly finding a specific font without needing regexps.
4380
43812004-12-15 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4382
4383 * syssignal.h: Declare main_thread.
4384 (SIGNAL_THREAD_CHECK): New macro.
4385
4386 * keyboard.c (input_available_signal): Move thread checking code
4387 to macro SIGNAL_THREAD_CHECK and call that macro.
4388 (interrupt_signal): Call SIGNAL_THREAD_CHECK.
4389
4390 * alloc.c (uninterrupt_malloc): Move main_thread to emacs.c.
4391
4392 * emacs.c: Define main_thread.
4393 (main): Initialize main_thread.
4394 (handle_USR1_signal, handle_USR2_signal, fatal_error_signal)
4395 (memory_warning_signal): Call SIGNAL_THREAD_CHECK.
4396
4397 * floatfns.c (float_error): Call SIGNAL_THREAD_CHECK.
4398
4399 * dispnew.c (window_change_signal): Call SIGNAL_THREAD_CHECK.
4400
4401 * sysdep.c (select_alarm): Call SIGNAL_THREAD_CHECK.
4402
4403 * process.c (send_process_trap, sigchld_handler):
4404 Call SIGNAL_THREAD_CHECK.
4405
4406 * data.c (arith_error): Call SIGNAL_THREAD_CHECK.
4407
4408 * atimer.c (alarm_signal_handler): Call SIGNAL_THREAD_CHECK.
4409
4410 * xterm.c (xg_scroll_callback): Update XG_LAST_SB_DATA before
4411 returning when xg_ignore_gtk_scrollbar is true.
4412
44132004-12-14 Kim F. Storm <storm@cua.dk>
4414
4415 * keyboard.c (read_char): Save and restore echo_string when
4416 handling input method.
4417
44182004-12-13 Richard M. Stallman <rms@gnu.org>
4419
4420 * eval.c (syms_of_eval) <quit-flag>: Doc fix.
4421
4422 * keyboard.c (Vthrow_on_input): New variable.
4423 (syms_of_keyboard): Defvar and initialize it.
4424 (kbd_buffer_store_event_hold): Handle Vthrow_on_input.
4425
4426 * lisp.h (QUIT): Check for Vthrow_on_input.
4427 (Vthrow_on_input): Declare it.
4428
44292004-12-13 Kim F. Storm <storm@cua.dk>
4430
4431 * xdisp.c (set_iterator_to_next): Reset stop_charpos after display
4432 vector.
4433
44342004-12-12 Richard M. Stallman <rms@gnu.org>
4435
4436 * indent.c (Fvertical_motion): Call move_it_by_lines even if LINES = 0.
4437
4438 * minibuf.c (Fall_completions): Add var `zero' and use it in loop.
4439 (Ftry_completion): Really use outer `zero'; eliminate inner one.
4440
44412004-12-12 Kenichi Handa <handa@m17n.org>
4442
4443 * term.c (encode_terminal_code): Fix previous change.
4444
44452004-12-11 Stefan Monnier <monnier@iro.umontreal.ca>
4446
4447 * keyboard.c (handle_async_input): Remove pthread mutex handling.
4448 (input_available_signal): Move pthread thingy to !SYNC_INPUT branch.
4449
4450 * syntax.c (Fforward_word): Avoid non-idempotent side-effects
4451 in macro arguments.
4452
4453 * minibuf.c (Ftry_completion, Fall_completions): Don't use
4454 XFASTINT blindly.
4455
4456 * emacs.c (main, Fdump_emacs): Don't touch malloc hooks if SYNC_INPUT.
4457
44582004-12-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4459
4460 * w32term.c (x_calc_absolute_position): Remove calculation of
4461 difference between inner and outer window. Don't subtract difference
4462 for left and top calculations.
4463
4464 * xterm.c (x_calc_absolute_position): Don't subtract outer_pixel_diff
4465 for left and top calculations. Remove call to x_real_positions.
4466 [Bug report by Drew Adams in November]
4467 (x_check_expected_move): Do not set change_gravity to 1 when calling
4468 x_set_offset.
4469
44702004-12-08 Richard M. Stallman <rms@gnu.org>
4471
4472 * xdisp.c (get_next_display_element): Use `escape-glyph' for
4473 control chars and escaped octal codes.
4474 (Qescape_glyph): New variable.
4475 (syms_of_xdisp): Initialize it.
4476 (escape_glyph_face): New variable.
4477 (redisplay_window): Initialize it.
4478
44792004-12-07 Paul Eggert <eggert@cs.ucla.edu>
4480
4481 * image.c (our_fill_input_buffer, jpeg_load, CHECK_LIB_AVAILABLE)
4482 (init_image): Use 1 rather than TRUE. TRUE's not always defined.
4483
44842004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4485
4486 * emacs.c (Fdump_emacs): Add ! defined (SYSTEM_MALLOC) around
4487 reset_malloc_hooks.
4488
4489 * keyboard.c (handle_async_input, input_available_signal):
4490 Add ! defined (SYSTEM_MALLOC) around thread code.
4491
4492 * alloc.c: Add comment about the reason for (UN)BLOCK_INPUT_ALLOC.
4493
44942004-12-07 Stefan Monnier <monnier@iro.umontreal.ca>
4495
4496 * eval.c (init_eval_once): Increase max_specpdl_size to 1000.
4497
4498 * config.in: Regenerate.
4499
45002004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4501
4502 * xmenu.c (Fx_popup_menu): Correct documentation about position.
4503 (xmenu_show): Do not call XTranslateCoordinates. Adjust position
4504 if not given by a mouse click to correspond with x-popup-menu
4505 documentation.
4506
4507 * config.in: Regenerate.
4508
4509 * gtkutil.c: Include signal.h and syssignal.h.
4510 (xg_get_file_name): Block and unblock __SIGRTMIN if defined.
4511
4512 * alloc.c: If HAVE_GTK_AND_PTHREAD, include pthread.h,
4513 new variables main_thread and alloc_mutex,
4514 define (UN)BLOCK_INPUT_ALLOC to use alloc_mutex to protect
4515 emacs_blocked_* calls and only do (UN)BLOCK_INPUT in the main thread.
4516 If not HAVE_GTK_AND_PTHREAD, (UN)BLOCK_INPUT_ALLOC is the same as
4517 (UN)BLOCK_INPUT.
4518 (emacs_blocked_free, emacs_blocked_malloc)
4519 (emacs_blocked_realloc): Use (UN)BLOCK_INPUT_ALLOC.
4520 (uninterrupt_malloc): Initialize main_thread and alloc_mutex.
4521 (reset_malloc_hooks): New function.
4522
4523 * lisp.h: Declare reset_malloc_hooks.
4524
4525 * emacs.c (Fdump_emacs): Call reset_malloc_hooks.
4526
4527 * keyboard.c: Conditionally include pthread.h
4528 (handle_async_input, input_available_signalt): If not in the main
4529 thread, block signal, send signal to main thread and return.
4530
4531 * gtkutil.c (xg_get_file_with_chooser): Handle local files only.
4532 Set current folder in file chooser if default_filename is a directory.
4533
45342004-12-05 Stefan Monnier <monnier@iro.umontreal.ca>
4535
4536 * regex.c (GET_UNSIGNED_NUMBER): Signal an error when reaching the end.
4537 Remove redundant correctness checks.
4538 (regex_compile): Fix up error codes for \{..\} expressions.
4539
45402004-12-05 Richard M. Stallman <rms@gnu.org>
4541
4542 * regex.c (regex_compile): Fix end-of-pattern case for space.
4543
45442004-12-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4545
4546 * macterm.h (cfstring_create_with_utf8_cstring): Add prototype.
4547 * mac.c (cfstring_create_with_utf8_cstring): Add to prevent
4548 crashes with invalid characters.
4549 * macmenu.c (add_menu_item): Use it.
4550 * image.c (image_load_quartz2d): Likewise.
4551 * macfns.c (x_set_name, x_set_title): Likewise.
4552 (Fx_file_dialog): Likewise. Use constant CFRefs instead of
4553 creating them each time for labels.
4554
45552004-12-02 Richard M. Stallman <rms@gnu.org>
4556
4557 * config.in (RE_TRANSLATE_P): If make_number is not a macro,
4558 don't use it here.
4559
4560 * eval.c (Fcalled_interactively_p): Don't check INTERACTIVE.
4561 (interactive_p): Skip Scalled_interactively_p frames
4562 like Sinteractive_p frames.
4563 (unwind_to_catch): Clear handling_signal.
4564
4565 * data.c (Fmake_variable_buffer_local): Doc fix.
4566 (Fmake_local_variable): Doc fix.
4567
4568 * insdel.c (insert_from_string_before_markers)
4569 (insert_from_string): Don't modify buffer on empty insertion.
4570
4571 * window.c (Fget_lru_window, Fget_largest_window): Doc fixes.
4572
45732004-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4574
4575 * macmenu.c (add_menu_item): Fallback on MacRoman if encoding
4576 menu text as UTF8 fails.
4577
45782004-12-01 Kim F. Storm <storm@cua.dk>
4579
4580 * alloc.c: Add commentary for last change.
4581 (XMALLOC_PUT_SIZE, XMALLOC_GET_SIZE): New macros to handle
4582 sizeof(size_t) != 4.
4583 (overrun_check_malloc, overrun_check_realloc, overrun_check_free):
4584 Use them. Also clear header and trailer of freed memory.
4585 (GC_STRING_OVERRUN_COOKIE_SIZE): Rename from GC_STRING_EXTRA.
4586 (string_overrun_cookie): Rename from string_overrun_pattern.
4587 (GC_STRING_EXTRA): Define from GC_STRING_OVERRUN_COOKIE_SIZE.
4588
45892004-12-01 Andreas Schwab <schwab@suse.de>
4590
4591 * lisp.h: Declare string_to_multibyte.
4592
45932004-12-01 Kenichi Handa <handa@m17n.org>
4594
4595 * w32console.c (w32con_write_glyphs): Decide coding here.
4596 Adjusted for the change of encode_terminal_code.
4597
4598 * term.c (encode_terminal_code): Don't make it "static".
4599
46002004-11-30 Kenichi Handa <handa@m17n.org>
4601
4602 * term.c (encode_terminal_buf, encode_terminal_bufsize): New variables.
4603 (encode_terminal_code): Argument changed. Encode all
4604 characters at once, and return a pointer to the result of encoding.
4605 (write_glyphs): Decide coding here. Adjusted for the above change.
4606 (insert_glyphs): Likewise.
4607 (term_init): Initialize encode_terminal_bufsize to 0.
4608
4609 * coding.c (Vcode_conversion_workbuf_name): New variable.
4610 (syms_of_coding): Initialize and staticpro it.
4611 (set_conversion_work_buffer): New function.
4612 (run_pre_post_conversion_on_str): Use it.
4613 (run_pre_write_conversin_on_c_str): New function.
4614
4615 * coding.h (run_pre_write_conversin_on_c_str): Extern it.
4616
46172004-11-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4618
4619 * keyboard.c: Don't undef SIGIO
4620 * s/darwin.h (NO_SOCK_SIGIO): Define NO_SOCK_SIGIO on carbon
4621 * Makefile.in (mac.o): Depend on blockinput.h and atimer.h.
4622 (macfns.o): Don't depend on ccl.h.
4623 * macfns.c (mac_frame_parm_handlers): Set handlers for
4624 Qleft_fringe and Qright_fringe.
4625 * macterm.c (mac_fill_rectangle_to_pixmap)
4626 (mac_draw_rectangle_to_pixmap, mac_copy_area_to_pixmap)
4627 (mac_copy_area_with_mask_to_pixmap, x_draw_image_foreground_1):
4628 Put in #if 0.
4629 (mac_scroll_area) [TARGET_API_MAC_CARBON]: Use ScrollWindowRect.
4630 (x_flush) [TARGET_API_MAC_CARBON]: Don't traverse frames.
4631 (XFlush) [TARGET_API_MAC_CARBON]: Define to an empty replacement.
4632 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
4633 [!MAC_OS8]: Added ifdef'd out code for os8. Don't use
4634 XDrawImageString. Always draw background and foreground separately.
4635 (x_draw_image_foreground): Use clipping instead of computing the
4636 intersection rectangle.
4637 (x_draw_image_glyph_string): Don't draw an image with mask to a
4638 pixmap.
4639 (x_redisplay_interface): Set flush_display_optional member to 0.
4640 (XTread_socket): Correctly reset the TEConverter
4641 object.
4642
46432004-11-30 Kim F. Storm <storm@cua.dk>
4644
4645 * lisp.h: New defines to enable buffer overrun checking.
4646 (GC_CHECK_STRING_OVERRUN, GC_CHECK_STRING_FREE_LIST)
4647 (XMALLOC_OVERRUN_CHECK, GC_CHECK_CONS_LIST): Add.
4648
4649 * alloc.c: Add more checks for buffer overruns.
4650 (XMALLOC_OVERRUN_CHECK_SIZE, xmalloc_overrun_check_header)
4651 xmalloc_overrun_check_trailer, overrun_check_malloc)
4652 overrun_check_realloc, overrun_check_free): Add.
4653 (GC_STRING_EXTRA, string_overrun_pattern): Add.
4654 (check_sblock, allocate_string_data, compact_small_strings):
4655 Set and check string_overrun_pattern if GC_CHECK_STRING_OVERRUN.
4656 (check_cons_list): Condition on GC_CHECK_CONS_LIST.
4657 (check_string_free_list): Add.
4658 (allocate_string, sweep_strings): Call check_string_free_list.
4659
4660 * emacs.c (malloc_initialize_hook): Don't free malloc_state_ptr if
4661 XMALLOC_OVERRUN_CHECK to avoid crash during load.
4662
46632004-11-29 Kim F. Storm <storm@cua.dk>
4664
4665 * fns.c (concat): Use SAFE_ALLOCA.
4666
46672004-11-29 Stefan Monnier <monnier@iro.umontreal.ca>
4668
4669 * sysdep.c (emacs_write): Don't use QUIT.
4670
46712004-11-29 Kenichi Handa <handa@m17n.org>
4672
4673 * buffer.c (init_buffer): Set current_buffer->directory to a
4674 multibyte string made by string_to_multibyte.
4675
4676 * emacs.c (init_cmdargs): Set unibyte strings in Vcommand_line_args.
4677
46782004-11-27 Andreas Schwab <schwab@suse.de>
4679
4680 * alloc.c (mark_stack): Call GC_MARK_SECONDARY_STACK if defined.
4681
4682 * s/gnu-linux.h: Enable no-op gcpros on ia64.
4683 (GC_MARK_SECONDARY_STACK) [__ia64__]: Define.
4684
4685 * filelock.c (lock_file_1): Call get_boot_time early.
4686 Increase buffer size.
4687
46882004-11-27 Eli Zaretskii <eliz@gnu.org>
4689
4690 * lisp.h (DECL_ALIGN): Define non-trivially only if NO_DECL_ALIGN
4691 is not defined.
4692
46932004-11-27 Kim F. Storm <storm@cua.dk>
4694
4695 * search.c (syms_of_search) <search-spaces-regexp>: Move 'doc:'
4696 marker out of doc string.
4697
46982004-11-26 Stefan Monnier <monnier@iro.umontreal.ca>
4699
4700 * s/darwin.h (POSIX_SIGNALS): Undo the removal of 2002-08-25,
4701 which was not mentioned in the log.
4702
47032004-11-26 Kim F. Storm <storm@cua.dk>
4704
4705 * fringe.c (update_window_fringes): Prefer truncation bitmaps over
4706 angle bitmaps at top/bottom line.
4707
4708 * xdisp.c: Undo recent changes for restoring saved_face_id. Instead,
4709 set it when it->method is set to next_element_from_display_vector.
4710 (setup_for_ellipsis): Add LEN argument. Callers changed.
4711 Set it->saved_face_id.
4712 (get_next_display_element): Use loop instead of recursion.
4713 Set it->saved_face_id. Combine duplicate code for ctr chars.
4714 (next_element_from_display_vector): Do not set it->saved_face_id.
4715 (next_element_from_ellipsis): Use setup_for_ellipsis.
4716
47172004-11-26 Eli Zaretskii <eliz@gnu.org>
4718
4719 * eval.c (Fdefvar): Declare pdl from last change as `volatile' to
4720 prevent compiler warnings.
4721
47222004-11-25 Stefan Monnier <monnier@iro.umontreal.ca>
4723
4724 * keyboard.c (command_loop_1): Print a message describing the key
4725 the user just pressed when this key has no binding.
4726
4727 * sysdep.c (sys_signal): Don't use SA_RESTART if SYNC_INPUT is set.
4728 (emacs_open, emacs_read, emacs_write): Check QUIT when interrupted.
4729
4730 * lread.c (readchar): Check QUIT when `getc' is interrupted.
4731
47322004-11-24 Richard M. Stallman <rms@gnu.org>
4733
4734 * coding.c (run_pre_post_conversion_on_str): Bind Qinhibit_read_only.
4735
4736 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>: Doc fix.
4737
47382004-11-24 Kim F. Storm <storm@cua.dk>
4739
4740 * xdisp.c (move_it_in_display_line_to, display_line):
4741 Restore saved_face_id also when truncate-lines or hscrolled.
4742
47432004-11-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4744
4745 * gtkutil.c (xg_get_file_name): Rename use-old-gtk-file-dialog to
4746 x-use-old-gtk-file-dialog.
4747
4748 * xfns.c: Define x_use_old_gtk_file_dialog.
4749 (syms_of_xfns): Rename use-old-gtk-file-dialog to x-... Move it
4750 outside ifdef USE_GTK.
4751
47522004-11-23 Stefan Monnier <monnier@iro.umontreal.ca>
4753
4754 * coding.h (ENCODE_FILE, DECODE_FILE, ENCODE_SYSTEM, DECODE_SYSTEM):
4755 Don't use XFASTINT blindly.
4756
4757 * config.in (RE_TRANSLATE_P): Don't use XFASTINT blindly.
4758
4759 * indent.c (skip_invisible): Avoid non-idempotent side-effects
4760 in macro arguments.
4761
4762 * keymap.c (Flookup_key): Check INTEGERP before XINT.
4763
4764 * lread.c (oblookup): Don't use XFASTINT blindly.
4765
4766 * window.c (Fset_window_scroll_bars): Don't use XINT if it isn't int.
4767 (decode_next_window_args, window_loop): Don't use XFASTINT blindly.
4768
47692004-11-23 Kim F. Storm <storm@cua.dk>
4770
4771 * dispextern.h (MATRIX_ROW_ENDS_IN_MIDDLE_OF_CHAR_P)
4772 (MATRIX_ROW_STARTS_IN_MIDDLE_OF_CHAR_P): Not if dpvec_index is zero.
4773
4774 * xfaces.c (lookup_named_face): Add signal_p arg. Return -1 if
4775 signal_p is zero and face name is unknown.
4776 (Fx_list_fonts): Don't signal error in lookup_named_face.
4777 (Fface_font): Signal error in lookup_named_face.
4778 (ascii_face_of_lisp_face): Likewise.
4779
4780 * dispextern.h (lookup_named_face): Fix prototype.
4781
4782 * xdisp.c (handle_single_display_prop): Don't signal error in
4783 lookup_named_face for unknown fringe face name.
4784 (highlight_trailing_whitespace): Don't signal error in
4785 lookup_named_face if trailing-whitespace face unknown.
4786 (calc_line_height_property): Don't signal error in
4787 lookup_named_face if specified face name is unknown.
4788
4789 * fringe.c (update_window_fringes): Show top row indicator if
4790 window has header-line. Don't show arrow at bob and eob
4791 if the boundary indicators are not used.
4792 (Fset_fringe_bitmap_face): Signal error in lookup_named_face.
4793
4794 * window.c (set_window_buffer): Clear display_error_modiff.
4795
47962004-11-22 Kim F. Storm <storm@cua.dk>
4797
4798 * fringe.c (update_window_fringes): Provide sensible fall-back
4799 value for non-nil indicate-buffer-boundaries setting.
4800
48012004-11-22 Markus Rost <rost@ias.edu>
4802
4803 * minibuf.c (Fminibuffer_complete_and_exit): Fix previous change.
4804
48052004-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
4806
4807 * eval.c (Fdefvar): Warn when var is let-bound but globally void.
4808
48092004-11-21 Kim F. Storm <storm@cua.dk>
4810
4811 * xdisp.c (erase_phys_cursor): Clear hollow cursor inside TEXT_AREA.
4812
4813 * xterm.c (x_clip_to_row): Add area arg. Callers changed.
4814 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
4815
4816 * w32term.c (w32_clip_to_row): Add area arg. Callers changed.
4817 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
4818
4819 * macterm.c (x_clip_to_row): Add area arg. Callers changed.
4820 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
4821
4822 * xdisp.c (move_it_in_display_line_to, display_line):
4823 Restore saved_face_id if overflow-newline-into-fringe is enabled and
4824 line is continued before or in middle of element from display vector.
4825
4826 * indent.c (Fvertical_motion): Fix last change. Use another
4827 method to detect if iterator moved too far ahead after reseat.
4828
4829 * xdisp.c (IT_EXPAND_MATRIX_WIDTH): New macro. Do not
4830 expand matrix width for overflow in zero-width area.
4831 (append_glyph, append_composite_glyph, produce_image_glyph)
4832 (append_stretch_glyph): Use it to avoid loop in redisplay.
4833 (note_mode_line_or_margin_highlight): Don't let help-echo from
4834 string override help-echo from image map.
4835
48362004-11-20 Luc Teirlinck <teirllm@auburn.edu>
4837
4838 * fns.c (Fyes_or_no_p): Call Fread_from_minibuffer with extra argument.
4839 * callint.c (Fcall_interactively): Ditto.
4840
48412004-11-20 Stefan Monnier <monnier@iro.umontreal.ca>
4842
4843 * minibuf.c (Fminibuffer_complete_and_exit):
4844 Fixup the case of the completed value, for case-indep completion.
4845
48462004-11-20 Richard M. Stallman <rms@gnu.org>
4847
4848 * lisp.h (Fread_from_minibuffer): Add arg in decl.
4849
4850 * minibuf.c (read_minibuf): New arg KEEP_ALL. Callers changed.
4851 (Fread_from_minibuffer): New arg KEEP_ALL. Callers changed.
4852
4853 * search.c (Vsearch_spaces_regexp):
4854 Rename from Vsearch_whitespace_regexp. All uses changed.
4855
48562004-11-20 Thien-Thi Nguyen <ttn@gnu.org>
4857
4858 * eval.c (init_eval_once): Increase `max_specpdl_size' to 650.
4859
48602004-11-19 Richard M. Stallman <rms@gnu.org>
4861
4862 * search.c (Vsearch_whitespace_regexp): New variable.
4863 (syms_of_search): Defvar it.
4864 (compile_pattern_1): Call re_set_whitespace_regexp with it.
4865 (search_buffer): No regexp is trivial if Vsearch_whitespace_regexp
4866 is non-nil.
4867 (struct regexp_cache): New element whitespace_regexp.
4868 (syms_of_search): Initialize whitespace_regexp elements.
4869 (compile_pattern): Compare whitespace_regexp elements.
4870 (compile_pattern_1): Set whitespace_regexp elements.
4871
4872 * regex.c (regex_compile): Substitute whitespace_regexp
4873 for spaces, if it is nonzero.
4874 (whitespace_regexp): New variable.
4875 (re_set_whitespace_regexp): New function.
4876
48772004-11-19 Kim F. Storm <storm@cua.dk>
4878
4879 * indent.c (Fvertical_motion): Fix last change.
4880
48812004-11-18 Kim F. Storm <storm@cua.dk>
4882
4883 * indent.c (Fvertical_motion): Undo 2004-11-16 change.
4884 Instead, move back again if reseating moves too far ahead.
4885
48862004-11-17 Luc Teirlinck <teirllm@auburn.edu>
4887
4888 * xdisp.c (message3): Call clear_message.
4889
48902004-11-17 Kim F. Storm <storm@cua.dk>
4891
4892 * xdisp.c (erase_phys_cursor): Adjust cursor row visible height.
4893
48942004-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4895
4896 * gtkutil.c (xg_get_file_name): Typo in HAVE_GTK_FILE_SELECTION_NEW.
4897
4898 * xmenu.c (x_menu_in_use): Remove.
4899 (x_menu_set_in_use): Also set popup_activated_flag.
4900
4901 * xfns.c (Fx_file_dialog): Call popup_activated instead of
4902 x_menu_in_use. Call x_menu_set_in_use in Motif version also.
4903
4904 * xterm.h (x_menu_in_use): Remove.
4905
49062004-11-16 Richard M. Stallman <rms@gnu.org>
4907
4908 * keymap.c (Fmap_keymap): New arg SORT-FIRST.
4909 Use map-keymap-internal to implement that.
4910
4911 * indent.c (Fvertical_motion): In batch mode, use vmotion directly.
4912
49132004-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
4914
4915 * xdisp.c (get_glyph_string_clip_rect, init_glyph_string): Check it's
4916 a window before using XWINDOW.
4917
4918 * window.c (make_window, Fselect_window, make_dummy_parent)
4919 (save_window_save):
4920 * frame.c (make_frame):
4921 * fns.c (concat): Avoid side-effects inside XSETFASTINT's arguments.
4922
4923 * lisp.h (NILP): Use EQ rather than XFASTINT.
4924
49252004-11-16 Kim F. Storm <storm@cua.dk>
4926
4927 * fringe.c (Fdefine_fringe_bitmap): Always set 'h'. Simplify.
4928
4929 * indent.c (Fvertical_motion): Fix last change. Only reseat when
4930 moving backwards.
4931
49322004-11-16 Luc Teirlinck <teirllm@auburn.edu>
4933
4934 * dispextern.h: Extern reseat_at_previous_visible_line_start.
4935
49362004-11-16 Kenichi Handa <handa@m17n.org>
4937
4938 * xdisp.c (display_mode_element): Fix previous change (calculate
4939 end position of substring to display correctly).
4940
49412004-11-16 Kim F. Storm <storm@cua.dk>
4942
4943 * keyboard.c (Fposn_at_point): Remove extra */ after doc string.
4944 Reported by Andrew M. Scott.
4945
49462004-11-15 Kim F. Storm <storm@cua.dk>
4947
4948 * fns.c (Fsafe_plist_get): New defun.
4949 (syms_of_fns): Defsubr it.
4950
4951 * lisp.h (Fsafe_plist_get): Add EXFUN.
4952
4953 * xdisp.c (store_mode_line_string, produce_stretch_glyph):
4954 Use Fsafe_plist_get.
4955 (note_mode_line_or_margin_highlight, note_mouse_highlight):
4956 Fix image map element parsing. Use Fsafe_plist_get.
4957
49582004-11-15 Richard M. Stallman <rms@gnu.org>
4959
4960 * xdisp.c (get_next_display_element): Fix previous change.
4961
49622004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4963
4964 * window.c (shrink_windows): Handle special case of one window left
4965 when trying to shrink the final reminder. Grow windows if
4966 total_removed is less than total_shrink.
4967
4968 * xmenu.c (pop_down_menu): Remove global variable current_menu,
4969 extract pointer from arg with XSAVE_VALUE.
4970 (create_and_show_popup_menu, create_and_show_dialog, xmenu_show):
4971 Construct arg to record_unwind_protect with make_save_value.
4972
49732004-11-13 Richard M. Stallman <rms@gnu.org>
4974
4975 * xdisp.c (reseat_at_previous_visible_line_start): No longer static.
4976 (get_next_display_element): Fix previous change to apply only to \n.
4977
4978 * indent.c (Fvertical_motion): Scan to PT from start of line to
4979 make iterator consistent.
4980
4981 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
4982
49832004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4984
4985 * gtkutil.c (pop_down_file_dialog): Add BLOCK_INPUT.
4986
4987 * xfns.c (Fx_file_dialog): Call x_menu_in_use and x_menu_set_in_use.
4988 Record unwind with clean_up_file_dialog.
4989
4990 * xterm.h (x_menu_in_use, x_menu_set_in_use, x_menu_wait_for_event):
4991 Declare.
4992
4993 * xmenu.c (x_menu_in_use, x_menu_set_in_use): New functions.
4994
49952004-11-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4996
4997 * gtkutil.c (xg_file_sel_ok, xg_file_sel_cancel)
4998 (xg_file_sel_destroy): Remove.
4999 (xg_file_response_cb, pop_down_file_dialog)
5000 (xg_get_file_name_from_chooser, xg_get_file_name_from_selector):
5001 New functions.
5002 (xg_get_file_with_chooser, xg_get_file_with_selection):
5003 Take new arg func, set it to xg_get_file_name_from_chooser/selector.
5004 Move common code to xg_get_file_name. Return widget created.
5005 (xg_get_file_name): Set name, transient for, modal and destroy
5006 with parent here. Connect response signal to xg_file_response_cb,
5007 connect delete-event to gtk_true. Record pop_down_file_dialog
5008 for unwind. Do event loop and call x_menu_wait_for_event in loop.
5009 (xg_create_widget): Make dialogs modal.
5010
5011 * xmenu.c (unuse_menu_items, pop_down_menu): Arg is of type
5012 Lisp_Object.
5013 (popup_get_selection): Move unwind protect ...
5014 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
5015 Move destroy of widget to pop_down_menu.
5016 (popup_widget_loop): Move unwind protect ...
5017 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
5018 Move destroy of widget to pop_down_menu.
5019 (pop_down_menu): BLOCK_INPUT and destroy widget/window.
5020 (xmenu_show): Record unwind pop_down_menu. Move XMenuDestroy,
5021 x_mouse_leave and grabbed = 0 to pop_down_menu.
5022
50232004-11-13 Kim F. Storm <storm@cua.dk>
5024
5025 * xdisp.c (make_cursor_line_fully_visible_p): New variable.
5026 (syms_of_xdisp): DEFVAR_BOOL it.
5027 (make_cursor_line_fully_visible, try_cursor_movement)
5028 (try_window_id): Use it.
5029
50302004-11-12 Kim F. Storm <storm@cua.dk>
5031
5032 * dispextern.h (struct glyph_row): New member extra_line_spacing.
5033 (struct it): New member max_extra_line_spacing.
5034 (MR_PARTIALLY_VISIBLE, MR_PARTIALLY_VISIBLE_AT_TOP)
5035 (MR_PARTIALLY_VISIBLE_AT_BOTTOM): New helper macros.
5036 (MATRIX_ROW_PARTIALLY_VISIBLE_P): Fix to return false if invisible
5037 part of last line is only extra line spacing (so the text on the
5038 line is fully visible). Use helper macros.
5039 Add W arg (to use them). All callers changed.
5040 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_TOP_P)
5041 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_BOTTOM_P): Use helper macros.
5042
5043 * window.c (window_scroll_pixel_based, Frecenter):
5044 Use move_it_vertically_backward directly.
5045 (Frecenter): Fix calculation of new start pos for negative arg.
5046 Before, the new start pos was sometimes chosen too far back, so
5047 the last line became only partially visible, and thus would be
5048 either only semi-visible or automatically scrolled to the middle
5049 of the window by redisplay.
5050
5051 * xdisp.c (init_iterator): Clear it.max_extra_line_spacing.
5052 (move_it_vertically_backward): Don't recure to move further back.
5053 (move_it_vertically): Remove superfluous condition.
5054 (move_it_by_lines): Clear last_height when moved 0 lines.
5055 (resize_mini_window): Use it.max_extra_line_spacing.
5056 (display_tool_bar_line): Clear row->extra_line_spacing.
5057 (try_scrolling): Use move_it_vertically_backward directly.
5058 (redisplay_window): Likewise.
5059 (compute_line_metrics): Set row->extra_line_spacing.
5060 (display_line, display_string): Likewise.
5061 (x_produce_glyphs): Update it->max_extra_line_spacing.
5062
5063 * xmenu.c (pop_down_menu): Return nil.
5064
50652004-11-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5066
5067 * xmenu.c (x_menu_wait_for_event): New function.
5068 (popup_get_selection, popup_widget_loop): Call x_menu_wait_for_event
5069 to handle timers.
5070 (popup_widget_loop): Add argument do_timers.
5071 (create_and_show_popup_menu, create_and_show_dialog): Pass 1 for
5072 do_timers to popup_widget_loop.
5073 (xmenu_show): Call XMenuActivateSetWaitFunction so that
5074 x_menu_wait_for_event is called by XMenuActivate.
5075 (create_and_show_popup_menu): Pass 1 for do_timers to
5076 popup_get_selection.
5077 (pop_down_menu): New function.
5078 (popup_get_selection, popup_widget_loop): Unwind protect to
5079 pop_down_menu.
5080 (popup_widget_loop): Add argument widget.
5081 (create_and_show_popup_menu, create_and_show_dialog): Pass new
5082 argument widget to popup_widget_loop.
5083
50842004-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
5085
5086 * keymap.c (Fkeymap_prompt): Accept symbol keymaps.
5087
50882004-11-09 Kim F. Storm <storm@cua.dk>
5089
5090 * xselect.c: Include <sys/types.h> and <unistd.h> (for getpid).
5091 Fix various comments referring to XEvents instead of input events.
5092 (x_queue_event): Fix format strings.
5093 (x_stop_queuing_selection_requests): Likewise.
5094
5095 * xdisp.c (produce_image_glyph): Remove unused variable 'face_ascent'.
5096 (pint2hrstr): Add extra braces to silence compiler.
5097
5098 * print.c (print_object): Fix format string.
5099
5100 * lread.c (read1): Fix next_char matching.
5101
5102 * lisp.h (Fdelete): Add EXFUN.
5103 (replace_range_2): Add prototype.
5104
5105 * keyboard.c (read_avail_input): Remove unused variable 'discard'.
5106
5107 * intervals.h (NULL_INTERVAL_P): Add separate version when
5108 ENABLE_CHECKING is not defined to silence compiler.
5109 (compare_string_intervals): Add prototype.
5110
5111 * fringe.c (destroy_fringe_bitmap): Fix return type.
5112 (Ffringe_bitmaps_at_pos): Remove unused var 'old_buffer'.
5113
5114 * emacs.c (Fdump_emacs): Fix format string.
5115
5116 * doc.c: Include <ctype.h>.
5117 (Fsubstitute_command_keys): Remove unused variable 'firstkey'.
5118
5119 * data.c (store_symval_forwarding): Remove unused variables.
5120
5121 * callint.c (Fcall_interactively): Remove unused variable 'funcar'.
5122
51232004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5124
5125 * Makefile.in (stamp-oldxmenu): If HAVE_GTK, don't add dependencies
5126 to ${OLDXMENU}.
5127
51282004-11-09 Kim F. Storm <storm@cua.dk>
5129
5130 * process.c (Fmake_network_process): Remove kludge for interrupted
5131 connects on BSD. If connect is interrupted, just close socket and
5132 start over rather than sleeping and retry with same socket.
5133
51342004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5135
5136 * .cvsignore: Add buildobj.lst.
5137
5138 * doc.c: New variable Vbuild_files.
5139 (Fsnarf_documentation): If Vbuild_files is nil, populate it with
5140 file names from buildobj.lst. Only attach docstrings from files
5141 that are in Vbuild_files.
5142 (syms_of_doc): Defvar Vbuild_files.
5143
5144 * Makefile.in (SOME_MACHINE_OBJECTS): Add fringe.o, image.o
5145 and w32*.o.
5146 (temacs${EXEEXT}): Generate buildobj.lst when temacs is linked.
5147 (mostlyclean): Rm buildobj.lst
5148
5149 * makefile.w32-in ($(TEMACS)): Generate buildobj.lst when temacs
5150 is linked.
5151
51522004-11-09 Kim F. Storm <storm@cua.dk>
5153
5154 * fringe.c (update_window_fringes): Update fringe bitmaps if
5155 cur and row ends_at_zv_p differs. If bitmaps of a row is updated,
5156 also update previous row to get rid of misc. artifacts.
5157
51582004-11-08 Kim F. Storm <storm@cua.dk>
5159
5160 * xdisp.c (fast_find_position): Fix start pos if header line present.
5161 (note_mouse_highlight): Clear mouse face if we move out of text area.
5162
51632004-11-08 Eli Zaretskii <eliz@gnu.org>
5164
5165 * editfns.c: Move #include "systime.h" before <sys/resource.h>.
5166 Don't include <sys/time.h> explicitly.
5167 Include <stdio.h> unconditionally, not just on MacOS.
5168
51692004-11-08 Kenichi Handa <handa@m17n.org>
5170
5171 * fontset.c (fontset_pattern_regexp): Cancel my previous change;
5172 don't pay attention to '\' before '*'.
5173 (fontset_pattern_regexp): Change the meaning of the second arg.
5174 (Fnew_fontset): Call fs_query_fontset, not Fquery_fontset.
5175 (check_fontset_name): Try NAME as literal at first, and if it
5176 failes, try NAME as pattern.
5177
51782004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5179
5180 * emacs.c (Fdump_emacs): Only output warning on GNU/Linux.
5181
51822004-11-07 Andreas Schwab <schwab@suse.de>
5183
5184 * lisp.h (Fmsdos_downcase_filename): Declare.
5185 * dired.c (Fmsdos_downcase_filename): Don't declare here.
5186 * fileio.c: Likewise.
5187
51882004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5189
5190 * dosfns.c (Fdos_memget, Fdos_memput): Use integer variable offs in
5191 comparisons with integers instead of Lisp_Object address.
5192 (Fmsdos_set_keyboard): Declare argument allkeys.
5193
5194 * msdos.c (IT_set_frame_parameters): Use EQ, not ==, for Lisp_Object:s.
5195
5196 * dired.c (Fmsdos_downcase_filename): Declare extern on MSDOS to avoid
5197 int/Lisp_Object mixup.
5198
5199 * fileio.c: Ditto.
5200
52012004-11-06 Steven Tamm <steventamm@mac.com>
5202
5203 * editfns.c: Need to include sys/time.h before resource.h on darwin.
5204
52052004-11-06 Richard M. Stallman <rms@gnu.org>
5206
5207 * callint.c (Fcall_interactively): Avoid reusing EVENT for other data.
5208
5209 * xfaces.c (merge_named_face): GCPRO the face_name in the
5210 named_merge_point struct that we make.
5211 (merge_face_heights): Eliminate GCPRO arg. All callers changed.
5212
5213 * keyboard.c (command_loop_1): Change Vtransient_mark_mode
5214 before deciding whether to inactivate mark.
5215
52162004-11-06 Lars Brinkhoff <lars@nocrew.org>
5217
5218 * config.in: Regenerate (add HAVE_GETRUSAGE).
5219 * editfns.c (Fget_internal_run_time): New function.
5220 (syms_of_data): Defsubr it.
5221 * fns.c (sxhash): As far as possible, merge calculation of
5222 hash code for symbols and strings.
5223
52242004-11-06 Eli Zaretskii <eliz@gnu.org>
5225
5226 * frame.c (syms_of_frame): Fix the example in the doc string.
5227
52282004-11-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5229
5230 * eval.c (Feval): Remove check for INPUT_BLOCKED_P.
5231
5232 * xmenu.c (popup_get_selection, create_and_show_popup_menu)
5233 (create_and_show_dialog): Revert change from 2004-10-31.
5234
52352004-11-05 Luc Teirlinck <teirllm@auburn.edu>
5236
5237 * macros.c (syms_of_macros) <defining-kbd-macro>: Doc fix.
5238
52392004-11-05 Kim F. Storm <storm@cua.dk>
5240
5241 * print.c (print_object): Print Lisp_Misc_Save_Value objects.
5242
5243 * fileio.c (Ffile_modes): Doc fix.
5244 (auto_save_1): Check for Ffile_modes nil value.
5245
52462004-11-05 Kim F. Storm <storm@cua.dk>
5247
5248 * xselect.c (struct selection_event_queue, selection_queue)
5249 (x_queue_selection_requests, x_queue_event)
5250 (x_start_queuing_selection_requests)
5251 (x_stop_queuing_selection_requests): Add new queue for selection
5252 input events to replace previous XEvent queue in xterm.c.
5253 (queue_selection_requests_unwind): Adapt to new queue.
5254 (x_reply_selection_request): Adapt to new queue.
5255 Unexpect wait_object in case of x errors (memory leak).
5256 (x_handle_selection_request, x_handle_selection_clear): Make static.
5257 (x_handle_selection_event): New function. May queue selection events.
5258 (wait_for_property_change_unwind): Use save_value instead of cons.
5259 Clear property_change_reply_object.
5260 (wait_for_property_change): Abort if already waiting.
5261 Use save_value instead of cons for unwind data.
5262 (x_handle_property_notify): Skip events already arrived, but don't
5263 free them, as "arrived" field is checked by wait_for_property_change,
5264 and it will be freed by unwind or explicit unexpect_property_change.
5265 (x_get_foreign_selection): Add to new queue.
5266 (receive_incremental_selection): Don't unexpect wait_object when done
5267 as it has already been freed by previous wait_for_property_change.
5268
5269 * xterm.h (x_start_queuing_selection_requests)
5270 (x_stop_queuing_selection_requests, x_handle_selection_request)
5271 (x_handle_selection_clear): Remove prototypes.
5272 (x_handle_selection_event): Add prototype.
5273
5274 * xterm.c (handle_one_xevent): Don't queue X selection events
5275 here, it may be too late if we start queuing after we have already
5276 stored some selection events into the kbd buffer.
5277 (struct selection_event_queue, queue, x_queue_selection_requests)
5278 (x_queue_event, x_unqueue_events, x_start_queuing_selection_requests)
5279 (x_stop_queuing_selection_requests): Remove/move to xselect.c.
5280 (x_catch_errors_unwind): Block input around final XSync.
5281
5282 * keyboard.h (kbd_buffer_unget_event): Add prototype.
5283
5284 * keyboard.c (kbd_buffer_store_event_hold): Remove obsolete code.
5285 (kbd_buffer_unget_event): New function.
5286 (kbd_buffer_get_event, swallow_events): Combine SELECTION events
5287 and use x_handle_selection_event.
5288 (mark_kboards): Don't mark x and y of SELECTION_CLEAR_EVENT.
5289
52902004-11-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5291
5292 * xselect.c (TRACE3): New debug macro.
5293 (x_reply_selection_request): Use it.
5294 (receive_incremental_selection): In call to TRACE0, the name of
5295 a symbol is in xname.
5296
52972004-11-05 Kim F. Storm <storm@cua.dk>
5298
5299 * fontset.c (fontset_pattern_regexp): Use unsigned char.
5300
53012004-11-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5302
5303 * fileio.c (Fnext_read_file_uses_dialog_p): New function.
5304
5305 * gtkutil.h (use_old_gtk_file_dialog): Declare.
5306
5307 * gtkutil.c: Make use_old_gtk_file_dialog non-static.
5308 (xg_initialize): Move DEFVAR_BOOL for use_old_gtk_file_dialog ...
5309 * xfns.c (syms_of_xfns): ... to here.
5310
5311 * gtkutil.c (xg_get_file_with_chooser): Expand DEFAULT_FILENAME if
5312 it doesn't start with /.
5313
53142004-11-04 Kenichi Handa <handa@m17n.org>
5315
5316 * fontset.c (fontset_pattern_regexp): If '*' is preceded by '\',
5317 treat it as a literal character.
5318
53192004-11-03 Kim F. Storm <storm@cua.dk>
5320
5321 * .gdbinit (ppt): New function.
5322
53232004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5324
5325 * xterm.c (x_window_to_scroll_bar): Only call
5326 xg_get_scroll_id_for_window if toolkit scroll bars are used.
5327
5328 * gtkutil.c (xg_get_file_with_chooser): Use GTK_STOCK_OK instead
5329 of save.
5330
53312004-11-02 Andreas Schwab <schwab@suse.de>
5332
5333 * window.c (Fscroll_right): Fix last change.
5334
53352004-11-02 Kim F. Storm <storm@cua.dk>
5336
5337 * Makefile.in (callproc.o): Depend on blockinput.h atimer.h systime.h.
5338
53392004-11-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5340
5341 * callproc.c (Fcall_process): Block input around vfork.
5342
53432004-11-02 Kim F. Storm <storm@cua.dk>
5344
5345 * eval.c (Fcalled_interactively_p): Rename from Fcall_interactive_p.
5346 (syms_of_eval): Defsubr it.
5347
53482004-11-02 Richard M. Stallman <rms@gnu.org>
5349
5350 * insdel.c (replace_range_2): New function.
5351
5352 * casefiddle.c (casify_region): Handle changes in byte-length
5353 using replace_range_2.
5354
5355 * emacs.c (USAGE3): Delete --horizontal-scroll-bars, -hb.
5356
5357 * xdisp.c (back_to_previous_visible_line_start):
5358 Subtract 1 from pos when checking previous newline for invisibility.
5359
5360 * window.c (window_scroll_pixel_based): Update preserve_y
5361 for header line if any.
5362 (Fscroll_left, Fscroll_right): Don't call interactive_p;
5363 use a new second argument instead.
5364
5365 * eval.c (Fcall_interactive_p): New function.
5366 (interactive_p): Don't test INTERACTIVE here.
5367 (Finteractive_p): Doc fix.
5368
5369 * eval.c (Feval): Abort if INPUT_BLOCKED_P.
5370
53712004-11-02 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
5372
5373 * w32fns.c (w32_font_match): Use fast_string_match_ignore_case for
5374 comparing font names.
5375
53762004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5377
5378 * fileio.c (Fread_file_name): Pass Qt as fifth parameter to
5379 Fx_file_dialog if only directories should be read.
5380
5381 * lisp.h: Fx_file_dialog takes 5 parameters.
5382
5383 * xfns.c (Fx_file_dialog): Both Motif and GTK version:
5384 Add parameter only_dir_p.
5385 In Motif version, don't put DEFAULT_FILENAME in filter part of the
5386 dialog, just text field part. Do not add DEFAULT_FILENAME
5387 to list of files if it isn't there.
5388 In GTK version, pass only_dir_p parameter to xg_get_file_name.
5389
5390 * macfns.c (Fx_file_dialog): Add parameter only_dir_p.
5391 Check only_dir_p instead of comparing prompt to "Dired". When using
5392 a save dialog, add option kNavDontConfirmReplacement, change title
5393 to "Enter name", change text for save button to "Ok".
5394
5395 * w32fns.c (Fx_file_dialog): Add parameter only_dir_p.
5396 Check only_dir_p instead of comparing prompt to "Dired".
5397
5398 * gtkutil.c (xg_get_file_with_chooser)
5399 (xg_get_file_with_selection): New functions, only defined ifdef
5400 HAVE_GTK_FILE_CHOOSER_DIALOG_NEW and HAVE_GTK_FILE_SELECTION_NEW
5401 respectively.
5402 (xg_get_file_name): Add parameter only_dir_p.
5403 Call xg_get_file_with_chooser or xg_get_file_with_selection
5404 depending on HAVE_GTK_FILE* and the value of use_old_gtk_file_dialog.
5405 (xg_initialize): New DEFVAR_BOOL use_old_gtk_file_dialog.
5406
5407 * gtkutil.h (xg_get_file_name): Add parameter only_dir_p.
5408
5409 * config.in: Rebuild (added HAVE_GTK_FILE_*).
5410
54112004-11-01 Kim F. Storm <storm@cua.dk>
5412
5413 * process.c (connect_wait_mask, num_pending_connects):
5414 Only declare and use them if NON_BLOCKING_CONNECT is defined.
5415 (init_process): Initialize them if NON_BLOCKING_CONNECT defined.
5416 (IF_NON_BLOCKING_CONNECT): New helper macro.
5417 (wait_reading_process_output): Only declare and use local vars
5418 Connecting and check_connect when NON_BLOCKING_CONNECT is defined.
5419
54202004-11-01 Andy Petrusenco <Igrek@star-sw.com> (tiny change)
5421
5422 * w32term.c (x_scroll_run): Delete region objects after use.
5423
54242004-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5425
5426 * xmenu.c: Add prototypes for forward function declarations.
5427 (popup_get_selection): Remove parameter do_timers, remove call to
5428 timer_check.
5429 (create_and_show_popup_menu, create_and_show_dialog):
5430 Remove parameter do_timers from call to popup_get_selection.
5431
5432 * xdisp.c (update_tool_bar): Pass a copy of f->tool_bar_items to
5433 tool_bar_items and assign the result to f->tool_bar_items if
5434 not equal. Move BLOCK/UNBLOCK_INPUT from around call to
5435 tool_bar_items to assignment of result.
5436
5437 * atimer.c (alarm_signal_handler): Do not call set_alarm if
5438 pending_atmers is non-zero.
5439
54402004-10-31 Kim F. Storm <storm@cua.dk>
5441
5442 * dispnew.c (margin_glyphs_to_reserve): Don't use ncols_scale_factor.
5443
54442004-10-28 Will <will@glozer.net>
5445
5446 * macterm.c: Allow user to assign key modifiers to the Mac Option
5447 key via a 'mac-option-modifier' variable.
5448
54492004-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
5450
5451 * xselect.c (Vx_lost_selection_functions, Vx_sent_selection_functions):
5452 Rename from Vx_lost_selection_hooks and Vx_sent_selection_hooks.
5453 (x_handle_selection_request, x_handle_selection_clear)
5454 (x_clear_frame_selections, syms_of_xselect): Adjust accordingly.
5455
54562004-10-28 Richard M. Stallman <rms@gnu.org>
5457
5458 * w32fns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
5459
5460 * xfns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
5461
54622004-10-27 Stefan Monnier <monnier@iro.umontreal.ca>
5463
5464 * syntax.c (scan_sexps_forward): Give precedence to a 2-char
5465 comment-starter over a 1-char one.
5466
54672004-10-27 Richard M. Stallman <rms@gnu.org>
5468
5469 * xdisp.c (get_next_display_element): In mode lines,
5470 treat newline and tab like other control characters.
5471
5472 * editfns.c (Fmessage): Doc fix.
5473
5474 * indent.c (vmotion): When moving up, check the newline before.
5475 Make prevline an int, not a Lisp_Object.
5476
54772004-10-27 Kim F. Storm <storm@cua.dk>
5478
5479 * editfns.c (Fformat): Allocate discarded table with SAFE_ALLOCA.
5480 Only allocate info and discarded tables once.
5481
5482 * lisp.h (USE_SAFE_ALLOCA): Add and init sa_must_free integer.
5483 (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Increment it when malloc is used.
5484 (SAFE_FREE): Test it to determine if we need to unwind to free.
5485 Remove size arg. All users changed.
5486 (SAFE_FREE_LISP) Remove. All users changed to use SAFE_FREE.
5487
54882004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5489
5490 * gtkutil.c: Put empty line between comment and function body.
5491 (xg_destroy_widgets): Rename from remove_from_container.
5492 Just destroy all widgets in list. Argument wcont removed.
5493 (xg_update_menubar, xg_update_submenu): Call xg_destroy_widgets
5494 instead of remove_from_container.
5495 (xg_display_close, xg_create_tool_bar, update_frame_tool_bar)
5496 (free_frame_tool_bar): Add comment.
5497
5498 * xfns.c (xic_create_xfontset): Check that FRAME_XIC_BASE_FONTNAME
5499 is not NULL before strcmp.
5500
55012004-10-26 Kim F. Storm <storm@cua.dk>
5502
5503 * callint.c (Fcall_interactively): Add 'U' code to get the
5504 up-event discarded by a previous 'k' or 'K' argument.
5505
55062004-10-26 David Kastrup <dak@gnu.org>
5507
5508 * buffer.c (syms_of_buffer): Fix a few typos.
5509
55102004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5511
5512 * xsmfns.c: Put empty line between comment and function body.
5513 Use two spaces before comment end.
5514
55152004-10-25 Kenichi Handa <handa@m17n.org>
5516
5517 * fontset.c (fontset_pattern_regexp): Optimize for the case that
5518 PATTERN is full XLFD.
5519
55202004-10-24 Kenichi Handa <handa@m17n.org>
5521
5522 * regex.h (enum reg_errcode_t): New value REG_ERANGEX.
5523
5524 * regex.c (re_error_msgid): Add an entry for REG_ERANGEX.
5525 (regex_compile): Return REG_ERANGEX if appropriate.
5526
55272004-10-22 Kenichi Handa <handa@m17n.org>
5528
5529 * editfns.c (Ftranslate_region_internal): New function.
5530 (syms_of_editfns): Defsubr it.
5531
55322004-10-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5533
5534 * xfns.c (xic_create_xfontset): Initialize missing_list to NULL.
5535
55362004-10-21 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
5537
5538 * xterm.h (x_output): New member `xic_base_fontname'.
5539 (FRAME_XIC_BASE_FONTNAME): New macro.
5540 (xic_free_xfontset): Declare.
5541
5542 * xfns.c (xic_create_xfontset): Share fontsets between frames
5543 based on base_fontname.
5544 (xic_free_xfontset): New function.
5545 (free_frame_xic): Use it.
5546 (xic_set_xfontset): Ditto.
5547
5548 * xterm.c (xim_destroy_callback): Ditto.
5549
5550
55512004-10-20 B. Anyos <banyos@freemail.hu> (tiny change)
5552
5553 * w32term.c (x_draw_glyph_string): Use overline_color for overlines.
5554
55552004-10-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5556
5557 * xterm.h (XSync): If USE_GTK, define XSync as process_all and then
5558 XSync.
5559
5560 * emacs.c (my_heap_start, heap_bss_diff, MAX_HEAP_BSS_DIFF):
5561 New variables and constant.
5562 (main): Calculate heap_bss_diff. If we are dumping and the
5563 heap_bss_diff is greater than MAX_HEAP_BSS_DIFF, set PER_LINUX32
5564 and exec ourself again.
5565 (Fdump_emacs): If heap_bss_diff is greater than MAX_HEAP_BSS_DIFF
5566 print a warning.
5567
5568 * lastfile.c: Make my_endbss and my_endbss_static available on all
5569 platforms.
5570
5571 * Makefile.in (RUN_TEMACS): Remove @SETARCH@.
5572 * config.in (HAVE_PERSONALITY_LINUX32): Regenerate.
5573
55742004-10-19 Luc Teirlinck <teirllm@auburn.edu>
5575
5576 * data.c (Flocal_variable_if_set_p): Doc fix.
5577
55782004-10-19 Jason Rumney <jasonr@gnu.org>
5579
5580 * w32.c (init_environment): Set emacs_dir correctly when running
5581 emacs from the build directory.
5582
55832004-10-19 Richard M. Stallman <rms@gnu.org>
5584
5585 * editfns.c (Fdelete_and_extract_region):
5586 If region is empty, return null string.
5587
55882004-10-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5589
5590 * gtkutil.h (xg_update_scrollbar_pos): Remove arguments real_left
5591 and canon_width.
5592 (xg_frame_cleared): Remove.
5593
5594 * gtkutil.c (xg_frame_cleared, xg_fixed_handle_expose)
5595 (xg_find_top_left_in_fixed): Remove.
5596 (xg_create_scroll_bar): Put an event box widget between
5597 the scroll bar widget and the edit widget.
5598 (xg_show_scroll_bar): Show the parent widget (the event box).
5599 (xg_remove_scroll_bar): Destroy parent (the event box) also.
5600 (xg_update_scrollbar_pos): Remove arguments real_left and canon_width.
5601 Move the parent (the event box) widget inside the fixed widget.
5602 Move window clear to xterm.c.
5603
5604 * gtkutil.h (xg_frame_cleared): Remove.
5605
5606 * xterm.c (x_clear_frame): Remove call to xg_frame_cleared
5607 (x_scroll_bar_create, XTset_vertical_scroll_bar):
5608 Remove arguments left and width to xg_update_scrollbar_pos.
5609 (XTset_vertical_scroll_bar): Do x_clear_area for USE_GTK also.
5610
56112004-10-19 Kenichi Handa <handa@m17n.org>
5612
5613 * xdisp.c (display_mode_element): Fix display of wide chars.
5614
56152004-10-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5616
5617 * gtkutil.c (xg_update_scrollbar_pos): Change XClearWindow to
5618 gdk_window_clear and move gdk_window_process_all_updates after
5619 clear so events are sent to the X server in correct order.
5620
56212004-10-18 Kenichi Handa <handa@m17n.org>
5622
5623 * fontset.c (fs_load_font): Use fast_string_match_ignore_case for
5624 comparing font names.
5625 (fs_query_fontset): Use fast_string_match for comparing fontset names.
5626 (list_fontsets): Likewise.
5627
5628 * search.c (fast_string_match_ignore_case): New function.
5629
5630 * lisp.h (fast_string_match_ignore_case): Extern it.
5631
56322004-10-17 Kim F. Storm <storm@cua.dk>
5633
5634 * xdisp.c (overlay_arrow_at_row): Return overlay string rather
5635 than bitmap if there is not left fringe.
5636 (get_overlay_arrow_glyph_row): Also used on windows system.
5637 (display_line): Display overlay string if no left fringe.
5638
56392004-10-16 Jason Rumney <jasonr@gnu.org>
5640
5641 * w32fns.c (w32_font_match): Encode font name being matched.
5642
56432004-10-16 Richard M. Stallman <rms@gnu.org>
5644
5645 * window.c (Fspecial_display_p): Doc fix.
5646
56472004-10-15 Stefan Monnier <monnier@iro.umontreal.ca>
5648
5649 * doc.c (Fsubstitute_command_keys): Fix remap-handling.
5650 Don't ignore menus, because where-is-internal already does it for us.
5651
56522004-10-15 Kim F. Storm <storm@cua.dk>
5653
5654 * xdisp.c (redisplay_window): Only update fringes and vertical
5655 border on window frames.
5656
56572004-10-14 Andreas Schwab <schwab@suse.de>
5658
5659 * m/ia64.h (DATA_SEG_BITS): Don't define.
5660
56612004-10-14 Kim F. Storm <storm@cua.dk>
5662
5663 * xterm.h: Include Xutil.h after keysym.h to work around bug
5664 in some X versions.
5665
56662004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
5667
5668 * fns.c (map_char_table): Add missing gcpros.
5669
56702004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
5671
5672 * keymap.c (get_keymap): An autoload form is not a keymap.
5673
5674 * textprop.c (syms_of_textprop): Make `syntax-table' nonsticky.
5675
56762004-10-13 Kim F. Storm <storm@cua.dk>
5677
5678 * callproc.c (Fcall_process): Simplify handling of display arg.
5679 Resume `display_on_the_fly' once a coding system is determined.
5680
5681 * xdisp.c (redisplay_preserve_echo_area): Fix last change.
5682
56832004-10-12 Kim F. Storm <storm@cua.dk>
5684
5685 * xdisp.c (redisplay_preserve_echo_area): Flush display in case
5686 caller, such as call-process, is not going to poll for input.
5687 (calc_line_height_property): Handle case where it->object is nil.
5688
5689 * xterm.c (x_redisplay_interface): Fix flush_display_optional.
5690
56912004-10-12 Kenichi Handa <handa@m17n.org>
5692
5693 * xdisp.c (get_next_display_element):
5694 If unibyte_display_via_language_environment is zero, display 8-bit
5695 chars in octal in unibyte buffer.
5696
56972004-10-12 Kim F. Storm <storm@cua.dk>
5698
5699 * doc.c (Fsubstitute_command_keys): Ignore remappings unless there
5700 are no ordinary bindings.
5701
57022004-10-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5703
5704 * xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also.
5705
57062004-10-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5707
5708 * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow.
5709 (x_lower_frame): Add BLOCK_INPUT around SendBehind.
5710 (make_mac_frame): Add BLOCK_INPUT around the making of a
5711 terminal frame.
5712 (mac_initialize): Add BLOCK_INPUT around carbon initialization.
5713 * macgui.h (mktime): Use emacs_mktime.
5714 * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code.
5715 Make a cancel file-open dialog be like C-g.
5716 * mac.c (mktime): Use emacs_mktime.
5717 (Fdo_applescript): Add BLOCK_INPUT around do_applescript.
5718 (Fmac_paste_function): Add better error handling for carbon cut/paste.
5719
57202004-10-10 Kim F. Storm <storm@cua.dk>
5721
5722 * keyboard.c (timer_resume_idle): New function to resume idle
5723 timer without resetting timers on the idle list.
5724 (read_char): Use timer_resume_idle. Remove local var last_idle_start.
5725 (timer_start_idle, timer_stop_idle): Declare static.
5726 (read_key_sequence): Use timer_resume_idle instead of timer_start_idle.
5727
5728 * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes.
5729
57302004-10-08 Steven Tamm <steventamm@mac.com>
5731
5732 * config.in (HAVE_MALLOC_MALLOC_H): Regenerate.
5733 * macterm.c (mac_check_for_quit_char): Remove warning for using
5734 NULL where 0 should be used.
5735 * unexmacosx.c: Use malloc/malloc.h on Tiger instead of
5736 objc/malloc.h
5737 * mac.c: Include time.h for Tiger compatibility.
5738
57392004-10-07 Kim F. Storm <storm@cua.dk>
5740
5741 * xdisp.c (redisplay_window): Fix flicker on vertical line between
5742 windows. Update vertical line after drawing window fringes, but
5743 only if actually drawing any bitmaps--or there is no fringe.
5744
5745 * xterm.c (x_update_window_end): Likewise.
5746 * macterm.c (x_update_window_end): Likewise.
5747 * w32term.c (x_update_window_end): Likewise.
5748
5749 * fringe.c (draw_window_fringes): Return value now indicates if
5750 any fringe bitmaps were redrawn (or there are no fringes).
5751
5752 * dispextern.h (draw_window_fringes): Update prototype.
5753
57542004-10-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5755
5756 * macfns.c (mac_get_window_bounds): Add extern.
5757 (x_real_positions): Use mac_get_window_bounds.
5758
5759 * macmenu.c (update_submenu_strings): Apply 2004-09-07 change for
5760 xmenu.c (YAILOM).
5761
5762 * macterm.c [!MAC_OSX]: Include Windows.h.
5763 (front_emacs_window): Rename from mac_front_window. All uses
5764 changed. Return the frontmost non-tooltip emacs window.
5765 (mac_get_window_bounds): New function.
5766 (x_calc_absolute_position): Use the difference of width and height
5767 between the inner and outer window.
5768 (x_set_offset): Specify window position by the coordinae of the
5769 outer window. Adjust the position if the title bar is completely
5770 outside the screen.
5771 (app_is_suspended, app_sleep_time): Remove unused variables.
5772 (do_app_resume, do_app_suspend): Remove their contents because
5773 window-activate/deactivate events will do the job.
5774 (do_zoom_window): Remove unused variables. Make compliant to the
5775 standard way of zooming. Set f->left_pos and f->top_pos.
5776 (XTread_socket): Don't use argument `expected'. Don't use
5777 FrontWindow to determine the clicked window. Exclude unprocessed
5778 mouseUp cases in the early stage. Add parentheses to fix operator
5779 precedence.
5780 (XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area.
5781
57822004-10-05 Jan Dj\e,Ad\e(Brv. <jan.h.d@swipnet.se>
5783
5784 * config.in: Regenerate.
5785
5786 * Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of
5787 HAVE_EXECSHIELD.
5788
57892004-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5790
5791 * xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for
5792 a row if Alt or Meta has been found for that row. Also stop scanning
5793 for Keysyms for that row.
5794
57952004-10-04 Kim F. Storm <storm@cua.dk>
5796
5797 * fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons
5798 to list. Include overlay arrow bitmap in return value.
5799
5800 * xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll
5801 bars with fractional column width. If scroll bar separates two
5802 windows, move it towards the window it belongs to. Only update
5803 the padding area below the scroll bar widget when necessary,
5804 i.e. when scroll bar widget is created, moved, or resized.
5805
5806 * xdisp.c (define_frame_cursor1): Do not change frame cursor
5807 while tracking/dragging mouse.
5808 (x_draw_vertical_border): Do not draw line if frame has scroll bars.
5809
5810 * window.c (coordinates_in_window): Relax check for cursor
5811 on vertial border between mode lines.
5812 (Fset_window_fringes): Do not allow negative widths.
5813 (Fset_window_scroll_bars): Likewise.
5814
5815 * .gdbinit (pp): Shorthand for p ARG + pr.
5816 (ff): New command: flush frame updates (X only).
5817
58182004-10-03 Michael Albinus <michael.albinus@gmx.de>
5819
5820 * fileio.c (auto_save_1) Call Ffile_modes for remote files.
5821
58222004-09-30 Kenichi Handa <handa@m17n.org>
5823
5824 * process.c (send_process): Free composition data.
5825
5826 * fileio.c (Finsert_file_contents): Free composition data.
5827
5828 * coding.c (code_convert_region): Don't skip ASCIIs if there are
5829 compositions to encode.
5830 (encode_coding_string): Likewise. Free composition data.
5831
58322004-09-30 Florian Weimer <fw@deneb.enyo.de>
5833
5834 * coding.c (code_convert_region): Free composition data.
5835
58362004-09-29 Kim F. Storm <storm@cua.dk>
5837
5838 * fringe.c: Remove limit on number of bitmaps.
5839 (fringe_bitmaps, fringe_faces): Change to pointers.
5840 (max_fringe_bitmaps): New var.
5841 (Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces.
5842 (init_fringe): Allocate fringe_bitmaps and fringe_faces.
5843
5844 * dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps).
5845 (struct glyph_row): Reorder fringe_bitmap related fields.
5846 (struct it): Likewise.
5847
5848 * w32term.c (fringe_bmp): Change to pointer.
5849 (max_fringe_bmp): New var.
5850 (w32_define_fringe_bitmap): Expand fringe_bmp.
5851 (w32_draw_fringe_bitmap): Check max_fringe_bmp.
5852 (w32_destroy_fringe_bitmap): Likewise.
5853
58542004-09-29 Kim F. Storm <storm@cua.dk>
5855
5856 * fringe.c: Simplify last change.
5857 (lookup_fringe_bitmap): New function.
5858 (valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove.
5859 (Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap.
5860 Keep standard bitmaps in Vfringe_bitmaps.
5861 (Fdefine_fringe_bitmap): Use lookup_fringe_bitmap.
5862 (Fset_fringe_bitmap_face): Likewise.
5863
5864 * dispextern.h (lookup_fringe_bitmap): Add prototype.
5865 (valid_fringe_bitmap_p): Remove prototype.
5866
5867 * xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap.
5868
58692004-09-29 Kim F. Storm <storm@cua.dk>
5870
5871 * fringe.c (destroy_fringe_bitmap, init_fringe_bitmap)
5872 (w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif).
5873
5874 * dispextern.h (valid_fringe_bitmap_p): Fix prototype.
5875
5876 * fringe.c (Vfringe_bitmaps): New variable.
5877 (syms_of_fringe): DEFVAR_LISP it.
5878 (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p.
5879 Change arg to Lisp_Object and fail if not an integer.
5880 (get_fringe_bitmap_name, resolve_fringe_bitmap)
5881 (destroy_fringe_bitmap): New functions.
5882 (Fdestroy_fringe_bitmap): Change arg to bitmap symbol.
5883 Use destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and
5884 clear its fringe property.
5885 (init_fringe_bitmap): Use destroy_fringe_bitmap instead of
5886 Fdestroy_fringe_bitmap.
5887 (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing
5888 bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps
5889 and set fringe property. Signal error if no free slots.
5890 (Fset_fringe_bitmap_face): Change arg to bitmap symbol.
5891 (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers.
5892
5893 * xdisp.c (handle_single_display_prop): Fringe bitmaps are now
5894 symbols with a fringe property.
5895
58962004-09-27 Kim F. Storm <storm@cua.dk>
5897
5898 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>:
5899 Doc fix. Format may now be a symbol or alist, not a cons.
5900
5901 * fringe.c (update_window_fringes): Handle new formats of
5902 indicate-buffer-boundaries (symbol or alist). No longer
5903 allow a simple cons.
5904 (Ffringe_bitmaps_at_pos): Use nil value for no bitmap.
5905
59062004-09-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5907
5908 * config.in: Rebuild.
5909
59102004-09-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5911
5912 * config.in: Rebuild.
5913
5914 * Makefile.in: Run setarch i386 ./temacs if exec-shield is present.
5915
59162004-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
5917
5918 * xterm.c (x_term_init): Work around a bug in some X servers.
5919
59202004-09-18 Richard M. Stallman <rms@gnu.org>
5921
5922 * buffer.c (syms_of_buffer) <default-major-mode>: Doc fix.
5923
5924 * xdisp.c (try_window_reusing_current_matrix):
5925 Handle the case where we reach the old displayed text,
5926 out of sync with the old line boundary.
5927
59282004-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
5929
5930 * fileio.c (Finsert_file_contents): Fix case of replacement in a
5931 narrowed buffer.
5932
59332004-09-14 Kim F. Storm <storm@cua.dk>
5934
5935 * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT.
5936
5937 * xfaces.c (Qface_no_inherit): New var.
5938 (syms_of_xfaces): Intern and staticpro it.
5939 (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute)
5940 (Finternal_copy_lisp_face, update_face_from_frame_parameter):
5941 Don't increment face_change_count when face has non-nil
5942 face-no-inherit property.
5943
59442004-09-13 Stefan Monnier <monnier@iro.umontreal.ca>
5945
5946 * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC.
5947 (Fbyte_code): Remove dead code after `wrong_type_argument'.
5948
5949 * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl
5950 before doing the mark_stack_check_gcpros since they're not on the stack.
5951
59522004-09-12 Kim F. Storm <storm@cua.dk>
5953
5954 * editfns.c (Fformat): Handle format strings with multiple text
5955 properties. Reverse text property list from the format string,
5956 so the positions are in increasing order.
5957
59582004-09-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5959
5960 * xselect.c (x_reply_selection_request): XSync and UNBLOCK before
5961 x_uncatch_errors so that possible protocol errors are delivered.
5962
59632004-09-10 Eli Zaretskii <eliz@gnu.org>
5964
5965 * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and
5966 blockinput.h.
5967 (dosfns.o): Depend on blockinput.h, window.h, dispextern.h,
5968 charset.h, and coding.h
5969 (w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h.
5970 (term.o): Depend on window.h and keymap.h.
5971 (abbrev.o): Depend on syntax.h.
5972 (callint.o): Depend on keymap.h.
5973 (casefiddle.o): Depend on charset.h and keymap.h.
5974 (category.o): Depend on keymap.h.
5975 (coding.o): Depend on dispextern.h.
5976 (cmds.o): Depend on keyboard.h and keymap.h.
5977 (dispnew.o): Depend on indent.h and intervals.h.
5978 (doc.o): Depend on keymap.h.
5979 (editfns.o): Depend on frame.h.
5980 (emacs.o): Depend on dispextern.h.
5981 (fileio.o): Don't depend on ccl.h.
5982 (filelock.o): Depend on charset.h and coding.h.
5983 (frame.o): Depend on w32term.h and macterm.h.
5984 (insdel.o): Depend on region-cache.h.
5985 (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h.
5986 (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h.
5987 (search.o): Depend on $(INTERVALS_SRC).
5988 (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC).
5989 (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC),
5990 xterm.h, w32term.h, and macterm.h.
5991 (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h,
5992 w32term.h, and macterm.h.
5993 (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC),
5994 region-cache.h, xterm.h, w32term.h, and macterm.h.
5995 (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h.
5996 (data.o): Depend on frame.h.
5997 (fns.o): Depend on keymap.h, xterm.h, and blockinput.h.
5998 (print.o): Depend on termchar.h and $(INTERVALS_SRC).
5999 (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h.
6000 (intervals.o): Depend on keymap.h.
6001
6002 * msdos.c (msdos_set_cursor_shape, IT_display_cursor):
6003 Add debugging print-out to termscript.
6004
60052004-09-09 Richard M. Stallman <rms@gnu.org>
6006
6007 * xdisp.c (decode_mode_spec): Use current buffer for most purposes.
6008
60092004-09-08 Richard M. Stallman <rms@gnu.org>
6010
6011 * window.c (Fset_window_buffer): Doc fix.
6012
6013 * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use.
6014
60152004-09-08 Dan Nicolaescu <dann@ics.uci.edu>
6016
6017 * minibuf.c (history_delete_duplicates): New variable.
6018 (read_minibuf): Use it.
6019 (syms_of_minibuf): Create the corresponding lisp variable.
6020
60212004-09-08 Kim F. Storm <storm@cua.dk>
6022
6023 * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in
6024 overlay just before point.
6025
60262004-09-07 Luc Teirlinck <teirllm@auburn.edu>
6027
6028 * buffer.h (struct buffer): Add auto_save_file_format field.
6029 * buffer.c (reset_buffer, init_buffer_once):
6030 Handle auto_save_file_format field.
6031 (syms_of_buffer): Add DEFVAR_PER_BUFFER for
6032 `buffer-auto-save-file-format'.
6033 * fileio.c: Delete declaration for removed Vauto_save_file_format.
6034 (build_annotations): Adapt to replacement of
6035 `auto-save-file-format' with the new buffer-local variable
6036 `buffer-auto-save-file-format'.
6037 (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format.
6038
60392004-09-07 Jason Rumney <jasonr@gnu.org>
6040
6041 * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c.
6042
6043 * w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]:
6044 Handle Unicode menu titles.
6045
60462004-09-07 Kim F. Storm <storm@cua.dk>
6047
6048 * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor'
6049 property from text property or overlay strings at point.
6050
60512004-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
6052
6053 * xmenu.c (update_submenu_strings): YAILOM.
6054 (set_frame_menubar): Make sure last_i is initialized.
6055
60562004-09-03 Jason Rumney <jasonr@gnu.org>
6057
6058 * w32menu.c (_widget_value): Add lname and lkey.
6059 (digest_single_submenu): Set lname and lkey in widget_value
6060 instead of name and key.
6061 (update_submenu_strings): New function.
6062 (set_frame_menubar): Remove call to inhibit_garbage_collection,
6063 call update_submenu_strings.
6064
6065 * w32menu.c (globals_of_w32menu): Check for Unicode API.
6066 (digest_single_submenu, w32_menu_show): Encode menu strings as
6067 UTF-8 if Unicode API is available.
6068 (utf8to16): New function.
6069 (add_menu_item): Use it when calling Unicode API.
6070
60712004-09-03 Kim F. Storm <storm@cua.dk>
6072
6073 * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
6074 in overlay or text-property strings; set cursor on corresponding
6075 glyph rather than at end of the string.
6076
60772004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6078
6079 * macfns.c (x_real_positions): Save the current window port and
6080 set a new one before obtaining the global coordinate.
6081 Use FRAME_MAC_WINDOW.
6082 (x_set_name, x_set_title): Encode title to UTF8.
6083 Use SetWindowTitleWithCFString.
6084 (Fx_server_version): Get correct OS version.
6085
6086 * macmenu.c (add_menu_item): Remove unused variable `i'.
6087 Don't let separator items destroy refence constants of other menu items.
6088
6089 * macterm.c (x_update_end): Move SetPortWindowPort to inside
6090 BLOCK_INPUT.
6091 (x_set_offset): Use FRAME_MAC_WINDOW.
6092
6093 * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
6094 nontext_cursor if it is on a scroll bar.
6095
6096 * s/darwin.h (LIBS_CARBON): New define to specify libraries for
6097 Carbon support.
6098 (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++.
6099 Use LIBS_CARBON.
6100
61012004-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6102
6103 * xfns.c (x_set_name_internal): New function. Check if we shall call
6104 xfree before ENCODE_UTF_8.
6105 (x_set_name, x_set_title): Call x_set_name_internal.
6106
61072004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change)
6108
6109 * w32fns.c (w32_load_font): If a BDF font is already loaded, do not
6110 reload it.
6111
61122004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6113
6114 * macmenu.c (_widget_value): Add lname and lkey.
6115 (single_submenu): Set lname and lkey in widget_value
6116 instead of name and key.
6117 (update_submenu_strings): New function.
6118 (set_frame_menubar): Remove call to inhibit_garbage_collection,
6119 call update_submenu_strings.
6120
6121 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
6122 instead of name and key.
6123 (update_submenu_strings): New function.
6124 (set_frame_menubar): Remove call to inhibit_garbage_collection,
6125 call update_submenu_strings.
6126
6127 * gtkutil.h (_widget_value): Added lname and lkey.
6128
61292004-08-30 Steven Tamm <steventamm@mac.com>
6130
6131 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
6132 by using different names for inner loop variables.
6133
61342004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6135
6136 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
6137 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
6138
6139 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
6140 tool bar items is 0.
6141
61422004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6143
6144 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
6145 strings in menu items.
6146 (single_submenu): Use ENCODE_MENU_STRING
6147 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
6148 button release isn't passed to event loop
6149 (add_menu_item): Use SetMenuItemWithCFString
6150
61512004-08-26 Steven Tamm <steventamm@mac.com>
6152
6153 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
6154 tool-bar/menu click.
6155 * macfns.c (Fx_file_dialog): Implement using NavServices.
6156
61572004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6158
6159 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
6160
6161 * xfns.c (x_window_to_frame, x_any_window_to_frame)
6162 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
6163 (x_top_window_to_frame): Return 0 if wdesc is None.
6164
61652004-08-22 Richard M. Stallman <rms@gnu.org>
6166
6167 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
6168 HAVE_TERMIOS]: If there's no char for this signal, drop through
6169 and use system calls.
6170
6171 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
6172
61732004-08-20 Kim F. Storm <storm@cua.dk>
6174
6175 * process.c (wait_reading_process_output): Rename from
6176 wait_reading_process_input. All uses changed.
6177 (wait_reading_process_output_1): Rename from
6178 wait_reading_process_input_1. All uses changed.
6179
6180 * dispnew.c (Fsleep_for): Remove obsolete code.
6181
61822004-08-20 Kenichi Handa <handa@m17n.org>
6183
6184 * syntax.c (skip_chars): Fix for unibyte case.
6185
61862004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
6187
6188 * syntax.c (char_quoted): Mixup byte/char pos.
6189 (back_comment): Fixup globals in all cases.
6190
61912004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6192
6193 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
6194 passing it to gtk_window_set_title.
6195
61962004-08-19 Kim F. Storm <storm@cua.dk>
6197
6198 * process.c (wait_reading_process_input): Clean up.
6199 Add wait_for_cell, wait_proc, and just_wait_proc args
6200 to avoid overloading `read_kbd' and `do_display' args.
6201 Change read_kbd arg to int. All callers changed.
6202
6203 * process.c (process_send_signal): Use CDISABLE.
6204
6205 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
6206
62072004-08-18 Kim F. Storm <storm@cua.dk>
6208
6209 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
6210 forward to wait_reading_process_input via DO_DISPLAY arg.
6211 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
6212 object, only process output from that process; also inhibit
6213 running timers if DO_DISPLAY==-2.
6214
62152004-08-17 Kim F. Storm <storm@cua.dk>
6216
6217 * process.c (process_send_signal): Fix last change--use
6218 _POSIX_VDISABLE instead of CVDISABLE when available.
6219
62202004-08-16 Richard M. Stallman <rms@gnu.org>
6221
6222 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
6223 Set VQUIT and VINTR chars to the standard ones if they are unset.
6224 [AIX]: Don't do that here. And don't force VINTR to standard
6225 when SIGNALS_VIA_CHARACTERS.
6226
6227 * process.c (process_send_signal)
6228 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
6229 Do nothing if the character is CVDISABLE.
6230
6231 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
6232
6233 * intervals.c (move_if_not_intangible):
6234 Force POSITION to be between BEGV and ZV.
6235
62362004-08-14 John Paul Wallington <jpw@gnu.org>
6237
6238 * buffer.c (Frestore_buffer_modified_p): Doc fix.
6239
6240 * fileio.c (Fread_file_name): Doc fix.
6241
6242 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
6243
62442004-08-09 Luc Teirlinck <teirllm@auburn.edu>
6245
6246 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
6247
62482004-08-08 Luc Teirlinck <teirllm@auburn.edu>
6249
6250 * keyboard.c: Declare Qdisabled_command_function instead of
6251 Qdisabled_command_hook.
6252 (Fcommand_execute): Use Qdisabled_command_function instead of
6253 Qdisabled_command_hook.
6254 (syms_of_keyboard): Ditto.
6255
62562004-08-07 Luc Teirlinck <teirllm@auburn.edu>
6257
6258 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
6259 (syms_of_keymap) <key-translation-map>: Doc fixes.
6260
62612004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
6262
6263 * window.c (window_list_1): YAILOM.
6264
6265 * fileio.c (make_temp_name): Handle multibyte prefixes.
6266
62672004-08-06 Luc Teirlinck <teirllm@auburn.edu>
6268
6269 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
6270 Doc fix.
6271
62722004-08-03 Kenichi Handa <handa@m17n.org>
6273
6274 * coding.c (decode_coding_string): Adjust coding->consumed, and
6275 etc. with shrinked_bytes.
6276
62772004-08-03 Kim F. Storm <storm@cua.dk>
6278
6279 * indent.c (compute_motion): Fix check for full width window
6280 in non-window case. Do not count left truncation glyph on
6281 window systems.
6282
62832004-08-02 Luc Teirlinck <teirllm@auburn.edu>
6284
6285 * data.c (Finteractive_form): Doc fix.
6286
62872004-08-02 Kim F. Storm <storm@cua.dk>
6288
6289 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
6290 properly accounting for continuation glyph on non-window systems.
6291 (Fcompute_motion): Use actual window width if WIDTH is nil, and
6292 actual window width/height if TOPOS is nil, properly accounting for
6293 continuation glyphs on non-window systems, and optional header lines.
6294 (vmotion): Let compute_motion calculate actual window width.
6295
6296 * window.c (window_scroll_line_based): Let compute_motion
6297 calculate actual window width.
6298
62992004-08-02 Kim F. Storm <storm@cua.dk>
6300
6301 * process.c (read_process_output): Use whole read buffer.
6302 Don't trigger adaptive read buffering on errors.
6303
63042004-07-31 Luc Teirlinck <teirllm@auburn.edu>
6305
6306 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
6307
6308 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
6309
6310 * callint.c (Fcall_interactively): Doc fix.
6311
63122004-07-30 Richard M. Stallman <rms@gnu.org>
6313
6314 * abbrev.c (Fexpand_abbrev): Undo previous change.
6315
63162004-07-30 Kim F. Storm <storm@cua.dk>
6317
6318 * editfns.c (Fformat): Allocate extra (dummy) element in info.
6319
63202004-07-28 Luc Teirlinck <teirllm@auburn.edu>
6321
6322 * eval.c (Fdefvar, Fdefconst): Doc fixes.
6323
63242004-07-27 Kim F. Storm <storm@cua.dk>
6325
6326 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
6327 we have ensured that the glyph fits on the current line (or returned
6328 MOVE_LINE_CONTINUED otherwise).
6329
63302004-07-26 Kim F. Storm <storm@cua.dk>
6331
6332 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
6333 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
6334 if target position is at end of display line but char is not a newline.
6335
63362004-07-25 Richard M. Stallman <rms@gnu.org>
6337
6338 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
6339 instead of ON_VERTICAL_BORDER, when on scroll bar.
6340 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
6341
6342 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
6343
6344 * window.c (Fcoordinates_in_window_p):
6345 Take account of FRAME_INTERNAL_BORDER_WIDTH.
6346
6347 * alloc.c (check_cons_list): New function (contents commented out).
6348
63492004-07-24 Luc Teirlinck <teirllm@auburn.edu>
6350
6351 * xfaces.c (Fcolor_supported_p): Doc fix.
6352
6353 * frame.c (Fselect_frame, Fset_frame_selected_window)
6354 (Fframe_visible_p, Fraise_frame): Doc fixes.
6355
63562004-07-24 Richard M. Stallman <rms@gnu.org>
6357
6358 * keyboard.h (not_single_kboard_state): Declare.
6359
6360 * fileio.c (Fwrite_region): Doc fix.
6361
6362 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
6363
6364 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
6365 only when a real abbrev is present.
6366
6367 * xfns.c (x_icon_verify): New function.
6368 (Fx_create_frame): Use it.
6369
63702004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
6371
6372 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
6373
63742004-07-21 Kim F. Storm <storm@cua.dk>
6375
6376 * window.h (struct glyph_matrix): New members nrows_scale_factor
6377 and ncols_scale_factor.
6378
6379 * window.c (make_window): Initialize nrows_scale_factor and
6380 ncols_scale_factor members.
6381
6382 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
6383 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
6384 (required_matrix_height): Apply nrows_scale_factor.
6385 (required_matrix_width): Apply ncols_scale_factor.
6386
6387 * xdisp.c (display_line): Increment nrows_scale_factor and set
6388 fonts_changed_p if past last allocated row.
6389 (append_glyph, append_composite_glyph, produce_image_glyph)
6390 (append_stretch_glyph): Increment ncols_scale_factor and set
6391 fonts_changed_p if current area is full.
6392
63932004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6394
6395 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
6396
63972004-07-19 Luc Teirlinck <teirllm@auburn.edu>
6398
6399 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
6400 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
6401 (Fset_window_start, Fscroll_up, Fscroll_down)
6402 (Fother_window_for_scrolling, Fscroll_other_window)
6403 (Fsave_window_excursion, Fset_window_vscroll)
6404 (syms_of_window) <window-size-fixed>: Doc fixes.
6405
64062004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
6407
6408 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
6409 ENCODE_SYSTEM for filenames.
6410
64112004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6412
6413 * mac.c (sys_select): Block input around call to
6414 ReceiveNextEvent to prevent breakage. Correctly handle
6415 blocking on event queue only by calling ReceiveNextEvent
6416 instead of select (since GUI events aren't on an fd).
6417 (sys_read): Remove function
6418 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
6419
64202004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6421
6422 * mac.c (sys_select): Redo sys_select to use alarm-based
6423 polling instead of 1 sec timeouts (like solaris).
6424
6425 * macterm.c (x_make_frame_visible): Comment in polling on
6426 frame creation.
6427
6428 * keyboard.c: Undef SIGIO on Carbon
6429
6430 * atimer.c (alarm_signal_handler): Call alarm handlers after
6431 scheduling.
6432
6433 * eval.c (Feval): Remove quit_char test
6434
6435 * process.c (wait_reading_process_input): Remove clearing
6436 stdin for select call on process input.
6437
64382004-07-18 Luc Teirlinck <teirllm@auburn.edu>
6439
6440 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
6441 capitalization error in docstring.
6442
64432004-07-17 Juanma Barranquero <lektu@terra.es>
6444
6445 * keyboard.c (not_single_kboard_state): Do nothing unless
6446 MULTI_KBOARD is defined.
6447
64482004-07-17 Richard M. Stallman <rms@gnu.org>
6449
6450 * window.c (coordinates_in_window): Inside the window but outside
6451 its box to the L or R, return ON_VERTICAL_BORDER.
6452 (window_list_1): Rotate the list to start with WINDOW.
6453
6454 * print.c (print_preprocess): Test for print_depth at limit
6455 before entering in being_printed.
6456
6457 * keyboard.c (not_single_kboard_state): New function.
6458 (stuff_buffered_input): Now no-op only if no SIGTSTP.
6459
6460 * frame.c (Fdelete_frame): If we're in single_bboard_state on
6461 this kboard, and we delete its last frame, go to any_kboard_state.
6462
6463 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
6464
64652004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
6466
6467 * w32fns.c (Fx_file_dialog): Encode strings in system coding
6468 system before passing them to OS functions for display.
6469
64702004-07-15 David Kastrup <dak@gnu.org>
6471
6472 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
6473 Apparently fixes an abort condition.
6474
64752004-07-14 Luc Teirlinck <teirllm@auburn.edu>
6476
6477 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
6478 instead of a cons.
6479
64802004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
6481
6482 * keyboard.c (echo_dash): Do nothing if there already is a dash
6483 at the end of the echo string.
6484
64852004-07-12 Kim F. Storm <storm@cua.dk>
6486
6487 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
6488 if GC_MARK_STACK.
6489
64902004-07-10 Luc Teirlinck <teirllm@auburn.edu>
6491
6492 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
6493
6494 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
6495 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
6496 (Freplace_buffer_in_windows, Fset_window_buffer)
6497 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
6498 (syms_of_window): Expand docstring of `display-buffer-function'.
6499
65002004-07-09 Luc Teirlinck <teirllm@auburn.edu>
6501
6502 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
6503 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
6504 that time values of the type (HIGH . LOW) are considered obsolete.
6505
65062004-07-06 Luc Teirlinck <teirllm@auburn.edu>
6507
6508 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
6509 docstring.
6510
6511 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
6512
65132004-07-06 John Paul Wallington <jpw@gnu.org>
6514
6515 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
6516
6517 * fns.c (Fclear_string): Signal an error if STRING is not a string.
6518
65192004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6520
6521 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
6522 instead of CGMainDisplayID (only in OSX 10.2 and later).
6523
65242004-07-04 John Paul Wallington <jpw@gnu.org>
6525
6526 * fileio.c (read_file_name_completion_ignore_case): New variable.
6527 (syms_of_fileio): Declare and initialise it.
6528 (Fread_file_name): Bind `completion-ignore-case' to respect it.
6529
65302004-07-03 Eli Zaretskii <eliz@gnu.org>
6531
6532 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
6533 for event.x and event.y.
6534
65352004-07-01 Kenichi Handa <handa@m17n.org>
6536
6537 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
6538 after getting a new string by pre-write-conversion.
6539
65402004-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
6541
6542 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
6543 (x_calc_absolute_position): Remove unused var `child'.
6544
6545 * xfaces.c (x_supports_face_attributes_p)
6546 (Fdisplay_supports_face_attributes_p): YAILOM.
6547 (tty_supports_face_attributes_p): Remove unused var `i'.
6548
6549 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
6550 back_unibyte_ok.
6551
6552 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
6553
6554 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
6555
6556 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
6557
65582004-06-30 Andreas Schwab <schwab@suse.de>
6559
6560 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
6561 (Finit_image_library): Pass LIBRARIES through to
6562 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
6563 (lookup_image_type): Pass Qnil as second argument to
6564 Finit_image_library.
6565
6566 * lisp.h (Finit_image_library): Declare.
6567
65682004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6569
6570 * macterm.c (do_window_activate, do_window_deactivate): Remove.
6571 (XTread_socket): Send mouse button events to the toolbox
6572 dispatcher even when the mouse is grabbed. Don't process window
6573 activate events for non-Emacs windows. Replace function calls to
6574 do_window_activate and do_window_deactivate with their contents.
6575 Reset mouse grabbing status when a window is deactivated.
6576
65772004-06-29 Steven Tamm <steventamm@mac.com>
6578
6579 * macterm.c (mac_get_emulated_btn)
6580 (mac_event_to_emacs_modifiers): Fix emulated mouse button
6581 support to correctly mask out modifiers.
6582
65832004-06-29 David Kastrup <dak@gnu.org>
6584
6585 * search.c (Fset_match_data): Allow buffer before end of list
6586 which can happen if set-match-data is using a pre-consed list.
6587
65882004-06-28 Steven Tamm <steventamm@mac.com>
6589
6590 * macterm.c (XTread_socket): Correctly set the frame position
6591 after the window is moved.
6592
65932004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6594
6595 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
6596 gpix and gmask just before return to avoid memory leak.
6597 (xg_get_image_for_pixmap): Add workaround for monochrome displays
6598 so insensitive and activated icons look ok.
6599
66002004-06-27 Jason Rumney <jasonr@gnu.org>
6601
6602 * w32fns.c (file_dialog_callback): Disable edit control if set
6603 to directories only on CDN_INITDONE message.
6604 (Fx_file_dialog): Default to directories only when prompt starts
6605 with "Dired".
6606
66072004-06-25 Kim F. Storm <storm@cua.dk>
6608
6609 * alloc.c (allocate_misc): Update total_free_markers.
6610 (free_misc): New function.
6611 (safe_alloca_unwind, free_marker): Use it.
6612
6613 * lisp.h (free_misc): Add prototype.
6614
6615 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
6616
66172004-06-24 Richard M. Stallman <rms@gnu.org>
6618
6619 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
6620 (syms_of_emacs): Lisp variables deleted.
6621
66222004-06-23 David Kastrup <dak@gnu.org>
6623
6624 * search.c (Freplace_match): Adjust the match-data more thoroughly
6625 when replacing strings in the buffer.
6626 (Fmatch_data): When INTEGERS is non-nil and the last match was in
6627 a buffer, add the buffer as last element to the match data.
6628 (Fset_match_data): If an additional element of the match-data is a
6629 buffer, restore it to last_thing_searched.
6630 (save_search_regs): Save last_thing_searched as part of the match data.
6631 (restore_match_data): Restore it again.
6632
66332004-06-23 Luc Teirlinck <teirllm@auburn.edu>
6634
6635 * keymap.c (Ftext_char_description): Doc fix.
6636 * doc.c (Fsnarf_documentation): Doc fix.
6637
66382004-06-22 Kim F. Storm <storm@cua.dk>
6639
6640 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
6641
6642 * lisp.h (struct Lisp_Save_Value): New member dogc.
6643 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
6644 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
6645 (SAFE_FREE_LISP): New macro.
6646
6647 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
6648 (make_save_value): Init new dogc member.
6649 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
6650
6651 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
6652 SAFE_FREE_LISP macros.
6653
66542004-06-22 Kim F. Storm <storm@cua.dk>
6655
6656 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
6657 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
6658 in that memory area are unknown to GC. Add comments.
6659
6660 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
6661
66622004-06-21 Kim F. Storm <storm@cua.dk>
6663
6664 * lisp.h (MAX_ALLOCA): Define here.
6665 (safe_alloca_unwind): Add prototype.
6666 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
6667
6668 * alloc.c (safe_alloca_unwind): New function.
6669
6670 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
6671
6672 * charset.c (Fstring): Use SAFE_ALLOCA.
6673
6674 * coding.c (MAX_ALLOCA): Remove define.
6675
6676 * data.c (MAX_ALLOCA): Remove define.
6677 (Faset): Use SAFE_ALLOCA.
6678
6679 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
6680
6681 * fns.c (string_make_multibyte, string_to_multibyte)
6682 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
6683 (MAX_ALLOCA): Remove define.
6684 (Fbase64_encode_region, Fbase64_encode_string)
6685 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
6686 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
6687 memory leak if encoding fails.
6688
6689 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
6690
66912004-06-21 Eli Zaretskii <eliz@gnu.org>
6692
6693 * print.c (Fwith_output_to_temp_buffer): Doc fix.
6694
66952004-06-20 Richard M. Stallman <rms@gnu.org>
6696
6697 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
6698
6699 * search.c (match_limit): Cleaner err msg when no match data available.
6700
6701 * window.c (syms_of_window): Doc fix.
6702
6703 * keyboard.c (command_loop_1): Handle values `only' and `identity'
6704 for Vtransient_mark_mode.
6705
6706 * buffer.c (syms_of_buffer): Doc fix.
6707
67082004-06-21 David Kastrup <dak@gnu.org>
6709
6710 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
6711 and unbinding of `case-fold-search' according to
6712 `completion-ignore-case' around calls of string-match and
6713 predicates, respectively. Should give satisfactory performance
6714 in all relevant cases.
6715
67162004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6717
6718 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
6719 clip_x/y_origin.
6720
6721 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
6722
6723 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
6724
6725 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
6726 on Mac OSX.
6727
67282004-06-16 Luc Teirlinck <teirllm@auburn.edu>
6729
6730 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
6731
67322004-06-16 Kim F. Storm <storm@cua.dk>
6733
6734 * dispextern.h (Vimage_types): Remove extern.
6735
67362004-06-16 Miles Bader <miles@gnu.org>
6737
6738 * image.c (lookup_image_type): Initialize image type if necessary.
6739
67402004-06-15 Kim F. Storm <storm@cua.dk>
6741
6742 * xdisp.c (try_cursor_movement): Exclude header line from scroll
6743 margin at top of window.
6744 (try_window_reusing_current_matrix): Calculate proper cursor position
6745 after scrolling up with non-zero scroll margin, as the old cursor
6746 position corresponds to value of PT before executing this command.
6747 (try_window_id): Consider scroll margin at bottom of window too;
6748 otherwise we fail to scroll when hl-line-mode is enabled.
6749
6750 * syntax.c (skip_chars): Only recognize [:class:] when it has the
6751 proper format and class is a lower-case word.
6752
67532004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6754
6755 * gtkutil.c (xg_get_image_for_pixmap): New function.
6756 (xg_get_gdk_pixmap_and_mask): Remove.
6757 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
6758 xg_get_gdk_pixmap_and_mask.
6759
6760 * xterm.h (struct x_display_info): Typo in comment fixed.
6761
67622004-06-14 Juanma Barranquero <lektu@terra.es>
6763
6764 * dispextern.h (Vimage_types): Make it conditional on
6765 HAVE_WINDOW_SYSTEM.
6766
6767 * image.c (Vimage_types): Move from xdisp.c.
6768 (Vimage_type_cache): New variable.
6769 (define_image_type): New argument indicating whether an image
6770 library was loaded; cache loaded status and return t on success,
6771 nil otherwise.
6772 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
6773 (w32_delayed_load): New function to load an image library from a
6774 list of possible filenames.
6775 (init_xpm_functions, init_png_functions, init_jpeg_functions)
6776 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
6777 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
6778 (Finit_image_library): New function, extracted from `init_image'.
6779 Try to initialize an image library on demand and cache whether we
6780 were successful or not.
6781 (syms_of_image): Initialize `Vimage_types' and
6782 `Vimage_type_cache'. Add recognized image types to Vimage_types.
6783 Export `init-image-library'.
6784 (init_image): Remove initialization of all image types, except xbm
6785 and pbm.
6786
6787 * xdisp.c (Vimage_types): Delete (moved to image.c).
6788
67892004-06-14 Andreas Schwab <schwab@suse.de>
6790
6791 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
6792 Avoid calling specbind when completion-regexp-list is empty.
6793
67942004-06-13 Richard M. Stallman <rms@gnu.org>
6795
6796 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
6797 (re_wctype, re_iswctype, re_wctype_to_bit):
6798 Non-function definitions moved here from regex.c.
6799
6800 * regex.c (re_wctype, re_iswctype): Function defs longer static.
6801 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
6802 (re_wctype, re_iswctype, re_wctype_to_bit):
6803 Non-function definitions moved to regex.h.
6804
6805 * window.c (Fselect_window): Doc fix.
6806
6807 * syntax.c: Include regex.h.
6808 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
6809 If requested, make a list of classes, then check the scanned
6810 chars for membership in them.
6811 (in_classes): New function.
6812 Doc fix.
6813
6814 * keyboard.c (cmd_error): Don't call any_kboard_state
6815 if inside a recursive edit level.
6816
68172004-06-13 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
6818
6819 * keyboard.c (command_loop): Call any_kboard_state before
6820 command_loop_2 when at top level.
6821
68222004-06-13 Andreas Schwab <schwab@suse.de>
6823
6824 * print.c (print_object): Always use %ld for printing EMACS_INT.
6825
6826 * keyboard.c (cancel_hourglass_unwind): Return a value.
6827 (modify_event_symbol): Always use %ld for printing EMACS_INT.
6828 (Fexecute_extended_command): Likewise.
6829
6830 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
6831 avoid clashes.
6832 (SYNTAX): Likewise.
6833 (SYNTAX_WITH_FLAGS): Likewise.
6834 (SYNTAX_MATCH): Likewise.
6835
6836 * syntax.c (char_quoted): Avoid warning about undefined operation.
6837 (find_defun_start): Likewise.
6838 (scan_lists): Likewise.
6839 (INC_FROM): Likewise.
6840 (scan_sexps_forward): Likewise.
6841
6842 * image.c: Include <ctype.h>.
6843
6844 * xfaces.c (face_attr_equal_p): Declare parameters.
6845
68462004-06-13 Kenichi Handa <handa@m17n.org>
6847
6848 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
6849
68502004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
6851
6852 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
6853
68542004-06-12 Kenichi Handa <handa@m17n.org>
6855
6856 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
6857 ccl_prog_stack_struct and update it.
6858 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
6859 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
6860 ccl->eof_ic on EOF.
6861 (ccl_debug_hook): New function.
6862 (struct ccl_prog_stack): New member eof_ic.
6863 (ccl_driver): Handle EOF in subrountine call correctly.
6864
68652004-06-11 Kenichi Handa <handa@m17n.org>
6866
6867 * coding.c (encode_coding_string): Check CODING_FINISH_INTERRUPT.
6868
68692004-06-11 Kim F. Storm <storm@cua.dk>
6870
6871 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
6872
68732004-06-11 Juanma Barranquero <lektu@terra.es>
6874
6875 * keyboard.c (Fposn_at_point): Doc fix.
6876
68772004-06-11 David Kastrup <dak@gnu.org>
6878
6879 * search.c (match_limit): Don't flag an error if match-data
6880 exceeding the allocated search_regs.num_regs gets requested, just
6881 return Qnil.
6882
68832004-06-08 Miles Bader <miles@gnu.org>
6884
6885 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
6886
68872004-06-07 Juanma Barranquero <lektu@terra.es>
6888
6889 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
6890 (Fcurrent_time_string, Fcurrent_time_zone)
6891 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
6892
68932004-06-07 Miles Bader <miles@gnu.org>
6894
6895 * xfaces.c (struct named_merge_point): New type.
6896 (push_named_merge_point): New function.
6897 (merge_named_face): New function.
6898 (merge_face_ref, face_at_buffer_position, face_at_string_position):
6899 Use `merge_named_face'.
6900 (merge_face_inheritance): Function removed.
6901 (merge_face_ref): Rename from `merge_face_vector_with_property'.
6902 Add new `err_msgs' and `named_merge_points' args. Return error
6903 status. Only print error messages if ERR_MSGS is true. Don't try to
6904 do :inherit attribute validation.
6905 (merge_face_heights): Handle `unspecified' in both directions.
6906 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
6907 Call `merge_face_ref' instead of `merge_face_inheritance'.
6908 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
6909 (compute_char_face, face_at_buffer_position)
6910 (face_at_string_position): Call `merge_face_ref' instead of
6911 `merge_face_vector_with_property'.
6912
69132004-06-07 Kenichi Handa <handa@m17n.org>
6914
6915 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
6916 the necessary places.
6917
69182004-06-07 Kim F. Storm <storm@cua.dk>
6919
6920 * process.c (Fdelete_process): Undo 2004-05-28 change.
6921 Instead, call status_notify also for network process.
6922 (status_message): Use process instead of status as arg.
6923 Give messages "deleted" or "connection broken by remote peer" for
6924 an exited network process.
6925 (status_notify): Change call to status_message.
6926 (read_process_output): Increase readmax to 4096. Do not increase
6927 buffer size for datagram channels (default is now large enough).
6928
69292004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
6930
6931 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
6932 problem due to newly defined variable.
6933
69342004-06-06 Miles Bader <miles@gnu.org>
6935
6936 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
6937 immediately if non-interactive or not initialized.
6938
69392004-06-05 Richard M. Stallman <rms@gnu.org>
6940
6941 * minibuf.c (Fcompleting_read): Doc fix.
6942
69432004-06-05 Andreas Schwab <schwab@suse.de>
6944
6945 * macfns.c (x_create_tip_frame): Fix declaration after statement.
6946
69472004-06-05 Juanma Barranquero <lektu@terra.es>
6948
6949 * keymap.c (Fdescribe_vector): Fix docstring.
6950 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
6951
69522004-06-05 Miles Bader <miles@gnu.org>
6953
6954 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
6955 attributes have different values than the default face.
6956
69572004-06-04 Eli Zaretskii <eliz@gnu.org>
6958
6959 * xfaces.c (x_supports_face_attributes_p): Make this function
6960 conditional on HAVE_WINDOW_SYSTEM.
6961 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
6962 Don't call x_supports_face_attributes_p if it was not compiled in.
6963
69642004-06-04 Miles Bader <miles@gnu.org>
6965
6966 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
6967 from Ftty_supports_face_attributes_p.
6968 (x_supports_face_attributes_p): New function.
6969 (Ftty_supports_face_attributes_p): Function deleted.
6970 (Fdisplay_supports_face_attributes_p): New function.
6971 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
6972 (face_attr_equal_p): New function.
6973 (lface_equal_p): Use it.
6974
69752004-06-03 Juanma Barranquero <lektu@terra.es>
6976
6977 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
6978 (Vw32_color_map): Fix typo in docstring.
6979 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
6980 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
6981 Make argument names match their use in docstring.
6982
69832004-06-02 Juanma Barranquero <lektu@terra.es>
6984
6985 Work around bugs/problems with MinGW builds of graphics libraries
6986 called from MSVC builds of Emacs.
6987
6988 * image.c (lookup_image): Make pointer to img static.
6989 (png_read_from_memory): Disable "global" optimization.
6990
69912004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
6992
6993 * eval.c (Fcondition_case): Fix usage. Simplify.
6994
6995 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
6996
69972004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6998
6999 * macfns.c: Don't include ccl.h.
7000 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
7001 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
7002 TextUtils.h.
7003 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
7004 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
7005 display height/width.
7006 (compute_tip_xy, Vx_max_tooltip_size): Declare.
7007 (unwind_create_tip_frame, compute_tip_xy): New functions.
7008 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
7009 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
7010 and last_show_tip_args.
7011
7012 * macgui.h [!MAC_OSX]: Include Gestalt.h.
7013 (Cursor, No_Cursor): New defines.
7014 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
7015 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
7016
7017 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
7018
7019 * macterm.c: Don't include Gestalt.h.
7020 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
7021 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
7022 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
7023 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
7024 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
7025 (construct_mouse_click, XTmouse_position)
7026 (x_scroll_bar_report_motion, x_calc_absolute_position)
7027 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
7028 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
7029 (note_mouse_movement): Clear the mouse face and reset the pointer
7030 shape when the pointer goes outside the frame without grabbing.
7031 (mac_front_window): New function.
7032 (mac_window_to_frame): New macro.
7033 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
7034 (do_window_activate, do_window_deactivate, do_app_resume)
7035 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
7036 (do_zoom_window, mac_do_receive_drag, XTread_socket)
7037 (mac_check_for_quit_char): Use mac_front_window and/or
7038 mac_window_to_frame.
7039 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
7040 scroll-bar click event.
7041 (mac_define_frame_cursor): Change the pointer shape.
7042 (x_free_frame_resources): Reset tip_window to NULL when it is
7043 disposed of.
7044 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
7045 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
7046 (do_window_update): Don't do anything if the updated window is the
7047 tooltip window.
7048 (do_mouse_moved): Handle mouse movement events here (previously in
7049 XTread_socket). Clear the mouse face if
7050 dpyinfo->mouse_face_hidden is set.
7051 (do_os_event, do_events): Remove (now in XTread_socket).
7052 (XTread_socket): Immediately return if interrupt_input_blocked.
7053 Loop until all the events in the queue are processed.
7054 Rearrange codes for mouse grabbing. Add tooltip support. Include the
7055 contents of do_os_event and do_events. Remove mouse movement
7056 handling (now in do_mouse_moved). Add the case where
7057 Vmouse_highlight has an integer value.
7058 (NewMacWindow): Remove.
7059 (make_mac_frame): Do what NewMacWindow previously did. Don't do
7060 excess initializations.
7061 (make_mac_terminal_frame): Previous initializations in
7062 make_mac_frame are moved here.
7063 (mac_initialize_display_info):
7064 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
7065
7066 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
7067 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
7068
70692004-05-29 Richard M. Stallman <rms@gnu.org>
7070
7071 * lisp.h (truncate_undo_list): Update decl.
7072
7073 * alloc.c (undo_outer_limit): New variable.
7074 (syms_of_alloc): Defvar it.
7075 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
7076
7077 * undo.c (truncate_undo_list): New arg LIMITSIZE.
7078
7079 * alloc.c (lisp_align_malloc): Check for base == 0
7080 regardless of HAVE_POSIX_MEMALIGN.
7081 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
7082
70832004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
7084
7085 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
7086 (marker_blocks_pending_free): Remove.
7087 (Fgarbage_collect): Sweep after cleaning up undo-lists.
7088 Mark the undo lists after claning them up.
7089 Don't free block in marker_blocks_pending_free.
7090 (mark_buffer): Don't mark undo_list.
7091 (gc_sweep): Sweep hash-tables and strings first.
7092 Do free marker blocks that are empty.
7093
70942004-05-28 Jim Blandy <jimb@redhat.com>
7095
7096 * regex.c (print_partial_compiled_pattern): Add missing 'break'
7097 after 'case wordend'. For symbeg and symend, print to stderr,
7098 like the other cases.
7099
71002004-05-28 Noah Friedman <friedman@splode.com>
7101
7102 * process.c (Fdelete_process): Do not call remove_process.
7103
71042004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
7105
7106 * alloc.c (struct backtrace): Remove.
7107 (Fgarbage_collect): Use the new mark_backtrace.
7108
7109 * eval.c (mark_backtrace): New function.
7110
7111 * minibuf.c (run_exit_minibuf_hook): New function.
7112 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
7113 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
7114
71152004-05-27 Kim F. Storm <storm@cua.dk>
7116
7117 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
7118 over display properties, e.g. images, that replace buffer text.
7119
71202004-05-25 Kim F. Storm <storm@cua.dk>
7121
7122 * alloc.c (marker_blocks_pending_free): New var.
7123 (gc_sweep): Store free marker blocks on that list.
7124 (Fgarbage_collect): Free them after undo-list cleanup.
7125
7126 * process.c (wait_reading_process_input): Check connect_wait_mask
7127 before actually accepting connection in case it has already been
7128 accepted due to recursion.
7129
71302004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
7131
7132 * coding.c (Fset_safe_terminal_coding_system_internal):
7133 Set suppress_error in safe_terminal_coding, not terminal_coding.
7134
71352004-05-22 Richard M. Stallman <rms@gnu.org>
7136
7137 * alloc.c (Fmake_string): Doc fix.
7138
7139 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
7140 and the alist pairs too.
7141
7142 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
7143
7144 * emacs.c (main): Update copyright year.
7145
7146 * fileio.c (Fread_file_name): Expand DIR if not absolute.
7147
7148 * insdel.c (del_range_2, replace_range): Don't write an anchor
7149 if the gap is empty.
7150
7151 * xdisp.c (try_scrolling): If scroll-up-aggressively or
7152 scroll-down-aggressively is small but positive, put point
7153 near the screen edge.
7154
71552004-05-22 Juanma Barranquero <lektu@terra.es>
7156
7157 * keymap.c (Fdefine_key): Doc fix.
7158
71592004-05-22 Kim F. Storm <storm@cua.dk>
7160
7161 * alloc.c (struct backtrace): Add debug_on_exit member.
7162 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
7163 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
7164 the removed cons cells.
7165 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
7166 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
7167 any cons cells pointing to unallocated stings.
7168 Do not lisp_free any marker blocks, as there may still be pointers
7169 to them from buffer undo lists at this stage of GC.
7170
7171 * keyboard.c (struct backtrace): Add debug_on_exit member.
7172 (Fcommand_execute): Clear it.
7173
71742004-05-20 Luc Teirlinck <teirllm@auburn.edu>
7175
7176 * intervals.c (lookup_char_property): Do not prematurely return nil.
7177
71782004-05-19 Jim Blandy <jimb@redhat.com>
7179
7180 Add support for new '\_<' and '\_>' regexp operators, matching the
7181 beginning and end of symbols.
7182
7183 * regex.c (enum syntaxcode): Add Ssymbol.
7184 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
7185 (re_opcode_t): New opcodes `symbeg' and `symend'.
7186 (print_partial_compiled_pattern): Print the new opcodes properly.
7187 (regex_compile): Parse the new operators.
7188 (analyse_first): Skip sym(beg|end) (they match only the empty string).
7189 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
7190 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
7191 (re_match_2_internal): Match symbeg and symend.
7192
7193 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
7194
71952004-05-19 Kim F. Storm <storm@cua.dk>
7196
7197 * .gdbinit (xsymbol): Fix last change.
7198
71992004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
7200
7201 * .gdbinit (xprintstr): New fun.
7202 (xstring, xprintsym): Use it.
7203
7204 * w32proc.c (create_child): Use INTMASK.
7205
7206 * alloc.c (Fgarbage_collect): Do all the marking before flushing
7207 unmarked elements of the undo list.
7208
72092004-05-18 David Ponce <david@dponce.com>
7210
7211 * print.c (print): Reset print_depth before to call print_object.
7212
72132004-05-18 Jason Rumney <jasonr@gnu.org>
7214
7215 * w32console.c: Prefix RIF functions with w32con_ to avoid
7216 namespace clash with functions in term.c and w32term.c.
7217
7218 * w32menu.c (add_menu_item, w32_menu_display_help)
7219 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
7220
7221 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
7222
72232004-05-18 Eli Zaretskii <eliz@gnu.org>
7224
7225 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
7226
7227 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
7228 with make_number.
7229 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
7230 with XINT.
7231
72322004-05-18 Kim F. Storm <storm@cua.dk>
7233
7234 * blockinput.h (INPUT_BLOCKED_P): New macros.
7235
7236 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
7237 (Ftop_level): Unblock input if blocked.
7238
7239 * buffer.h (GET_OVERLAYS_AT): New macro.
7240 * msdos.c (IT_note_mouse_highlight): Use it.
7241 * textprop.c (get_char_property_and_overlay): Use it.
7242 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
7243 * xfaces.c (face_at_buffer_position): Use it.
7244
7245 * print.c (print_object): Increase buf size.
7246
72472004-05-17 Jason Rumney <jasonr@gnu.org>
7248
7249 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
7250 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
7251 Lisp_Object using i member.
7252 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
7253 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
7254 consistently.
7255
7256 * w32proc.c (create_child): Use make_number instead of masking pid.
7257
7258 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
7259 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
7260 Use EQ to compare Lisp_Objects.
7261 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
7262
7263 * w32term.c (w32_num_mouse_buttons): Rename from
7264 Vw32_num_mouse_buttons and make it an int.
7265
7266 * w32.c (init_environment): Use it.
7267
7268 * w32fns.c (w32_wnd_proc): Likewise.
7269
7270 * w32proc.c (w32_pipe_read_delay): Rename from
7271 Vw32_pipe_read_delay and make it an int.
7272
7273 * w32.c (_sys_read_ahead): Use it.
7274
7275 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
7276
7277 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
7278
7279 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
7280 (key_event): Don't mix Lisp_Object and int.
7281
7282 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
7283
7284 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
7285 modifiers in language change event.
7286
72872004-05-17 Kim F. Storm <storm@cua.dk>
7288
7289 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
7290 Such objects may be freed markers which still exist on an undo list.
7291
72922004-05-16 Juanma Barranquero <lektu@terra.es>
7293
7294 * data.c (Fset_default): Make argument names match their use in
7295 docstring.
7296
72972004-05-15 Andreas Schwab <schwab@suse.de>
7298
7299 * emacs.c (gdb_array_mark_flag): Define.
7300 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
7301
73022004-05-15 Eli Zaretskii <eliz@gnu.org>
7303
7304 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
7305 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
7306 defined for the MS-DOS build.
7307
73082004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
7309
7310 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
7311
73122004-05-14 Kenichi Handa <handa@m17n.org>
7313
7314 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
7315
73162004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7317
7318 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
7319 section to frame.c section.
7320 (Fxw_display_color_p, Fx_file_dialog): Declare if
7321 HAVE_WINDOW_SYSTEM defined.
7322
7323 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
7324
7325 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
7326
7327 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
7328 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
7329 (XTread_socket): Fix int/Lisp_Object mixup.
7330 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
7331
7332 * macterm.h (struct frame, struct face, struct image)
7333 (display_x_get_resource, Fx_display_color_p)
7334 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
7335 Add prototypes.
7336
73372004-05-14 Kim F. Storm <storm@cua.dk>
7338
7339 * process.c (wait_reading_process_input): Make reentrant.
7340 Make Available and Connecting non-static. Save and restore value
7341 of waiting_for_user_input_p.
7342
73432004-05-13 Kim F. Storm <storm@cua.dk>
7344
7345 * keyboard.c (mark_kboards): Don't mark x and y members
7346 that are overloaded in selection request events.
7347
73482004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
7349
7350 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
7351
73522004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
7353
7354 * window.c (Fdisplay_buffer, Fsplit_window)
7355 (split-height-threshold): Doc fix.
7356
73572004-05-13 Juanma Barranquero <lektu@terra.es>
7358
7359 * xfaces.c (Ftty_supports_face_attributes_p)
7360 (Finternal_copy_lisp_face): Fix typo in docstring.
7361 (Finternal_get_lisp_face_attribute): Fix docstring.
7362
73632004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7364
7365 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
7366
73672004-05-11 Steven Tamm <steventamm@mac.com>
7368
7369 * macfns.c (Fx_create_frame): Default to using tool-bar by
7370 setting tool-bar-lines to 1 in default-frame-alist.
7371
73722004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7373
7374 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
7375 (xpm_get_color_table_v, xpm_make_color_table_h)
7376 (xpm_put_color_table_h, xpm_get_color_table_h)
7377 (xpm_str_to_color_key, xpm_load_image, xpm_load)
7378 (syms_of_image): Support XPM on Carbon Emacs. Does not
7379 depend on libXpm, but only supports XPM version 3 without extensions.
7380
73812004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7382
7383 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
7384 instead of FRAME_X_P
7385
73862004-05-11 Kim F. Storm <storm@cua.dk>
7387
7388 * process.c (read_process_output): Grow decoding_buf when needed;
7389 this could cause a crash in allocate_string and compact_small_strings.
7390
73912004-04-29 Jim Blandy <jimb@redhat.com>
7392
7393 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
7394 against proper opcode.
7395
73962004-05-10 Juanma Barranquero <lektu@terra.es>
7397
7398 * process.c (Fstart_process): Fix docstring.
7399
7400 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
7401 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
7402 (Fsplit_char, Fchar_charset): Make argument names match their use
7403 in docstring.
7404
74052004-05-10 Richard M. Stallman <rms@gnu.org>
7406
7407 * print.c (print_preprocess): Use being_printed, loop_count and
7408 halftail to detect overdeep nesting and cyclic cdr chains.
7409
74102004-05-10 Andreas Schwab <schwab@suse.de>
7411
7412 * lisp.h (Fmake_symbolic_link): Declare.
7413
7414 * fileio.c (Frename_file): Remove extra argument in call to
7415 Fmake_symbolic_link.
7416
74172004-05-10 Kim F. Storm <storm@cua.dk>
7418
7419 * xdisp.c (calc_line_height_property): Use string position when
7420 object is a string.
7421
74222004-05-10 Kenichi Handa <handa@m17n.org>
7423
7424 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
7425 inhibit-modification-hooks to t temporarily before calling
7426 Ferase_buffer.
7427
7428 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
7429 inhibit-modification-hooks to t temporarily before calling
7430 Ferase_buffer.
7431
7432 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
7433 inhibit-modification-hooks to t temporarily before calling
7434 Ferase_buffer.
7435
7436 * fns.c (count_combining): Delete it.
7437 (concat): Don't check combining bytes.
7438
74392004-05-09 Jason Rumney <jasonr@gnu.org>
7440
7441 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
7442 (globals_of_w32fns): Set it.
7443
74442004-05-09 Piet van Oostrum <piet@cs.uu.nl>
7445
7446 * data.c (Fquo): Simplify.
7447
74482004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
7449
7450 * data.c (Fquo): If any argument is float, do the computation in
7451 floating point.
7452
74532004-05-08 Juanma Barranquero <lektu@terra.es>
7454
7455 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
7456 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
7457 Fix spelling of Emacs on docstring.
7458 (Fset_process_coding_system, Fprocess_coding_system)
7459 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
7460 Make argument names match their use in docstring.
7461 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
7462 Fix docstring.
7463
7464 * editfns.c (Finsert_buffer_substring): Make argument names match their
7465 use in docstring.
7466
7467 * syntax.c (Fmodify_syntax_entry): Fix docstring.
7468
74692004-05-07 Steven Tamm <steventamm@mac.com>
7470
7471 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
7472 around call to ReceiveEvent to avoid certain crashes.
7473
74742004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7475
7476 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
7477 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
7478 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
7479 Save/restore the current graphics port and device handle when
7480 drawing into an offscreen graphics world.
7481
7482 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
7483 (gif_load): Likewise.
7484
74852004-05-07 Juanma Barranquero <lektu@terra.es>
7486
7487 * window.c (Fset_window_buffer): Fix docstring.
7488
74892004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
7490
7491 * emacs.c (main) [VMS]: Fix var ref.
7492
74932004-05-06 Romain Francoise <romain@orebokech.com>
7494
7495 * data.c (Fsetq_default): Fix docstring.
7496
74972004-05-06 Jason Rumney <jasonr@gnu.org>
7498
7499 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
7500 to avoid name clash.
7501
75022004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7503
7504 * fileio.c (barf_or_query_if_file_exists): Use lstat.
7505 (Frename_file): Handle renaming of symlinks across file systems.
7506 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
7507
75082004-05-04 Kim F. Storm <storm@cua.dk>
7509
7510 * xdisp.c (Qtotal): New var.
7511 (syms_of_xdisp): Intern and staticpro it.
7512 (calc_line_height_property): New arg total. Set it if
7513 line-spacing property has format (total . VALUE).
7514 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
7515 Handle total line-spacing property.
7516
75172004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7518
7519 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
7520 "under" scroll bar when size/position changes.
7521
75222004-05-03 Jason Rumney <jasonr@gnu.org>
7523
7524 * makefile.nt: Remove.
7525
75262004-05-02 Eli Zaretskii <eliz@gnu.org>
7527
7528 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
7529 Avoid compiler warnings.
7530
7531 * Makefile.in (region-cache.o): Depend on config.h.
7532
75332004-05-02 Romain Francoise <romain@orebokech.com>
7534
7535 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
7536 with continuation lines, too.
7537
75382004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
7539
7540 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
7541
75422004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
7543
7544 * xdisp.c (calc_line_height_property): YAILOM (yet another
7545 int/Lisp_Object mixup).
7546
75472004-05-01 Eli Zaretskii <eliz@gnu.org>
7548
7549 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
7550 undo bad effect of pack(4) in some versions of system headers.
7551
75522004-05-01 Jason Rumney <jasonr@gnu.org>
7553
7554 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
7555
75562004-04-30 Kim F. Storm <storm@cua.dk>
7557
7558 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
7559 (syms_of_buffer) <cursor-type>: Doc fix.
7560
7561 * dispextern.h (struct it): Remove member use_default_face.
7562 Add members override_ascent, override_descent, override_boff.
7563
7564 * xdisp.c (init_iterator): Handle line-spacing float value.
7565 Initialize override_ascent member.
7566 (append_space_for_newline): Reset override_ascent.
7567 Remove use_default_face.
7568 (calc_line_height_property): New function to calculate value of
7569 line-height and line-spacing properties. Look at overlays, too.
7570 Set override_ascent, override_descent, override_boff members when
7571 using another face than the current face. Float values are now
7572 relative to the frame default font, by default; accept a cons
7573 of ratio and face name to specify value relative to a specific face.
7574 (x_produce_glyphs): Use calc_line_height_property.
7575 Use override_ascent etc. when set to handle different face heights.
7576 A negative line-spacing property value is interpreted as a total
7577 line height, rather than inter-line spacing.
7578 (note_mouse_highlight): Allocate room for 40 overlays initially.
7579
75802004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
7581
7582 * data.c (Fsubr_name): New fun.
7583 (syms_of_data): Defsubr it.
7584
75852004-04-29 Kim F. Storm <storm@cua.dk>
7586
7587 * xdisp.c (null_glyph_slice): New var.
7588 (append_glyph, append_composite_glyph, append_stretch_glyph):
7589 Use it to initialize glyph slice.
7590
75912004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
7592
7593 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
7594 (on_hot_spot_p): Make sure we always return a value.
7595 (Flookup_image_map): Remove unused var ix and iy.
7596 (note_mode_line_or_margin_highlight): Remove unused var `image'.
7597
75982004-04-27 Eli Zaretskii <eliz@gnu.org>
7599
7600 * msdos.c (init_environment): If one of the TMP... environment
7601 variables is set to a drive letter without a trailing slash,
7602 append a slash.
7603
76042004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
7605
7606 * editfns.c (lisp_time_argument): Provide externally.
7607
7608 * fileio.c (Fset_file_times): New function.
7609 (syms_of_fileio): Intern and staticpro it.
7610
76112004-04-27 Kim F. Storm <storm@cua.dk>
7612
7613 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
7614 header line strings.
7615
7616 * dispextern.h (struct it): New member use_default_face.
7617
7618 * xdisp.c (Qline_height): New variable.
7619 (syms_of_xdisp): Intern and staticpro it.
7620 (append_space_for_newline): Partially undo 2004-04-25 change;
7621 add default_face_p arg, and restore callers.
7622 Clear it->use_default_face after use.
7623 (x_produce_glyphs): Set default font for ascii char if
7624 it->use_default_font is set. Change line-spacing property to set
7625 just extra line spacing. Handle new line-height property.
7626
76272004-04-26 Andreas Schwab <schwab@suse.de>
7628
7629 * print.c (print_object): Print non-ascii characters in bool
7630 vector representation as octal escapes.
7631
7632 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
7633 * print.c (print_object): Use it instead of BITS_PER_CHAR for
7634 bool vectors.
7635 * lread.c (read1): Likewise.
7636 * alloc.c (Fmake_bool_vector): Likewise.
7637 * data.c (Faref, Faset): Likewise.
7638 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
7639 (mapcar1): Likewise.
7640
76412004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
7642
7643 * lread.c (init_lread): Fix typo in HAVE_CARBON test logic.
7644
76452004-04-26 Miles Bader <miles@gnu.org>
7646
7647 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
7648
76492004-04-26 Juanma Barranquero <lektu@terra.es>
7650
7651 * buffer.c (Fpop_to_buffer): Fix docstring.
7652
76532004-04-26 Steven Tamm <steventamm@mac.com>
7654
7655 * lread.c (init_lread): Don't display missing lisp directory
7656 warnings with Carbon Emacs because self-contained bundled Emacs
7657 may be built without correct installation path.
7658
76592004-04-25 Kim F. Storm <storm@cua.dk>
7660
7661 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
7662
7663 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
7664
7665 * xdisp.c (append_space_for_newline): Rename from append_space.
7666 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
7667 (x_produce_glyphs): Handle line-spacing property on newline char.
7668 If value is t, adjust ascent and descent to fit current row height.
7669 If value is an integer or float, set extra_line_spacing to integer
7670 value, or to float value x current line height.
7671
76722004-04-23 Kenichi Handa <handa@m17n.org>
7673
7674 * fontset.c (Finternal_char_font): If POSITION is nil, return
7675 font for displaying CH with the default face.
7676
76772004-04-23 Juanma Barranquero <lektu@terra.es>
7678
7679 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
7680
76812004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
7682
7683 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
7684 Don't make assumptions about the relative place of i and val.
7685 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
7686
76872004-04-21 Kim F. Storm <storm@cua.dk>
7688
7689 * dispextern.h (struct glyph_slice): New struct.
7690 (struct glyph): New member slice.
7691 (GLYPH_SLICE_EQUAL_P): New macro.
7692 (GLYPH_EQUAL_P): Use it.
7693 (struct glyph_string): New member slice.
7694 (struct it_slice): New struct.
7695 (struct it): New member slice, add member to stack too.
7696 New member constrain_row_ascent_descent_p.
7697 (image_ascent): Add prototype.
7698
7699 * dispnew.c (buffer_posn_from_coords): Return full image width
7700 and height even for image slices (posn is relative to full image).
7701 (marginal_area_string): Adjust x0,y0 for image slice.
7702
7703 * image.c (image_ascent): Add slice arg; calculate ascent for
7704 image slice (or full image).
7705
7706 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
7707 (syms_of_keyboard): Defsubr them.
7708
7709 * lisp.h (pos_visible_p): Fix prototype.
7710
7711 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
7712 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
7713 (x_draw_image_foreground, x_draw_image_relief)
7714 (x_draw_image_foreground_1, x_draw_image_glyph_string):
7715 Draw sliced images.
7716
7717 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
7718 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
7719 (x_draw_image_foreground, x_draw_image_relief)
7720 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
7721 Draw sliced images.
7722
7723 * w32term.h (image_ascent): Remove prototype.
7724
7725 * window.c (Fpos_visible_in_window_p): Return pixel position if
7726 PARTIALLY arg is non-nil. Simplify. Doc fix.
7727 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
7728 to return/set vscroll in pixels.
7729
7730 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
7731
7732 * xdisp.c (Qslice): New variable.
7733 (syms_of_xdisp): Intern and staticpro it.
7734 (pos_visible_p): Return pixel position in new x and y args.
7735 (init_iterator): Reset it->slice info.
7736 (handle_display_prop): Parse (slice ...) property.
7737 (push_it, pop_it): Save/restore slice info.
7738 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
7739 force repositioning of tall row if window is vscrolled, as that
7740 would reset vscroll.
7741 (append_space): Set it->constrain_row_ascent_descent_p to avoid
7742 increasing row height if row is non-empty.
7743 (fill_image_glyph_string): Copy slice info.
7744 (take_vertical_position_into_account): Simplify.
7745 (produce_image_glyph): Handle iterator slice info, setup glyph
7746 slice info. Do not force minimum line height.
7747 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
7748 do not increase height (ascent/descent) of non-empty row when
7749 adding normal character glyph; instead reduce glyph ascent/descent
7750 appropriately; if row is higher than current glyph, adjust glyph
7751 descent/ascent to reposition glyph within the existing row.
7752 Likewise, when char is newline, only set ascent/descent if row is
7753 currently empty.
7754 (note_mouse_highlight): Handle hotspots with sliced image.
7755
7756 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
7757 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
7758 (x_draw_image_foreground, x_draw_image_relief)
7759 (x_draw_image_foreground_1, x_draw_image_glyph_string):
7760 Draw sliced images.
7761
7762 * xterm.h (image_ascent): Remove prototype.
7763
77642004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
7765
7766 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
7767
77682004-04-20 John Paul Wallington <jpw@gnu.org>
7769
7770 * fns.c (Fassoc, Feql): Fix indentation.
7771
7772 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
7773
77742004-04-19 John Paul Wallington <jpw@gnu.org>
7775
7776 * fns.c (Feql): New function.
7777 (syms_of_fns): Defsubr it.
7778
77792004-04-18 Jason Rumney <jasonr@gnu.org>
7780
7781 * w32select.c (Fw32_set_clipboard_data): Get sequence number
7782 after closing the clipboard.
7783
77842004-04-16 Luc Teirlinck <teirllm@auburn.edu>
7785
7786 * buffer.c (Fbuffer_base_buffer): Doc fix.
7787
77882004-04-17 Kim F. Storm <storm@cua.dk>
7789
7790 * keymap.c (Fkey_description): Add optional PREFIX arg.
7791 Combine prefix with KEYS to make up the full key sequence to describe.
7792 Correlate meta_prefix_char and following (simple) key to describe
7793 as meta modifier. All callers changed.
7794 (describe_map): Rename arg `keys' to `prefix'. Remove local
7795 `elt_prefix' var. Use Fkey_description with prefix instead of
7796 elt_prefix combined with Fsingle_key_description.
7797 (describe_vector): Declare static. Replace arg `elt_prefix' with
7798 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
7799 if !KEYMAP_P. Use Fkey_description with prefix instead of
7800 Fsingle_key_description.
7801
7802 * keymap.h (Fkey_description): Fix prototype.
7803 (describe_vector): Remove prototype.
7804
7805 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
7806
7807 * image.c (PNG_BG_COLOR_SHIFT): Remove.
7808 (png_load): Fix calculation of transparent background color on X
7809 and W32 platforms.
7810
78112004-04-16 Juanma Barranquero <lektu@terra.es>
7812
7813 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
7814 not too large before computing how much to scroll.
7815
78162004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
7817
7818 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
7819
78202004-04-14 Luc Teirlinck <teirllm@auburn.edu>
7821
7822 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
7823 Add hyperlink to Elisp manual to the docstring.
7824
78252004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
7826
7827 * callint.c (fix_command): Use XDCR.
7828
78292004-04-14 Nick Roberts <nick@nick.uklinux.net>
7830
7831 * window.c (Fget_lru_window): Doc fix.
7832
78332004-04-14 Kim F. Storm <storm@cua.dk>
7834
7835 * editfns.c (Fformat): Fix allocation size of precision array.
7836
7837 * dispnew.c (update_window): Only set changed_p if
7838 scrolling_window actually did scroll.
7839 (scrolling_window): Only return 1 if we actually did scroll.
7840
7841 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
7842 height to glyph height when cursor row is not fully visible.
7843 (make_cursor_line_fully_visible): Add FORCE_P arg to return
7844 failure in case row is higher than window. Callers changed.
7845 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
7846 Try to scroll partially visible, higher-than-window cursor row.
7847 (redisplay_window): Always try to scroll partially visible,
7848 higher-than-window cursor row - both initially and again with
7849 centering_position = 0.
7850 Clear desired matrix before retrying with centering_position = 0.
7851
78522004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
7853
7854 * syntax.c (scan_lists): Simplify backward string scan.
7855 Fix off-by-one boundary check for string and comment fences.
7856
78572004-04-13 Joe Buehler <jbuehler@hekimian.com>
7858
7859 * sheap.c, unexcw.c: New files.
7860
78612004-04-12 Luc Teirlinck <teirllm@auburn.edu>
7862
7863 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
7864 base buffer has been killed. Correct the error message if the
7865 base buffer does not exist.
7866
78672004-04-12 Joe Buehler <jbuehler@hekimian.com>
7868
7869 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
7870 Cygwin itself. Add support for Xaw3d scrollbars.
7871
7872 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
7873
7874 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
7875
7876 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
7877 before Cygwin unexec.
7878
7879 * Makefile.in: Link changes for Cygwin unexec() support.
7880
78812004-04-12 Andreas Schwab <schwab@suse.de>
7882
7883 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
7884
78852004-04-11 Luc Teirlinck <teirllm@auburn.edu>
7886
7887 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
7888 IGNORE argument equals NAME. Doc fix.
7889
78902004-04-11 Masatake YAMATO <jet@gyve.org>
7891
7892 * buffer.c (fix_start_end_in_overlays): Make overlays
7893 empty if they are backwards.
7894
78952004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
7896
7897 * xfaces.c (face_color_supported_p): Fix compilation without X11.
7898
78992004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
7900
7901 * doc.c (Fsnarf_documentation): Ignore new file name entries.
7902
79032004-04-06 Kim F. Storm <storm@cua.dk>
7904
7905 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
7906 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
7907
7908 * w32term.c (w32_read_socket): Set mouse_face_hidden after
7909 clearing highlight.
7910
7911 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
7912
7913 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
7914 clearing highlight.
7915
7916 * indent.c (vmotion): Do not reserve one column for continuation
7917 marks on window frames.
7918
79192004-04-04 Eli Zaretskii <eliz@gnu.org>
7920
7921 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
7922 from GCC.
7923
79242004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
7925
7926 * .gdbinit-union: Remove.
7927
7928 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
7929 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
7930 ($nonvalbits): Remove.
7931 ($valmask): Set it by calling xreload to avoid redundancy.
7932
7933 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
7934 (gdb_emacs_intbits): Remove.
7935
79362004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7937
7938 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
7939
79402004-03-30 Kenichi Handa <handa@m17n.org>
7941
7942 * editfns.c (Fformat): Fix initialization of the array info.
7943
79442004-03-30 Kim F. Storm <storm@cua.dk>
7945
7946 * xterm.c (x_mouse_click_focus_ignore_position): New var.
7947 (syms_of_xterm): DEFVAR_BOOL it.
7948 (ignore_next_mouse_click_timeout): New var.
7949 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
7950 Use it to filter mouse clicks following focus event.
7951
79522004-03-29 David Ponce <david@dponce.com>
7953
7954 * callint.c (Fcall_interactively): Fix last change.
7955
79562004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
7957
7958 * eval.c (Fcommandp): Simplify.
7959
7960 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
7961 Extend to handle all kinds of functions.
7962
7963 * lisp.h (Finteractive_form): Declare.
7964
7965 * callint.c (Fcall_interactively): Use it.
7966
79672004-03-26 Kim F. Storm <storm@cua.dk>
7968
7969 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
7970 to catch errors in calc_pixel_width_or_height during redisplay.
7971
79722004-03-26 Masatake YAMATO <jet@gyve.org>
7973
7974 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
7975
7976 * lisp.h (fix_start_end_in_overlays): Likewise.
7977
7978 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
7979
7980 * editfns.c (Ftranspose_regions): Likewise.
7981
79822004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7983
7984 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
7985
79862004-03-19 Richard M. Stallman <rms@gnu.org>
7987
7988 * s/sol2-6.h: Delete previous change.
7989
79902004-03-19 Kim F. Storm <storm@cua.dk>
7991
7992 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
7993 to_charpos corresponds to newline in right fringe. Use local
7994 BUFFER_POS_REACHED_P macro.
7995
79962004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7997
7998 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
7999 to compile on non-window system.
8000
80012004-03-19 Kim F. Storm <storm@cua.dk>
8002
8003 * dispextern.h (calc_pixel_width_or_height): Add prototype.
8004
8005 * image.c (Qcenter): Move to xdisp.c.
8006
8007 * xdisp.c (Qcenter): Declare here.
8008 (syms_of_xdisp): Intern and staticpro it.
8009 (handle_single_display_prop): Allow space display property on all
8010 platforms.
8011 (display_mode_line): Set mode_line_p before displaying line.
8012 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
8013 handling. Remove complex cases for fringes and scroll-bars.
8014 Add left, right, and center alignment positions. Add text (area)
8015 width/height. Return width or height for image specs.
8016 (produce_stretch_glyph): Improve handling of :align-to. Is now
8017 relative to left of text area by default, but other base offsets
8018 can be specified -- also for text lines.
8019
8020 * term.c (produce_glyphs): Handle IT_STRETCH.
8021 (produce_stretch_glyph): New function to handle space width and
8022 align-to display properties on non-window systems.
8023
80242004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
8025
8026 * fileio.c (Fread_file_name): Set completion-ignore-case for
8027 case-insensitive systems.
8028
80292004-03-14 Masatake YAMATO <jet@gyve.org>
8030
8031 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
8032 when keymap and cursor are setup.
8033
80342004-03-14 Steven Tamm <steventamm@mac.com>
8035
8036 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
8037
80382004-03-14 Kim F. Storm <storm@cua.dk>
8039
8040 * dispextern.h (x_find_image_file): Add prototype.
8041
8042 * image.c (x_find_image_file): Make extern.
8043
8044 * xfns.c (x_find_image_file): Remove prototype.
8045
80462004-03-13 Eli Zaretskii <eliz@gnu.org>
8047
8048 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
8049
8050 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
8051
80522004-03-12 Richard M. Stallman <rms@gnu.org>
8053
8054 * fns.c (internal_equal): New arg PROPS controls comparing
8055 text properties. All callers changed.
8056 (Fequal_including_properties): New function.
8057 (syms_of_fns): defsubr it.
8058
80592004-03-12 Kim F. Storm <storm@cua.dk>
8060
8061 Fix image support on MAC. From YAMAMOTO Mitsuharu.
8062
8063 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
8064 (image_background, image_background_transparent): Fix prototypes.
8065
8066 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
8067
8068 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
8069 (x_query_font, x_find_ccl_program, x_set_window_size)
8070 (x_make_frame_visible, mac_initialize, XCreatePixmap)
8071 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
8072 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
8073
8074 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
8075 (x_query_font, x_find_ccl_program, x_set_window_size)
8076 (x_make_frame_visible, mac_initialize, XCreatePixmap)
8077 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
8078 (mac_draw_line_to_pixmap): Add prototypes.
8079
80802004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8081
8082 * macterm.c (XTread_socket): Fix mouse click on tool bar.
8083
80842004-03-11 Kim F. Storm <storm@cua.dk>
8085
8086 * dispextern.h: Move image related prototypes from xfns.c section
8087 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
8088 HAVE_X_WINDOWS.
8089
8090 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
8091 Move gtkutil.o to new GTK_OBJ list.
8092 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
8093 (GTK_OBJ) [USE_GTK]: New declaration.
8094 (obj): Add $(GTK_OBJ) to list.
8095
80962004-03-11 Steven Tamm <steventamm@mac.com>
8097
8098 * image.c [MAC_OSX]: Include sys/stat.h.
8099
8100 * macfns.c (syms_of_macfns): Remove definitions of things now
8101 defined in image.c.
8102
81032004-03-11 Kim F. Storm <storm@cua.dk>
8104
8105 The following changes consolidates the identical/similar image
8106 support code previously found in xfns.c, w32fns.c, and macfns.c
8107 into a new file image.c.
8108
8109 * makefile.w32-in (OBJ1): Add image.o.
8110 ($(BLD)/image.$(O)): Add dependencies.
8111
8112 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
8113 (image.o): Add dependencies.
8114
8115 * image.c: New file with consolidated image support code.
8116 (COLOR_TABLE_SUPPORT): New define to control whether
8117 color table support is available (X only).
8118 (Bitmap_Record): Common name for x_bitmap_record,
8119 w32_bitmap_record, and mac_bitmap_record.
8120 (XImagePtr): Common name for pointer to XImage or equivalent.
8121 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
8122 to XImagePtr on X+MAC, and to HDC on W32.
8123 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
8124 (NO_PIXMAP): Common name for "None" or equivalent.
8125 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
8126 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
8127 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
8128 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
8129 Define with suitable equivalents on W32 and MAC for code sharing.
8130 (XDrawLine): Define on MAC for code sharing.
8131 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
8132 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
8133 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
8134 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8135 (x_reference_bitmap, x_create_bitmap_from_data)
8136 (x_create_bitmap_from_file, x_destroy_bitmap)
8137 (x_destroy_all_bitmaps, x_create_bitmap_mask)
8138 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
8139 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
8140 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
8141 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
8142 (define_image_type, lookup_image_type, valid_image_p)
8143 (image_error, enum image_value_type, struct image_keyword)
8144 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
8145 (make_image, free_image, prepare_image_for_display, image_ascent)
8146 (four_corners_best, image_background, image_background_transparent)
8147 (x_clear_image_1, x_clear_image, x_alloc_image_color)
8148 (make_image_cache, free_image_cache, clear_image_cache)
8149 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
8150 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
8151 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
8152 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
8153 (init_image_func_pointer, image_load_quartz2d)
8154 (struct ct_color, init_color_table, free_color_table)
8155 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
8156 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
8157 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
8158 (x_disable_image, x_build_heuristic_mask)
8159 (XBM support, XPM support, PBM support, PNG support, JPEG support)
8160 (TIFF support, GIF support, Ghostscript support): Consolidate image
8161 code from xfns.c, w32fns.c, and macfns.c.
8162 (syms_of_image): Consolidate image related symbol setup here.
8163 (init_image): Consolidate image related initializations here.
8164
8165 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
8166 and init_image. Remove call to init_xfns.
8167
8168 * macterm.h (struct mac_bitmap_record): Add file member.
8169 Not currently used, but simplifies code sharing.
8170
8171 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
8172 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8173 (x_reference_bitmap, x_create_bitmap_from_data)
8174 (x_create_bitmap_from_file, x_destroy_bitmap)
8175 (x_destroy_all_bitmaps, x_create_bitmap_mask)
8176 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
8177 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
8178 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
8179 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
8180 (define_image_type, lookup_image_type, valid_image_p)
8181 (image_error, enum image_value_type, struct image_keyword)
8182 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
8183 (make_image, free_image, prepare_image_for_display, image_ascent)
8184 (four_corners_best, image_background, image_background_transparent)
8185 (x_clear_image_1, x_clear_image, x_alloc_image_color)
8186 (make_image_cache, free_image_cache, clear_image_cache)
8187 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
8188 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
8189 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
8190 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
8191 (init_image_func_pointer, image_load_quartz2d)
8192 (struct ct_color, init_color_table, free_color_table)
8193 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
8194 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
8195 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
8196 (x_disable_image, x_build_heuristic_mask)
8197 (XBM support, XPM support, PBM support, PNG support, JPEG support)
8198 (TIFF support, GIF support, Ghostscript support): Merge with image
8199 code from xfns.c and macfns.c into image.c.
8200 (syms_of_xfns): Move image related symbols to image.c.
8201 (init_external_image_libraries, init_xfns): Remove; initialization
8202 moved to init_image in image.c.
8203
8204 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
8205 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8206 (x_reference_bitmap, x_create_bitmap_from_data)
8207 (x_create_bitmap_from_file, x_destroy_bitmap)
8208 (x_destroy_all_bitmaps, x_create_bitmap_mask)
8209 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
8210 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
8211 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
8212 (define_image_type, lookup_image_type, valid_image_p)
8213 (image_error, enum image_value_type, struct image_keyword)
8214 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
8215 (make_image, free_image, prepare_image_for_display, image_ascent)
8216 (four_corners_best, image_background, image_background_transparent)
8217 (x_clear_image_1, x_clear_image, x_alloc_image_color)
8218 (make_image_cache, free_image_cache, clear_image_cache)
8219 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
8220 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
8221 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
8222 (struct ct_color, init_color_table, free_color_table)
8223 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
8224 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
8225 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
8226 (x_disable_image, x_build_heuristic_mask)
8227 (XBM support, XPM support, PBM support, PNG support, JPEG support)
8228 (TIFF support, GIF support, Ghostscript support): Merge with image
8229 code from xfns.c and macfns.c into image.c.
8230 (syms_of_xfns): Move image related symbols to image.c.
8231 (init_external_image_libraries, init_xfns): Remove; initialization
8232 moved to init_image in image.c.
8233
8234 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
8235 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8236 (x_reference_bitmap, x_create_bitmap_from_data)
8237 (x_create_bitmap_from_file, x_destroy_bitmap)
8238 (x_destroy_all_bitmaps, x_create_bitmap_mask)
8239 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
8240 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
8241 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
8242 (define_image_type, lookup_image_type, valid_image_p)
8243 (image_error, enum image_value_type, struct image_keyword)
8244 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
8245 (make_image, free_image, prepare_image_for_display, image_ascent)
8246 (four_corners_best, image_background, image_background_transparent)
8247 (x_clear_image_1, x_clear_image, x_alloc_image_color)
8248 (make_image_cache, free_image_cache, clear_image_cache)
8249 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
8250 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
8251 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
8252 (struct ct_color, init_color_table, free_color_table)
8253 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
8254 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
8255 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
8256 (x_disable_image, x_build_heuristic_mask)
8257 (XBM support, XPM support, PBM support, PNG support, JPEG support)
8258 (TIFF support, GIF support, Ghostscript support): Merge with
8259 w32fns.c and macfns.c image code into image.c.
8260 (syms_of_xfns): Move image related symbols to image.c.
8261 (init_xfns): Remove; initialization moved to init_image in image.c.
8262
8263 * lisp.h (syms_of_image, init_image): Add protoypes.
8264 (init_xfns): Remove prototype.
8265
8266 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8267 (x_reference_bitmap, x_create_bitmap_from_data)
8268 (x_create_bitmap_from_file, x_destroy_bitmap)
8269 (x_create_bitmap_mask): Move prototypes from dispextern.h.
8270 (gamma_correct) [MAC_OS]: Add prototype.
8271
8272 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8273 (x_reference_bitmap, x_create_bitmap_from_data)
8274 (x_create_bitmap_from_file, x_destroy_bitmap)
8275 (x_create_bitmap_mask): Move prototypes to dispextern.h.
8276
82772004-03-09 Kenichi Handa <handa@etlken2>
8278
8279 * coding.c (decode_coding_emacs_mule): Handle insufficent source
8280 correctly.
8281
82822004-03-04 Richard M. Stallman <rms@gnu.org>
8283
8284 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
8285
8286 * window.c (Fdisplay_buffer): Doc fix.
8287
8288 * buffer.c (Fpop_to_buffer): Doc fix.
8289
82902004-03-03 Kim F. Storm <storm@cua.dk>
8291
8292 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
8293
82942004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
8295
8296 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
8297
82982004-03-02 Richard M. Stallman <rms@gnu.org>
8299
8300 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
8301
83022004-03-02 Kenichi Handa <handa@m17n.org>
8303
8304 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
8305
83062004-03-02 Kim F. Storm <storm@cua.dk>
8307
8308 * window.h (struct window): New member overlay_arrow_bitmap.
8309
8310 * window.c (make_window): Initialize overlay_arrow_bitmap.
8311
8312 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
8313 implement and integrate multiple overlay arrows with redisplay.
8314 (syms_of_xdisp): DEFVAR_LISP and initialize it.
8315 (last_arrow_position, last_arrow_string): Replace by properties.
8316 (Qlast_arrow_position, Qlast_arrow_string)
8317 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
8318 (syms_of_xdisp): Intern and staticpro them.
8319 (overlay_arrow_string_or_property, update_overlay_arrows)
8320 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
8321 (overlay_arrow_at_row): New functions for multiple overlay arrows.
8322 (redisplay_internal): Use them instead of directly accessing
8323 Voverlay_arrow_position etc. for multiple overlay arrows.
8324 (mark_window_display_accurate): Use update_overlay_arrows.
8325 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
8326 (try_window_id): Use overlay_arrows_changed_p.
8327 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
8328 (display_line): Use overlay_arrow_at_row to check multiple
8329 overlay arrows, and get relevant overlay-arrow-string and
8330 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
8331 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
8332 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
8333
8334 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
8335 (update_window_fringes): Remove unused code.
8336
83372004-03-01 Jason Rumney <jasonr@gnu.org>
8338
8339 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
8340
83412004-03-01 Juanma Barranquero <lektu@terra.es>
8342
8343 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
8344
8345 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
8346
83472004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8348
8349 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
8350 how many colors can be displayed.
8351
83522004-03-01 Kenichi Handa <handa@m17n.org>
8353
8354 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
8355 correctly.
8356
83572004-02-28 Kim F. Storm <storm@cua.dk>
8358
8359 * dispnew.c (update_window): Update header line also if there are
8360 no other changes in window (move code after set_cursor label).
8361
8362 * lisp.h (mark_window_display_accurate): Remove prototype.
8363
8364 * window.c (window_loop, Fforce_window_update): Force mode line
8365 updates by setting prevent_redisplay_optimizations_p and
8366 update_mode_lines.
8367
83682004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8369
8370 * xfns.c (x_window): Fix indentation.
8371
8372 * xterm.c (x_calc_absolute_position): Call x_real_positions
8373 to get WM window sizes and use those to calculate position.
8374 (x_set_offset): Remove code commented out.
8375
83762004-02-28 Miles Bader <miles@gnu.org>
8377
8378 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
8379
83802004-02-28 Kim F. Storm <storm@cua.dk>
8381
8382 * keyboard.c (kbd_buffer_store_event_hold): New function to store
8383 an event into kbd fifo, but with special handling of quit event;
8384 a quit event is saved for later, and further events are discarded
8385 until the saved quit event has been processed.
8386 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
8387 (gen_help_event): Store help event in kbd fifo.
8388 (NREAD_INPUT_EVENTS): Remove.
8389 (read_avail_input): Adapt to new read_socket_hook interface.
8390 Remove allocation and initialization of local input_event buffer,
8391 as read_socket_hook stores events directly in fifo. Allocate and
8392 initialize local hold_quit event to handle postponed quit event
8393 (and store it if set by kbd_buffer_store_event_hold).
8394
8395 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
8396 (gen_help_event): Fix prototype.
8397
8398 * macterm.c (XTread_socket): Remove bufp_r and
8399 numcharsp args. Add hold_quit arg.
8400 Rework to use just one, local, inev input_event. Store inev
8401 directly in fifo using kbd_buffer_store_event_hold.
8402
8403 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
8404 (read_input_waiting): Adapt to new read_socket_hook interface.
8405 Remove allocation and initialization of local input_event buffer,
8406 as read_socket_hook stores events directly in fifo. Allocate and
8407 initialize local hold_quit event to handle postponed quit event
8408 (and store it if set by kbd_buffer_store_event_hold).
8409
8410 * term.c (read_socket_hook): Fix arg list.
8411
8412 * termhooks.h (read_socket_hook): Fix prototype.
8413
8414 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
8415 numcharsp args. Add hold_quit arg.
8416 Rework to use just one, local, inev input_event. Store inev
8417 directly in fifo using kbd_buffer_store_event_hold.
8418
8419 * w32inevt.h (w32_console_mouse_position): Fix prototype.
8420
8421 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
8422 Add hold_quit arg. Rework to use just one, local, inev
8423 input_event. Store inev directly in fifo using
8424 kbd_buffer_store_event_hold. Update count in one place.
8425 Postpone call to gen_help_event until inev is stored; use new
8426 local do_help for this.
8427 Remove local emacs_event in handing of ButtonPress event; just use
8428 inev instead (so no reason to copy it later).
8429
8430 * xsmfns.c (x_session_check_input): Remove numchars arg.
8431
8432 * xterm.c (x_focus_changed, x_detect_focus_change):
8433 Remove numchars arg. Always store event into bufp arg.
8434 Return nothing. Callers changed accordingly.
8435 (glyph_rect): Simplify.
8436 (STORE_KEYSYM_FOR_DEBUG): New macro.
8437 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
8438 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
8439 (current_hold_quit) [USE_GTK]: Add.
8440 (event_handler_gdk): Adapt to new handle_one_xevent.
8441 (handle_one_xevent): Remove bufp_r and numcharsp args.
8442 Add hold_quit arg. Rework to use just one, local, inev
8443 input_event. Store inev directly in fifo using
8444 kbd_buffer_store_event_hold. Update count in one place.
8445 Postpone call to gen_help_event until inev is stored; use new
8446 local do_help for this.
8447 Simplify handling of keysyms (consolidate common code). Fix bug
8448 where count was updated with nchars instead of nbytes.
8449 Remove local emacs_event in handing of ButtonPress event; just use
8450 inev instead (so no reason to copy it later).
8451 Remove `out' label. Rename label `ret' to `done'; add various
8452 `goto done' to clarify code flow in deeply nested blocks.
8453 (x_dispatch_event): Simplify as handle_one_xevent now calls
8454 kbd_buffer_store_event itself.
8455 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
8456 arg. Call handle_one_xevent with new arglist. Store event from
8457 x_session_check_input in fifo.
8458 [USE_GTK]: Setup current_hold_quit.
8459 Decrement handling_signal before unblocking input.
8460 (x_initialize) [USE_GTK]: Initialize current_count.
8461
8462 * xterm.h (x_session_check_input): Fix prototype.
8463
84642004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8465
8466 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
8467
8468 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
8469 macgui.h).
8470
8471 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
8472
8473 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
8474 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
8475 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
8476 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
8477 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
8478 (Bitmap): Remove typedef.
8479 (Pixmap): Change int to GWorldPtr.
8480
8481 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
8482
8483 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
8484 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
8485 New #define to extract 16-bit depth color components from unsigned
8486 long representation.
8487 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
8488 colors used for masks.
8489 (struct mac_display_info): Add color_p. Remove n_cbits.
8490
8491 * macfns.c: Include sys/types.h and sys/stat.h.
8492 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
8493 Include QuickTime/QuickTime.h.
8494 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
8495 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
8496 functions defined in macterm.c.
8497 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
8498 (ZPixmap): New #define for compatibility with xfns.c.
8499 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
8500 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
8501 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
8502 New functions.
8503 (four_corners_best, x_create_x_image_and_pixmap)
8504 (x_destroy_x_image, unwind_create_frame, x_disable_image)
8505 (x_edge_detection, init_color_table, colors_in_color_table)
8506 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
8507 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
8508 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
8509 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
8510 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
8511 long mixup.
8512 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
8513 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
8514 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
8515 (x_set_cursor_type, Fxw_color_values, valid_image_p)
8516 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
8517 (x_alloc_image_color, clear_image_cache, lookup_image)
8518 (x_find_image_file, xbm_read_bitmap_file_data)
8519 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
8520 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
8521 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
8522 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
8523 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
8524 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
8525 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
8526 #if 0.
8527 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
8528 #if 0. Free white_relief.gc and black_relief.gc.
8529 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
8530 New functions (from xfns.c).
8531 (Fx_create_frame): Record unwind_create_frame.
8532 (Fxw_display_color_p): Use dpyinfo->color_p.
8533 (Fx_display_grayscale_p, Fx_display_planes): Don't use
8534 dpyinfo->n_cbits.
8535 (Fx_display_color_cells): Use dpyinfo->n_planes;
8536 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
8537 (Qheuristic, cross_disabled_images, emboss_matrix)
8538 (laplace_matrix): New variables (from xfns.c).
8539 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
8540 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
8541 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
8542 (image_background_transparent): New function (from xfns.c).
8543 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
8544 (image_load_quicktime): Add declaration.
8545 [MAC_OSX] (image_load_quartz2d): Likewise.
8546 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
8547 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
8548 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
8549 (xbm_load_image_from_file, x_laplace_read_row)
8550 (x_laplace_write_row, pbm_read_file): Remove functions.
8551 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
8552 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
8553 (colors_in_color_table): Sync with xfns.c (although not used).
8554 (lookup_rgb_color): Don't lookup color table. Just do gamma
8555 correction.
8556 (COLOR_INTENSITY): New #define (from xfns.c).
8557 (x_disable_image): New function (from xfns.c).
8558 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
8559 (x_build_heuristic_mask): Sync with xfns.c.
8560 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
8561 (HAVE_PBM): Remove #ifdef.
8562 (pbm_load): Sync with xfns.c. Set img->width and img->height
8563 before IMAGE_BACKGROUND.
8564 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
8565 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
8566 Don't enclose with #if HAVE_PNG.
8567 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
8568 symbol _CGImageCreateWithPNGDataProvider is defined.
8569 Otherwise use image_load_quicktime.
8570 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
8571 [HAVE_PNG] (png_load): Sync with xfns.c.
8572 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
8573 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
8574 HAVE_JPEG.
8575 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
8576 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
8577 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
8578 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
8579 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
8580 (tiff_image_p, tiff_load): Don't enclose declarations with #if
8581 HAVE_TIFF.
8582 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
8583 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
8584 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
8585 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
8586 New functions (from xfns.c).
8587 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
8588 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
8589 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
8590 Don't enclose with #if HAVE_GIF.
8591 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
8592 animated gif. Otherwise use image_load_quicktime.
8593 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
8594 gif_DrawText to avoid conflict with QuickdrawText.h.
8595 [HAVE_GIF] (gif_load): Sync with xfns.c.
8596 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
8597 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
8598 Ghostscript is not supported yet).
8599 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
8600 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
8601 cross_disabled_images (from xfns.c). Remove #if 0 for supported
8602 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
8603 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
8604 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
8605 HAVE_PNG. Call EnterMovies to support animated gifs.
8606 Call init_image_func_pointer to bind a symbol
8607 _CGImageCreateWithPNGDataProvider if it is defined.
8608
8609 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
8610 (x_draw_bar_cursor): Sync declaration with xterm.c.
8611 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
8612 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
8613 graphics).
8614 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
8615 (mac_draw_line_to_pixmap, XCreatePixmap)
8616 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
8617 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
8618 New functions.
8619 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
8620 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
8621 Cast bits to char *.
8622 (reflect_byte): New function (from w32fns.c).
8623 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
8624 due to byte alignment.
8625 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
8626 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
8627 (XSetForeground): Remove static (now used in macfns.c).
8628 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
8629 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
8630 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
8631 (x_draw_glyph_string_box, x_draw_image_foreground)
8632 (x_draw_image_foreground_1, x_draw_image_glyph_string)
8633 (x_draw_stretch_glyph_string, x_draw_glyph_string)
8634 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
8635 Sync with xterm.c.
8636 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
8637 than the xterm.c version when a strictly horizontal or vertical
8638 line is drawn.
8639 (XTset_terminal_window): Add static.
8640 (x_make_frame_visible): Add UNBLOCK_INPUT.
8641 (x_free_frame_resources): New funcion (from xterm.c).
8642 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
8643 occurs in tool bar area.
8644 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
8645 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
8646 Initialize image cache.
8647 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
8648 Enclose unused functions with #if 0.
8649 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
8650 (decode_mac_font_name): New function to apply code conversions
8651 from a mac font name to an XLFD font name according to its script code.
8652 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
8653 font name to a mac font name according to REGISTRY and ENCODING fields.
8654 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
8655 whose name starts with `.'.
8656 (init_font_name_table): Use decode_mac_font_name. Add both
8657 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
8658 of a font is smJapanese.
8659 (mac_do_list_fonts): New function to list fonts that match a given
8660 pattern.
8661 (x_list_fonts, XLoadQueryFont): Use it.
8662 (XLoadQueryFont): Set rbearing field for each variable width
8663 character to avoid needless redraw.
8664 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
8665
86662004-02-26 Kim F. Storm <storm@cua.dk>
8667
8668 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
8669 as read_socket_hook handler on X aborts if buffer is too small
8670 and W32 handler doesn't always check buffer limit.
8671
8672 * xdisp.c (handle_single_display_prop): Handle left-fringe and
8673 right-fringe similar to a display margin image. Specifically,
8674 the characters having the fringe prop are no longer shown, and
8675 we use IT_IMAGE/next_element_from_image with image_id = -1 to
8676 do this. Set fringe bitmap face_id in it->face_id.
8677 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
8678 still realize it->face (i.e. the fringe bitmap face).
8679
86802004-02-25 Miles Bader <miles@gnu.org>
8681
8682 * xdisp.c (check_it): Check string/string_pos consistency.
8683 (init_iterator): Initialize string-related fields properly.
8684
86852004-02-11 Miles Bader <miles@gnu.org>
8686
8687 * xdisp.c (produce_image_glyph): Force negative descents to zero.
8688
86892004-02-10 Miles Bader <miles@gnu.org>
8690
8691 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
8692 BLOCK_INPUT can be nested, so it doesn't make much sense.
8693
86942004-02-24 Michael Mauger <mmaug@yahoo.com>
8695
8696 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
8697 (xbm_read_bitmap_data): Use unsigned char for image data.
8698
86992004-02-23 Luc Teirlinck <teirllm@auburn.edu>
8700
8701 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
8702
87032004-02-22 Jason Rumney <jasonr@gnu.org>
8704
8705 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
8706 correctly over other bitmaps.
8707
87082004-02-21 Eli Zaretskii <eliz@gnu.org>
8709
8710 * emacs.c (USAGE1): Split into two halves.
8711 (USAGE2): Second half of the old USAGE1.
8712 (USAGE3): Rename from USAGE2.
8713 (USAGE4): Rename from USAGE3.
8714
87152004-02-21 Juri Linkov <juri@jurta.org>
8716
8717 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
8718 Fix --multibyte. Move --help, --version to USAGE2. Add alias
8719 --file. Fix -f, -l. Sort options. Untabify.
8720 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
8721
87222004-02-19 Luc Teirlinck <teirllm@auburn.edu>
8723
8724 * category.c (Fdefine_category, Fcategory_docstring)
8725 (Fget_unused_category, Fset_category_table)
8726 (Fcategory_set_mnemonics): Doc fixes.
8727
87282004-02-20 Kim F. Storm <storm@cua.dk>
8729
8730 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
8731 The following changes are relative to the 2004-01-21 revision.
8732 (NREAD_INPUT_EVENTS): Define as max number of input events to read
8733 in one call to read_socket_hook. Value is 8.
8734 (read_avail_input): Separate and rework handling of read_socket_hook
8735 and non-read_socket_hook cases. Use smaller input_event buffer
8736 in read_socket_hook case, and repeat if full buffer is read.
8737 Use new local variable 'discard' to skip input after C-g.
8738 In non-read_socket_hook case, just use a single input_event, and
8739 call kbd_buffer_store_event on the fly for each character.
8740
87412004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
8742
8743 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
8744 Remove unused `gu' alternative.
8745
87462004-02-19 Andreas Schwab <schwab@suse.de>
8747
8748 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
8749 warning.
8750
87512004-02-18 Kim F. Storm <storm@cua.dk>
8752
8753 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
8754 Fix last change.
8755
87562004-02-17 Kim F. Storm <storm@cua.dk>
8757
8758 * xdisp.c (fast_find_position): Fix return value of new version;
8759 it was inverted compared to the 21.1 version.
8760 (get_window_cursor_type): Don't look at glyph if NULL.
8761 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
8762
8763 * keyboard.c: Rework previous change; it didn't consider that the
8764 buf array was allocated on the stack.
8765 (prev_read): Remove variable.
8766 (read_avail_input_buf): New static event buffer array.
8767 (in_read_avail_input): New static variable to handle re-entrancy.
8768 (read_avail_input): Change buf to pinter to read_avail_input_buf.
8769 Use in_read_avail_input to handle re-entrance; when re-entered,
8770 fully initialize and use tmp_buf array instead of read_avail_input_buf.
8771 Do not initialize read_avail_input_buf in full here; instead assume it
8772 is always cleared on entry. To ensure that, we clear (just) the
8773 entries that were used before we return.
8774 (init_keyboard): Initialize read_avail_input_buf here.
8775
87762004-02-16 Jesper Harder <harder@ifa.au.dk>
8777
8778 * cmds.c (Fend_of_line): Doc fix.
8779
87802004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
8781
8782 * keyboard.c (prev_read): New static variable.
8783 (read_avail_input): Use it to zero out only those slots in buf[]
8784 that were used last time we were called.
8785
87862004-02-16 Eli Zaretskii <eliz@gnu.org>
8787
8788 * Makefile.in (obj): Move fringe.o from here...
8789 (XOBJ, MAC_OBJ): ...to here.
8790
87912004-02-16 Stephen Eglen <stephen@gnu.org>
8792
8793 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
8794
87952004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
8796
8797 * data.c (Fbyteorder):
8798 * fringe.c (Fdefine_fringe_bitmap):
8799 * xdisp.c (handle_single_display_prop):
8800 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
8801
88022004-02-16 Jason Rumney <jasonr@gnu.org>
8803
8804 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
8805
88062004-02-15 Steven Tamm <steventamm@mac.com>
8807
8808 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
8809 controlling emulation of a three button mouse with option and
8810 command keys.
8811 (Qreverse, mac_get_enumlated_btn): Handle the emulation.
8812 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
8813
88142004-02-15 Kim F. Storm <storm@cua.dk>
8815
8816 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
8817
8818 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
8819 Perform byte-swapping.
8820
88212004-02-14 Kim F. Storm <storm@cua.dk>
8822
8823 * dispextern.h (struct draw_fringe_bitmap_params): Change member
8824 bits from char to short to facilitate wider bitmaps.
8825 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
8826 member.
8827
8828 * fringe.c (struct fringe_bitmap): Change member bits from char to
8829 short to facilitate 16 bits wide bitmaps. Modify all standard
8830 bitmaps accordingly.
8831 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
8832 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
8833 (draw_fringe_bitmap): Ditto.
8834 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
8835 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
8836 handle up to 16 bits wide bitmaps.
8837 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
8838 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
8839
8840 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
8841 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
8842 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
8843
8844 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
8845 so it is no longer necessary to expand them here.
8846
8847 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
8848
88492004-02-12 Kim F. Storm <storm@cua.dk>
8850
8851 * window.c (Fwindow_fringes): Doc fix.
8852
88532004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8854
8855 * xselect.c (x_get_foreign_selection): Add new optional parameter
8856 time_stamp.
8857 (Fx_get_selection_internal): Ditto, pass time_stamp to
8858 x_get_foreign_selection.
8859
8860 * data.c (Fbyteorder): New function.
8861
88622004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8863
8864 * atimer.c: Move include stdio.h to same place as in other files.
8865
8866 * region-cache.c: Ditto.
8867
8868 * sysdep.c: Ditto.
8869
8870 * xfaces.c: Ditto.
8871
88722004-02-09 Sam Steingold <sds@gnu.org>
8873
8874 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
8875
88762004-02-09 Kim F. Storm <storm@cua.dk>
8877
8878 * fringe.c: New file. Move original fringe related declarations
8879 and code from dispextern.h and xdisp.c here.
8880 Rework code to support user defined fringe bitmaps, redefining
8881 standard bitmaps, ability to overlay user defined bitmap with
8882 overlay arrow bitmap, and add faces to bitmaps.
8883 (Voverflow_newline_into_fringe): Declare here.
8884 (enum fringe_bitmap_align): New enum.
8885 (..._bits): All bitmaps are now defined without bitswapping; that
8886 is now done in init_fringe_once (if necessary).
8887 (standard_bitmaps): New array with specifications for the
8888 standard fringe bitmaps.
8889 (fringe_faces): New array.
8890 (valid_fringe_bitmap_id_p): New function.
8891 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
8892 (draw_fringe_bitmap): New function which draws fringe bitmap,
8893 possibly overlaying bitmap with cursor in right fringe or the
8894 overlay arrow in the left fringe.
8895 (update_window_fringes): Do not handle overlay arrow here.
8896 Compare and copy fringe bitmap faces.
8897 (init_fringe_bitmap): New function.
8898 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
8899 define and destroy user defined fringe bitmaps.
8900 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
8901 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
8902 (syms_of_fringe): New function. Defsubr new DEFUNs.
8903 DEFVAR_LISP Voverflow_newline_into_fringe.
8904 (init_fringe_once, init_fringe): New functions.
8905 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
8906
8907 * Makefile.in (obj): Add fringe.o.
8908 (fringe.o): New dependencies.
8909
8910 * dispextern.h (FRINGE_ID_BITS): New definition for number of
8911 bits allocated to hold a fringe number. Increase number of bits
8912 from 4 to 8 to allow user defined fringe bitmaps.
8913 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
8914 left_user_fringe_face_id, right_user_fringe_bitmap,
8915 right_user_fringe_face_id.
8916 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
8917 Move to new file fringe.c.
8918 (MAX_FRINGE_BITMAPS): Define here.
8919 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
8920 and overlay_p. Change member which to int.
8921 (struct redisplay_interface): New members define_fringe_bitmap
8922 and destroy_fringe_bitmap.
8923 (valid_fringe_bitmap_id_p): Add prototype.
8924 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
8925
8926 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
8927 arrows.
8928 (update_frame): Do flush_display if force_flush_display_p to
8929 ensure display (specifically fringes) are updated in a timely
8930 manner when resizing the frame by dragging the mouse.
8931 (update_window_line): Update row if overlay arrow changed.
8932 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
8933 or overlay arrow changed.
8934
8935 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
8936 syms_of_fringe, and init_fringe.
8937
8938 * frame.h (struct frame): New member force_flush_display_p.
8939
8940 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
8941 Add prototypes.
8942
8943 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
8944 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
8945 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
8946 Use cursor color for displaying cursor in fringe.
8947 (x_redisplay_interface): Add null handlers for
8948 define_fringe_bitmap and destroy_fringe_bitmap functions.
8949
8950 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
8951 xterm.c to handle overlayed fringe bitmaps and to use cursor color
8952 for displaying cursor in fringe.
8953 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
8954 specific functions to define and destroy fringe bitmaps in fringe_bmp.
8955 (w32_redisplay_interface): Add them to redisplay_interface.
8956 (w32_term_init): Call w32_init_fringe instead of explicitly
8957 defining fringe bitmaps in fringe_bmp array.
8958 (x_delete_display): Call w32_reset_fringes instead of explicitly
8959 destroying fringe bitmaps in fringe_bmp array.
8960
8961 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
8962 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
8963 (continued_bits, continuation_bits, ov_bits, first_line_bits)
8964 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
8965 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
8966 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
8967 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
8968 Move fringe handling vars and code to new file fringe.c.
8969 (handle_display_prop): Handle left-fringe and right-fringe
8970 display properties; store user fringe bitmaps in iterator.
8971 (move_it_in_display_line_to): Handle cursor in fringe at eob.
8972 (clear_garbaged_frames): Set force_flush_display_p if resized.
8973 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
8974 (display_line): Handle cursor in fringe at eob.
8975 (display_line): Set row user fringe bitmaps from iterator.
8976
8977 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
8978 Use cursor color for displaying cursor in fringe.
8979 (x_redisplay_interface): Add null handlers for
8980 define_fringe_bitmap and destroy_fringe_bitmap functions.
8981
89822004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8983
8984 * macfns.c (Fx_change_window_property): Make doc string and
8985 parameters same as for X version.
8986
8987 * w32fns.c (Fx_change_window_property): Ditto.
8988
89892004-02-07 Kim F. Storm <storm@cua.dk>
8990
8991 * xdisp.c (hscroll_window_tree): Position cursor near to right
8992 margin in hscrolled window when jumping to end of line (rather
8993 than centering cursor).
8994
8995 * process.c (wait_reading_process_input): Don't do adaptive read
8996 buffering if waiting for a specific process.
8997
89982004-02-05 Luc Teirlinck <teirllm@auburn.edu>
8999
9000 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
9001 (Fread_minibuffer, Feval_minibuffer)
9002 (Fread_string, Fread_no_blanks_input)
9003 (Fcompleting_read): Doc fixes.
9004 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
9005 completion-regexp-list. Define Qcase_fold_search and staticpro it.
9006 (read_minibuf): Fix initial comment.
9007 (Ftry_completion, Fall_completions, Ftest_completion): Bind
9008 case-fold-search to the value of completion-ignore-case when
9009 checking completion-regexp-list.
9010 (Fdisplay_completion_list): Make it handle arguments that are
9011 symbols. Doc fix.
9012
90132004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9014
9015 * xterm.h: Add declaration of free_frame_menubar.
9016
9017 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
9018 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
9019 (Fx_change_window_property): Add declaration of parameters type and
9020 format. Remove unused variable cons.
9021
9022 * xselect.c: Include stdio,h.
9023
90242004-02-05 Kenichi Handa <handa@m17n.org>
9025
9026 * fns.c (Fset_char_table_range): Fix previous change.
9027
9028 * buffer.c (Fset_buffer_multibyte): Fix docstring.
9029
90302004-02-04 Luc Teirlinck <teirllm@auburn.edu>
9031
9032 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
9033
90342004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
9035
9036 * keymap.c (Vmouse_events): Rename from Vmenu_events.
9037 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
9038
90392004-02-04 Kenichi Handa <handa@m17n.org>
9040
9041 * fns.c (Fset_char_table_range): Handle charsets ascii,
9042 eight-bit-control, and eight-bit-graphic correctly.
9043
90442004-02-03 Jason Rumney <jasonr@gnu.org>
9045
9046 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
9047
9048 * w32fns.c (x_to_w32_font): Likewise.
9049
90502004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9051
9052 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
9053 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
9054
9055 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
9056 ClientMessages.
9057
9058 * xselect.c: Include termhooks.h and X11/Xproto.h
9059 (x_check_property_data, x_fill_property_data)
9060 (x_property_data_to_lisp, mouse_position_for_drop)
9061 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
9062 (Fx_send_client_event): Move here from xfns.c.
9063 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
9064
9065 * xfns.c (x-send-client-message): Move to xselect.c
9066 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
9067 OUTER_P.
9068 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
9069 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
9070 if vector_ret_p is true.
9071 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
9072
90732004-02-02 Eli Zaretskii <eliz@gnu.org>
9074
9075 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
9076 basename of FILE relative to it, not FILE itself.
9077
90782004-02-02 Kenichi Handa <handa@m17n.org>
9079
9080 * coding.c (coding_restore_composition): Check invalid
9081 composition data more rigidly.
9082
90832004-01-30 Luc Teirlinck <teirllm@auburn.edu>
9084
9085 * fileio.c (Fread_file_name_internal): Correctly handle the case
9086 where insert-default-directory is nil.
9087 (Fread_file_name): Always return an empty string if the user exits
9088 with an empty minibuffer. Adapt the docstring accordingly.
9089 (syms_of_fileio): Adapt the docstring of insert-default-directory
9090 to the change in Fread_file_name.
9091
90922004-01-29 Eli Zaretskii <eliz@gnu.org>
9093
9094 * alloca.c [!alloca]: Fix the prototype for xfree.
9095
90962004-01-29 Kenichi Handa <handa@m17n.org>
9097
9098 * fns.c (string_char_to_byte): Optimize for ASCII only string.
9099 (string_byte_to_char): Likewise.
9100
91012004-01-28 Peter Runestig <peter@runestig.com>
9102
9103 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
9104
91052004-01-27 Steven Tamm <steventamm@mac.com>
9106
9107 * unexmacosx.c (unexec_copy): Do not copy more than was
9108 requested to prevent overwriting during unexec.
9109
91102004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9111
9112 * process.c (sigchld_handler): Add comment about not calling malloc.
9113
9114 * process.h: Add extern to synch_process_termsig.
9115
91162004-01-27 Steven Tamm <steventamm@mac.com>
9117
9118 * macterm.c (make_mac_frame, make_mac_terminal_frame):
9119 Move setting of scroll bars from make_mac_frame to
9120 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
9121
91222004-01-26 Richard M. Stallman <rms@gnu.org>
9123
9124 * search.c (Freplace_match): Handle nonexistent
9125 back-references properly.
9126
91272004-01-03 Richard M. Stallman <rms@gnu.org>
9128
9129 * window.c (decode_any_window): New function.
9130 (Fwindow_height, Fwindow_width, Fwindow_edges)
9131 (Fwindow_pixel_edges, Fwindow_inside_edges)
9132 (Fwindow_inside_pixel_edges): Use decode_any_window.
9133
91342004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9135
9136 * process.h: synch_process_termsig new variable.
9137
9138 * callproc.c: Define synch_process_termsig.
9139 (Fcall_process): Initiate synch_process_termsig to zero and
9140 check if non-zero and get signal name after subprocess has ended.
9141
9142 * process.c (sigchld_handler): Set synch_process_termsig
9143 if terminated by a signal. synch_process_death setting removed.
9144
9145 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
9146
91472004-01-26 Andreas Schwab <schwab@suse.de>
9148
9149 * print.c (print_preprocess): Declare size as EMACS_INT to not
9150 lose bits.
9151 (print_object): Likewise.
9152 * alloc.c (Fpurecopy): Likewise.
9153
91542004-01-25 Luc Teirlinck <teirllm@auburn.edu>
9155
9156 * window.c (Fwindow_minibuffer_p): Doc fix.
9157
91582004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
9159
9160 * editfns.c (Fformat): Make both passes accept the same set of flags.
9161
91622004-01-23 Kenichi Handa <handa@m17n.org>
9163
9164 * fns.c (Fmd5): If OBJECT is a buffer different from the current
9165 one, set buffer to OBJECT temporarily.
9166
91672004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
9168
9169 * keyboard.c (kbd_buffer_gcpro): Remove.
9170 (kbd_buffer_store_event, clear_event, Fdiscard_input)
9171 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
9172 Don't initialize and/or maintain the variable any more. It was made
9173 redundant by my commit of 2003-06-15.
9174
9175 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
9176
91772004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9178
9179 * lisp.h: Add undef DECL_ALIGN.
9180
91812004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
9182
9183 * process.c (wait_reading_process_input) [SYNC_INPUT]:
9184 Check interrupt_input_pending explicitly.
9185
9186 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
9187
9188 * keyboard.c (handle_async_input): New fun,
9189 extracted from input_available_signal.
9190 (input_available_signal, reinvoke_input_signal): Use it.
9191
91922004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
9193
9194 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
9195
9196 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
9197 manipulation macros for when tags are in the lower bits.
9198 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
9199 (DECL_ALIGN): New macro.
9200 (DEFUN): Use it.
9201
9202 * lisp.h [ENABLE_CHECKING]: Don't force union type.
9203
9204 * s/darwin.h (__attribute__): Remove outdated workaround.
9205
9206 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
9207
9208 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
9209 Don't check range of malloc address.
9210 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
9211
9212 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
9213
9214 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
9215
92162004-01-19 Kenichi Handa <handa@m17n.org>
9217
9218 * fontset.c (fontset_font_pattern): Fix previous change.
9219
92202004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
9221
9222 * xdisp.c (Voverflow_newline_into_fringe)
9223 (move_it_in_display_line_to, redisplay_internal)
9224 (update_window_fringes, redisplay_window, display_line, window):
9225 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
9226 that it compiles without a window-system.
9227 * dispnew.c (direct_output_for_insert, update_window): Likewise.
9228
92292004-01-16 Kim F. Storm <storm@cua.dk>
9230
9231 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
9232
9233 * buffer.c (init_buffer_once): Set buffer_defaults and
9234 buffer_local_flags for indicate_buffer_boundaries.
9235 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
9236 default- variable for it.
9237
9238 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
9239 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
9240 New members exact_window_width_line_p and cursor_in_fringe_p for
9241 overflowing newlines into right fringe.
9242 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
9243 and indicate_bottom_line_p for buffer boundaries and scrolling.
9244 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
9245 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
9246 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
9247 and HOLLOW_SQUARE_BITMAP.
9248 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
9249 Add prototypes.
9250
9251 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
9252 instead of related indicator fields.
9253 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
9254 (direct_output_for_insert): Handle exact width lines like
9255 contined lines. Call update_window_fringes.
9256 (update_window): Call update_window_fringes.
9257 (scrolling_window): Don't skip desired rows with changed bitmaps.
9258 Check if fringe bitmaps changes when assigning scrolled rows.
9259
9260 * xdisp.c (Voverflow_newline_into_fringe): New variable.
9261 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
9262 (move_it_in_display_line_to): Overflow newline into fringe for
9263 rows that are exactly as wide as the window.
9264 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
9265 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
9266 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
9267 (fringe_bitmaps): Add new bitmaps.
9268 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
9269 Select proper bitmap for cursor in fringe when appropriate.
9270 Handle alignment of bitmap to top or bottom of row.
9271 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
9272 done by update_window_fringes.
9273 (update_window_fringes, draw_window_fringes): New functions.
9274 (redisplay_internal): Call update_window_fringes in case only
9275 cursor row is updated.
9276 (redisplay_window): Call update_window_fringes.
9277 Explicitly call draw_window_fringes if redisplay was done using
9278 the current matrix or the overlay arrow is in the window.
9279 (try_window_reusing_current_matrix): Mark scrolled rows for
9280 fringe update (to update buffer-boundaries / scrolling icons).
9281 (find_last_unchanged_at_beg_row): Handle exact width lines line
9282 continued lines.
9283 (display_line): Overflow newline into fringe for rows that are
9284 exactly as wide as the window. Don't append space for newline
9285 in this case.
9286 (notice_overwritten_cursor): Explicitly clear cursor bitmap
9287 in fringe as if it had been overwritten.
9288 (erase_phys_cursor): Erase cursor bitmap in fringe.
9289 (syms_of_xdisp): Mark show-trailing-whitespace and
9290 void-text-area-pointer as user options.
9291 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
9292
9293 * xterm.c (x_update_window_end): Call draw_window_fringes.
9294 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
9295 in row instead of actually drawing fringe bitmaps.
9296 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
9297 (x_draw_window_cursor): Draw cursor in fringe.
9298
9299 * w32term.c (x_update_window_end): Call draw_window_fringes.
9300 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
9301 in row instead of actually drawing fringe bitmaps.
9302 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
9303 (w32_draw_window_cursor): Draw cursor in fringe.
9304
9305 * macterm.c (x_update_window_end): Call draw_window_fringes.
9306 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
9307 in row instead of actually drawing fringe bitmaps.
9308 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
9309 (mac_draw_window_cursor): Draw cursor in fringe.
9310
93112004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9312
9313 * xterm.c (handle_one_xevent): Don't handle characters that are part
9314 of an old style (XLookupString) compose sequence.
9315
93162004-01-15 Kenichi Handa <handa@m17n.org>
9317
9318 * search.c (Freplace_match): Use make_multibyte_string or
9319 make_unibyte_string according to the buffer multibyteness.
9320
93212004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
9322
9323 * alloc.c (struct interval_block, struct string_block)
9324 (struct symbol_block, struct marker_block, live_string_p)
9325 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
9326 Better preserve alignment for objects in blocks.
9327 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
9328
9329 * lread.c (defvar_per_buffer): Remove dead declaration.
9330
9331 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
9332 space size.
9333
93342004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9335
9336 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
9337 if a key press should pop down. Only pop down if a key is pressed
9338 outside the menu/dialog.
9339 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
9340 popup_get_selection.
9341 (create_and_show_dialog): Pass 1 for down_on_keypress to
9342 popup_get_selection.
9343
93442004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9345
9346 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
9347 BLOCK/UNBLOCK_INPUT.
9348
93492004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9350
9351 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
9352 specified.
9353
93542004-01-08 Kenichi Handa <handa@m17n.org>
9355
9356 * editfns.c (Fformat): Fix '&' to '&&'.
9357
93582004-01-08 Andreas Schwab <schwab@suse.de>
9359
9360 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
9361 size if PSEUDOVECTOR_FLAG is set.
9362
93632004-01-07 Kenichi Handa <handa@m17n.org>
9364
9365 * charset.c (Fdeclare_equiv_charset): Fix docstring.
9366
9367 * fontset.c (fontset_ref_via_base): Fix previous change.
9368
93692004-01-07 Kim F. Storm <storm@cua.dk>
9370
9371 * process.c (read_process_output): Only activate adaptive
9372 buffering if we read less than 256 bytes at a time.
9373
93742004-01-06 Kim F. Storm <storm@cua.dk>
9375
9376 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
9377 object and image object. Return glyph width and height.
9378 (mode_line_string, marginal_area_string): Ditto.
9379
9380 * dispextern.h (buffer_posn_from_coords, mode_line_string)
9381 (marginal_area_string): Fix prototypes.
9382
9383 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
9384 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
9385 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
9386
9387 * keyboard.c (make_lispy_position): Use modified mode_line_string,
9388 buffer_posn_from_coords, and marginal_area_string functions to
9389 include both string object and image object in the lispy position.
9390 Also add actual glyph width and height to position.
9391 (read_key_sequence): Use real buffer position from mouse
9392 event to find keymap property even when click is in marginal area.
9393
9394 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
9395 mode_line_string and marginal_area_string functions to handle
9396 both string object and image object properties.
9397
93982004-01-06 Andreas Schwab <schwab@suse.de>
9399
9400 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
9401 character.
9402
94032004-01-02 Andreas Schwab <schwab@suse.de>
9404
9405 * macterm.c (emacs_options, x_initialized, same_x_server):
9406 Remove unused (and duplicated) definitions.
9407
94082004-01-02 Kim F. Storm <storm@cua.dk>
9409
9410 * process.h (struct Lisp_Process): New members for adaptive read
9411 buffering: adaptive_read_buffering, read_output_delay, and
9412 read_output_skip.
9413
9414 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
9415 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
9416 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
9417 (process_output_delay_count, process_output_skip): New vars.
9418 (Vprocess_adaptive_read_buffering): New variable.
9419 (make_process): Initialize adaptive read buffering members.
9420 (Fstart_process): Set adaptive_read_buffering member.
9421 (deactivate_process): Cleanup adaptive read buffering.
9422 (wait_reading_process_input): Temporarily omit delayed
9423 subprocesses from the set of file descriptors to read from;
9424 adjust the select timeout if we skipped any subprocesses.
9425 (read_process_output): Increase adaptive read buffering delay if
9426 we read less than a full buffer; reduce delay when we read a
9427 full buffer.
9428 (send_process): Simplify using local Lisp_Process var.
9429 Reset adaptive read buffering delay after write.
9430 (init_process): Initialize process_output_delay_count and
9431 process_output_skip.
9432 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
9433
94342004-01-01 Jason Rumney <jasonr@gnu.org>
9435
9436 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
9437
94382003-12-30 Luc Teirlinck <teirllm@auburn.edu>
9439
9440 * print.c (Ferror_message_string): Add hyperlink in the docstring
9441 to the definition of `signal' in the Elisp manual.
9442 * eval.c (Fsignal): Ditto.
9443
94442003-12-29 James Clark <jjc@jclark.com>
9445
9446 * fns.c (internal_equal): Return t for two NaN arguments.
9447
94482003-12-29 Richard M. Stallman <rms@gnu.org>
9449
9450 * data.c (store_symval_forwarding): Handle setting
9451 default-fill-column, etc., by changing the value in
9452 buffers that use the default.
9453
9454 * minibuf.c (Fset_minibuffer_window): Doc fix.
9455
9456 * fileio.c (choose_write_coding_system): Ignore auto_saving
9457 if using the visited file for auto saves.
9458 (Fwrite_region): Don't update SAVE_MODIFF
9459 if auto-saving in visited file.
9460
94612003-12-29 Kenichi Handa <handa@m17n.org>
9462
9463 * dispextern.h (face_font_available_p): Extern it.
9464
9465 * fontset.c (Voverriding_fontspec_alist): New variable.
9466 (lookup_overriding_fontspec): New function.
9467 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
9468 (fontset_font_pattern): Likewise.
9469 (regulalize_fontname): New function.
9470 (Fset_fontset_font): Call regulalize_fontname.
9471 (Fset_overriding_fontspec_internal): New function.
9472 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
9473 Defsubr Sset_overriding_fontspec_internal.
9474
9475 * xfaces.c (face_font_available_p): New function.
9476
94772003-12-28 Richard M. Stallman <rms@gnu.org>
9478
9479 * buffer.c (Fother_buffer): Don't crash if BUF is nil
9480 or if its name is nil.
9481
9482 * buffer.c (Fkill_buffer): Don't delete auto-save file
9483 if it's the same as the visited file.
9484
94852003-12-28 Luc Teirlinck <teirllm@auburn.edu>
9486
9487 * coding.c (Fcheck_coding_system): Doc fix.
9488
94892003-12-28 Kim F. Storm <storm@cua.dk>
9490
9491 * Makefile.in (eval.o): Depend on dispextern.h.
9492
9493 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
9494 image glyph using image's ascent.
9495 (mode_line_string): Return image glyph as object clicked on.
9496 Adjust y0 for image glyph using image's ascent.
9497
9498 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
9499 (struct glyph): New members, ascent and descent. Used to save
9500 this glyph's ascent and descent, instead of having.
9501 (struct glyph): Declare member face_id using FACE_ID_BITS.
9502 (find_hot_spot): Add prototype.
9503
9504 * keyboard.c (Qimage): Remove extern (now in lisp.h).
9505 (QCmap): Declare extern.
9506 (make_lispy_position): When position is inside image hot-spot,
9507 use hot-spot element's id as posn element.
9508
9509 * lisp.h (IMAGEP): New macro to test for image object type.
9510 (Qimage): Declare extern.
9511
9512 * macfns.c (Qimage): Remove extern (now in lisp.h).
9513 (valid_image_p, parse_image_spec): Use IMAGEP macro.
9514
9515 * macterm.c (Qface, Qmouse_face): Remove unused externs.
9516
9517 * w32fns.c (Qimage): Remove extern (now in lisp.h).
9518 (valid_image_p, parse_image_spec): Use IMAGEP macro.
9519
9520 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
9521
9522 * w32term.c (Qface, Qmouse_face): Remove unused externs.
9523
9524 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
9525 pointer types.
9526 (Qrelative_width, Qalign_to): Remove unused variables.
9527 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
9528 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
9529 image maps.
9530 (x_y_to_hpos_vpos): Return glyph relative coordinates through
9531 new dx and dy args.
9532 Remove buffer_only_p arg (always 0). Simplify code accordingly.
9533 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
9534 than row's ascent and height, to get sensible height on tall rows.
9535 (build_desired_tool_bar_string): Remove Qimage extern.
9536 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
9537 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
9538 image glyph is alone on the last line.
9539 (append_glyph, append_composite_glyph, produce_image_glyph)
9540 (append_stretch_glyph): Set glyph's ascent and descent.
9541 (on_hot_spot_p): New function to check if position is inside an
9542 rectangular, circular, or polygon-shaped image hot-spot,
9543 (find_hot_spot): New function to search for image hot-spot.
9544 (Flookup_image_map): New defun to search for image hot-spot.
9545 (define_frame_cursor1): New aux function to determine frame pointer.
9546 (note_mode_line_or_margin_highlight, note_mouse_highlight):
9547 Handle `pointer' text property and :pointer image property to
9548 control frame pointer shape. Detect image hot-spots for pointer
9549 and help_echo properties. Use define_frame_cursor1.
9550 (note_mouse_highlight): Use Vvoid_text_area_pointer.
9551 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
9552 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
9553
9554 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
9555
9556 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
9557 (Qimage): Remove extern (now in lisp.h).
9558 (valid_image_p, parse_image_spec): Use IMAGEP macro.
9559
9560 * xmenu.c (show_help_event): Remove unused code.
9561
9562 * xterm.c (Qface, Qmouse_face): Remove unused externs.
9563 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
9564 row's ascent and descent, to get a sensible height on tall rows.
9565
95662003-12-25 Luc Teirlinck <teirllm@auburn.edu>
9567
9568 * minibuf.c (Fcompleting_read): Undo previous change.
9569
95702003-12-25 Lars Hansen <larsh@math.ku.dk>
9571
9572 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
9573 Arguments GCPRO'ed in call to file name handler.
9574
95752003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
9576
9577 * termcap.c (tgetst1): Scan for "%pN"; if all
9578 N are continuous in [1,9], remove all "%pN".
9579
95802003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9581
9582 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
9583
9584 * xfaces.c (lface_fully_specified_p): Take into account that
9585 MAC OS always have unspecified stipple.
9586
95872003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
9588
9589 * tparam.c (tparam1): Add handling for `%pN', which
9590 means use param N for the next substitution.
9591
95922003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
9593
9594 * xfaces.c (Fcolor_gray_p): Fix omission bug:
9595 In case `frame' is nil, consult the selected frame.
9596 (Fcolor_supported_p): Likewise.
9597
95982003-12-23 Luc Teirlinck <teirllm@auburn.edu>
9599
9600 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
9601 Doc fixes.
9602
9603 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
9604 and an integer. Adapt the introductory comment accordingly.
9605 (Fread_from_minibuffer): Delete code moved into read_minibuf.
9606 Doc fix.
9607 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
9608 read_minibuf.
9609 (Fcompleting_read): Delete code moved into read_minibuf.
9610 (Ftest_completion): Make it handle obarrays and hash tables correctly.
9611
96122003-12-03 Kenichi Handa <handa@m17n.org>
9613
9614 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
9615 encoding sequence.
9616
96172003-12-01 Kenichi Handa <handa@m17n.org>
9618
9619 * composite.c (syms_of_composite): Don't make the compostion hash
9620 table week.
9621
96222003-11-30 Luc Teirlinck <teirllm@auburn.edu>
9623
9624 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
9625 * textprop.c (Fget_char_property_and_overlay): New function.
9626 (syms_of_textprop): Defsubr it.
9627
96282003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9629
9630 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
9631 to compile on terminal configuration.
9632
9633 * fileio.c (Fread_file_name): Check use_file_dialog also before
9634 calling Fx_file_dialog.
9635
9636 * fns.c (use_file_dialog): New variable.
9637 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
9638
96392003-11-29 Kim F. Storm <storm@cua.dk>
9640
9641 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
9642 (syms_of_msdos): Don't intern and staticpro them.
9643
96442003-11-27 Kim F. Storm <storm@cua.dk>
9645
9646 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
9647 coordinates relative to glyph at posn. If glyph is an image,
9648 return that as object at posn. Callers changed.
9649 (mode_line_string, marginal_area_string): Calculate and return
9650 pixel coordinates relative to glyph. Callers changed.
9651
9652 * dispextern.h (buffer_posn_from_coords, mode_line_string)
9653 (marginal_area_string): Fix prototypes.
9654 (window_box_left_offset, window_box_right_offset): Add prototypes.
9655
9656 * frame.h (get_specified_cursor_type, get_window_cursor_type):
9657 Remove prototypes.
9658
9659 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
9660
9661 * keyboard.c (make_lispy_position): Add x and y coordinates
9662 relative to the current glyph as 7th element of position.
9663 If glyph is an image, return it in the object element.
9664 (read_key_sequence): Skip checks for keymap property in cases
9665 where POSN_STRING is not a string (e.g. an image).
9666
9667 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
9668 (Vshow_text_cursor_in_void): New variable.
9669 (glyph_to_pixel_coords): Don't use negative hpos.
9670 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
9671 (append_stretch_glyph): Change ascent arg to be actual value
9672 in pixels rather than ratio to height. Callers changed.
9673 (calc_pixel_width_or_height): New aux function, implementing
9674 pixel based artihmetic for glyph widths and heights.
9675 (produce_stretch_glyph): Use calc_pixel_width_or_height for
9676 :width, :height, :align-to, and :ascent, thus allowing these to
9677 be specified in pixels as well as multiples of characters.
9678 Don't produce stretch glyphs with zero width or height.
9679 (get_specified_cursor_type): Declare static.
9680 (get_window_cursor_type): Declare static. Add glyph arg to be
9681 able to know when cursor is on an image; always substitute
9682 hollow-box cursor for filled-box cursor on images, to avoid
9683 negative images and flicker when blinking the cursor.
9684 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
9685 (note_mode_line_or_margin_highlight): Use non-text cursor rather
9686 than vertical scroll-bar cursor in display margins.
9687 (note_mouse_highlight): Use non-text cursor rather than text
9688 cursor in fringes and over images in the text area.
9689 Use non-text cursor when mouse pointer is outside editable text,
9690 i.e. in the void after end-of-line or end-of-buffer; this was
9691 already done for W32, but is now standard for all systems --
9692 user can toggle show-text-cursor-in-void to get old behaviour.
9693 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
9694 Vdisplay_pixels_per_inch.
9695
96962003-11-25 Andreas Schwab <schwab@suse.de>
9697
9698 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
9699 EMACS_INT to not lose bits.
9700 (Ffillarray): Don't set bits beyond the size of a bool vector.
9701
97022003-11-25 Kim F. Storm <storm@cua.dk>
9703
9704 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
9705 define this defun on systems that cannot use stderr as lvalue.
9706
97072003-11-24 Gerd Moellmann <gerd@gnu.org>
9708
9709 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
9710 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
9711 ld's default is incompatible with unexec.
9712
97132003-11-23 Kim F. Storm <storm@cua.dk>
9714
9715 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
9716 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
9717 (Fforce_window_update): New defun.
9718 (syms_of_window): Defsubr it.
9719 (Fset_window_margins, Fset_window_fringes): Doc fix.
9720
9721 * print.c (Fredirect_debugging_output): New defun.
9722 (syms_of_print): Defsubr it.
9723
97242003-11-22 Luc Teirlinck <teirllm@auburn.edu>
9725
9726 * fns.c (Fset_char_table_parent): Doc fix.
9727
97282003-11-22 Kim F. Storm <storm@cua.dk>
9729
9730 * dispnew.c (buffer_posn_from_coords): Return actual row/column
9731 for glyph clicked on, rather than (unused) pixel positions.
9732 (mode_line_string, marginal_area_string): Change X and Y args to
9733 pointers for returning actual row/column for glyph clicked on.
9734 Simplify and optimize loops.
9735
9736 * dispextern.h (mode_line_string, marginal_area_string):
9737 Update prototypes.
9738
9739 * keyboard.c (make_lispy_position): New function for generating
9740 mouse click positions from frame and pixel coordinates.
9741 Enhanced to return buffer position and actual row/column for
9742 events outside the text area using updated mode_line_string and
9743 marginal_area_string functions.
9744 Return left-fringe and right-fringe clicks as such, rather than
9745 clicks in text area.
9746 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
9747 pixel_to_glyph_coords, as we never use the results.
9748 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
9749 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
9750 Eliminate unused code in WHEEL_EVENT handling.
9751 (make_lispy_movement): Use make_lispy_position.
9752
9753 * window.c (coordinates_in_window): Remove redundant tests.
9754 Fix returned X pixel value for left-margin.
9755
9756 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
9757 mode_line_string and marginal_area_string parameters.
9758
97592003-11-22 Lars Hansen <larsh@math.ku.dk>
9760
9761 * w32.c (struct the_group, getgrgid): Add.
9762 * mac.c (struct my_group, getgrgid): Add.
9763
97642003-11-21 Luc Teirlinck <teirllm@auburn.edu>
9765
9766 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
9767
97682003-11-21 Lars Hansen <larsh@math.ku.dk>
9769
9770 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
9771 include in call to file name handler. Optionally translate numeric
9772 UID and GID to strings. Update docstring.
9773 (directory_files_internal): Add parameter ID-FORMAT.
9774 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
9775 include in call to file name handler and call to
9776 directory_files_internal. Update Docstring.
9777 (Fdirectory_files): Add dummy parameter in call to
9778 directory_files_internal.
9779 * lisp.h (Qinteger): Add.
9780 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
9781 (Ffile_attributes): Add parameter.
9782 * data.c (Qinteger): Export.
9783
97842003-11-21 Luc Teirlinck <teirllm@auburn.edu>
9785
9786 * fns.c (Freverse, Fnreverse): Doc fixes.
9787
97882003-11-19 Kim F. Storm <storm@cua.dk>
9789
9790 * xdisp.c (init_iterator): Initialize it->start to position
9791 before reseating (in case start position is invisible).
9792 (init_to_row_start): Set it->start to row-start.
9793 (redisplay_window): Accept optional_new_start if start position
9794 is invisible (in which case IT_CHARPOS overshoots PT).
9795 (display_line): Setup row->start from it->start (rather than
9796 it->current which is wrong if first char on line is invisible).
9797 When done, reseat it->start to it->current (= start of next row).
9798 (expose_area): Fix exposure of text area when first char (e.g. TAB)
9799 is only partially visible.
9800
9801 * dispextern.h (struct it): New member start.
9802
98032003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
9804
9805 * alloc.c (make_float, Fcons): Clear the markbit at init time.
9806 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
9807 of block_index outside of the macro call.
9808 (Fgarbage_collect): Remove null code.
9809
9810 * m/amdx86-64.h: Don't redefine XPNTR.
9811
9812 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
9813 of VALMASK.
9814
9815 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
9816 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
9817 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
9818
9819 * lisp.h (VALMASK): Only define for non-union type.
9820 (MARKBIT): Remove.
9821 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
9822 (XTYPE): Define unconditionally.
9823 (XSETTYPE): Remove one more remnant.
9824 (EQ): Define differently for the union and non-union cases.
9825 (INTMASK): New bit mask.
9826 (struct Lisp_Marker): Move down to prepare for upcoming patch.
9827 (GC_EQ): Delegate to EQ.
9828
9829 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
9830
98312003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9832
9833 * xterm.c (x_window_to_scroll_bar): Move check of display to
9834 where window_id is compared.
9835
98362003-11-17 Kim F. Storm <storm@cua.dk>
9837
9838 * dispextern.h (struct it): New member first_vpos.
9839
9840 * xdisp.c (start_display): Set it->first_vpos.
9841 (try_window_id): Use first_vpos to start display in first _text_
9842 line if no reusable lines at start of window with header line.
9843
98442003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9845
9846 * w32fns.c (XPutPixel):
9847 * w32bdf.c (w32_init_bdf_font):
9848 * sunfns.c (sel_read):
9849 * process.c (Fmake_network_process):
9850 * frame.c (store_frame_param):
9851 * fontset.c (Fset_fontset_font):
9852 * emacs.c (shut_down_emacs):
9853 * ccl.c (ccl_driver): Remove period at end of error message.
9854
9855 * config.in: Regenerate.
9856
9857 * xfns.c (x_window_to_frame, x_any_window_to_frame)
9858 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
9859 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
9860 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
9861 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
9862
9863 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
9864
9865 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
9866 (XTmouse_position, handle_one_xevent): Pass Display* to
9867 x_window_to_scroll_bar.
9868 (x_window_to_scroll_bar): Take a Display* argument.
9869 Check that display for frame is equal to Display* argument.
9870 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
9871 x_display_info_for_display instead. Use Display in xev instead
9872 of GDK_DISPLAY.
9873 (x_dispatch_event): Call x_display_info_for_display.
9874 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
9875 (x_connection_closed): Call xg_display_close for GTK.
9876 (x_term_init): Call xg_display_open for additional displays.
9877 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
9878 for GTK.
9879
9880 * xmenu.c (single_menu_item, mouse_position_for_popup)
9881 (x_activate_menubar): Formatting adjustments.
9882
9883 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
9884 adjustments.
9885
9886 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
9887 (xg_display_close, xg_create_default_cursor)
9888 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
9889 handling.
9890 (xg_left_ptr_cursor): Remove.
9891 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
9892 cursor here.
9893 (xg_win_to_widget): Take Display* argument, call
9894 gdk_xid_table_lookup_for_display.
9895 (xg_create_frame_widgets, xg_get_file_name, create_menus)
9896 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
9897 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
9898 in FRAME_X_DISPLAY_INFO.
9899 (xg_get_scroll_id_for_window): Take Display* argument.
9900 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
9901 (xg_initialize): Remove xg_left_ptr_cursor.
9902
9903 * gtkutil.h (xg_get_scroll_id_for_window, xg_win_to_widget): Add
9904 Display* argument.
9905 (xg_display_open, xg_display_close, xg_create_default_cursor): Declare.
9906
99072003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9908
9909 * xterm.c (x_detect_focus_change): Do not change focus frame for
9910 Enter/LeaveNotify if the current focus frame has explicit focus.
9911
99122003-11-14 Kim F. Storm <storm@cua.dk>
9913
9914 * dispnew.c (update_text_area): Fix redisplay error when hscroll
9915 is active and first glyph is only partially visible.
9916
99172003-11-13 Kenichi Handa <handa@m17n.org>
9918
9919 * xdisp.c (select_frame_for_redisplay): New function.
9920 (redisplay_internal): Record also selected_frame for
9921 unwind_redisplay. Call select_frame_for_redisplay before
9922 redrawing each frame.
9923 (unwind_redisplay): Argument changed to a cons.
9924
99252003-11-12 Luc Teirlinck <teirllm@auburn.edu>
9926
9927 * fns.c (Fstring_to_multibyte): Doc fix.
9928
99292003-11-11 Kenichi Handa <handa@m17n.org>
9930
9931 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
9932
99332003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9934
9935 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
9936 program specified positions.
9937
99382003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9939
9940 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
9941
99422003-11-08 Kenichi Handa <handa@m17n.org>
9943
9944 * Makefile.in (lisp): Add kannada.el.
9945 (shortlisp): Likewise.
9946
99472003-11-07 Kenichi Handa <handa@m17n.org>
9948
9949 * coding.c (coding_allocate_composition_data):
9950 Reset coding->composing to COMPOSITION_NO.
9951 (coding_restore_composition): Detect invalid composition data.
9952 Give Fstring and Fvector a Lispy integer, not C int.
9953
99542003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
9955
9956 * floatfns.c (Flogb): Don't use VALMASK.
9957
9958 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
9959 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
9960
9961 * lisp.h (XINT): Move the cast to clarify what is going on.
9962 (GCTYPEMASK, XSETTYPE): Remove.
9963 (XGCTYPE): Make it an alias of XTYPE.
9964
99652003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9966
9967 * xterm.c (x_term_init): Fix formatting.
9968
99692003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9970
9971 * gtkutil.h (xg_have_tear_offs): Declare.
9972 (xg_keep_popup, xg_did_tearoff): Remove.
9973
9974 * gtkutil.c: Remove variable xg_did_tearoff.
9975 (xg_have_tear_offs): New function.
9976 (tearoff_remove): Just decrease xg_detached_menus.
9977 (tearoff_activate): Increase xg_detached_menus and call
9978 tearoff_remove when tearoff is removed.
9979 (xg_keep_popup): Remove function.
9980 (create_menus): Give add_tearoff_p as argument to recursive
9981 call to create_menus.
9982 (xg_create_widget): Use variables instead of multiple
9983 strcmp. Tell create_menus to create tear off only for
9984 menu bar menus.
9985 (xg_update_menubar): Change title for a detached menu also.
9986 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
9987 of deep_p.
9988 (xg_initialize): Initialize xg_detached_menus, remove
9989 initialization of xg_did_tearoff.
9990
9991 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
9992 xg_have_tear_offs returns non-zero.
9993 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
9994 call to xg_keep_popup.
9995
99962003-11-01 Andrew Choi <akochoi@shaw.ca>
9997
9998 * macterm.c (XTread_socket): Handle menubar selection and grow
9999 window only for mouseDown events.
10000
100012003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10002
10003 * xterm.c (x_term_init): For GTK part, increase x_initialized
10004 to check for more than one display. Use error instead of return 0.
10005
100062003-10-31 Andrew Choi <akochoi@shaw.ca>
10007
10008 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
10009 (copy_dysymtab): Call it.
10010
100112003-10-31 Luc Teirlinck <teirllm@auburn.edu>
10012
10013 * eval.c (Fdefvaralias): Doc fix.
10014
100152003-10-26 Luc Teirlinck <teirllm@auburn.edu>
10016
10017 * data.c (Fsetplist): Doc fix.
10018
100192003-10-14 Lute Kamstra <lute@gnu.org>
10020
10021 * window.c (Fset_window_fringes): Clarify docstring.
10022
100232003-10-14 Kim F. Storm <storm@cua.dk>
10024
10025 * window.c (Fset_window_margins): Simplify arg checking.
10026
100272003-10-13 Richard M. Stallman <rms@gnu.org>
10028
10029 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
10030 (print_partial_compiled_pattern): Replace assert with a printout.
10031 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
10032
10033 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
10034
10035 * window.c (Fset_window_margins): Allow only integers as args.
10036 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
10037 Doc fixes.
10038
100392003-10-13 Lute Kamstra <lute@gnu.org>
10040
10041 * window.c (Fset_window_fringes): Elaborate docstring.
10042
100432003-10-12 Andrew Choi <akochoi@shaw.ca>
10044
10045 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
10046
10047 * s/darwin.h (GC_MARK_STACK): Define.
10048
100492003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10050
10051 * window.c (shrink_windows): New function.
10052 (size_window): Call shrink_windows to calculate window sizes when
10053 shrinking frame with more than one window.
10054
100552003-10-12 Kim F. Storm <storm@cua.dk>
10056
10057 * xdisp.c (compute_fringe_widths): Doc fix.
10058
100592003-10-08 Kenichi Handa <handa@m17n.org>
10060
10061 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
10062
100632003-10-07 Kenichi Handa <handa@m17n.org>
10064
10065 * coding.c (Qcoding_system_define_form): New variable.
10066 (syms_of_coding): Intern and staticpro it.
10067 (Fcheck_coding_system): Try to autoload the definition of
10068 CODING-SYSTEM.
10069
100702003-10-05 Luc Teirlinck <teirllm@auburn.edu>
10071
10072 * fns.c (Frequire): Doc fix.
10073
100742003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10075
10076 * xfns.c (Fx_send_client_event): New function as a base for
10077 manipulating extended window manager hints.
10078 (Fx_send_client_event): Remove unused variable s.
10079
10080 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
10081 that function is removed.
10082
10083 * xterm.c (x_set_offset): Use move_offset_left/top instead of
10084 x/y_pixels_outer_diff.
10085 (x_check_expected_move): Calculate move_offset_left/top.
10086
10087 * xterm.h (struct x_output): New members: move_offset_top/left.
10088
10089 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
10090 call x_set_offset directly.
10091
10092 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
10093
10094 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
10095
10096 * xterm.c (x_delete_display): Free font names and font_encoder
10097 in dpyinfo->font_table.
10098
10099 * xfns.c (Fx_close_connection): Only call XFreeFont here.
10100 Move xfree of font names to x_delete_display.
10101
10102 * xterm.h (struct x_display_info): New member, wm_type.
10103 (struct x_output): New members, expected_top/left and
10104 check_expected_move.
10105
10106 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
10107 is received.
10108 (handle_one_xevent): Rename x_check_expected_move from
10109 x_check_fullscreen_move.
10110 (x_set_offset): Only add WM decoration sizes to modified_top/left
10111 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
10112 (x_check_expected_move): Rename from x_check_fullscreen_move.
10113 Removed fullscreen specific code. Use check_expected_move,
10114 expected_left/top instead. Also, set wm_type.
10115 (x_term_init): Initialize wm_type to unknown.
10116
10117 * frame.c (x_fullscreen_move): Remove addition of WM decoration
10118 sizes to move_x/y.
10119
101202003-10-03 Kenichi Handa <handa@m17n.org>
10121
10122 * macterm.c (x_load_font): Clear all members of FONTP before start
10123 filling them.
10124
101252003-10-02 Kenichi Handa <handa@m17n.org>
10126
10127 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
10128 before calling find_ccl_program_func. Call find_ccl_program_func
10129 only when fontp->font_encoder is not NULL.
10130
10131 * xterm.c (x_load_font): Clear all members of FONTP before start
10132 filling them.
10133
101342003-10-03 John Paul Wallington <jpw@gnu.org>
10135
10136 * keymap.c (map_keymap): Don't abort when binding is a vector.
10137
101382003-10-02 Jason Rumney <jasonr@gnu.org>
10139
10140 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
10141 Sync dependencies with Makefile.in.
10142 (alloca.o): Remove.
10143
10144 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
10145 filling them.
10146
10147 * w32bdf.c (w32_load_bdf_font): Likewise.
10148
101492003-09-30 Richard M. Stallman <rms@gnu.org>
10150
10151 * term.c (set_tty_color_mode): Calculate current_mode_spec
10152 regardless of value of VAL.
10153
10154 * intervals.c (graft_intervals_into_buffer):
10155 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
10156 Handle over_used when splitting UNDER.
10157
101582003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10159
10160 * regex.c (regex_compile): Free the stack when returning from function.
10161
101622003-09-28 Kenichi Handa <handa@m17n.org>
10163
10164 * fontset.c (Finternal_char_font): Change return value to
10165 cons (FONT-NAME . GLYPH-CODE).
10166
101672003-09-28 Eli Zaretskii <eliz@gnu.org>
10168
10169 * term.c (tty_setup_colors): Treat any negative argument as -1.
10170
101712003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
10172
10173 * process.c (send_process): Delete unused temp_buf.
10174
101752003-09-26 Dave Love <fx@gnu.org>
10176
10177 * xterm.c (x_bitmap_mask): Declare.
10178
101792003-09-25 Dave Love <fx@gnu.org>
10180
10181 * Makefile.in (fns.o): Depend on md5.h.
10182
101832003-09-25 Kim F. Storm <storm@cua.dk>
10184
10185 * window.c (set_window_buffer): Fix redisplay problems when
10186 switching between buffers with different display margin widths.
10187
101882003-09-23 Kim F. Storm <storm@cua.dk>
10189
10190 * process.c (set_socket_option): Fix :bindtodevice option.
10191 (Fset_network_process_option): Update process contact list when
10192 setting option succeeds.
10193 (Fmake_network_process): Doc fix.
10194
101952003-09-23 Dave Love <fx@gnu.org>
10196
10197 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
10198
101992003-09-22 Eli Zaretskii <eliz@gnu.org>
10200
10201 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
10202 color mode is an integer number (it could be -1).
10203
102042003-09-22 Richard M. Stallman <rms@gnu.org>
10205
10206 * intervals.c (graft_intervals_into_buffer): Correct the main loop
10207 in the case where OVER is longer than UNDER.
10208
102092003-09-22 Masatake YAMATO <jet@gyve.org>
10210
10211 * window.c (Fset_window_scroll_bars): Validate the value of
10212 `vertical_type'.
10213
102142003-09-21 Kim F. Storm <storm@cua.dk>
10215
10216 * frame.c (Vdefault_frame_scroll_bars): New variable.
10217 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
10218 (syms_of_frame): DEFVAR_LISP it, and initialize according to
10219 window-system default scroll bar position.
10220
10221 * window.c (Fwindow_scroll_bars): Doc fix.
10222
102232003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10224
10225 * xterm.c (x_set_offset): Take window manager decorations into account.
10226
102272003-09-19 Richard M. Stallman <rms@gnu.org>
10228
10229 * atimer.h: Don't include lisp.h.
10230 (P_): Define it here (as well as elsewhere).
10231
10232 * print.c (Fprin1_to_string): Move the PRINTPREPARE
10233 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
10234
10235 * data.c (Fvariable_binding_locus): New function.
10236 (syms_of_data): defsubr it.
10237 (Flocal_variable_p): Delete duplicate call to indirect_variable.
10238
102392003-09-18 Dave Love <fx@gnu.org>
10240
10241 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
10242
10243 * process.c (Fnetwork_interface_info): Fix type error.
10244 (Fnetwork_interface_list): Doc fix.
10245 (read_process_output, read_process_output): Delete unused var.
10246
102472003-09-17 Kim F. Storm <storm@cua.dk>
10248
10249 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
10250 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
10251 (Fnetwork_interface_info): Check that ifreq struct has required
10252 fields before accessing them; this requires that those fields are
10253 defined as macros, which may be too restrictive on some platforms,
10254 but it is better than failing on other platforms.
10255 (syms_of_process): Only defsubr above fns when included.
10256
102572003-09-17 Dave Love <fx@gnu.org>
10258
10259 * unexalpha.c: Don't include varargs.h.
10260
102612003-09-17 Kim F. Storm <storm@cua.dk>
10262
10263 * process.c (Fset_process_sentinel): Add sentinel to childp plist
10264 for network process.
10265 (socket_options): Add `:' prefix to option names. Add optbit field.
10266 (set_socket_option): Remove no_error arg and special handling of s < 0.
10267 Return 1<<optbit for known option, 0 for unknown.
10268 Do not interpret 0 as false for boolean option (only nil).
10269 Pass failed option and value to report_file_error.
10270 (Fset_network_process_options): Replace by Fset_network_process_option.
10271 (Fset_network_process_option): New function to set just one option.
10272 (Fmake_network_process): Allow :coding arg to be a cons.
10273 Allow :server arg to be an integer specifying backlog size.
10274 Remove :options arg, and allow options to be specified directly
10275 as :KEY, VALUE pairs. Parse these options before binding socket.
10276 As before, :reuseaddr t is default for a server process, but this
10277 can now be disabled by specifying :reuseaddr nil.
10278 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
10279 (init_process): Availability of network options is now checked with
10280 simpler syntax (featurep 'make-network-process :OPTION); use loop to
10281 setup features.
10282 (syms_of_process): Fix defsubr's for the replaced functions.
10283
102842003-09-16 Dave Love <fx@gnu.org>
10285
10286 * Makefile.in: Depend on coding.h.
10287
102882003-09-14 Kim F. Storm <storm@cua.dk>
10289
10290 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
10291 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
10292 (syms_of_process): Defsubr them.
10293
10294 * config.in: Regenerate.
10295
102962003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
10297
10298 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
10299 * m/news-r6.h (XUNMARK): Remove.
10300 * m/mips.h (XUNMARK): Remove.
10301 * m/mips-siemens.h (XUNMARK): Remove.
10302 * m/iris4d.h (XUNMARK): Remove.
10303 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
10304
103052003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
10306
10307 * lisp.h (VALBITS): Don't remove 1 for the markbit.
10308 (union Lisp_Object): Use unsigned int for types. Remove markbit.
10309 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
10310 (XTYPE): Use unsigned right-shift.
10311 (XMARKBIT, XMARK, XUNMARK): Remove.
10312
10313 * alloc.c (init_intervals, init_symbol, init_marker):
10314 Don't preallocate anything.
10315 (Fgarbage_collect, mark_object): Ignore the markbit.
10316
10317 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
10318
103192003-09-08 Lute Kamstra <lute@gnu.org>
10320
10321 * xdisp.c (pint2hrstr): New function.
10322 (decode_mode_spec): Add `%i' and `%I' specs.
10323 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
10324 for `mode-line-format'.
10325
103262003-09-07 Andreas Schwab <schwab@suse.de>
10327
10328 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
10329 avoid warning.
10330
103312003-09-07 Eli Zaretskii <eliz@gnu.org>
10332
10333 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
10334
103352003-09-03 Kim F. Storm <storm@cua.dk>
10336
10337 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
10338 change (superseded by 2002-08-30 change); the default blink-off
10339 cursor is now again "no cursor".
10340
103412003-09-01 Jason Rumney <jasonr@gnu.org>
10342
10343 * makefile.w32-in (alloca.o): Remove.
10344 (coding.o): Depend on intervals.h
10345 (emacs.o, bytecode.o): Depend on window.h
10346
103472003-09-01 Dave Love <fx@gnu.org>
10348
10349 * Makefile.in (alloca.o): Remove commands.
10350 (coding.o): Depend on intervals.h composite.h window.h.
10351 (emacs.o): Depend on window.h keyboard.h keymap.h.
10352 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
10353 (bytecode.o): Depend on window.h.
10354
103552003-08-31 Jason Rumney <jasonr@gnu.org>
10356
10357 * w32term.c (w32_per_char_metric): Allow cached metrics to be
10358 returned even when font_type is unknown.
10359
10360 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
10361
103622003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10363
10364 * xterm.c (x_term_init): Initialize new fields in x_display_info.
10365
10366 * xterm.h (struct x_display_info): Add red/green/blue_bits and
10367 *_offset.
10368
10369 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
10370 calculate pixel value.
10371
103722003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
10373
10374 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
10375 Don't tell redisplay display is accurate when it's actually been
10376 paused for pending input.
10377
103782003-08-29 Richard M. Stallman <rms@gnu.org>
10379
10380 * dispnew.c (adjust_glyph_matrix): Call window_box
10381 whenever W is nonzero.
10382
10383 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
10384 (Fkill_local_variable, Fmake_variable_frame_local)
10385 (Flocal_variable_p, Flocal_variable_if_set_p):
10386 Use indirect_variable to trace thru variable aliases.
10387
10388 * config.in: Updated.
10389
10390 * callint.c (Fcall_interactively): Save and restore
10391 Vthis_command, Vthis_original_command, real_this_command,
10392 and current_kboard->Vlast_command.
10393
10394 * abbrev.c (Fexpand_abbrev): Insert before deleting.
10395
103962003-08-29 Gerd Moellmann <gerd@gnu.org>
10397
10398 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
10399
104002003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
10401
10402 * coding.c (decode_coding_iso2022): Initialize local variable c2.
10403 (decode_coding_sjis_big5): Likewise.
10404
104052003-08-27 Jason Rumney <jasonr@gnu.org>
10406
10407 * w32.c (sys_pipe): Protect against file descriptor overflow.
10408
10409 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
10410
10411 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
10412
104132003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
10414
10415 * xfns.c (Vgtk_version_string): New variable.
10416 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
10417
104182003-08-24 Eli Zaretskii <eliz@gnu.org>
10419
10420 * term.c (term_init): Remove `const' from buffer_size's declaration.
10421
10422 * Makefile.in (msdos.o): Depend on intervals.h.
10423
10424 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
10425
104262003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10427
10428 * xterm.h (struct x_display_info): New fields: client_leader_window
10429 and Xatom_wm_client_leader.
10430
10431 * xterm.c (x_initialize): Move call to x_session_initialize to ...
10432 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
10433
10434 * xsmfns.c (create_client_leader_window): New function.
10435 (x_session_initialize): Call create_client_leader_window, take
10436 dpyinfo as argument.
10437
10438 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
10439
10440 * Makefile.in (xsmfns.o): Add more depenedencies.
10441
104422003-08-21 Dave Love <fx@gnu.org>
10443
10444 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
10445
104462003-08-21 Kenichi Handa <handa@m17n.org>
10447
10448 * term.c (term_init): Fix previous change; don't rely on the
10449 length of `buffer' if TERMINFO is defined.
10450
104512003-08-20 Dave Love <fx@gnu.org>
10452
10453 * atimer.h: Include lisp.h.
10454
10455 * lisp.h (EMACS_LISP_H): New.
10456 (popup_activated_flag): Don't declare.
10457
10458 * alloca.c: Some merging with gnulib. Change logic and doc
10459 concerning (x)malloc/(x)free -- no longer Emacs-specific.
10460 [DO_BLOCK_INPUT]: Don't include lisp.h.
10461 (xmalloc, xfree): Declare.
10462 (malloc): Don't declare.
10463
10464 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
10465 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
10466 atimer.h, blockinput.h.
10467
10468 * alloc.c (lisp_align_malloc): Change type of `aligned'.
10469
10470 * alloca.s: Remove.
10471
104722003-08-19 Gerd Moellmann <gerd@gnu.org>
10473
10474 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
10475 use -lncurses.
10476
10477 * term.c (term_init): Use a buffer of size 4096 for tgetent since
10478 FreeBSD returns something longer than 2044. Abort if the end of
10479 the buffer is overwritten.
10480
104812003-08-19 Miles Bader <miles@gnu.org>
10482
10483 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
10484
104852003-08-19 Gerd Moellmann <gerd@gnu.org>
10486
10487 * alloc.c (lisp_align_malloc): Check for memory full when
10488 allocating ablocks, which also avoids freeing a pointer into an
10489 ablocks structure.
10490
10491 * puresize.h (BASE_PURESIZE): Increase to 1100000.
10492
10493 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
10494
104952003-08-16 Richard M. Stallman <rms@gnu.org>
10496
10497 * editfns.c (Fencode_time): Doc fix.
10498
104992003-08-16 David Ponce <david@dponce.com>
10500
10501 * fileio.c (Fwrite_region): Fix conditional expression to issue
10502 the right message.
10503
105042003-08-16 Juri Linkov <juri@jurta.org>
10505
10506 * syntax.c (Fforward_word): Argument changed to optional.
10507 Set default value to 1.
10508
105092003-08-15 Kenichi Handa <handa@m17n.org>
10510
10511 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
10512 what autoscaled.
10513 (best_matching_font): Once we find a better scalable font, set
10514 non_scalable_has_exact_height_p to 1.
10515 (try_font_list): Call try_alternative_families to try any family
10516 with the given registry.
10517
105182003-08-09 Andreas Schwab <schwab@suse.de>
10519
10520 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
10521
10522 * print.c (print_string): Fix printing of multibyte string with
10523 nontrivial printcharfun.
10524
105252003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10526
10527 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
10528
10529 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
10530
105312003-07-31 Kenichi Handa <handa@m17n.org>
10532
10533 * process.c (read_process_output): Return the actually read bytes
10534 instead of the result of decoding.
10535
105362003-07-31 Kenichi Handa <handa@m17n.org>
10537
10538 * xterm.h (struct x_bitmap_record): New member have_mask.
10539
10540 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
10541 to 0.
10542 (x_create_bitmap_from_file): Likewise.
10543 (x_destroy_bitmap): Check have_mask member before freeing a mask.
10544 (x_destroy_all_bitmaps): Likewise.
10545 (x_create_bitmap_mask): Set have_mask member to 1.
10546
105472003-07-30 Richard M. Stallman <rms@gnu.org>
10548
10549 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
10550
105512003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10552
10553 * gtkutil.c (xg_mark_data): Update calls to mark_object.
10554
105552003-07-29 Richard M. Stallman <rms@gnu.org>
10556
10557 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
10558 Conditionalize XIM code on HAVE_XIM.
10559
10560 * fns.c (Fclear_string): New function.
10561 (syms_of_fns): defsubr it.
10562
105632003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
10564
10565 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
10566
105672003-07-22 Stefan Monnier <monnier@cs.yale.edu>
10568
10569 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
10570
10571 * buffer.c (delete_all_overlays): New function.
10572 * buffer.h (delete_all_overlays): Declare.
10573 * coding.c (run_pre_post_conversion_on_str):
10574 * print.c (temp_output_buffer_setup):
10575 * fileio.c (Finsert_file_contents):
10576 * minibuf.c (get_minibuffer): Use it.
10577
105782003-07-22 Andrew Choi <akochoi@shaw.ca>
10579
10580 * unexmacosx.c (unexec_regions_sort_compare):
10581 (unexec_regions_merge): New functions. Sort and merge unexec
10582 regions before dumping them.
10583
105842003-07-22 Dave Love <fx@gnu.org>
10585
10586 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
10587
105882003-07-21 Stefan Monnier <monnier@cs.yale.edu>
10589
10590 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
10591 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
10592 MARKBIT as the gcmarkbit for strings.
10593
105942003-07-21 Richard M. Stallman <rms@gnu.org>
10595
10596 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
10597
10598 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
10599 (syms_of_fns): Corresponding change.
10600
10601 * alloc.c (syms_of_alloc): Doc fixes.
10602
106032003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
10604
10605 * s/netbsd.h: Use -Wl syntax.
10606
106072003-07-17 Richard M. Stallman <rms@gnu.org>
10608
10609 * xterm.c (xim_initialize): Redo 6/24 change.
10610
106112003-07-15 Stefan Monnier <monnier@cs.yale.edu>
10612
10613 * buffer.c (copy_overlays): Use EMACS_INT for positions.
10614 (Fswitch_to_buffer): Don't signal an error when switching to the same
10615 buffer in a dedicated window.
10616
10617 * alloc.c: Use bitmaps for cons, as was done for floats.
10618 (init_float, init_cons): Let the normal code allocate the first block.
10619 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
10620 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
10621 New macros.
10622 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
10623 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
10624 (live_cons_p): Check the pointer is not past the `conses' array.
10625 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
10626 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
10627 (survives_gc_p): Use CONS_MARKED_P and simplify.
10628 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
10629
106302003-07-13 Paul Eggert <eggert@twinsun.com>
10631
10632 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
10633 puts it into BSS instead, at least on Solaris 8 and 9.
10634 This is a valid optimization, and it may occur on other platforms,
10635 so Emacs should not assume that initializing a static variable to
10636 zero puts it into data.
10637 * alloc.c (pure, staticvec):
10638 Initialize these arrays to nonzero, so that they're not
10639 put into BSS by that optimization.
10640
106412003-07-13 Stefan Monnier <monnier@cs.yale.edu>
10642
10643 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
10644 (lisp_align_malloc): Use posix_memalign is available.
10645 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
10646 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
10647 for consistency. Update users.
10648
106492003-07-13 Richard M. Stallman <rms@gnu.org>
10650
10651 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
10652
106532003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
10654
10655 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
10656 and use the Gtk+ function gtk_window_icon_from_file if available.
10657
10658 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
10659 handle mask of bitmaps.
10660 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
10661 mask property.
10662 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
10663
10664 * xterm.h (xg_set_icon): New function.
10665
106662003-07-12 Paul Eggert <eggert@twinsun.com>
10667
10668 * unexelf.c (unexec): Consider a section to precede the .bss
10669 section if its addresses overlap that of .bss.
10670
106712003-07-12 Richard M. Stallman <rms@gnu.org>
10672
10673 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
10674
10675 * config.in (HAVE_CRTIN): Add #undef.
10676 (INLINE): Really inline only if OPTIMIZE is defined.
10677
10678 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
10679 END_FILES_1.
10680 (START_FILES_1, END_FILES_1): New macros (conditional).
10681 (LD_SWITCH_SYSTEM_TEMACS): Define.
10682
10683 * s/openbsd.h: Don't include bsd4-3.h.
10684 (TERMINFO): Define.
10685 (LIBS_TERMCAP): Define.
10686 (LD_SWITCH_SYSTEM): Define (two definitions).
10687
10688 * xfns.c: Include libpng/png.h instead of png.h.
10689
106902003-07-11 Andreas Schwab <schwab@suse.de>
10691
10692 * buffer.c (modify_overlay): Update prototype.
10693 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
10694 Likewise.
10695
106962003-07-09 Stefan Monnier <monnier@cs.yale.edu>
10697
10698 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
10699 (struct interval): Move to intervals.h.
10700 (struct Lisp_Marker): Use EMACS_INT for position info.
10701 (forward_point): Remove prototype of defunct function.
10702 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
10703 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
10704 (syms_of_textprop, set_text_properties): Remove prototypes that are
10705 already in intervals.h.
10706
10707 * intervals.h (struct interval): Move from lisp.h.
10708 Use EMACS_INT for position and size info.
10709
10710 * coding.c: Include intervals.h for Fset_text_properties.
10711
10712 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
10713 position and length information.
10714
107152003-07-09 Stefan Monnier <monnier@cs.yale.edu>
10716
10717 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
10718 position and length information.
10719
107202003-07-09 Stefan Monnier <monnier@cs.yale.edu>
10721
10722 Change overlays_after and overlays_before so the overlays themselves
10723 are linked into lists, rather than using cons cells. After all each
10724 Lisp_Misc already occupies 5 words, so we can add a `next' field to
10725 Lisp_Overlay for free and save up one cons cell per overlay (not
10726 to mention one indirection when traversing the list of overlay).
10727
10728 * lisp.h (struct Lisp_Overlay): New field `next'.
10729
10730 * buffer.h (struct buffer): Change overlays_before and overlays_after
10731 from Lisp lists of overlays to pointers to overlays.
10732
10733 * buffer.c (overlay_strings, recenter_overlay_lists):
10734 Fix typo in eassert in last commit.
10735 (unchain_overlay): New function.
10736 (add_overlay_mod_hooklist): Use AREF.
10737 (copy_overlays, reset_buffer, overlays_at, overlays_in)
10738 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
10739 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
10740 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
10741 (report_overlay_modification, evaporate_overlays, init_buffer_once):
10742 Adjust to new type of overlays_(before|after).
10743
10744 * alloc.c (mark_object): Mark the new `next' field of overlays.
10745 (mark_buffer): Manually mark the overlays_(after|before) fields.
10746
10747 * coding.c (run_pre_post_conversion_on_str):
10748 * editfns.c (overlays_around):
10749 * xdisp.c (load_overlay_strings):
10750 * fileio.c (Finsert_file_contents):
10751 * indent.c (current_column):
10752 * insdel.c (signal_before_change, signal_after_change):
10753 * intervals.c (set_point_both):
10754 * print.c (temp_output_buffer_setup): Use new type for
10755 overlays_(before|after).
10756
107572003-07-08 Stefan Monnier <monnier@cs.yale.edu>
10758
10759 * buffer.c (report_overlay_modification): Don't run hooks while
10760 traversing the list of overlays.
10761
10762 * buffer.h (struct buffer): Use an int for overlay_center.
10763 (overlays_at, evaporate_overlays, recenter_overlay_lists)
10764 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
10765
10766 * buffer.c (reset_buffer, recenter_overlay_lists)
10767 (adjust_overlays_for_insert, adjust_overlays_for_delete)
10768 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
10769 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
10770 (overlays_at, evaporate_overlays, recenter_overlay_lists)
10771 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
10772
10773 * xdisp.c (fast_find_position): Remove unused var.
10774
10775 * cmds.c (Qexpand_abbrev): New sym.
10776 (syms_of_cmds): Initialize it.
10777 (internal_self_insert): Use it to call expand-abbrev.
10778
107792003-07-09 Kim F. Storm <storm@cua.dk>
10780
10781 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
10782 was configured with --without-xim.
10783 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
10784
107852003-07-07 Richard M. Stallman <rms@gnu.org>
10786
10787 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
10788
10789 * alloc.c (Fgarbage_collect): Doc fix.
10790
107912003-07-07 Nozomu Ando <nand@mac.com>
10792
10793 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
10794
107952003-07-06 Stefan Monnier <monnier@cs.yale.edu>
10796
10797 * minibuf.c (read_minibuf): UNGCPRO before returning.
10798 (Ftry_completion, Fall_completions): Doc fix.
10799
10800 * alloc.c (live_float_p): Check that p is not past the `floats' array,
10801 now that `floats' is not the last element of the struct any more.
10802
108032003-07-06 Jason Rumney <jasonr@gnu.org>
10804
10805 * w32term.h (ClipboardSequence_Proc): New type.
10806
10807 * w32fns.c (clipboard_sequence_fn): New variable.
10808 (globals_of_w32fns): Initialize it.
10809
10810 * w32select.c (last_clipboard_sequence_number): New variable.
10811 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
10812 number if possible.
10813
108142003-07-06 Stefan Monnier <monnier@cs.yale.edu>
10815
10816 * m/amdx86-64.h (MARKBIT):
10817 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
10818 MARKBIT and ARRAY_MARK_FLAG any more.
10819
10820 * m/hp800.h (XSETMARKBIT):
10821 * m/sr2k.h (XSETMARKBIT):
10822 * lisp.h (XSETMARKBIT): Remove unused macro.
10823
10824 * lisp.h (mark_object): Change prototype.
10825
10826 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
10827 (last_marked): Change accordingly.
10828 (mark_interval, mark_maybe_object, mark_maybe_pointer)
10829 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
10830 (mark_buffer): Update calls to mark_object.
10831
10832 * bytecode.c (mark_byte_stack):
10833 * fns.c (sweep_weak_table):
10834 * keyboard.c (mark_kboards): Update calls to mark_object.
10835
108362003-07-06 Jason Rumney <jasonr@gnu.org>
10837
10838 * alloc.c (struct ablock): Only include padding when there is some.
10839
108402003-07-04 Stefan Monnier <monnier@cs.yale.edu>
10841
10842 * alloc.c (ALIGN): Add casts to simplify usage.
10843 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
10844 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
10845 (struct ablock, struct ablocks): New types.
10846 (free_ablock): New global var.
10847 (lisp_align_malloc, lisp_align_free): New functions.
10848 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
10849 (struct float_block): Reorder and add gcmarkbits.
10850 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
10851 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
10852 (init_float, make_float): Use lisp_align_malloc.
10853 (free_float, live_float_p): Don't use `type' any more.
10854 (make_float): Use FLOAT_UNMARK to access to mark bit.
10855 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
10856 Use FLOAT_MARKED_P to access the mark bit.
10857 (pure_alloc): Simplify use of ALIGN.
10858 (mark_object): Use FLOAT_MARK to access the mark bit.
10859 (gc_sweep): Use new macros to access the float's mark bit.
10860 (init_alloc_once): Init free_ablock.
10861
10862 * lisp.h (struct Lisp_Float): Remove unused field `type'.
10863
108642003-06-27 Stefan Monnier <monnier@cs.yale.edu>
10865
10866 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
10867 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
10868 (allocate_buffer): Move.
10869 (string_bytes): Don't mask markbit of `size_byte'.
10870 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
10871 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
10872 Use the `size' field of buffers (rather than the `name' field) for
10873 the mark bit, as is done for all other vectorlike objects.
10874 Use the new macros to access the mark bit of vectorlike objects.
10875
108762003-06-26 Richard M. Stallman <rms@gnu.org>
10877
10878 * puresize.h (BASE_PURESIZE): Increment base size.
10879
10880 * xdisp.c (fast_find_position): Enable Gerd's new definition.
10881
10882 * xterm.c (xim_initialize): Undo previous change.
10883
108842003-06-26 Stefan Monnier <monnier@cs.yale.edu>
10885
10886 * alloc.c (survives_gc_p): Simplify.
10887
10888 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
10889
10890 * window.c (Fset_window_dedicated_p): Simplify.
10891 (display_buffer_1): Don't raise the win from which minibuf was entered.
10892 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
10893 (Fminibuffer_selected_window): Simplify.
10894
10895 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
10896
10897 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
10898 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
10899
10900 * insdel.c (check_markers, adjust_markers_for_delete)
10901 (adjust_markers_for_insert, adjust_markers_for_replace)
10902 (prepare_to_modify_buffer, RESTORE_VALUE):
10903 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
10904 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
10905 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
10906 * alloc.c (Fmake_marker, free_marker, gc_sweep):
10907 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
10908 * editfns.c (save_excursion_restore, transpose_markers):
10909 * window.c (delete_window):
10910 * xdisp.c (message_dolog): Update for new types.
10911
109122003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10913
10914 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
10915 (realize_default_face): Use default_face_done_p for the force_p
10916 argument to set_lface_from_font_name. Set default_face_done_p to one.
10917
10918 * frame.c (make_frame): Initialize default_face_done_p.
10919
10920 * frame.h (struct frame): Add default_face_done_p.
10921
10922 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
10923 will be defined.
10924
109252003-06-25 Stefan Monnier <monnier@cs.yale.edu>
10926
10927 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
10928 Initialize the new field `gcmarkbit'.
10929 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
10930 (mark_interval_tree): Don't mark the tree separately from the nodes.
10931 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
10932 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
10933 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
10934
10935 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
10936 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
10937 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
10938 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
10939 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
10940
109412003-06-24 Dave Love <fx@gnu.org>
10942
10943 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
10944
10945 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
10946 from gnulib.
10947
109482003-06-21 Richard M. Stallman <rms@gnu.org>
10949
10950 * fileio.c (Fwrite_region): Alternate messages
10951 for append and partial write.
10952
10953 * keyboard.c (read_key_sequence): When converting upcase fn key to
10954 downcase, update fkey and keytran so `backspace' gets translated.
10955
10956 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
10957
10958 * process.c (wait_reading_process_input): Don't signal SIGIO
10959 in batch mode.
10960
109612003-06-17 Kenichi Handa <handa@m17n.org>
10962
10963 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
10964 composite.h.
10965
10966 * xselect.c: Don't include charset.h, coding.h, composite.h.
10967 (Qforeign_selection): New variable.
10968 (syms_of_xselect): Intern and static it.
10969 (selection_data_to_lisp_data): Return a unibyte string made from
10970 data with `foreign-selection' text property.
10971
109722003-06-15 Stefan Monnier <monnier@cs.yale.edu>
10973
10974 * termhooks.h (EVENT_INIT): New macro.
10975
10976 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
10977
10978 * alloc.c (mark_kboards): Move to keyboard.c.
10979
10980 * keyboard.c (record_asynch_buffer_change, read_avail_input):
10981 * xterm.c (x_dispatch_event):
10982 * xmenu.c (find_and_call_menu_selection):
10983 * xdisp.c (handle_tool_bar_click):
10984 * w32menu.c (menubar_selection_callback):
10985 * sysdep.c (kbd_input_ast, read_input_waiting):
10986 * msdos.c (dos_rawgetc):
10987 * macterm.c (mac_check_for_quit_char):
10988 * macmenu.c (menubar_selection_callback):
10989 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
10990 data to kbd_buffer_store_event.
10991
109922003-06-15 Kim F. Storm <storm@cua.dk>
10993
10994 * xdisp.c (x_fix_overlapping_area): Always use area relative X
10995 to fix redisplay problem with tall characters (such as \e,AC\e(B).
10996
109972003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
10998
10999 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
11000
110012003-06-12 Kenichi Handa <handa@m17n.org>
11002
11003 * fileio.c (Fwrite_region): Save and restore restriction.
11004
110052003-06-12 Dave Love <fx@gnu.org>
11006
11007 * alloca.c (alloca): Declare arg as size_t.
11008
11009 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
11010 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
11011
110122003-06-11 Dave Love <fx@gnu.org>
11013
11014 * search.c (shrink_regexp_cache): Use xrealloc.
11015 (syms_of_search): Use xmalloc.
11016
110172003-06-10 Kim F. Storm <storm@cua.dk>
11018
11019 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
11020 Adjust phys_cursor.x to be relative to window box, rather than
11021 text area before checking -- to ensure cursor is redrawn when
11022 exposing window.
11023 Note: This also fixes a similar (older) bug if display margins
11024 are present.
11025
110262003-06-06 Kenichi Handa <handa@m17n.org>
11027
11028 * coding.c (encoding_buffer_size): If coding->type is
11029 coding_type_ccl, double magnification on CRLF encoding.
11030
110312003-06-06 Jason Rumney <jasonr@gnu.org>
11032
11033 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
11034 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
11035
11036 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
11037 Mac too.
11038
110392003-06-05 Dave Love <fx@gnu.org>
11040
11041 * strftime.c: Merge changes from gnulib.
11042
11043 * mktime.c (__mktime_internal): Merge changes from gnulib
11044 involving year 69 and dst2.
11045
11046 Changes to merge with gnulib version and be consistent with the
11047 autoconf test:
11048
11049 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
11050 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
11051 [HAVE_LOCALE_H]: Include locale.h.
11052 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
11053
110542003-06-05 Kim F. Storm <storm@cua.dk>
11055
11056 * window.c (coordinates_in_window): Convert X and Y to window
11057 relative coordinates inside mode-line and header-line parts.
11058 Convert X and Y to margin area relative coordinates inside left
11059 and right display margin parts.
11060
110612003-06-05 Jason Rumney <jasonr@gnu.org>
11062
11063 * w32fns.c (add_system_logical_colors_to_map): New function.
11064 (Fx_open_connection): Use it.
11065
110662003-06-04 Stefan Monnier <monnier@cs.yale.edu>
11067
11068 * process.c (allocate_pty): Revert part of the previous patch.
11069 (Faccept_process_output): Simplify.
11070
110712003-06-04 Jason Rumney <jasonr@gnu.org>
11072
11073 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
11074
11075 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
11076 (lispy_mouse_wheel_names): Remove.
11077 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
11078 Always define drag_and_drop_syms.
11079
11080 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
11081 WHEEL_EVENT events.
11082
110832003-06-03 Stefan Monnier <monnier@cs.yale.edu>
11084
11085 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
11086
11087 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
11088
110892003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11090
11091 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
11092 menu item label.
11093
110942003-06-03 Richard M. Stallman <rms@gnu.org>
11095
11096 * window.c (Fwindow_edges): Doc fix.
11097 (Fwindow_pixel_edges, Fwindow_inside_edges)
11098 (Fwindow_inside_pixel_edges): New functions.
11099 (syms_of_window): defsubr them.
11100
11101 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
11102 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
11103
111042003-06-02 Stefan Monnier <monnier@cs.yale.edu>
11105
11106 * dispnew.c (Fsit_for): Don't lie about the number of args.
11107
111082003-06-02 Dave Love <fx@gnu.org>
11109
11110 * callproc.c: Use HAVE_FCNTL_H, not USG5.
11111 (syms_of_callproc) <process-environment>: Doc fix.
11112
11113 * doc.c: Use HAVE_FCNTL_H, not USG5.
11114
11115 * xfaces.c (font_rescale_ratio): Fix for K&R.
11116
11117 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
11118
11119 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
11120
11121 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
11122
11123 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
11124 (xg_create_frame_widgets): Use ENCODE_UTF_8.
11125
11126 * xterm.c (Qutf_8): Move to coding.c
11127
11128 * xmenu.c (ENCODE_MENU_STRING): New.
11129 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
11130 Use it.
11131
11132 * coding.h (ENCODE_UTF_8): New.
11133 (Qutf_8): Declare.
11134
11135 * coding.c (Qutf_8): New.
11136 (syms_of_coding): Intern it.
11137
11138 * fns.c: Doc fixes.
11139
111402003-06-02 Kenichi Handa <handa@m17n.org>
11141
11142 * buffer.c (Fset_buffer_multibyte): Fix previous change.
11143
111442003-06-01 Stefan Monnier <monnier@cs.yale.edu>
11145
11146 * lread.c (openp): Make sure STR is a string.
11147
111482003-06-01 David Ponce <david@dponce.com>
11149
11150 * termhooks.h (enum event_kind): Add new WHEEL_EVENT event.
11151 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
11152
11153 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
11154 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
11155 (discard_mouse_events): Discard WHEEL_EVENT events too.
11156 (lispy_wheel_names, wheel_syms): New.
11157 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
11158 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX defined.
11159 (make_lispy_event): Add WHEEL_EVENT handler.
11160
11161 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
11162 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
11163 WHEEL_EVENT events.
11164
111652003-05-31 John Paul Wallington <jpw@gnu.org>
11166
11167 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
11168 timer are in lisp/emacs-lisp.
11169
111702003-05-31 Kenichi Handa <handa@m17n.org>
11171
11172 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
11173 region when a buffer is changed to unibyte.
11174
11175 * charset.h (VALID_LEADING_CODE_P): New macro.
11176 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
11177
11178 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
11179 is nonzero, accept multibyte form of eight-bit-control chars.
11180 (decode_composition_emacs_mule): Likewise.
11181 (decode_coding_emacs_mule): Likewise.
11182 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
11183 multibyte form of eight-bit-control chars.
11184
11185 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
11186 (Finsert_file_contents): If coding-system-for-read is bound to
11187 Qauto_save_coding, use the coding system emacs-mule with special
11188 setting for recovering a file.
11189 (choose_write_coding_system): On auto saving, use the coding
11190 system emacs-mule with special setting for auto saving.
11191 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
11192
111932003-05-30 Kenichi Handa <handa@m17n.org>
11194
11195 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
11196 properly before calling ccl_driver.
11197
11198 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
11199
11200 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is nonzero.
11201 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
11202 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
11203
112042003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
11205
11206 * xfaces.c (realize_default_face): Do not abort if lface is
11207 non-existent - reverts change from 2003-05-19.
11208
112092003-05-29 Kenichi Handa <handa@m17n.org>
11210
11211 * coding.c (decode_coding_iso2022): Pay attention to the byte
11212 sequence of CTEXT extended segment, and retain those bytes as is.
11213
112142003-05-28 Kenichi Handa <handa@m17n.org>
11215
11216 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjust for the name change
11217 of CODING_REPLACEMENT_CHARACTER.
11218 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
11219 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
11220 check this flag on encoding.
11221 (encode_coding_sjis_big5):
11222 Check CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
11223 (Fset_terminal_coding_system_internal):
11224 Set CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
11225 instead of setting CODING_FLAG_ISO_SAFE flag in terminal_coding.flags.
11226
11227 * coding.h (CODING_REPLACEMENT_CHARACTER): Rename from
11228 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
11229 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
11230
112312003-05-28 Richard M. Stallman <rms@gnu.org>
11232
11233 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
11234
11235 * eval.c (unbind_to): Move init of this_binding to separate statement.
11236
112372003-05-28 Kim F. Storm <storm@cua.dk>
11238
11239 * xdisp.c (expose_window): Fix error in calculation of
11240 window relative coordinates of area to redisplay.
11241
112422003-05-27 Jason Rumney <jasonr@gnu.org>
11243
11244 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
11245
112462003-05-27 David Ponce <david@dponce.com>
11247
11248 Handle W32 mouse wheel events as mouse click events, like in X.
11249
11250 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
11251 MOUSE_WHEEL_EVENT anymore.
11252
11253 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
11254 Scrolling down/up the mouse wheel is respectively mapped to mouse
11255 button 4 and 5.
11256 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
11257 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
11258 WM_MOUSEWHEEL events.
11259
112602003-05-27 Andreas Schwab <schwab@suse.de>
11261
11262 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
11263
11264 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
11265 partially visible line.
11266
11267 * alloc.c (Fgarbage_collect): Fix last change.
11268
112692003-05-26 John Paul Wallington <jpw@gnu.org>
11270
11271 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
11272
112732003-05-25 Stefan Monnier <monnier@cs.yale.edu>
11274
11275 * window.c (Fset_window_buffer): Add type of `keep_margins'.
11276 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
11277
11278 * window.h (window_box_text_cols): Declare.
11279
11280 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
11281 (x_draw_vertical_border): Remove unused var `f'.
11282
11283 * xfaces.c (build_scalable_font_name): Remove `unused var
11284 pixel_size' warning.
11285
11286 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
11287
11288 * unexelf.c (unexec): Remove `unused var n' warning.
11289
11290 * strftime.c (my_strftime_localtime_r): Remove `defined but
11291 unused' warning.
11292
11293 * process.c (allocate_pty): Remove `unused var stb' and
11294 `cp might be used uninitialized' warnings.
11295
11296 * dispnew.c (mode_line_string): Remove unused var `f'.
11297
11298 * coding.c (find_safe_codings): Remove unused var `i'.
11299
11300 * bytecode.c (Fbyte_code): Remove `unused val' warning.
11301
11302 * buffer.c (Fkill_buffer): Remove unused var `list'.
11303
11304 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
11305
113062003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11307
11308 * frame.c (make_frame): Condition want_fullscreen with
11309 HAVE_WINDOW_SYSTEM.
11310
113112003-05-25 Juanma Barranquero <lektu@terra.es>
11312
11313 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
11314 (Fwindow_scroll_bars): Fix typo in docstring.
11315
113162003-05-24 Kim F. Storm <storm@cua.dk>
11317
11318 The following changes serve several purposes:
11319
11320 1) Swap the position of fringes and display margins in windows, i.e.
11321 the fringes are now displayed between the margins and the text area
11322 (by default).
11323
11324 2) Allow fringe and scroll bar parameters to be set per-buffer and
11325 per-window (like display margins). Such settings are now stored
11326 in window configurations, preserved when frames are resized, and
11327 copied when windows are split vertically or horizontally.
11328 Several bugs related to display margins have been fixed.
11329
11330 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
11331
11332 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
11333 rather than FRAME_WIDTH (FRAME_FONT (f)).
11334
11335 5) Introduce a consistent naming of variables, members and macros
11336 depending on whether their value is measured in pixels or in
11337 canonical columns/lines. Pixel dimensions are named *_width and
11338 *_height, while canonical columns/lines are named *_cols and
11339 *_lines. Pixel positions are named *_x and *_y, while column/line
11340 positions are named *_col and *_line.
11341
11342 6) Consolidate more of the X, W32, and MAC gui code by moving
11343 common data into struct frame, and generalize it for the non-gui
11344 case by using suitable defaults.
11345
11346 7) Cleanup and consolidate the macros controlling frame and window
11347 layout into frame.h and window.h, and generalize the use of the
11348 various window_box_* functions (enhanced to handle the new fringe
11349 position and the per-window fringe and scroll bar settings).
11350
11351 * frame.h (struct frame): Rename members height to text_lines,
11352 width to text_cols, window_height to total_lines, window_width to
11353 total_cols, new_height to new_text_lines, new_width to
11354 new_text_cols. All uses changed.
11355 (struct frame): New members which consolidate common members of
11356 x_output, w32_output, and mac_output structures: left_pos,
11357 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
11358 win_gravity, size_hint_flags, border_width, internal_border_width,
11359 line_height, fringe_cols, left_fringe_width, right_fringe_width,
11360 want_fullscreen. All uses changed.
11361 (struct frame): New member column_width contaning the canonical
11362 column width, analogue to line_height. All uses changed.
11363 (struct frame): Rename members scroll_bar_pixel_width to
11364 config_scroll_bar_width, and scroll_bar_cols to
11365 config_scroll_bar_cols. All uses changed.
11366 (struct frame): New member scroll_bar_actual_width which
11367 consolidates and renames the vertical_scroll_bar_extra member of
11368 x_output, w32_output, and mac_output structures. All uses changed.
11369 (FRAME_PIXEL_HEIGHT): Rename from PIXEL_HEIGHT and moved
11370 from x/w32/macterm.h files. All uses changed. Also change code
11371 which referred to f->output_data...->pixel_height.
11372 (FRAME_PIXEL_WIDTH): Rename from PIXEL_WIDTH and moved
11373 from x/w32/macterm.h files. All uses changed. Also change code
11374 which referred to f->output_data...->pixel_width.
11375 (FRAME_LINES): Rename from FRAME_HEIGHT. All uses changed.
11376 Also change code which referred to f->height.
11377 (FRAME_COLS): Rename from FRAME_WIDTH. All uses changed.
11378 Also change code which referred to f->width.
11379 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
11380 to update new_text_lines and new_text_cols members directly.
11381 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Rename from
11382 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
11383 (FRAME_CONFIG_SCROLL_BAR_COLS): Rename from
11384 FRAME_SCROLL_BAR_COLS. All uses changed.
11385 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
11386 Rename from FRAME_LEFT_SCROLL_BAR_WIDTH and
11387 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
11388 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
11389 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
11390 (FRAME_TOTAL_COLS): Rename from FRAME_WINDOW_WIDTH.
11391 (SET_FRAME_COLS): Rename from SET_FRAME_WIDTH.
11392 (FRAME_TOTAL_COLS_ARG): Rename from FRAME_WINDOW_WIDTH_ARG.
11393 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
11394 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
11395 (FRAME_LINE_HEIGHT): Rename from CANON_Y_UNIT.
11396 Unconditionally return line_height member (it now has proper value
11397 also for non-window frames).
11398 (FRAME_COLUMN_WIDTH): Rename from CANON_X_UNIT. Unconditionally
11399 return new column_width member (rather than the default font width).
11400 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
11401 (FRAME_RIGHT_FRINGE_WIDTH): Rename from FRAME_X_... and moved
11402 from x/w32/macterm.h files. Unconditionally return corresponding
11403 member of frame structure (they now have proper values also for
11404 non-window frames).
11405 (FRAME_TOTAL_FRINGE_WIDTH): Rename from FRAME_FRINGE_WIDTH.
11406 Calculate return value from left and right widths.
11407 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
11408 internal_border_width member (has proper value for non-window frame).
11409 (FRAME_PIXEL_X_FROM_CANON_X): Rename from PIXEL_X_FROM_CANON_X.
11410 (FRAME_PIXEL_Y_FROM_CANON_Y): Rename from PIXEL_Y_FROM_CANON_Y.
11411 (FRAME_CANON_X_FROM_PIXEL_X): Rename from CANON_X_FROM_PIXEL_X.
11412 (FRAME_CANON_Y_FROM_PIXEL_Y): Rename from CANON_Y_FROM_PIXEL_Y.
11413 (FRAME_LINE_TO_PIXEL_Y): Rename from CHAR_TO_PIXEL_ROW,
11414 consolidated from xterm.h, macterm.h, and w32term.h.
11415 (FRAME_COL_TO_PIXEL_X): Rename from CHAR_TO_PIXEL_COL,
11416 consolidated from xterm.h, macterm.h, and w32term.h.
11417 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Rename from
11418 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
11419 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Rename from
11420 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
11421 (FRAME_PIXEL_Y_TO_LINE): Rename from PIXEL_TO_CHAR_ROW
11422 consolidated from x/mac/w32term.h.
11423 (FRAME_PIXEL_X_TO_COL): Rename from PIXEL_TO_CHAR_COL
11424 consolidated from x/mac/w32term.h.
11425 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Rename from
11426 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
11427 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Rename from
11428 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
11429
11430 * window.h (struct window): Rename members left to left_col,
11431 top to top_line, height to total_lines, width to total_cols,
11432 left_margin_width to left_margin_cols, right_margin_width to
11433 right_margin_cols, orig_height to orig_total_lines, orig_top to
11434 orig_top_line. All uses changed.
11435 (struct window): New members left_fringe_width, right_fringe_width,
11436 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
11437 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
11438 New macros primarily used to simplify other macros.
11439 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
11440 referred to XINT (w->width).
11441 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
11442 referred to XINT (w->height).
11443 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
11444 referred to XINT (w->width) * canon_x_unit.
11445 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
11446 referred to XINT (w->height) * canon_y_unit.
11447 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
11448 referred to XINT (w->left).
11449 (WINDOW_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_EDGE. Change
11450 all uses and code that referred to XINT (w->left) + XINT (w->width).
11451 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
11452 referred to XINT (w->top).
11453 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
11454 referred to XINT (w->top) + XINT (w->height).
11455 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
11456 referred to XINT (w->left) * canon_x_unit.
11457 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
11458 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
11459 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
11460 referred to XINT (w->top) * canon_y_unit.
11461 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
11462 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
11463 (WINDOW_LEFTMOST_P): New macro.
11464 (WINDOW_BOX_LEFT_EDGE_COL): Rename from WINDOW_LEFT_MARGIN.
11465 All uses changed.
11466 (WINDOW_BOX_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_MARGIN.
11467 All uses changed.
11468 (WINDOW_BOX_LEFT_EDGE_X): Rename from
11469 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
11470 Do not exclude left fringe width.
11471 (WINDOW_BOX_RIGHT_EDGE_X): Rename from
11472 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
11473 Do not exclude fringe widths.
11474 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
11475 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
11476 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
11477 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
11478 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
11479 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
11480 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
11481 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
11482 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
11483 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
11484 New macros. Change code which referenced corresponding
11485 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
11486 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
11487 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
11488 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
11489 allow per-window scroll-bar settings.
11490 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
11491 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
11492 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
11493 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
11494 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
11495 FRAME_SCROLL_BAR_WIDTH.
11496 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
11497 (WINDOW_SCROLL_BAR_AREA_X): New macros.
11498 (WINDOW_HEADER_LINE_HEIGHT): Rename from
11499 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
11500 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Rename from
11501 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
11502 (WINDOW_BOX_TEXT_HEIGHT): Rename from
11503 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
11504 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
11505 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
11506 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Move here from dispextern.h.
11507 (WINDOW_LEFT_MARGIN_WIDTH): Rename from
11508 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
11509 (WINDOW_RIGHT_MARGIN_WIDTH): Rename from
11510 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
11511 (window_from_coordinates): Update prototype.
11512 (Fset_window_buffer): Update EXFUN.
11513 (set_window_buffer): Update prototype.
11514
11515 * dispextern.h (struct glyph_matrix): Rename members window_left_x
11516 to window_left_col, window_top_y to window_top_line. All uses
11517 changed.
11518 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
11519 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
11520 internal_border_width is now set to 0 for non-window frames.
11521 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
11522 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
11523 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
11524 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
11525 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
11526 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
11527 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
11528 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
11529 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
11530 Move to window.h and renamed [see window.h changes].
11531 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
11532 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
11533 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
11534 Use WINDOW_TOTAL_LINES.
11535 (frame_update_line_height): Remove prototype.
11536
11537 * buffer.h (struct buffer): Rename members measured in columns:
11538 left_margin_width to left_margin_cols, right_margin_width to
11539 right_margin_cols. All uses changed.
11540 New members left_fringe_width, right_fringe_width,
11541 fringes_outside_margins for per-buffer fringe settings.
11542 New members scroll_bar_width and vertical_scroll_bar_type for
11543 per-buffer scroll bar settings.
11544
11545 * buffer.c (init_buffer_once): Set buffer_defaults and
11546 buffer_local_flags for new buffer-local variables
11547 left_fringe_width, right_fringe_width, fringes_outside_margins,
11548 scroll_bar_width, and vertical_scroll_bar_type.
11549 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
11550 default-* variables for them.
11551
11552 * dispnew.c: Make (many) trivial substitutions for renamed and
11553 new macros in dispextern.h, frame.h and window.h.
11554 (mode_line_string): No need to adjust width for mode lines, as it
11555 is already adjusted by the caller.
11556 (marginal_area_string): Handle fringes inside/outside margins.
11557
11558 * frame.c: Make (many) trivial substitutions for renamed and
11559 new macros in dispextern.h, frame.h and window.h.
11560 (make_frame): Initialize left_fringe_width, right_fringe_width,
11561 fringe_cols, scroll_bar_actual_width, border_width,
11562 internal_border_width, column_width, line_height, x_pixels_diff,
11563 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
11564 members with values suitable for a non-window frames.
11565
11566 * gtkutil.c: Make (many) trivial substitutions for renamed and
11567 new macros in dispextern.h, frame.h and window.h.
11568
11569 * indent.c: Make (few) trivial substitutions for renamed and
11570 new macros in dispextern.h, frame.h and window.h.
11571
11572 * keyboard.c: Make (many) trivial substitutions for renamed and
11573 new macros in dispextern.h, frame.h and window.h.
11574 (make_lispy_event): Use window positions returned from
11575 window_from_coordinates when constructing the lisp event for
11576 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
11577 (incorrect) values locally.
11578 (make_lispy_movement): Use window positions returned from
11579 window_from_coordinates when constructing the lisp event, rather
11580 than calculating (incorrect) values locally.
11581
11582 * scroll.c: Make (some) trivial substitutions for renamed and
11583 new macros in dispextern.h, frame.h and window.h.
11584
11585 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
11586 scroll-bars.
11587
11588 * sysdep.c: Make (few) trivial substitutions for renamed and
11589 new macros in dispextern.h, frame.h and window.h.
11590
11591 * term.c: Make (some) trivial substitutions for renamed and
11592 new macros in dispextern.h, frame.h and window.h.
11593
11594 * widget.c: Make (few) trivial substitutions for renamed and
11595 new macros in dispextern.h, frame.h and window.h.
11596
11597 * window.c: Make (many) trivial substitutions for renamed and
11598 new macros in dispextern.h, frame.h and window.h.
11599 (make_window): Initialize new members
11600 left_margin_cols, right_margin_cols, left_fringe_width,
11601 right_fringe_width, fringes_outside_margins, scroll_bar_width,
11602 and vertical_scroll_bar_type.
11603 (coordinates_in_window): Adapt to new fringe/margin positions
11604 and per-window fringes and scroll-bars.
11605 Fix bug related to incorrectly adjusting coordinates by
11606 frame's internal_border_width (the effect normally negible since
11607 the internal_border_width is typically 0 or 1 pixel, but very
11608 noticeable for an internal_border_width of e.g. 25 pixels).
11609 Upon successful return (other than ON_NOTHING), the coordinates
11610 are now always properly converted to window relative for the
11611 given display element.
11612 (window_from_coordinates): Add new parameters wx and wy to
11613 return the window relative x and y position in the returned
11614 window and part. A null arg means, don't return the position.
11615 All callers changed.
11616 (adjust_window_margins): New function which may reduce the width
11617 of the display margins if a window's text area is too small after
11618 resizing or splitting windows.
11619 (size_window): Fix bug that did not account for display margin
11620 widths when checking the minimum width of a window; use
11621 adjust_window_margins.
11622 (set_window_buffer): Call Fset_window_fringes and
11623 Fset_window_scroll_bars to setup per-window elements.
11624 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
11625 existing display margin, fringe widths, and scroll bar settings
11626 (e.g. after splitting a window or resizing the frame).
11627 All callers changed.
11628 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
11629 (Fsplit_window): Duplicate original window's display margin,
11630 fringe, and scroll-bar settings; then call Fset_window_buffer with
11631 KEEP_MARGINS non-nil. This fixes a bug which caused a split
11632 window to only preserve the display margins in one of the windows.
11633 When splitting horizontally, call adjust_window_margins on both
11634 windows to ensure that the text area of the new windows is non too
11635 narrow. This fixes a bug which could cause Emacs to trap if the
11636 width of the split window was less than the width of the display
11637 margins.
11638 (window_box_text_cols): Rename from window_internal_width.
11639 All uses changed. Adapt to per-window fringes and scroll bars.
11640 Fix bug that caused vertical separator to be subtracted also on
11641 window frames. Fix another bug that did not reduce the returned
11642 value by the columns used for display margins.
11643 (window_scroll_line_based): Fix bug related to scrolling too much
11644 when display margins are present (implicitly fixed by the fix to
11645 window_box_text_cols).
11646 (scroll_left, scroll_right): Fix bug related to scrolling too far
11647 by default when display margins are present (implicitly fixed by
11648 the fix to window_box_text_cols).
11649 (struct saved_window): Rename members left to left_col, top to
11650 top_line, width to total_cols, height to total_lines, orig_top to
11651 orig_top_line, orig_height to orig_total_lines. All uses changed.
11652 New members left_margin_cols, right_margin_cols,
11653 left_fringe_width, right_fringe_width, fringes_outside_margins,
11654 scroll_bar_width, and vertical_scroll_bar_type for saving
11655 per-window display elements.
11656 (Fset_window_configuration): Restore display margins, fringes,
11657 and scroll bar settings. This fixes a bug which caused display
11658 margins to be discarded when saving and restoring a window
11659 configuration.
11660 (save_window_save): Save display margins, fringes, and scroll bar
11661 settings. This fixes a bug which caused display margins to be
11662 discarded when saving and restoring a window configuration.
11663 (Fset_window_margins): Do nothing if display margins are not
11664 really changed. Otherwise, call adjust_window_margins to ensure
11665 the text area doesn't get too narrow. This fixes a bug which
11666 could cause Emacs to trap if setting display margins wider than
11667 the width of the window.
11668 (Fset_window_fringes): New defun to allow user to specifically set
11669 this window's fringe widths and position vs. display margins.
11670 (Fwindow_fringes): New defun to return window's actual fringe settings.
11671 (Fset_window_scroll_bars): New defun to allow user to specifically
11672 set this window's scroll bar width and position.
11673 (Fwindow_scroll_bars): New defun to return window's actual scroll
11674 bar settings.
11675 (compare_window_configurations): Also compare display margins,
11676 fringes, and scroll bar settings.
11677 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
11678
11679 * xdisp.c: Make (many) trivial substitutions for renamed and
11680 new macros in dispextern.h, frame.h and window.h.
11681 (window_box_width): Adapt to per-window fringes and scroll bars,
11682 and new fringe vs. display margin position. Note that returned
11683 value is no longer guaranteed to be a whole multiple of the frame
11684 column width, since per-window fringes may now be any width.
11685 (window_box_left_offset): New function like window_box_left, but
11686 value is relative to left border of window (rather than frame).
11687 (window_box_right_offset): New function like window_box_right,
11688 but value is relative to left border of window.
11689 (window_box_left): Adapt to per-window fringes and scroll bars,
11690 and new fringe vs. display margin position. Simplify by using
11691 WINDOW_LEFT_EDGE_X and window_box_left_offset.
11692 (window_box): Allow null args for unnecessary return values;
11693 change/simplify relevant callers.
11694 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
11695 and new fringe vs. display margin position.
11696 Use window_box_left_offset and window_box_right_offset
11697 (get_glyph_string_clip_rect): Adapt to per-window fringes and
11698 scroll bars, and new fringe vs. display margin position.
11699 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
11700 (draw_fringe_bitmap): Rework to handle per-window fringes and new
11701 fringe vs. display margin position.
11702 (hscroll_window_tree): Use window_box_width instead of window_box.
11703 (redisplay_window): Adapt to per-window scroll bars.
11704 (draw_glyphs): Rework to handle per-window fringes and scroll
11705 bars, and new fringe vs. display margin position.
11706 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
11707 (x_clear_end_of_line): Adapt to per-window fringes and scroll
11708 bars, and new fringe vs. display margin position. Fix bug which
11709 increased total width of full_width rows by width of scroll bars
11710 although window's total width already includes that.
11711 (x_fix_overlapping_area): Simplify using window_box_left_offset.
11712 (expose_area): Simplify using window_box_left_offset.
11713 (x_draw_vertical_border): Handle per-window scroll bar settings,
11714 mixing windows with left, right and no scroll bars.
11715
11716 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
11717 where it's used in x_list_fonts (for clarity).
11718 (frame_update_line_height): Remove unused function; functionality
11719 is now done directly when setting the default font in x_set_font.
11720
11721 * xfns.c: Make (many) trivial substitutions for renamed and
11722 new macros in dispextern.h, frame.h and window.h.
11723
11724 * xmenu.c: Make (some) trivial substitutions for renamed and
11725 new macros in dispextern.h, frame.h and window.h.
11726
11727 * xterm.h (struct x_output): Move members left_pos, top_pos,
11728 border_width, pixel_height, pixel_width, line_height,
11729 internal_border_width, vertical_scroll_bar_extra,
11730 left_fringe_width, right_fringe_width, fringe_cols,
11731 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
11732 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
11733 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
11734 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
11735 (PIXEL_WIDTH, PIXEL_HEIGHT)
11736 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
11737 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
11738 frame.h and renamed [see frame.h changes].
11739 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
11740 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
11741 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
11742 and renamed [see frame.h changes].
11743
11744 * xterm.c: Make (several) trivial substitutions for renamed and
11745 new macros in dispextern.h, frame.h and window.h.
11746 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
11747 (scroll_run): Adapt to new fringe position.
11748 (glyph_rect): Use window coordinates returned from
11749 window_from_coordinates rather than frame_to_window_pixel_xy.
11750 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
11751 scroll-bars.
11752 (handle_one_xevent): Simplify a USE_GTK conditional.
11753 (x_clip_to_row): Remove superfluous whole_line_p arg and code
11754 (fringes are now inside margins, i.e. always in the clipping area).
11755 All callers changed.
11756 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
11757 directly, then call compute_fringe_widths. Don't call
11758 frame_update_line_height.
11759
11760 * w32term.h (struct w32_output): Move members left_pos, top_pos,
11761 border_width, pixel_height, pixel_width, line_height,
11762 internal_border_width, vertical_scroll_bar_extra,
11763 left_fringe_width, right_fringe_width, fringe_cols,
11764 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
11765 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
11766 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
11767 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
11768 (PIXEL_WIDTH, PIXEL_HEIGHT)
11769 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
11770 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
11771 frame.h and renamed [see frame.h changes].
11772 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
11773 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
11774 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
11775 and renamed [see frame.h changes].
11776
11777 * w32term.c: Make (several) trivial substitutions for renamed and
11778 new macros in dispextern.h, frame.h and window.h.
11779 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
11780 (glyph_rect): Use window coordinates returned from
11781 window_from_coordinates rather than frame_to_window_pixel_xy.
11782 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
11783 scroll-bars.
11784 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
11785 (fringes are now inside margins, i.e. always in the clipping area).
11786 All callers changed.
11787 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
11788 directly, then call compute_fringe_widths. Don't call
11789 frame_update_line_height.
11790
11791 * w32console.c: Make (few) trivial substitutions for renamed and
11792 new macros in dispextern.h, frame.h and window.h.
11793
11794 * w32fns.c: Make (many) trivial substitutions for renamed and
11795 new macros in dispextern.h, frame.h and window.h.
11796
11797 * w32menu.c: Make (few) trivial substitutions for renamed and
11798 new macros in dispextern.h, frame.h and window.h.
11799
11800 * macterm.h (struct mac_output): Move members left_pos, top_pos,
11801 border_width, pixel_height, pixel_width, line_height,
11802 internal_border_width, vertical_scroll_bar_extra,
11803 left_fringe_width, right_fringe_width, fringe_cols,
11804 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
11805 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
11806 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
11807 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
11808 (PIXEL_WIDTH, PIXEL_HEIGHT)
11809 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
11810 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
11811 frame.h and renamed [see frame.h changes].
11812 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
11813 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
11814 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
11815 and renamed [see frame.h changes].
11816
11817 * macterm.c: Make (several) trivial substitutions for renamed and
11818 new macros in dispextern.h, frame.h and window.h.
11819 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
11820 (glyph_rect): Use window coordinates returned from
11821 window_from_coordinates rather than frame_to_window_pixel_xy.
11822 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
11823 scroll-bars.
11824 (x_clip_to_row): Remove superfluous whole_line_p arg and code
11825 (fringes are now inside margins, i.e. always in the clipping area).
11826 All callers changed.
11827 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
11828 directly, then call compute_fringe_widths. Don't call
11829 frame_update_line_height.
11830
11831 * macfns.c: Make (several) trivial substitutions for renamed and
11832 new macros in dispextern.h, frame.h and window.h.
11833 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
11834
11835 * macmenu.c: Make (few) trivial substitutions for renamed and
11836 new macros in dispextern.h, frame.h and window.h.
11837
11838 * msdos.h (struct x_output): Remove members left_pos, top_pos,
11839 and line_height, and use corresponding new members in struct
11840 frame. All uses changed.
11841 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
11842 superseeded by corresponding macros in frame.h.
11843
11844 * msdos.c: Make (several) trivial substitutions for renamed and
11845 new macros in dispextern.h, frame.h and window.h.
11846 (IT_note_mouse_highlight): Use updated window coordinates returned
11847 by window_from_coordinates, rather than adjusting them locally.
11848 (internal_terminal_init): No need to initialize line_height here;
11849 it now defaults to 1.
11850
118512003-05-24 Stefan Monnier <monnier@cs.yale.edu>
11852
11853 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
11854 dropping `down' events.
11855
118562003-05-24 Andreas Schwab <schwab@suse.de>
11857
11858 * coding.c (find_safe_codings): Fix last change.
11859
118602003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
11861
11862 * xfns.c (x_window): Fix typo from 2003-05-21 change.
11863
118642003-05-23 Stefan Monnier <monnier@cs.yale.edu>
11865
11866 * xdisp.c (display_mode_element): Increase max depth.
11867 Simplify the error handling code. Use a different error string
11868 for the case where we hit the depth limit.
11869
11870 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
11871
11872 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
11873
118742003-05-21 Stefan Monnier <monnier@cs.yale.edu>
11875
11876 * intervals.c (get_local_map): Don't get char-property of previous
11877 point any more: get_pos_property already does it and better.
11878
118792003-05-21 Dave Love <fx@gnu.org>
11880
11881 [Merged from unicode branch.]
11882
11883 * xfns.c (x_window, x_window): Use use_xim.
11884
11885 * xterm.c (use_xim): Initialize.
11886 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
11887 (x_term_init): Maybe set use_xim.
11888
11889 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
11890
118912003-05-21 Jason Rumney <jasonr@gnu.org>
11892
11893 * unexw32.c (_start): Remove _fmode initialization.
11894
11895 * emacs.c (main) [WINDOWSNT]: Move it here.
11896
118972003-05-20 Dave Love <fx@gnu.org>
11898
11899 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
11900
119012003-05-19 Richard M. Stallman <rms@gnu.org>
11902
11903 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
11904 as value for QCfont attribute.
11905 (realize_default_face): lface should already exist; crash if not.
11906 Specify 0 for FORCE_P when calling set_lface_from_font_name.
11907
11908 * frame.c (Fignore_event): Doc fix.
11909
119102003-05-19 Kenichi Handa <handa@m17n.org>
11911
11912 * coding.c (decode_coding_string): Handle post-read-conversion
11913 even if the coding doesn't require decoding.
11914
119152003-05-18 Richard M. Stallman <rms@gnu.org>
11916
11917 * callproc.c (Fcall_process_region): Doc fix.
11918
119192003-05-17 Stefan Monnier <monnier@cs.yale.edu>
11920
11921 * lread.c (Fload): Print a message if package is obsolete.
11922
11923 * window.c (Fselect_window): Add optional `norecord' arg.
11924 (select_window_1): Fold into Fselect_window.
11925 (select_window_norecord): New function.
11926 (temp_output_buffer_show): Use it. Preserve current buffer.
11927
11928 * window.h (Fselect_window): Update declaration.
11929
11930 * window.c (delete_window, Fother_window, Fset_window_configuration):
11931 * minibuf.c (read_minibuf):
11932 * macterm.c (x_new_focus_frame):
11933 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
11934 * callint.c (Fcall_interactively):
11935 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
11936
11937 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
11938
119392003-05-17 David Kastrup <dak@gnu.org>
11940
11941 * process.c (read_process_output): Back out change from 2003-03-09.
11942
119432003-05-17 Stefan Monnier <monnier@cs.yale.edu>
11944
11945 * editfns.c (get_pos_property): Don't assume that `object' = nil.
11946
11947 * textprop.c (text_property_stickiness): New arg `buffer'.
11948
11949 * intervals.h (text_property_stickiness): New arg `buffer'.
11950 (get_pos_property): Declare.
11951
11952 * intervals.c (get_local_map): Use get_pos_property, to obey
11953 stickiness and empty overlays.
11954 (create_root_interval, graft_intervals_into_buffer): Use BEG.
11955 (merge_properties, intervals_equal, merge_properties_sticky):
11956 Use XCAR, XCDR.
11957 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
11958
119592003-05-17 Richard M. Stallman <rms@gnu.org>
11960
11961 * minibuf.c (read_minibuf): If buffer is empty, record the default
11962 in the history.
11963 (Fminibuffer_complete_word): When deleting the overlap, take account
11964 of its real position.
11965
11966 * fns.c (map_char_table): Fix previous change.
11967
11968 * syntax.c (find_defun_start):
11969 When open_paren_in_column_0_is_defun_start,
11970 return beginning of buffer.
11971
11972 * lisp.h (map_char_table): Declare added arg.
11973
11974 * fns.c (map_char_table): New arg TABLE gets the master table.
11975 All calls changed.
11976 Process default and inheritance, resorting to Faref if necessary.
11977
11978 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
11979 (Faccessible_keymaps): Pass new arg to map_char_table.
11980
11981 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
11982
11983 * casetab.c (set_case_table): Pass new arg to map_char_table.
11984
11985 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
11986
11987 * lisp.h (specbinding_func): New typedef.
11988 (struct specbinding): Use specbinding_func, to put the `volatile'
11989 in the right place.
11990
11991 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
11992 to avoid GCC warning.
11993
119942003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org>
11995
11996 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
11997
119982003-05-15 Stefan Monnier <monnier@cs.yale.edu>
11999
12000 * keyboard.c (apply_modifiers): Don't fill the other cache.
12001
120022003-05-14 Stefan Monnier <monnier@cs.yale.edu>
12003
12004 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
12005
12006 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
12007 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
12008 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
12009 (Fset_window_configuration, Fcurrent_window_configuration)
12010 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
12011 (Fpos_visible_in_window_p, mark_window_cursors_off)
12012 (window_internal_height, window_internal_width, Frecenter)
12013 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
12014 (replace_buffer_in_all_windows, init_window_once, init_window)
12015 (syms_of_window, keys_of_window): Move from lisp.h.
12016 * lisp.h: Move window.c declarations to window.h.
12017
12018 * bytecode.c: Include window.h.
12019 * emacs.c: Include window.h.
12020
12021 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
12022 (keyremap): Add `parent' field.
12023 (keyremap_step): Use it. Remove `parent' argument.
12024 (read_key_sequence): Setup and use the new `parent' field.
12025
120262003-05-11 Stefan Monnier <monnier@cs.yale.edu>
12027
12028 * keyboard.c (adjust_point_for_property): Ensure termination.
12029
120302003-05-10 Stefan Monnier <monnier@cs.yale.edu>
12031
12032 * keyboard.c (follow_key): Remove dead variable `did_meta'.
12033 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
12034 duplicated handling of function-key-map and key-translation-map
12035 in read_key_sequence.
12036 (read_key_sequence): Use them.
12037
12038 * keyboard.c (adjust_point_for_property): Try harder to move point
12039 to the non-sticky end of an invisible property.
12040
12041 * xdisp.c (single_display_prop_intangible_p): Make `space' display
12042 property intangible as well.
12043
120442003-05-10 Andreas Schwab <schwab@suse.de>
12045
12046 * xmenu.c (single_menu_item): Change last parameter to void* to
12047 avoid warning.
12048
120492003-05-09 Richard M. Stallman <rms@gnu.org>
12050
12051 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
12052 Bind Qinhibit_modification_hooks to t so there will be no GC.
12053 Rename local `tem' to `save_deactivate_mark'.
12054
12055 * eval.c (specpdl_ptr): Declare volatile.
12056 (unbind_to): Copy the whole binding and decrement specpdl_ptr
12057 before doing the work of unbinding it.
12058
12059 * lisp.h (struct specbinding): Declare elements volatile.
12060 (specpdl_ptr): Declare volatile.
12061
12062 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
12063
12064 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
12065 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
12066
120672003-05-08 Dave Love <fx@gnu.org>
12068
12069 * coding.c (Vlast_coding_system_used): Doc fix.
12070
120712003-05-07 Jason Rumney <jasonr@gnu.org>
12072
12073 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
12074 when system does not support them.
12075
120762003-05-05 Stefan Monnier <monnier@cs.yale.edu>
12077
12078 * fileio.c (Qwrite_region_annotate_functions): New var.
12079 (build_annotations): Use it to process the global part of the hook.
12080 (syms_of_fileio): Init and staticpro it.
12081
12082 * keyboard.c (safe_run_hooks_error): Display a message instead of
12083 silently ignoring the error.
12084
120852003-05-03 Stefan Monnier <monnier@cs.yale.edu>
12086
12087 * keyboard.c (input_available_signal): Mark static.
12088 (menu_bar_items): Use map_keymap.
12089 (menu_bar_one_keymap): Remove.
12090 (menu_bar_item): Adjust arglist (for use in map_keymap).
12091 Properly hide a second binding when not both are keymaps.
12092
12093 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
12094 (single_keymap_panes): Use it and map_keymap.
12095 (single_menu_item): Use skp as well.
12096
12097 * keymap.h (map_keymap_function_t): New type.
12098 (map_keymap): Declare.
12099
12100 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
12101 (map_keymap_call, Fmap_keymap): New functions.
12102 (syms_of_keymap): Defsubr map-keymap.
12103
121042003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12105
12106 * gtkutil.c (create_dialog, make_widget_for_menu_item)
12107 (make_menu_item, create_menus, xg_update_menu_item): Don't call
12108 ..._with_mnemonic functions for menu items.
12109
121102003-05-01 Kenichi Handa <handa@m17n.org>
12111
12112 * coding.c (coding_system_accept_latin_extra_p): Delete this
12113 function.
12114 (find_safe_codings): Pay attention to
12115 the property tranlsation-table-for-encode of each codings.
12116 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
12117
121182003-05-01 Stefan Monnier <monnier@cs.yale.edu>
12119
12120 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
12121
121222003-04-30 Stefan Monnier <monnier@cs.yale.edu>
12123
12124 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
12125
12126 * lisp.h (CHECK): Wrap args in parenthesis.
12127 (specbind): Fix doc: symbol = Qnil is not supported any more.
12128
12129 * bytecode.c (Fbyte_code) <unwind-protect>:
12130 Use Fprogn rather than 0 and Qnil.
12131
12132 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
12133 `double', and `triple' modifiers as well.
12134
121352003-04-30 Richard M. Stallman <rms@gnu.org>
12136
12137 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
12138
12139 * alloc.c (abort_on_gc): New variable.
12140 (Fgarbage_collect): Abort if abort_on_gc is set.
12141
12142 * lisp.h (abort_on_gc): Add decl.
12143
12144 * eval.c (Fsignal): Clear abort_on_gc.
12145
12146 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
12147 Reinit FORMAT_START and END before second scan.
12148
12149 * xdisp.c (move_it_vertically_backward): Do the final big else
12150 even if nlines is 0.
12151
12152 * xdisp.c (redisplay_internal): Finish the per-frame loop
12153 even if redisplay is suspended by input.
12154
121552003-04-24 Andrew Choi <akochoi@shaw.ca>
12156
12157 * macterm.c (x_list_fonts): Return all fonts that match if
12158 maxnames = -1.
12159
121602003-04-25 Kenichi Handa <handa@m17n.org>
12161
12162 * syntax.c (skip_chars): Fix previous change.
12163
121642003-04-24 Kenichi Handa <handa@m17n.org>
12165
12166 * syntax.c (skip_chars): Make the code faster by using the common
12167 technique of *p, *stop, and *endp.
12168
121692003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12170
12171 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
12172 tool_bar_items so GTK tool bar expose callback does not access items
12173 being updated.
12174
121752003-04-19 Stefan Monnier <monnier@cs.yale.edu>
12176
12177 * eval.c (Fapply): Undo last change and add a comment about why.
12178
121792003-04-18 Miles Bader <miles@gnu.org>
12180
12181 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
12182 pickier PARSE_MULTIBYTE_SEQ.
12183
121842003-04-17 Stefan Monnier <monnier@cs.yale.edu>
12185
12186 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
12187 Use XCDR, XCAR, CONSP.
12188 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
12189 (Fapply): Remove unnecessary GCPRO.
12190
12191 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
12192
12193 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
12194
12195 * buffer.h: Don't hardcode BEG==1.
12196
12197 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
12198
121992003-04-16 Richard M. Stallman <rms@gnu.org>
12200
12201 * xdisp.c (try_window, try_window_reusing_current_matrix):
12202 When at end of window, set window_end_pos to Z-ZV.
12203
12204 * buffer.c (Foverlay_recenter): Doc fix.
12205
122062003-04-14 Stefan Monnier <monnier@cs.yale.edu>
12207
12208 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
12209
122102003-04-14 Andrew Choi <akochoi@shaw.ca>
12211
12212 * macterm.c (mac_check_for_quit_char): Don't check more often than
12213 once a second.
12214
122152003-04-11 Stefan Monnier <monnier@cs.yale.edu>
12216
12217 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
12218 specially, so that they can't hide an implicit switch-frame event.
12219 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
12220 (head_table): Use switch-frame as event_kind for select-window.
12221 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
12222
12223 * editfns.c (Fformat): Lisp_Object/int mixup.
12224 (format2): Remove unused var numargs.
12225
122262003-04-11 Kenichi Handa <handa@m17n.org>
12227
12228 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
12229 (Qafter_insert_file_set_coding): New variable.
12230 (syms_of_fileio): Initialize and staticpro it. Delete declaration
12231 for after-insert-file-adjust-coding-function.
12232 (Finsert_file_contents): Call Qafter_insert_file_set_coding
12233 instead of Vafter_insert_file_adjust_coding_function.
12234
122352003-04-11 Kenichi Handa <handa@m17n.org>
12236
12237 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
12238
12239 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
12240 string. Callers changed.
12241
122422003-04-10 Kenichi Handa <handa@m17n.org>
12243
12244 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
12245 (syms_of_fileio): Declare it as a lisp variable.
12246 (Finsert_file_contents):
12247 Call Vafter_insert_file_adjust_coding_function before calling
12248 decode-format.
12249
122502003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12251
12252 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
12253 get GtkAdjustment as widget now is a GtkRange.
12254
12255 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
12256 GtkRange to avoid memory leak.
12257
122582003-04-09 Kenichi Handa <handa@m17n.org>
12259
12260 * xfaces.c (Vface_font_rescale_alist): New variable.
12261 (struct font_name): New member rescale_ratio.
12262 (font_rescale_ratio): New function.
12263 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
12264 (better_font_p): On comparing point sized, pay attention to
12265 recale_ratio member of fonts.
12266 (build_scalable_font_name): Reflect font->rescale_ratio in the
12267 font name.
12268 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
12269
12270 * lread.c (read1): Before calling index, check if the 2nd
12271 arguemnt is in ASCII range.
12272
122732003-04-08 Richard M. Stallman <rms@gnu.org>
12274
12275 * fileio.c (Ffile_symlink_p): Doc fix.
12276
12277 * editfns.c (Fformat): Translate positions of text properties
12278 in the format string to apply them to the result.
12279
12280 * fileio.c (Finsert_file_contents): Doc fix.
12281 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
12282
122832003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
12284
12285 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
12286
122872003-04-08 Steven Tamm <steventamm@mac.com>
12288
12289 * mac.c (init_mac_osx_environment): Switch libexec and bin so
12290 that self-contained application finds libexec files.
12291
122922003-04-08 Kenichi Handa <handa@m17n.org>
12293
12294 * coding.c (code_convert_region_unwind):
12295 Set Vlast_coding_system_used to the argument.
12296 (code_convert_region): If post-read-conversion function changed
12297 the value of last-coding-sytem, keep the new value in
12298 coding->symbol so that it won't be overridden.
12299 (run_pre_post_conversion_on_str): Likewise.
12300 (coding_system_accept_latin_extra_p): New function.
12301 (find_safe_codings): Pay attention to characters registered in
12302 latin-extra-code-table.
12303
123042003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
12305
12306 * Makefile.in (md5.o): Add missing dependency info.
12307
123082003-04-06 Richard M. Stallman <rms@gnu.org>
12309
12310 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
12311
12312 * marker.c (verify_bytepos): New function.
12313
12314 * intervals.c (set_intervals_multibyte_1): When becoming
12315 multibyte, adjust right and left child sizes to a whole set of
12316 characters. If an interval gets zero total-length, delete it.
12317 If an interval consists of just its children, delete one of them.
12318
12319 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
12320 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
12321
12322 * alloc.c (VALIDATE_LISP_STORAGE): Macro deleted.
12323 All calls deleted.
12324 (lisp_malloc): Do the work here directly.
12325
123262003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
12327
12328 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
12329 char tables.
12330
123312003-04-04 Kenichi Handa <handa@m17n.org>
12332
12333 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
12334 destructively change "%S" to "%s".
12335
123362003-04-03 Miles Bader <miles@gnu.org>
12337
12338 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
12339 always set.
12340
123412003-04-01 Dave Love <fx@gnu.org>
12342
12343 * xfns.c (xpm_lookup_color): Grok "opaque".
12344
123452003-03-31 Andrew Choi <akochoi@shaw.ca>
12346
12347 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
12348 parent window ID.
12349
12350 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
12351
12352 * macterm.h (struct mac_output): Define x_pixels_diff and
12353 y_pixels_diff.
12354
123552003-03-31 Juanma Barranquero <lektu@terra.es>
12356
12357 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
12358 blockinput.h and files included from it.
12359
123602003-03-31 Kim F. Storm <storm@cua.dk>
12361
12362 The following changes consolidates the common code related to
12363 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
12364 files into frame.c.
12365
12366 * frame.c: Include blockinput.h.
12367 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
12368 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
12369 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
12370 related vars here.
12371 (struct frame_parm_table, frame_parms): New table for describing
12372 frame parameters and their associated Q-variable.
12373 The order of the parameters corresponds to the sequence of the
12374 frame_parm_handlers table in redisplay_interface.
12375 (x_fullscreen_move, x_set_frame_parameters)
12376 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
12377 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
12378 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
12379 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
12380 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
12381 Generic functions for processing of frame parameters.
12382 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
12383 (display_x_get_resource, x_get_resource_string): Functions for
12384 generic access to X resources.
12385 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
12386 (x_default_parameter, Fx_parse_geometry): Functions for generic
12387 access to frame parameters.
12388 (x_figure_window_size): Generic calculation of frame size.
12389 Fixed to add space needed for tool bar. Also setup size_hint_flags.
12390 (syms_of_frame): Intern and staticpro frame parameter variables.
12391 Defvar_lisp Vx_resource_class and Vx_resource_name here.
12392 Defsubr Sx_get_resource and Sx_parse_geometry.
12393
12394 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
12395 parameter related vars defined in frame.c.
12396 (EMACS_CLASS): Define here.
12397 (enum FULLSCREEN_*): Define here.
12398 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
12399 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
12400 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
12401 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
12402 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
12403 (x_set_visibility, x_set_autoraise, x_set_autolower)
12404 (x_set_unsplittable, x_set_vertical_scroll_bars)
12405 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
12406 (x_figure_window_size): Add prototypes.
12407
12408 * dispextern.h (frame_parm_handler): New typedef.
12409 (struct redisplay_interface): New member frame_parm_handlers.
12410 (enum resource_types): Move declaration here.
12411 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
12412 (x_default_parameter): Add prototypes.
12413
12414 * window.c: Remove extern decl for frame parameter vars.
12415 (change_window_heights): New generic function;
12416 replaces x_change_window_heights. All users changed.
12417
12418 * window.h (change_window_heights): Add prototype.
12419
12420 * xfaces.c: Remove extern decl for frame parameter vars.
12421
12422 * xterm.h (EMACS_CLASS): Remove. Use generic define.
12423 (struct w32_display_info): Fix type of xrdb member.
12424 (enum FULLSCREEN_*): Remove.
12425 Remove prototypes for generic functions (in frame.h).
12426
12427 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
12428 parameters now defined in frame.h and frame.c.
12429 (Vx_resource_name): Remove. Use generic var.
12430 (enum x_frame_parms): Remove (bogus, unused enum).
12431 (check_x_display_info): Make non-static (for frame.c).
12432 (struct x_frame_parm_table, x_frame_parms): Remove.
12433 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
12434 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
12435 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
12436 (x_change_window_heights, x_set_autoraise, x_set_autolower)
12437 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
12438 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
12439 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
12440 Remove. Use generic functions instead.
12441 (enum resource_types): Remove.
12442 (x_set_scroll_bar_default_width): New global function (for frame.c).
12443 (Fx_create_frame): Depend on x_figure_window_size to add space for
12444 toolbar and setup size_hint_flags.
12445 (x_frame_parm_handlers): New table for redisplay_interface.
12446 (syms_of_xfns): Don't intern/staticpro removed vars.
12447
12448 * xterm.c: Remove unnecessary extern declarations.
12449 (x_fullscreen_adjust): Remove. Use generic instead.
12450 (x_redisplay_interface): Add x_frame_parm_handlers member.
12451
12452 * w32gui.h (XrmDatabase): New (dummy) typedef.
12453
12454 * w32term.h (EMACS_CLASS): Remove. Use generic define.
12455 (struct w32_display_info): Fix type of xrdb member.
12456 (enum FULLSCREEN_*): Remove.
12457 (x_fullscreen_adjust): Remove prototype.
12458
12459 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
12460 parameters now defined in frame.h and frame.c.
12461 (Vx_resource_name): Remove. Use generic var.
12462 (enum x_frame_parms): Remove (bogus, unused enum).
12463 (check_x_display_info): Make non-static (for frame.c).
12464 (struct x_frame_parm_table, x_frame_parms): Remove.
12465 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
12466 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
12467 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
12468 (x_change_window_heights, x_set_autoraise, x_set_autolower)
12469 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
12470 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
12471 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
12472 Remove. Use generic functions instead.
12473 (enum resource_types): Remove.
12474 (x_set_scroll_bar_default_width): New global function (for frame.c).
12475 (Fx_create_frame): Depend on x_figure_window_size to add space for
12476 toolbar and setup size_hint_flags.
12477 (w32_frame_parm_handlers): New table for redisplay_interface.
12478 (syms_of_w32fns): Don't intern/staticpro removed vars.
12479
12480 * w32term.c: Remove unnecessary extern declarations.
12481 (x_fullscreen_adjust): Remove. Use generic instead.
12482 (x_redisplay_interface): Add w32_frame_parm_handlers member.
12483
12484 * w32reg.c (x_get_string_resource): Use XrmDatabase.
12485
12486 * macgui.h (XrmDatabase): New (dummy) typedef.
12487
12488 * macterm.h (EMACS_CLASS): Remove.
12489 (struct mac_display_info): Add xrdb member.
12490 (struct mac_output): Add want_fullscreen member.
12491
12492 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
12493 parameters now defined in frame.h and frame.c.
12494 (Vx_resource_name): Remove. Use generic var.
12495 (check_x_display_info): Make non-static (for frame.c).
12496 (struct x_frame_parm_table, x_frame_parms): Remove.
12497 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
12498 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
12499 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
12500 (x_change_window_heights, x_set_autoraise, x_set_autolower)
12501 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
12502 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
12503 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
12504 Remove. Use generic functions instead.
12505 (enum resource_types): Remove.
12506 (x_set_scroll_bar_default_width): New global function (for frame.c).
12507 (mac_frame_parm_handlers): New table for redisplay_interface.
12508 (syms_of_macfns): Don't intern/staticpro removed vars.
12509
12510 * macterm.c: Remove unnecessary extern declarations.
12511 (x_redisplay_interface): Add mac_frame_parm_handlers member.
12512
12513 * Makefile.in (frame.o): Add dependency on blockinput.h and files
12514 included from it (atimer.h and systime.h).
12515
125162003-03-30 Andreas Schwab <schwab@suse.de>
12517
12518 * xdisp.c (x_insert_glyphs): Fix swapped width and height
12519 parameters for shift_glyphs_for_insert.
12520
12521 * macterm.c (x_redisplay_interface): Add missing entry for
12522 draw_vertical_window_border.
12523
125242003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
12525
12526 * fileio.c (Fexpand_file_name): In the no-handler case, after
12527 expanding, look again for a handler and invoke it. This is needed
12528 for filenames like "/foo/../user@host:/bar/../baz" -- the first
12529 expansion produces "/user@host:/bar/../baz" which needs to be
12530 expanded again for the finame result "/user@host:/baz".
12531
125322003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12533
12534 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
12535 of area to be redrawn for better performance.
12536
125372003-03-28 Stefan Monnier <monnier@cs.yale.edu>
12538
12539 * xterm.c (take_vertical_position_into_account): Remove.
12540 (xt_action_hook): Call set_vertical_scroll_bar if needed.
12541 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
12542 (xm_scroll_callback, x_create_toolkit_scroll_bar)
12543 (x_set_toolkit_scroll_bar_thumb): Simplify.
12544 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
12545 (XTread_socket): Remove unused var.
12546 (x_make_frame_invisible): Replace goto with else.
12547
12548 * xdisp.c (set_vertical_scroll_bar): New fun.
12549 (redisplay_window): Use it.
12550
125512003-03-26 Richard M. Stallman <rms@gnu.org>
12552
12553 * xdisp.c (update_tool_bar): Recompute tool bar if
12554 update_mode_lines is set. Set w->update_mode_line
12555 only if the tool bar contents actually change.
12556 (update_menu_bar): Undo previous change.
12557
125582003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12559
12560 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
12561 (xg_frame_set_char_size): Calculate scroll bar width before frame
12562 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
12563 (xg_separator_p): Check for all documented separator types.
12564 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
12565 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
12566
12567 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
12568 so tool bar gets updated.
12569
125702003-03-26 Stefan Monnier <monnier@cs.yale.edu>
12571
12572 * data.c (store_symval_forwarding): Re-instate part of the code
12573 that was deleted with too much enthusiasm.
12574
125752003-03-25 Stefan Monnier <monnier@cs.yale.edu>
12576
12577 * data.c (store_symval_forwarding): Delete special read-only
12578 hack for type == -1, since we now use ->constant instead.
12579 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
12580
12581 * buffer.c (overlays_in): Declare static.
12582 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
12583 `constant' field rather than the variable's `type' field.
12584
125852003-03-24 Andrew Choi <akochoi@shaw.ca>
12586
12587 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
12588
12589 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
12590
12591 * fns.c [MAC_OSX]: Do not redefine vector.
12592
12593 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
12594
12595 * macgui.h: Remove definition of No_Cursor.
12596
12597 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
12598
12599 * xdisp.c: Define No_Cursor.
12600 (x_write_glyphs, notice_overwritten_cursor)
12601 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
12602 (note_mouse_highlight): Remove Mac-specific code.
12603 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
12604
126052003-03-24 John Paul Wallington <jpw@gnu.org>
12606
12607 * xdisp.c (redisplay_window): If mini window's buffer is not
12608 empty, then redisplay it like other windows.
12609
126102003-03-23 Kim F. Storm <storm@cua.dk>
12611
12612 * w32term.c (w32_draw_window_cursor): Fix last change.
12613
126142003-03-23 Kenichi Handa <handa@m17n.org>
12615
12616 * alloc.c (make_string_from_bytes, make_specified_string):
12617 Add `const' for the arg CONTENTS.
12618
12619 * lisp.h (make_string_from_bytes, make_specified_string):
12620 Prototypes adjusted.
12621
126222003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12623
12624 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
12625
12626 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
12627 (XG_SB_RANGE): New define.
12628
12629 * gtkutil.c (xg_fixed_handle_expose): New function.
12630 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
12631 expose events.
12632 (xg_update_scrollbar_pos): Take two more arguments, left and width
12633 of scroll bar including borders.
12634 Clear left and right part outside scroll bar separately as some
12635 themes have bars that are not an even number of pixels.
12636 Don't set reallocate_redraws, don't call
12637 gdk_window_process_all_updates.
12638 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
12639 so no need to change it. Calculate size and value with XG_SB_RANGE.
12640
12641 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
12642 Pass left and width of scroll bar including borders to
12643 xg_update_scrollbar_pos.
12644
126452003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
12646
12647 * Makefile.in: Make sure space precedes end-of-line backslashes.
12648
126492003-03-22 Kim F. Storm <storm@cua.dk>
12650
12651 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
12652 Add generic versions here. Remove system specific versions
12653 defined elsewhere.
12654
12655 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
12656 Add prototypes.
12657
12658 * xterm.h (STORE_NATIVE_RECT): New macro.
12659
126602003-03-21 Kim F. Storm <storm@cua.dk>
12661
12662 * xdisp.c (get_glyph_string_clip_rect):
12663 Use FRAME_INTERNAL_BORDER_WIDTH.
12664
12665 * dispextern.h (struct redisplay_interface): Add active_p
12666 argument to draw_window_cursor member. All uses changed.
12667
126682003-03-21 Kim F. Storm <storm@cua.dk>
12669
12670 The following changes consolidate code related to writing and
12671 inserting glyphs, exposing frame, the tool bar, the mouse face,
12672 the output cursor, and help echo from xterm.c, w32term.c and
12673 macterm.c into xdisp.c. It also generalizes the use of the
12674 window_part enum instead of using numeric values throughout.
12675
12676 * xdisp.c: Consolidate gui-independent code here.
12677 Include keymap.h.
12678 (Qhelp_echo): Import.
12679 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
12680 (help_echo_string, help_echo_window, help_echo_object)
12681 (previous_help_echo_string, help_echo_pos): Declare here.
12682 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
12683 (estimate_mode_line_height): Define here. Handle windowing
12684 systems directly (without using estimate_mode_line_height_hook).
12685 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
12686 (update_window_cursor, update_cursor_in_window_tree)
12687 (fast_find_position, fast_find_string_pos)
12688 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
12689 (expose_area, expose_line, expose_overlaps, expose_window)
12690 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
12691 declared static as they are only used locally in xdisp.c.
12692 (draw_glyphs): Rename from x_draw_glyphs and make static.
12693 (tool_bar_item_info, notice_overwritten_cursor): Make static.
12694 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
12695 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
12696 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
12697 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
12698 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
12699 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
12700 (note_mouse_highlight, x_clear_window_mouse_face)
12701 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
12702 (x_intersect_rectangles): New generic functions for use by xdisp.c
12703 and GUI front-ends.
12704 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
12705 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
12706
12707 * dispextern.h (Display_Info): Generic typedef for *_display_info.
12708 (NativeRectangle): Generic typedef for rectangle type.
12709 (enum window_part): Move here from window.c.
12710 (struct redisplay_interface): New members flush_display_optional,
12711 define_frame_cursor, clear_frame_area, draw_window_cursor,
12712 draw_vertical_window_border, shift_glyphs_for_insert.
12713 Rename member clear_mouse_face to clear_window_mouse_face.
12714 (estimate_mode_line_height_hook): Remove hook.
12715 (auto_raise_tool_bar_buttons_p): Don't declare extern.
12716 (tool_bar_item_info): Remove prototype.
12717 (help_echo_string, help_echo_window, help_echo_object)
12718 (previous_help_echo_string, help_echo_pos)
12719 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
12720 (x_stretch_cursor_p, output_cursor): Declare extern.
12721 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
12722 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
12723 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
12724 (display_and_set_cursor, set_output_cursor, x_cursor_to)
12725 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
12726 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
12727 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
12728 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
12729 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
12730 Add prototypes.
12731 (mode_line_string, marginal_area_string): Fix prototypes.
12732
12733 * window.c (enum window_part): Move to dispextern.h.
12734 (coordinates_in_window): Use enum window_part member names
12735 instead of numbers to describe return value.
12736 (struct check_window_data): Change part member to window_part.
12737 (check_window_containing): Return window_part unaltered.
12738 (window_from_coordinates): Change part arg from int to enum
12739 window_part. Allow part arg to be null. All users changed.
12740
12741 * window.h (window_from_coordinates): Fix prototype.
12742
12743 * term.c (estimate_mode_line_height): Move to xdisp.c.
12744
12745 * keyboard.c (make_lispy_event): Use enum window_part.
12746
12747 * dispnew.c (mode_line_string, marginal_area_string): Use enum
12748 window_part instead of int in arg list. Users changed.
12749
12750 * xterm.h (No_Cursor): Declare as None for X.
12751 (struct mac_output): Replace member cross_cursor by hand_cursor.
12752
12753 * xterm.c: Remove consolidated defines and code.
12754 (BETWEEN): Remove unused macro.
12755 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
12756 (x_define_frame_cursor, x_clear_frame_area)
12757 (x_draw_window_cursor): New X-specific functions for RIF.
12758 (x_redisplay_interface): Add new members.
12759
12760 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
12761
12762 * w32term.h (struct w32_output): Remove cross_cursor member.
12763
12764 * w32term.c: Remove consolidated defines and code.
12765 (BETWEEN): Remove unused macro.
12766 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
12767 (w32_define_frame_cursor, w32_clear_frame_area)
12768 (w32_draw_window_cursor): New W32-specific functions for RIF.
12769 (w32_redisplay_interface): Add new members.
12770
12771 * w32gui.h (No_Cursor): Define as 0 for W32.
12772 (XRectangle): Add X compatible rectangle type.
12773 (NativeRectangle): Declare as RECT for W32.
12774 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
12775
12776 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
12777
12778 * w32console.c: Remove consolidated defines and code.
12779
12780 * msdos.h (Display_Info): Add generic typedef.
12781
12782 * msdos.c: Remove consolidated defines and code.
12783 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
12784
12785 * macterm.h (struct mac_output): Replace member cross_cursor by
12786 hand_cursor.
12787 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
12788
12789 * macterm.c: Remove consolidated defines and code.
12790 (BETWEEN): Remove unused macro.
12791 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
12792 (mac_define_frame_cursor, mac_clear_frame_area)
12793 (mac_draw_window_cursor): New Mac-specific functions for RIF.
12794 (x_redisplay_interface): Add new members.
12795
12796 * macgui.h (No_Cursor): Define as 0 for Mac.
12797 (XRectangle): Add X compatible rectangle type.
12798 (NativeRectangle): Declare as Rect for Mac.
12799 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
12800
12801 * macfns.c (x_set_mouse_color): Setup hand_cursor.
12802 (x_set_cursor_color): Use x_display_and_set_cursor.
12803
12804 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
12805 included from it. Add dependency on keymap.h.
12806
12807 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
12808
128092003-03-21 Kenichi Handa <handa@m17n.org>
12810
12811 * fileio.c (Fexpand_file_name): Fix previous change.
12812
128132003-03-19 Kenichi Handa <handa@m17n.org>
12814
12815 * fileio.c (Ffile_name_directory): Reconstruct file name by
12816 make_specified_string.
12817 (Ffile_name_nondirectory, Ffile_name_as_directory)
12818 (Fdirectory_file_name, Fexpand_file_name)
12819 (Fsubstitute_in_file_name): Likewise.
12820 (Fread_file_name): Compare decoded homedir with DIR and
12821 DEFAULT_FILENAME.
12822
12823 * alloc.c (make_specified_string): If NCHARS is negative, count
12824 the number of characters.
12825
128262003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12827
12828 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
12829 all widgets.
12830
12831 * gtkutil.h: Removed xg_ignore_next_thumb.
12832
128332003-03-18 Kenichi Handa <handa@m17n.org>
12834
12835 * coding.c (Vchar_coding_system_table): Remove this variable.
12836 (Vcoding_system_safe_chars): New variable.
12837 (intersection): Remove this function.
12838 (find_safe_codings): Don't use Vchar_coding_system_table, but try
12839 all codings in SAFE_CODINGS.
12840 (Ffind_coding_systems_region_internal): Adjust for the change of
12841 find_safe_codings. Get generic coding systems from
12842 Vcoding_system_safe_chars.
12843 (Fdefine_coding_system_internal): New function.
12844 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
12845 Initialize and staticpro Vcoding_system_safe_chars.
12846
128472003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12848
12849 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
12850 equal old values before updating.
12851
12852 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
12853
12854 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
12855
128562003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12857
12858 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
12859 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
12860 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
12861 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
12862 (xg_create_scroll_bar): Pass bar to button event callback.
12863 (xg_find_top_left_in_fixed): New function.
12864 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
12865 whole scroll bar area. Get old position with
12866 xg_find_top_left_in_fixed, calculate and only clear needed areas.
12867 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
12868 dragging is in progress. Calculate whole as for Motif.
12869 Remove code that saved last values. Call gtk_range functions to
12870 set scroll bar sizes.
12871
12872 * gtkutil.h: Removed xg_ignore_next_thumb.
12873
128742003-03-17 Juanma Barranquero <lektu@terra.es>
12875
12876 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
12877 and files included from it.
12878
128792003-03-18 Stefan Monnier <monnier@cs.yale.edu>
12880
12881 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
12882 multiple occurrences of the same keymap under different prefixes.
12883 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
12884
128852003-03-16 Jason Rumney <jasonr@gnu.org>
12886
12887 * w32gui.h: Use HDC for Display.
12888
12889 * w32term.c (w32_encode_char): Prevent double-byte chars from
12890 crashing Emacs.
12891
12892 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
12893 as binary.
12894
128952003-03-16 Juanma Barranquero <lektu@terra.es>
12896
12897 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
12898
128992003-03-16 Kim F. Storm <storm@cua.dk>
12900
12901 The following changes consolidate some of the gui-independent
12902 parts of the processing and drawing of "glyph strings" from
12903 xterm.c, w32term.c, and macterm.c into xdisp.c.
12904
12905 * dispextern.h (struct glyph): Reduce face_id member from 22 to
12906 21 bits (this reduces number of faces from 4M to 2M).
12907 Replace W32 specific w32_font_type member (2 bits) by generic
12908 font_type member (3 bits) for portability.
12909 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
12910 (enum draw_glyphs_face): Define here.
12911 (struct glyph_string): Define here. Merge W32 and X versions.
12912 (struct redisplay_interface): New members per_char_metric,
12913 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
12914 (VCENTER_BASELINE_OFFSET): Define here.
12915 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
12916 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
12917
12918 * xdisp.c: Consolidate gui-independent "glyph string" code here.
12919 (dump_glyph_string): Moved here.
12920 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
12921 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
12922 (fill_composite_glyph_string, fill_glyph_string)
12923 (fill_image_glyph_string, fill_stretch_glyph_string)
12924 (left_overwritten, left_overwriting, right_overwritten)
12925 (right_overwriting, get_char_face_and_encoding)
12926 (set_glyph_string_background_width, compute_overhangs_and_x)
12927 (append_glyph, append_composite_glyph, produce_image_glyph)
12928 (take_vertical_position_into_account, append_stretch_glyph)
12929 (produce_stretch_glyph): New generic functions (based on X version).
12930 Call platform specific functions through rif.
12931 (INIT_GLYPH_STRING): New macro, hides W32 details.
12932 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
12933 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
12934 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
12935 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
12936 (notice_overwritten_cursor):
12937 Generic functions exported to platform modules. Users changed.
12938
12939 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
12940 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
12941 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
12942 New macros for consolidated code.
12943
12944 * xterm.c: Remove consolidated defines and code.
12945 (x_per_char_metric, x_encode_char)
12946 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
12947 (x_redisplay_interface): Add new members.
12948
12949 * w32gui.h (Display): Add dummy typedef for consolidation.
12950 (XChar2b): Define alias for wchar_t for consolidation.
12951 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
12952
12953 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
12954 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
12955 New macros for consolidation.
12956
12957 * w32term.c: Remove consolidated defines and code.
12958 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
12959 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
12960 (w32_per_char_metric): Change font_type arg to int for RIF.
12961 (w32_encode_char): Return int according to RIF requirements.
12962 (w32_compute_glyph_string_overhangs): Adapt to RIF.
12963 (w32_get_glyph_overhangs): New function for RIF. Uses generic
12964 x_get_glyph_overhangs.
12965 (w32_redisplay_interface): Add new members.
12966
12967 * macgui.h (XChar2b): Move typedef here for consolidation.
12968 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
12969
12970 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
12971 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
12972 consolidation.
12973
12974 * macterm.c: Remove consolidated defines and code.
12975 (mac_per_char_metric): New function for RIF.
12976 (mac_encode_char): Adapt to new RIF requirements.
12977 (mac_compute_glyph_string_overhangs): Adapt for RIF.
12978 (x_redisplay_interface): Add new members.
12979
129802003-03-15 Stefan Monnier <monnier@cs.yale.edu>
12981
12982 * keymap.c (Vmenu_events): New var.
12983 (syms_of_keymap): Initialize it.
12984 (where_is_internal): Check more carefully what is a menu event.
12985
129862003-03-14 Richard M. Stallman <rms@gnu.org>
12987
12988 * lread.c (read1): After #!, exit loop on eof.
12989
129902003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12991
12992 * gtkutil.h: Add declaration for xg_frame_cleared.
12993
12994 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
12995
12996 * gtkutil.c (struct xg_last_sb_pos): New structure.
12997 (handle_fixed_child): New function.
12998 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
12999 and force a redraw on them.
13000 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
13001 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
13002 so we can avoid unneeded redraws.
13003 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
13004 and force a redraw on the scroll bar.
13005 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
13006 if xg_last_sb_pos shows the positions are up to date.
13007 (xg_frame_cleared): New function.
13008
130092003-03-13 Kenichi Handa <handa@m17n.org>
13010
13011 * coding.c (Fdetect_coding_region): Fix docstring.
13012 (Fdetect_coding_string): Fix docstring.
13013
130142003-03-13 Andreas Schwab <schwab@suse.de>
13015
13016 * gtkutil.c: Add prototype for create_menus.
13017
13018 * data.c (long_to_cons): Fix type of top.
13019
13020 * xselect.c (selection_data_to_lisp_data): Use int instead of
13021 long for an integer of size 4.
13022
13023 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
13024 (xg_tool_bar_help_callback): Likewise.
13025
130262003-03-12 Andreas Schwab <schwab@suse.de>
13027
13028 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
13029
130302003-03-12 Kim F. Storm <storm@cua.dk>
13031
13032 The following changes consolidate the fringe handling from
13033 xterm.c, w32term.c, and macterm.c into xdisp.c.
13034
13035 * xdisp.c: Consolidate fringe handling code here.
13036 (left_bits, right_bits, continued_bits, continuation_bits)
13037 (ov_bits, zv_bits): Define fringe bitmaps.
13038 (fringe_bitmaps): New array holding fringe bitmaps.
13039 (draw_fringe_bitmap): Draw a specific bitmap; call display
13040 specific drawing routine via rif->draw_fringe_bitmap.
13041 (draw_row_fringe_bitmaps): Generic replacement for
13042 x_draw_row_fringe_bitmaps; all callers changed.
13043 (compute_fringe_widths): Generic replacement for
13044 x_compute_fringe_widths; all callers changed.
13045
13046 * dispextern.h (enum fringe_bitmap_type): Define here.
13047 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
13048 (fringe_bitmaps): Declare extern.
13049 (struct redisplay_interface): New member draw_fringe_bitmap.
13050 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
13051
13052 * xterm.c: Remove generic fringe code.
13053 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
13054 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
13055
13056 * w32term.c: Remove generic fringe code.
13057 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
13058 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
13059
13060 * macterm.c: Remove generic fringe code.
13061 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
13062 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
13063
130642003-03-11 Stefan Monnier <monnier@cs.yale.edu>
13065
13066 * print.c (Fprin1_to_string): Return unibyte string if possible.
13067
130682003-03-09 David Kastrup <dak@gnu.org>
13069
13070 * process.c (read_process_output): We have allocated enough space
13071 for readmax and carryover, so actually use the alloted space.
13072
130732003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13074
13075 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
13076 toolkit scrollbar click.
13077
13078 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
13079 for USE_GTK.
13080 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
13081 also.
13082 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
13083 scrollbar and control is pressed, call x_scroll_bar_handle_click.
13084
13085 * gtkutil.h (xg_get_scroll_id_for_window): Declare.
13086
13087 * gtkutil.c (xg_get_scroll_id_for_window): New function.
13088 (xg_tool_bar_item_expose_callback): New function.
13089 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
13090 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
13091 on the tool bar widget.
13092 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
13093 to expose on the tool bar item widgets.
13094
130952003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13096
13097 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
13098 struct image* when deciding to update (struct image* may have been
13099 deleted from the image cache).
13100
13101 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
13102 the event isn't for a frame (i.e. for dialogs).
13103
131042003-03-07 Kenichi Handa <handa@m17n.org>
13105
13106 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
13107 composition components reaches the limit, terminate composing.
13108 (COMPOSITION_OK): New macro.
13109 (detect_coding_iso2022): Use it if an escape sequence for
13110 composition is found.
13111 (coding_restore_composition): Adjust the number of composition
13112 components if it is not sane.
13113
131142003-03-06 Juanma Barranquero <lektu@terra.es>
13115
13116 * w32term.h (struct w32_display_info): Add xrdb member to support
13117 passing resources via -xrm on Windows.
13118
13119 * w32term.c (w32_make_rdb): New function.
13120 (w32_term_init): Use it to initialize xrdb member of w32_display_info
13121 struct. Delete leftover code.
13122
13123 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
13124 for resources passed on the command line.
13125
13126 * w32reg.c (w32_get_rdb_resource): New function.
13127 (x_get_string_resource): Use it, so resources passed with -xrm
13128 supercede the ones in the registry.
13129
131302003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13131
13132 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
13133 instead of x_top_window_to_frame.
13134
131352003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13136
13137 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
13138 when restarting Emacs.
13139
131402003-03-03 Richard M. Stallman <rms@gnu.org>
13141
13142 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
13143 to run kill-buffer-query-functions.
13144 (Qkill_buffer_query_functions): New var.
13145 (syms_of_buffer): Init and staticpro it.
13146
131472003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13148
13149 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
13150
131512003-02-25 Kim F. Storm <storm@cua.dk>
13152
13153 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
13154 If centering point failed to make whole line visible and vscroll
13155 is non-zero, disable vscroll and try centering point again.
13156
13157 * lread.c (read1): Accept `single space' syntax like (? x).
13158
131592003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13160
13161 * keyboard.c (cancel_hourglass_unwind): Surround with
13162 #ifdef HAVE_X_WINDOWS
13163
131642003-02-25 Kenichi Handa <handa@m17n.org>
13165
13166 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
13167 process only when "subprocesses" is defined.
13168
131692003-02-24 Stefan Monnier <monnier@cs.yale.edu>
13170
13171 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
13172
131732003-02-24 Juanma Barranquero <lektu@terra.es>
13174
13175 * callint.c (fix_command): Declare as static void and move before
13176 Fcall_interactively.
13177
13178 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
13179 (syms_of_xdisp): Don't initialize Qwhen.
13180
131812003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13182
13183 * keyboard.c (cancel_hourglass_unwind): New function.
13184 (command_loop_1): Cancel hourglass with unwind-protect.
13185
131862003-02-23 Richard M. Stallman <rms@gnu.org>
13187
13188 * callint.c (fix_command): New subroutine, from Fcall_interactively.
13189 Detect (when ... (region-beginning)) etc.
13190 (Fcall_interactively): Call fix_command.
13191 (Qif, Qwhen): New variables.
13192 (syms_of_callint): Init and staticpro them.
13193
13194 * regex.c (print_partial_compiled_pattern): Output to stderr.
13195
131962003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
13197
13198 * dired.c (directory_files_internal): Don't expand directory.
13199 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
13200 instead. From Lars Hansen <larsh@math.ku.dk>.
13201
132022003-02-22 Stefan Monnier <monnier@cs.yale.edu>
13203
13204 * fns.c (string_to_multibyte): Remove unused var i.
13205 (Flanginfo): Fix int/Lisp_Object mixup.
13206 (void_call2): New fun.
13207 (Fmap_char_table): Use it in place of call2.
13208
13209 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
13210
13211 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
13212
13213 * keymap.c (copy_keymap_1): Make it static.
13214
13215 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
13216
132172003-02-22 David Ponce <david@dponce.com>
13218
13219 * lread.c (Fload): Don't check STRING_MULTIBYTE.
13220
132212003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13222
13223 * process.h: Removed subtty field from struct Lisp_Process.
13224
13225 * process.c (create_process): Remove setting of subtty.
13226 (emacs_get_tty_pgrp): New function.
13227 (Fprocess_running_child_p, process_send_signal):
13228 Call emacs_get_tty_pgrp instead of ioctl.
13229 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
13230
132312003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
13232
13233 * keymap.c (Fdefine_key): Doc fix.
13234
132352003-02-21 Juanma Barranquero <lektu@terra.es>
13236
13237 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
13238
13239 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
13240 POLLING_PROBLEM_IN_SELECT.
13241
13242 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
13243 Delete #undef of POLLING_PROBLEM_IN_SELECT.
13244
13245 * s/hpux10-20.h: New file.
13246
13247 * process.c (wait_reading_process_input):
13248 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
13249
132502003-02-20 Kenichi Handa <handa@m17n.org>
13251
13252 * fontset.c (check_fontset_name): If NAME is nil, return the
13253 default fontset.
13254 (override_font_info): New function.
13255 (Fset_fontset_font): Document that NAME nil means the default fontset.
13256 (Ffontset_info): If FONTSET is not the default fontset, merge
13257 FONTSET onto the copy of the default fontset, and work on that
13258 copy. Document that NAME nil means the default fontset.
13259 (Ffontset_font): Document that NAME nil means the default fontset.
13260
13261 * process.c (setup_process_coding_systems): If the process's
13262 in/out descriptor is -1, do nothing.
13263
132642003-02-19 Andreas Schwab <schwab@suse.de>
13265
13266 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
13267 Add prototypes.
13268
132692003-02-19 Kenichi Handa <handa@m17n.org>
13270
13271 * xfaces.c (try_alternative_families): Try all scalable fonts if
13272 Vscalable_fonts_allowed is not Qt.
13273
132742003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13275
13276 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
13277
132782003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13279
13280 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
13281 names.
13282
13283 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
13284 (sorted_font_list): Move allocation of struct font_name to
13285 x_face_list_fonts.
13286 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
13287 (Fx_list_fonts): Set maxnames to -1 to get all font names.
13288
132892003-02-18 Kim F. Storm <storm@cua.dk>
13290
13291 * lread.c (read1): Fix last change.
13292 "`" is not always special. Allow "?" after a character constant.
13293
132942003-02-18 Andrew Choi <akochoi@shaw.ca>
13295
13296 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
13297
132982003-02-18 Andreas Schwab <schwab@suse.de>
13299
13300 * window.c (window_scroll_pixel_based): Move outside a
13301 multi-glyph character before setting new window start.
13302
13303 * xdisp.c (in_display_vector_p): New function.
13304 * dispextern.h (in_display_vector_p): Declare.
13305
133062003-02-18 Kim F. Storm <storm@cua.dk>
13307
13308 * lread.c (read1): Fix and relax read syntax.
13309 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
13310 Only recognize "," after dotted-pair dot if inside backquote.
13311 Never include "`" or "," (inside backquote) in a symbol.
13312 Allow dotted-pair dot after a character constant.
13313 Allow "`" and "," (inside backquote) after a character constant.
13314
133152003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13316
13317 * gtkutil.c (xg_tool_bar_expose_callback): New function.
13318 (xg_create_tool_bar): Force style of tool bar to be horizontal with
13319 icons. Set name of tool bar to emacs-toolbar.
13320 (update_frame_tool_bar): Connect expose event to
13321 xg_tool_bar_expose_callback.
13322
133232003-02-17 Richard M. Stallman <rms@gnu.org>
13324
13325 * keyboard.c (this_command_key_count_reset): New variable.
13326 Initiatize to 0 where this_command_key_count is set.
13327 (read_char): Save and restore this_command_key_count_reset
13328 around input method code.
13329 (read_char): If this_command_key_count_reset, echo reread commands.
13330 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
13331
133322003-02-17 Kenichi Handa <handa@m17n.org>
13333
13334 * fns.c (string_to_multibyte): Always return a multibyte string.
13335
133362003-02-16 Jason Rumney <jasonr@gnu.org>
13337
13338 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
13339 Negative max_fonts parameter means list all.
13340
133412003-02-14 Dave Love <fx@gnu.org>
13342
13343 * fns.c (Flanginfo): Doc fix.
13344
133452003-02-13 Kim F. Storm <storm@cua.dk>
13346
13347 * lread.c (read_escape): Interpret \s as a SPACE character, except
13348 for \s-X in a character constant which still is the super modifier.
13349 (read1): Signal an `invalid read syntax' error if a character
13350 constant is immediately followed by a digit or symbol character.
13351
13352 * search.c (Fmatch_data): Doc fix. Explicitly state that
13353 match-data is undefined if last search failed.
13354
13355 * keymap.c (Fcommand_remapping): Rename from Fremap_command.
13356 All uses changed.
13357
133582003-02-12 Juanma Barranquero <lektu@terra.es>
13359
13360 * eval.c (Fdefmacro): Fix typo.
13361
133622003-02-12 Kim F. Storm <storm@cua.dk>
13363
13364 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
13365 macro is a string, convert meta modifiers in string when copying
13366 the string into a vector.
13367
133682003-02-11 Kim F. Storm <storm@cua.dk>
13369
13370 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
13371
133722003-02-11 Kenichi Handa <handa@m17n.org>
13373
13374 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
13375
133762003-02-10 Kim F. Storm <storm@cua.dk>
13377
13378 * process.c: Doc fixes.
13379 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
13380
133812003-02-10 Kenichi Handa <handa@m17n.org>
13382
13383 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
13384
13385 * process.c (QCfilter_multibyte): New variable.
13386 (setup_process_coding_systems): New function.
13387 (Fset_process_buffer, Fset_process_filter):
13388 Call setup_process_coding_systems.
13389 (Fstart_process): Initialize the member `filter_multibyte' of
13390 struct Lisp_Process.
13391 (create_process): Call setup_process_coding_systems.
13392 (Fmake_network_process): New keyward `:filter-multibyte'.
13393 Initialize the member `filter_multibyte' of struct Lisp_Process.
13394 Call setup_process_coding_systems.
13395 (server_accept_connection): Call setup_process_coding_systems.
13396 (read_process_output): If the process has a filter, decide the
13397 multibyteness of a string to given to the filter by
13398 `filter_multibyte' member of the process. If the process doesn't
13399 have a filter and the result of conversion is unibyte, use
13400 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
13401 multibyte form.
13402 (Fset_process_coding_system): Call setup_process_coding_systems.
13403 (Fset_process_filter_multibyte): New function.
13404 (Fprocess_filter_multibyte_p): New function.
13405 (syms_of_process): Intern and staticpro QCfilter_multibyte.
13406 Defsubr Sset_process_filter_multibyte and
13407 Sprocess_filter_multibyte_p.
13408
13409 * process.h (struct Lisp_Process): New member filter_multibyte.
13410
13411 * lisp.h (setup_process_coding_systems): Add prototype.
13412
13413 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
13414 process, update coding systems for the process.
13415
134162003-02-09 Kenichi Handa <handa@m17n.org>
13417
13418 * fns.c (string_to_multibyte): New function.
13419 (Fstring_to_multibyte): New function.
13420 (syms_of_fns): Defsubr it.
13421
134222003-02-08 Andreas Schwab <schwab@suse.de>
13423
13424 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
13425 instead of the substitution.
13426
134272003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13428
13429 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
13430
13431 * xmenu.c (menu_position_func): Adjust menu popup position so that
13432 the menu is fully visible.
13433
134342003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13435
13436 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
13437 (x_make_frame_invisible, x_wm_set_icon_position):
13438 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
13439
13440 * xfns.c (x_set_name, x_set_title): Ditto.
13441
134422003-02-04 Richard M. Stallman <rms@gnu.org>
13443
13444 * keyboard.c (echo_now): Update before_command_echo_length.
13445 (Freset_this_command_lengths): Reset this_command_key_count etc.
13446 immediately rather than arranging to do it later.
13447 (before_command_key_count_1, before_command_echo_length_1)
13448 (before_command_restore_flag): Vars deleted.
13449 (add_command_key): Don't handle before_command_restore_flag.
13450 (read_char, record_menu_key): Don't update before_command_key_count or
13451 before_command_echo_length.
13452 (read_char): Don't handle before_command_restore_flag.
13453
13454 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
13455 in direct-output clauses if it wouldn't be called in the ordinary case.
13456
134572003-02-04 Kim F. Storm <storm@cua.dk>
13458
13459 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
13460
134612003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13462
13463 * gtkutil.c (remove_from_container): Copying list is not needed.
13464 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
13465 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
13466 on list returned from gtk_container_get_children to avoid memory leak.
13467
134682003-02-01 Jason Rumney <jasonr@gnu.org>
13469
13470 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
13471 local malloc.
13472 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
13473 definitions in xpm.h.
13474 (init_xpm_functions): New function.
13475 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
13476 (init_external_image_libraries): Try to load libXpm.dll.
13477
13478 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
13479 timestamp.
13480
134812003-01-31 Dave Love <fx@gnu.org>
13482
13483 * syntax.c (Fskip_chars_forward)
13484 (open-paren-in-column-0-is-defun-start): Doc fix.
13485
134862003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
13487
13488 * fileio.c: Support // at start of name for Cygwin (just added proper
13489 preprocessor tests).
13490
13491 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
13492
13493 * Makefile.in: Use @EXEEXT@ for Cygwin.
13494
13495 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
13496
13497 * s/cygwin.h: Added for Cygwin port.
13498
134992003-01-31 Juanma Barranquero <lektu@terra.es>
13500
13501 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
13502 when including gif_lib.h.
13503 (init_gif_functions, init_tiff_functions): New functions.
13504 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
13505 Windows. Disable color table lookups. Call library functions
13506 through pointers determined at runtime.
13507 (init_external_image_libraries): Try to load libungif.dll and
13508 libtiff.dll.
13509
135102003-01-31 Kenichi Handa <handa@m17n.org>
13511
13512 * xdisp.c (SKIP_GLYPHS): New macro.
13513 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
13514
135152003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13516
13517 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
13518
135192003-01-30 Dave Love <fx@gnu.org>
13520
13521 * alloc.c (Vgc_elapsed, gcs_done): New variables.
13522 (Fgarbage_collect): Use them.
13523 (init_alloc, syms_of_alloc): Set them up.
13524
135252003-01-30 Juanma Barranquero <lektu@terra.es>
13526
13527 * w32fns.c (init_external_image_libraries): Add missing operator.
13528
135292003-01-29 Jason Rumney <jasonr@gnu.org>
13530
13531 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
13532 an alternative name for jpeg.dll.
13533
135342003-01-29 Kenichi Handa <handa@m17n.org>
13535
13536 * xdisp.c (set_cursor_from_row): Pay attention to string display
13537 properties.
13538
135392003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
13540
13541 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
13542 <escape>.
13543 (keycode_to_xkeysym_table): Reformat and add more comments.
13544 (XTread_socket): Drop special case for backspace.
13545
135462003-01-28 Andrew Choi <akochoi@shaw.ca>
13547
13548 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
13549 values in old-style RGB specs.
13550
135512003-01-27 Juanma Barranquero <lektu@terra.es>
13552
13553 * w32fns.c (init_external_image_libraries): Try alternate names for the
13554 jpeg dll.
13555
135562003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13557
13558 * gtkutil.c (create_dialog, xg_separator_p)
13559 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
13560 before calling strcmp or strlen.
13561
135622003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13563
13564 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
13565 and handle image load failure.
13566
135672003-01-26 Jason Rumney <jasonr@gnu.org>
13568
13569 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
13570 New functions.
13571 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
13572 Disable color table lookups. Call jpeg library functions
13573 through pointers determined at runtime.
13574 (init_external_image_libraries): Try to load jpeg.dll.
13575
135762003-01-25 Richard M. Stallman <rms@gnu.org>
13577
13578 * lisp.h: Declare format2 instead of format1.
13579
13580 * fileio.c (barf_or_query_if_file_exists):
13581 Call format2 instead of format1.
13582
13583 * editfns.c (format2): New function, replaces format1
13584 but takes exactly two Lisp Objects as format args.
13585
13586 * buffer.c (Fkill_buffer): Call format2 instead of format1.
13587
135882003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13589
13590 * xterm.h: Change to return value of x_dispatch_event to int.
13591
13592 * xterm.c (x_filter_event): New function.
13593 (event_handler_gdk, XTread_socket): Call x_filter_event.
13594 (x_dispatch_event): Change to return value of finish.
13595 (event_handler_gdk): Use return value from x_dispatch_event.
13596
13597 * xfns.c (x_window): Call create_frame_xic for GTK version to
13598 initialize input methods.
13599
13600 * gtkutil.h: Add (void) prototypes.
13601
13602 * gtkutil.c (create_menus): Remove code that puts the help menu to
13603 the right.
13604
136052003-01-25 Jason Rumney <jasonr@gnu.org>
13606
13607 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
13608 [HAVE_PNG]: Sync with xfns.c version.
13609 (png_load): Adjust colors for Windows. Use Windows
13610 bitmaps. Disable color table lookups.
13611 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
13612 (init_png_functions): New function.
13613 (png_read_from_memory, png_load): Call png library functions
13614 through pointers determined at runtime.
13615 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
13616 (init_external_image_libraries): New function.
13617 (init_xfns): Call it.
13618
136192003-01-24 Andreas Schwab <schwab@suse.de>
13620
13621 * minibuf.c (Fminibuffer_message): Verify type of parameter.
13622
136232003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13624
13625 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
13626 of static initializer.
13627
136282003-01-24 Dave Love <fx@gnu.org>
13629
13630 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
13631 architectures.
13632
13633 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
13634 Use __alignof__.
13635
136362003-01-24 Kenichi Handa <handa@m17n.org>
13637
13638 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
13639 It it is nonzero, don't pretend that an invisible area doesn't exist.
13640 (command_loop_1): Call adjust_point_for_property with proper
13641 second arg.
13642
136432003-01-22 Jason Rumney <jasonr@gnu.org>
13644
13645 Sync changes with xterm.c and xfns.c.
13646
13647 * w32term.c (x_draw_glyph_string_foreground)
13648 (x_draw_composite_glyph_string_foreground): Implement overstriking.
13649
13650 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
13651 phys_cursor's hpos is overwritten. This is still not completely
13652 correct, as it doesn't really make sense to use hpos at all to
13653 get the cursor glyph (as that is relative to the width of the
13654 characters on the line, which may have changed during the update).
13655
13656 * w32term.c (notice_overwritten_cursor): Handle the special case
13657 of the cursor being in the first blank non-text line at the
13658 end of a window.
13659
13660 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
13661 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
13662 Compute from the x position returned by x_draw_glyphs.
13663
13664 (x_display_and_set_cursor): Don't set phys_cursor_width here,
13665 except for NO_CURSOR and system caret, to make phys_cursor_width
13666 contain what its name suggests.
13667 (notice_overwritten_cursor): Consider the cursor image erased if
13668 the output area intersects the cursor image in y-direction.
13669
13670 * w32term.c (note_mode_line_or_margin_highlight): Rename from
13671 note_mode_line_highlight and extend.
13672
13673 * w32term.c (last_window): New variable.
13674 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
13675 (note_mouse_movement): Remove reimplemented code in #if 0.
13676
13677 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
13678 not update_mode_lines, and always set it to 1.
13679
136802003-01-21 Jason Rumney <jasonr@gnu.org>
13681
13682 * w32fns.c (IDC_HAND): Define it if system headers don't.
13683
136842003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
13685
13686 * w32term.h (struct w32_output): New member hand_cursor.
13687 (WM_EMACS_SETCURSOR): New message definition.
13688
13689 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
13690 function w32_define_cursor.
13691 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
13692 position, change member name output_data.x to output_data.w32 and
13693 add function w32_define_cursor.
13694 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
13695 and change member name output_data.x to output_data.w32.
13696 (w32_initialize_display_info):
13697 Setup dpyinfo->vertical_scroll_bar_cursor.
13698
13699 * w32fns.c (Vx_hand_shape): New variable.
13700 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
13701 WM_EMACS_SETCURSOR.
13702 (x-create-frame): Setup Cursor types.
13703
137042003-01-21 David Ponce <david@dponce.com>
13705
13706 * w32term.c (w32_encode_char): For DIM=1 charset, set
13707 ccl->reg[2] to -1 before calling ccl_driver.
13708 (Sync. with xterm.c x_encode_char change by Kenichi Handa
13709 <handa@m17n.org> on 2002-09-30.)
13710 (w32_draw_relief_rect): Declare all args.
13711 (w32_define_cursor): New.
13712
13713 * w32fns.c (w32_load_cursor): New function.
13714 (w32_init_class): Use it.
13715 (x_put_x_image): Declare all args.
13716
137172003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk>
13718
13719 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
13720
137212003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13722
13723 * gtkutil.c: Must include stdio.h before termhooks.h
13724
137252003-01-21 Dave Love <fx@gnu.org>
13726
13727 * alloc.c (Fgc_status): Print zombie list.
13728 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
13729 Fix assignment of zombies.
13730 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
13731 Don't take car of non-cons.
13732
13733 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
13734
13735 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
13736
137372003-01-20 David Ponce <david@dponce.com>
13738
13739 * w32menu.c (digest_single_submenu): Declare all args.
13740
13741 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
13742 changes in xmenu.c:
13743
13744 (parse_single_submenu): Use individual keymap's prompt
13745 string as pane name, if there is one.
13746 (set_frame_menubar): Save menu_items_n_panes from each call to
13747 parse_single_submenu and use it when calling digest_single_submenu.
13748
137492003-01-20 Steven Tamm <steventamm@mac.com>
13750
13751 * macterm.c (XTread_socket): Check for valid, visible window
13752 before sending a scroll-wheel event.
13753
137542003-01-20 Richard M. Stallman <rms@gnu.org>
13755
13756 * xdisp.c (redisplay_window): If mini window's buffer is not
13757 a minibuffer, then redisplay it like other windows.
13758
137592003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13760
13761 * gtkutil.c (xg_create_frame_widgets): Check if there is an
13762 external tool bar before setting tool bar height.
13763
137642003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13765
13766 * xterm.c (handle_one_xevent): Surround popup_activated
13767 with #ifdef:s for non-toolkit version.
13768
13769 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
13770 (gtkutil.o): New file.
13771 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
13772 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
13773
13774 * gtkutil.c: New file for GTK version.
13775
13776 * gtkutil.h: New file for GTK version.
13777
13778 * xterm.h: Add xt_or_gtk_widget.
13779 Include gtk files for USE_GTK.
13780 (struct x_output): Add toolbar_height.
13781 (struct x_output): Add GTK widgets and Gdk size_hints.
13782 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
13783 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
13784 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
13785
13786 * xterm.c: Include gtkutil.h for USE_GTK.
13787 (free_frame_menubar): Declare extern void for USE_GTK.
13788 (note_mouse_highlight): Check popup_activated for USE_GTK.
13789 (xt_action_hook): Don't compile if USE_GTK.
13790 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
13791 (xg_scroll_callback): New function.
13792 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
13793 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
13794 for USE_GTK.
13795 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
13796 xg_show_scroll_bar for USE_GTK.
13797 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
13798 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
13799 (event_handler_gdk): New function for USE_GTK.
13800 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
13801 (handle_one_xevent): Make sure widget is mapped before
13802 calling x_real_positions for USE_GTK.
13803 (XTread_socket): Add GTK event loop for USE_GTK.
13804 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
13805 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
13806 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
13807 (x_iconify_frame): Add code for USE_GTK.
13808 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
13809 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
13810 is in gtkutil.c.
13811 (x_term_init): Add initialization for GTK.
13812 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
13813
13814 * xmenu.c: Include gtkutil.h for USE_GTK.
13815 (Fx_popup_menu): Use current position if x and y is NIL.
13816 (single_menu_item, single_menu_item, Fx_popup_dialog):
13817 Check for USE_GTK.
13818 (popup_widget_loop): New function for USE_GTK.
13819 (x_activate_menubar): Add code for USE_GTK.
13820 (popup_activate_callback, popup_deactivate_callback)
13821 (menu_highlight_callback, menubar_selection_callback):
13822 Add USE_GTK versions.
13823 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
13824 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
13825 (free_frame_menubar): Only compile if not USE_GTK. GTK version
13826 is in gtkutil.c.
13827 (popup_selection_callback): New version for USE_GTK.
13828 (create_and_show_popup_menu): New fuction, one USE_GTK version and
13829 one USE_X_TOOLKIT version.
13830 (xmenu_show): Call create_and_show_popup_menu.
13831 (dialog_selection_callback): New version for USE_GTK.
13832 (create_and_show_dialog): New fuction, one USE_GTK version and
13833 one USE_X_TOOLKIT version.
13834 (xdialog_show): Call create_and_show_dialog.
13835
13836 * xfns.c: Include gtkutil for USE_GTK.
13837 (x_window_to_frame, x_any_window_to_frame)
13838 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
13839 (x_top_window_to_frame): Add code for USE_GTK.
13840 (x_set_background_color): Call xg_set_background_color for GTK.
13841 (x_set_menu_bar_lines): Check for USE_GTK.
13842 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
13843 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
13844 (x_window): Call xg_create_frame_widgets for USE_GTK.
13845 (Fx_create_frame): Check for USE_GTK
13846 (Fx_file_dialog): New implementation for USE_GTK.
13847
13848 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
13849 (update_menu_bar): Add check for USE_GTK.
13850 (update_tool_bar): Add check for USE_GTK and external tool bar.
13851 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
13852 (redisplay_internal): Add check for USE_GTK and popup_activated.
13853 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
13854 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
13855 (display_menu_bar): Add check for USE_GTK
13856
13857 * lisp.h (Vx_resource_name): Declare extern.
13858
13859 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
13860 for USE_GTK.
13861 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
13862
13863 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
13864 (FRAME_EXTERNAL_TOOL_BAR): New macro.
13865 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
13866
13867 * fileio.c (Fread_file_name): Add check for USE_GTK.
13868
13869 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
13870 Add check for USE_GTK.
13871
13872 * config.in: Added HAVE_GTK
13873
13874 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
13875
138762003-01-18 Stefan Monnier <monnier@cs.yale.edu>
13877
13878 * charset.h (Funibyte_char_to_multibyte): Export.
13879
138802003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13881
13882 * xmenu.c (mouse_position_for_popup): New function.
13883 (Fx_popup_menu): Call mouse_position_for_popup for X and
13884 mouse_position_hook for others.
13885
138862003-01-17 Kim F. Storm <storm@cua.dk>
13887
13888 * editfns.c (Finsert): Mention `string-make-multibyte' and
13889 `string-as-multibyte' in doc string.
13890
138912003-01-17 Kenichi Handa <handa@m17n.org>
13892
13893 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
13894
13895 * editfns.c (Fformat): Convert an unibyte char argument that is
13896 formatted by "%c" to multibyte if the total result must be a
13897 multibyte string.
13898
138992003-01-16 Kim F. Storm <storm@cua.dk>
13900
13901 * process.c (set-process-filter): Document unibyte/multibyte-ness
13902 of string argument.
13903
139042003-01-16 Kenichi Handa <handa@m17n.org>
13905
13906 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
13907
13908 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
13909 (re_search_2): Likewise.
13910
139112003-01-15 Kenichi Handa <handa@m17n.org>
13912
13913 * xdisp.c (message_dolog): Fix bug of the case that *Message*
13914 buffer is unibyte.
13915
139162003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
13917
13918 * fns.c (Fsubstring): Clarify doc string.
13919
13920 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
13921 (Fprevious_char_property_change)
13922 (Fnext_single_char_property_change)
13923 (Fprevious_single_char_property_change, Fnext_property_change)
13924 (Fnext_single_property_change, Fprevious_property_change)
13925 (Fprevious_single_property_change, Fadd_text_properties)
13926 (Fput_text_property, Fset_text_properties)
13927 (Fremove_text_properties, Fremove_list_of_text_properties)
13928 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
13929
139302003-01-14 Kim F. Storm <storm@cua.dk>
13931
13932 * process.h (struct Lisp_Process): New member plist replaces old
13933 member private_vars. All uses changed.
13934
13935 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
13936 (QCplist): Rename from QCvars. Change all uses.
13937 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
13938 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
13939 (syms_of_process): Intern, staticpro, defsubr these.
13940 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
13941
139422003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
13943
13944 * m/delta.h: Remove (obsolete).
13945
139462003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
13947
13948 * fileio.c (Fdelete_directory, Fdelete_file): Document the
13949 behaviour in front of symlinks.
13950 (Fdelete_file): Raise an error on directories.
13951
139522003-01-13 Dave Love <fx@gnu.org>
13953
13954 * fns.c (Freverse): Use QUIT.
13955
139562003-01-13 Richard M. Stallman <rms@gnu.org>
13957
13958 * minibuf.c (minibuffer_completion_contents):
13959 Error if point is inside prompt.
13960
13961 * keyboard.c (command_loop_1): Don't redisplay directly
13962 if there's a post-command-hook.
13963
13964 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
13965 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
13966
139672003-01-12 Kim F. Storm <storm@cua.dk>
13968
13969 * process.h (struct Lisp_Process): New member private_vars.
13970
13971 * process.c (QCvars): New variable.
13972 (syms_of_process): Intern and staticpro it.
13973 (Fset_process_contact): Removed function.
13974 (Fprocess_variable, Fset_process_variable): New functions.
13975 (syms_of_process): Defsubr them.
13976 (Fstart_process): Initialize private_vars plist to nil.
13977 (Fmake_network_process): New arg :vars to setup the private
13978 variables for new network process.
13979 (server_accept_connection): Copy server's private variables to
13980 client process.
13981
13982 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
13983 crashes). Code rewritten and simplified. Now directly aligns the
13984 pointer and recalculates pure_bytes_used, rather than aligning the
13985 size and adjusting the pointer.
13986
139872003-01-11 Kim F. Storm <storm@cua.dk>
13988
13989 * process.c (Fset_process_contact): New function.
13990 (syms_of_process): defsubr it.
13991 (make-network-process): Update doc.
13992
139932003-01-10 Andreas Schwab <schwab@suse.de>
13994
13995 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
13996 Reported by Berthold Gunreben <b.gunreben@web.de>.
13997
139982003-01-10 Dave Love <fx@gnu.org>
13999
14000 * composite.c (syms_of_composite): Make composition_hash_table weak.
14001
140022003-01-09 Kim F. Storm <storm@cua.dk>
14003
14004 * process.c (Fmake_network_process): Convert new port number
14005 to host byte order for `:service t' case. From Mario Lang.
14006
140072003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14008
14009 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
14010 instead of XtAppProcessEvent.
14011
14012 * xterm.c (handle_one_xevent): New function.
14013 (x_dispatch_event): New function.
14014 (XTread_socket): Call handle_one_xevent.
14015
14016 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
14017
14018 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
14019 call XQueryPointer to get coordinates.
14020 (popup_get_selection): Do not set popup_activated_flag to zero,
14021 let popup_deactivate_callback do that. Needed for Motif.
14022 Call x_dispatch_event instead of XtDispatchEvent.
14023 (xmenu_show): Calculate root coordinate from frame top/left position.
14024
140252003-01-08 Kim F. Storm <storm@cua.dk>
14026
14027 * process.c (server_accept_connection): Fix recording of new
14028 connection's local address in :local property of contact info.
14029 (Fmake_network_process): Record local network address for new
14030 client processes in :local property of contact info.
14031 (format-network-address): Add arg OMIT-PORT. Change callers.
14032
140332003-01-07 Dave Love <fx@gnu.org>
14034
14035 * Makefile.in (fns.o): Depend on coding.h.
14036
140372003-01-07 Markus Rost <rost@math.ohio-state.edu>
14038
14039 * minibuf.c (Fread_variable): Doc fix.
14040
14041 * eval.c (Fuser_variable_p): Doc change. For custom variables,
14042 use the same test as for custom-variable-p.
14043
140442003-01-05 Richard M. Stallman <rms@gnu.org>
14045
14046 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
14047 Count LAST_LINE_MISFIT in scroll margin for end of window.
14048 Move label too_near_end before setting SCROLL_MARGIN_POS.
14049 Set LAST_LINE_MISFIT before jumping there.
14050
14051 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
14052 scroll_conservatively case. If scrolling that much doesn't change
14053 STARTP, move it down one line.
14054
14055 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
14056 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
14057
14058 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
14059 selected frame.
14060
14061 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
14062 (syms_of_keymap): Staticpro them.
14063 (Fapropos_internal): Initialize them and clear them out.
14064 Don't GCPRO them.
14065
14066 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
14067 Doc fixes.
14068
14069 * lisp.h: New misc type Lisp_Save_Value.
14070 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
14071 (XSAVE_VALUE): New macro.
14072 (struct Lisp_Save_Value): New data type.
14073 (union Lisp_Misc): Add u_save_value alternative.
14074 (make_save_value): Declare.
14075
14076 * alloc.c (make_save_value): New function.
14077
14078 * xterm.c (x_catch_errors): Save dpy using make_save_value.
14079 (x_catch_errors_unwind): Call XSync.
14080
140812003-01-01 Richard M. Stallman <rms@gnu.org>
14082
14083 * window.c (window_scroll_pixel_based): Partially undo last change.
14084
14085 * keyboard.c (command_loop_1): Call adjust_point_for_property
14086 in direct action cases for Qforward_char and Qbackward_char.
14087 Set already_adjusted so it won't be done twice.
14088
140892002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk>
14090
14091 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
14092 type definition of size_t.
14093
140942003-01-02 Steven Tamm <steventamm@mac.com>
14095
14096 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
14097 distinguish Carbon GUI builds from X11 builds on darwin.
14098
140992002-12-30 Steven Tamm <steventamm@mac.com>
14100
14101 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
14102 to default to t.
14103
141042002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
14105
14106 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
14107
141082002-12-28 Steven Tamm <steventamm@mac.com>
14109
14110 * Makefile.in (macosx-bundle): Fix Mac OS X/Carbon port to
14111 allow building in a different directory than source. Uses some
14112 GNU Make extensions, but there is no other make on Mac OS X.
14113
141142002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
14115
14116 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
14117 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
14118 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
14119 (Fstring_to_number): Mention the returned value in the doc strings.
14120
141212002-12-23 Richard M. Stallman <rms@gnu.org>
14122
14123 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
14124 <scroll-down-aggressively>: Doc fix.
14125
14126 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
14127 string as pane name, if there is one.
14128 (set_frame_menubar): Save menu_items_n_panes from each call to
14129 parse_single_submenu and use it when calling digest_single_submenu.
14130
14131 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
14132 Don't try to make last line fully visible if it is past end of window.
14133
141342002-12-22 Steven Tamm <steventamm@mac.com>
14135
14136 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
14137 (mac_menu_show): Add support for hierarchical popup menus.
14138 (add_menu_item): Remove indentation support.
14139 (fill_submenu, fill_menu): Create hierarchical menus
14140 instead of using indentation.
14141
141422002-12-22 Richard M. Stallman <rms@gnu.org>
14143
14144 * xdisp.c (try_cursor_movement): Don't call try_window here.
14145 (redisplay_window): Never redisplay minibuffer when inactive.
14146
14147 * window.c (select_window_1): Undo 9/21 change.
14148
141492002-12-22 Steven Tamm <steventamm@mac.com>
14150
14151 * macterm.c (XTread_socket): Call KeyTranslate for control and
14152 meta to deal correctly shifted non-alpha characters, like C-S-5
14153 being treated like C-%. Do not look for shift key to deal
14154 with masking off control-key with mac-reverse-ctrl-meta.
14155
141562002-12-21 Richard M. Stallman <rms@gnu.org>
14157
14158 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
14159 If it is non-nil, run timers. Use an unwind-protect to requeue
14160 the events that were read ahead.
14161 (popup_get_selection_unwind): New subroutine.
14162 (popup_get_selection_queue): File-scope variable now holds that queue.
14163 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
14164 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
14165 Use an unwind-protect to pop down the dialog box.
14166 (xdialog_show_unwind): New subroutine implements that.
14167
14168 * xdisp.c (row_containing_pos): Change exit test using last_y.
14169 (try_window_id): Abort if row_containing_pos returns null.
14170
14171 * lread.c (load_error_handler): New function.
14172 (Fload): Handle errors in Fsubstitute_in_file_name.
14173 Don't expect Fsignal to return.
14174
14175 * eval.c: Errors and throws work right with interrupt blocking.
14176 (struct catchtag): New elt interrupt_input_blocked.
14177 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
14178 (internal_catch, Fcondition_case, internal_condition_case)
14179 (internal_condition_case_1, internal_condition_case_2): Save it.
14180 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
14181
14182 * editfns.c (Fformat): Add parens.
14183
14184 * dired.c (file_name_completion): Fix that change.
14185 Delete special quit-handling code; just use QUIT.
14186
141872002-12-21 Tak Ota <Takaaki.Ota@am.sony.com>
14188
14189 * dired.c (file_name_completion): Close directory on error
14190 just as in directory_files_internal.
14191
141922002-12-19 David Kastrup <David.Kastrup@t-online.de>
14193
14194 * window.c (Fset_window_configuration): Set old_point to correct
14195 value when new_current_buffer == current_buffer.
14196
141972002-12-17 Ben Key <bkey1@tampabay.rr.com>
14198
14199 Revisited my earlier fix for the following entry in etc/PROBLEMS:
14200 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
14201 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
14202
14203 These changes were in part based upon suggestions made by Peter
14204 'Luna' Runestig [peter@runestig.com].
14205
14206 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token)
14207 (g_b_init_get_token_information, g_b_init_lookup_account_sid)
14208 (g_b_init_get_sid_identifier_authority ): Add several static
14209 global variables.
14210
14211 * w32.c (globals_of_w32): New function. Used to initialize those
14212 global variables that must always be initialized on startup even
14213 when the global variable initialized is non zero. Its primary
14214 purpose at this time is to set the global variables
14215 g_b_init_is_windows_9x, g_b_init_open_process_token,
14216 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
14217 g_b_init_get_sid_identifier_authority to 0 on startup.
14218 Called from main.
14219
14220 * w32.c (is_windows_9x): Perform initialization only if
14221 g_b_init_is_windows_9x is equal to 0. On initialization set
14222 g_b_init_is_windows_9x equal to 1.
14223
14224 * w32.c (open_process_token): Perform initialization only if
14225 g_b_init_open_process_token is equal to 0. On initialization set
14226 g_b_init_open_process_token equal to 1.
14227
14228 * w32.c (get_token_information): Perform initialization only if
14229 g_b_init_get_token_information is equal to 0. On initialization
14230 set g_b_init_get_token_information equal to 1.
14231
14232 * w32.c (lookup_account_sid): Perform initialization only if
14233 g_b_init_lookup_account_sid is equal to 0. On initialization
14234 set g_b_init_lookup_account_sid equal to 1.
14235
14236 * w32.c (get_sid_identifier_authority): Perform initialization
14237 only if g_b_init_get_sid_identifier_authority is equal to 0.
14238 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
14239
14240 * w32fns.c (globals_of_w32fns): New function. Used to initialize
14241 those global variables that must always be initialized on startup
14242 even when the global variable initialized is non zero.
14243 Its primary purpose at this time is to initialize the global variable
14244 track_mouse_event_fn.
14245
14246 * w32fns.c (w32_wnd_proc): Remove initialization of
14247 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
14248
14249 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
14250
14251 * w32menu.c (globals_of_w32menu): New function. Used to
14252 initialize those global variables that must always be initialized
14253 on startup even when the global variable initialized is non zero.
14254 Its primary purpose at this time is to initialize the global
14255 variables get_menu_item_info and set_menu_item_info.
14256
14257 * w32menu.c (initialize_frame_menubar): Remove initialization of
14258 get_menu_item_info and set_menu_item_info.
14259
14260 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
14261
14262 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
14263 Declare them.
14264
14265 * emacs.c (main): Call globals_of_w32 prior to calling
14266 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
14267 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
14268 is defined.
14269
14270 * w32term.c (x_update_window_begin): Fix Windows API error
14271 detected by BoundsChecker. Test to determine if
14272 w32_system_caret_hwnd is NULL prior to attempting to use
14273 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
14274
14275 * w32term.c (x_update_window_end): Fix Windows API error
14276 detected by BoundsChecker. Test to determine if
14277 w32_system_caret_hwnd is NULL prior to attempting to use
14278 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
14279
142802002-12-17 Kenichi Handa <handa@m17n.org>
14281
14282 * coding.c (coding_system_require_warning): New variable.
14283 (syms_of_coding): DEFVAR it.
14284
14285 * coding.h (coding_system_require_warning): Extern it.
14286
14287 * fileio.c (choose_write_coding_system): Even if
14288 Vcoding_system_for_write is non-nil, if
14289 coding_system_require_warning is nonzero, call
14290 Vselect_safe_coding_system_function.
14291
142922002-12-17 Markus Rost <rost@math.ohio-state.edu>
14293
14294 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
14295 (lisp): Add font-core.
14296
142972002-12-13 Stefan Monnier <monnier@cs.yale.edu>
14298
14299 * textprop.c (text_read_only): New arg `propval'.
14300 (get_char_property_and_overlay): Remove unused var `next_overlay'.
14301 (verify_interval_modification): Use text_read_only's new arg.
14302
143032002-12-13 Kenichi Handa <handa@m17n.org>
14304
14305 * coding.c (Funencodable_char_position): Set pend correctly.
14306
143072002-12-12 Jason Rumney <jasonr@gnu.org>
14308
14309 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
14310 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
14311 Be more careful about when help_events are generated.
14312
143132002-12-12 Steven Tamm <steventamm@mac.com>
14314
14315 * macterm.c (mac_check_for_quit_char): Correctly set the
14316 modifiers of the event to 0.
14317 * mac.c (sys_select): Duplicate rfds before calling select to
14318 ensure that rfds survive the while loop.
14319
143202002-12-11 Kim F. Storm <storm@cua.dk>
14321
14322 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
14323 row_containing_pos returned NULL.
14324
143252002-12-10 Steven Tamm <steventamm@mac.com>
14326
14327 * mac.c (sys_read): Fix sys_read to not call select if IO is
14328 non-blocking.
14329 (sys_select): Fix sys_select to not use a timeout larger than
14330 the one given.
14331
143322002-12-10 Juanma Barranquero <lektu@terra.es>
14333
14334 * editfns.c (Fformat): Use alloca, not _alloca.
14335
143362002-12-09 Richard M. Stallman <rms@gnu.org>
14337
14338 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
14339 as the last thing.
14340
143412002-12-09 Dave Love <fx@gnu.org>
14342
14343 * s/sol2-8.h: Removed. (Not necessary.)
14344
143452002-12-09 Matthew Swift <swift@alum.mit.edu>
14346
14347 * editfns.c (Fformat): Handle precision in string conversion
14348 specifiers like libc functions do (ie, print at most that many
14349 characters).
14350
143512002-12-08 Richard M. Stallman <rms@gnu.org>
14352
14353 * xdisp.c (row_containing_pos): Check more carefully
14354 whether charpos is really in the row before returning it.
14355
143562002-12-07 Steven Tamm <steventamm@mac.com>
14357
14358 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
14359
14360 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
14361 each stack frame. This may change as it could be time consuming.
14362
14363 * macterm.c (mac_check_for_quit_char, quit_char_comp)
14364 (init_quit_char_handler, mac_determine_quit_char_modifiers)
14365 (mac_initialize): Add code to check for pressing of quit_char
14366 in the OS event queue.
14367
14368 * mac.c (sys_select): Call mac_check_for_quit_char every second
14369 while blocking on select.
14370
14371 * mac.c (sys_read): Use sys_select to test for input first
14372 before calling read, to allow C-g to break.
14373
143742002-12-07 Richard M. Stallman <rms@gnu.org>
14375
14376 * minibuf.c (Fcompleting_read): Doc fix.
14377
14378 * lread.c (syms_of_lread) <load-history>: Doc fix.
14379
14380 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
14381
14382 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
14383 autoload.
14384
14385 * data.c (Fdefalias): Record in load-history redefining an autoload.
14386
14387 * alloca.c: Undo ifdef change accidentally made on 12-04.
14388
143892002-12-06 Francesco Potorti` <pot@gnu.org>
14390
14391 * xfns.c (png_load): Avoid double gamma correction for PNG images.
14392
143932002-12-04 Richard M. Stallman <rms@gnu.org>
14394
14395 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
14396
14397 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
14398
14399 * alloca.c: Don't use #error.
14400
144012002-12-03 Dave Love <fx@gnu.org>
14402
14403 * buffer.c (Qucs_set_table_for_input): New.
14404 (Fget_buffer_create): Use it.
14405 (Qset_buffer_major_mode_hook): Deleted.
14406 (Fset_buffer_major_mode): Revert previous change.
14407 (init_buffer_once): Intern ucs-set-table-for-input.
14408 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
14409 Add &Qucs_set_table_for_input.
14410
144112002-12-03 Andreas Schwab <schwab@suse.de>
14412
14413 * callint.c (Fcall_interactively): Use next_event only if less
14414 than key_count.
14415
144162002-12-02 Andrew Choi <akochoi@shaw.ca>
14417
14418 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
14419 names to 255 characters.
14420
14421 * macterm.c (XTread_socket): If all frames have been collapsed,
14422 expand the first one before handling drag-and-drop events.
14423
14424 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
14425 which is detected by autoconf.
14426
144272002-12-01 Steven Tamm <steventamm@mac.com>
14428
14429 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
14430 offset in two hints table to allow prebinding to be redone and
14431 allow the executable to be stripped.
14432
144332002-11-29 Dave Love <fx@gnu.org>
14434
14435 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
14436 already provided.
14437
144382002-11-29 Richard M. Stallman <rms@gnu.org>
14439
14440 * xdisp.c (start_display): Check more intelligently for
14441 whether the line is continued.
14442 (move_it_vertically_backward): Clear it->continuation_lines_width.
14443
144442002-11-28 Dave Love <fx@gnu.org>
14445
14446 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
14447 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
14448
144492002-11-27 Steven Tamm <steventamm@mac.com>
14450
14451 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
14452 more descriptive error output from lread.c:Fload upon most require
14453 cycles during boostrapping.
14454
144552002-11-27 Jason Rumney <jasonr@gnu.org>
14456
14457 * fileio.c (Finsert_file_contents): Give a more appropriate error
14458 for files bigger than 2Gb when off_t is 32 bit.
14459
14460 * dired.c (Ffile_attributes): Don't return negative file sizes for
14461 files bigger than 2Gb when off_t is 32 bit.
14462
144632002-11-27 Dave Love <fx@gnu.org>
14464
14465 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
14466
14467 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
14468 Test GETPGRP_VOID instead.
14469 [BSD_TERMIOS]: Remove definitions (never used).
14470
14471 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
14472 Don't define.
14473 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
14474
14475 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
14476
144772002-11-25 Jason Rumney <jasonr@gnu.org>
14478
14479 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
14480 supported.
14481
144822002-11-25 Dave Love <fx@gnu.org>
14483
14484 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
14485
14486 * Makefile.in (TEMACS_LDFLAGS): Update last change.
14487
144882002-11-25 Andreas Schwab <schwab@suse.de>
14489
14490 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
14491
144922002-11-24 Steven Tamm <steventamm@mac.com>
14493
14494 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
14495 determine the size of pointers alloced in unexed space instead
14496 of using possibly invalid emacs_zone pointers. This fixes the
14497 binary incompatibility problems caused by updates to libSystem.B.
14498
144992002-11-24 Richard M. Stallman <rms@gnu.org>
14500
14501 * search.c (Fstring_match): Doc fix.
14502
14503 * callint.c (Fcall_interactively): If a command fails because
14504 `*' detects a read-only buffer, but RECORD_FLAG is set,
14505 record it anyway if the args don't actually do tty input.
14506
145072002-11-22 Dave Love <fx@gnu.org>
14508
14509 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
14510
14511 * keyboard.c (interrupt_signal): Provide forward declaration.
14512 (kbd_buffer_store_event): Don't declare interrupt_signal.
14513
14514 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
14515
145162002-11-21 Richard M. Stallman <rms@gnu.org>
14517
14518 * eval.c (interactive_p): Skip any number of bytecode
14519 and special form frames, in any order.
14520
145212002-11-20 Jason Rumney <jasonr@gnu.org>
14522
14523 * w32fns.c (convert_mono_to_color_image): New function.
14524 (xbm_load, xbm_load_image): Use it when foreground or background
14525 is explicitly set.
14526
145272002-11-19 Dave Love <fx@gnu.org>
14528
14529 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
14530
145312002-11-18 Jason Rumney <jasonr@gnu.org>
14532
14533 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
14534 (XPutPixel): Swap blue and red.
14535 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
14536 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
14537 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
14538 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
14539
145402002-11-18 Dave Love <fx@gnu.org>
14541
14542 * m/orion105.h (HAVE_ALLOCA): Don't define.
14543
14544 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
14545
14546 * m/intel386.h: Don't include alloca.h or define alloca.
14547
14548 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
14549 malloc, realloc, calloc.
14550
14551 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
14552 (bcmp): Don't define.
14553
14554 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
14555
14556 * m/amdahl.h: Don't define LIB_STANDARD.
14557
14558 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
14559
14560 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
14561
14562 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
14563 Don't include alloca.h.
14564
14565 * s/aix3-2.h (HAVE_FSYNC): Don't define.
14566
14567 * regex.c (_GNU_SOURCE): Don't define.
14568
14569 * process.c (_GNU_SOURCE): Don't define.
14570
14571 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
14572
145732002-11-18 Markus Rost <rost@math.ohio-state.edu>
14574
14575 * s/sol2-8.h: Include sol2-6.h.
14576
145772002-11-18 Miles Bader <miles@gnu.org>
14578
14579 * dispextern.h (struct face): Add `overstrike' field.
14580 * xterm.c (x_draw_glyph_string_foreground)
14581 (x_draw_composite_glyph_string_foreground): Implement overstriking.
14582 * xfaces.c (load_face_font): Set `face->overstrike' based on
14583 result from choose_face_font.
14584 (best_matching_font, choose_face_font): Add `needs_overstrike'
14585 argument, and use it to return whether overstriking is desirable
14586 for this face/font combo.
14587 (set_font_frame_param: Pass new argument to choose_face_font.
14588
145892002-11-17 Ben Key <BKey1@tampabay.rr.com>
14590
14591 This change is my fix for the following entry in etc/PROBLEMS:
14592 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
14593 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
14594
14595 * w32.c: Added wrapper functions around the win32 API functions
14596 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
14597 GetSidIdentifierAuthority. These wrapper functions serve two
14598 purposes:
14599 1. They ensure that the wrapped function can never be called
14600 when Emacs is running on an operating system on which they are
14601 not supported (Microsoft Windows 95 / 98 / ME).
14602 2. They call the wrapped functions via function pointers rather
14603 than calling them directly. This avoids taking advantage of the
14604 undocumented fact that although these functions are not supported
14605 in the 9x branch of Microsoft Windows, the functions do exist in
14606 the version of advapi32.dll that is found in the 9x branch of
14607 Microsoft Windows.
14608
14609 * w32.c (init_user_info): Replace the calls to the win32 API
14610 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
14611 and GetSidIdentifierAuthority with calls to the newly added
14612 wrapper functions.
14613
14614 * w32.h: Added extern declarations for the following functions:
14615 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
14616 syms_of_w32menu, and void syms_of_fontset.
14617
14618 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
14619 function pointer track_mouse_event_fn in the handler for the
14620 WM_SETFOCUS message.
14621
14622 * w32menu.c (initialize_frame_menubar): Add code to
14623 reinitialize the function pointers set_menu_item_info and
14624 get_menu_item_info.
14625
146262002-11-17 Ben Key <BKey1@tampabay.rr.com>
14627
14628 * sound.c: Added a partial implementation of play-sound-internal
14629 for Microsoft Windows. Added various #ifdef / #else / #endif
14630 code blocks to separate the code that will compile under
14631 Microsoft Windows from the code that is specific to GNU/Linux.
14632 Moved several blocks of code around to make this separation of code
14633 into Windows compatible and GNU/Linux compatible code blocks easier.
14634
14635 * makefile.w32-in: Include sound.c and link with WinMM.lib.
14636
14637 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
14638 added support for play-sound-internal under Windows would be
14639 included in the build of Emacs.
14640
146412002-11-16 Jason Rumney <jasonr@gnu.org>
14642
14643 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
14644
14645 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
14646
146472002-11-15 Stefan Monnier <monnier@cs.yale.edu>
14648
14649 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
14650 (adjust_point_for_property): Move out of display and invisible even if
14651 we were already inside before (in case a property was added while
14652 we weren't looking). Be more careful when handling invisible props.
14653 Skip invisible text as if it really wasn't there at all.
14654
146552002-11-15 Jason Rumney <jasonr@gnu.org>
14656
14657 * w32term.c (x_draw_image_foreground)
14658 (w32_draw_image_foreground_1): Use standard copy and invert
14659 operations to draw images.
14660
14661 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
14662 depth of 1.
14663 (xbm_read_bitmap_data): Invert bits as xbm is read in.
14664 (XPutPixel): Don't invert bits here.
14665
146662002-11-15 Jason Rumney <jasonr@gnu.org>
14667
14668 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
14669 (w32_draw_image_foreground_1): Handle image masks.
14670 (x_draw_image_glyph_string): Don't BitBlt transparently.
14671
14672 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
14673 (x_from_xcolors): Adjust RGB values for W32.
14674 (image_background, image_background_transparent)
14675 (postprocess_image, x_to_xcolors, x_disable_image)
14676 (x_build_heuristic_mask): Adapt for W32 and enable.
14677 (x_create_x_image_and_pixmap): Mark images with palettes as such.
14678 (xbm_load): Remove unused variable.
14679
146802002-11-14 Richard M. Stallman <rms@gnu.org>
14681
14682 * buffer.c (syms_of_buffer): Doc fix.
14683
146842002-11-14 Dave Love <fx@gnu.org>
14685
14686 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
14687
14688 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
14689 * xmenu.c (unuse_menu_items, digest_single_submenu):
14690 * xfns.c (x_put_x_image):
14691 * xdisp.c (message2_nolog, set_message):
14692 * undo.c (record_point):
14693 * terminfo.c (tparam):
14694 * syntax.c (scan_sexps_forward):
14695 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
14696 * composite.c (update_compositions):
14697 * cm.c (calccost, cmgoto):
14698 * charset.c (c_string_width): Declare all args (per C99).
14699
14700 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
14701
14702 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
14703 Don't declare.
14704
14705 * emacs.c (main) [!VMS]: Avoid third arg.
14706
14707 * fns.c (Fcopy_sequence): Doc fix.
14708 (Fmap_char_table): Cast `call2'.
14709
147102002-11-14 Francesco Potorti` <pot@gnu.org>
14711
14712 * s/sol2-8.h: New file.
14713
147142002-11-14 Kim F. Storm <storm@cua.dk>
14715
14716 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
14717 dependency on `risky-local-variable' and the :propertize form.
14718
147192002-11-12 Stefan Monnier <monnier@cs.yale.edu>
14720
14721 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
14722
14723 * syntax.c (scan_sexps_forward): Undo last patch.
14724 Use a more obvious fix: check eob before updating the syntax table.
14725
147262002-11-09 Stefan Monnier <monnier@cs.yale.edu>
14727
14728 * syntax.c (scan_sexps_forward): Update syntax table before reading
14729 a char rather than after so we don't update the table past eob.
14730
147312002-11-09 Dave Love <fx@gnu.org>
14732
14733 * buffer.c (Fset_buffer_major_mode): Fix last change.
14734
14735 * regex.c (regexec): Fix pmatch declaration.
14736
14737 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
14738
14739 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
14740 to self-inserting characters.
14741 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
14742
14743 * coding.c (Vtranslation_table_for_input): New.
14744 (syms_of_coding): DEFVAR it.
14745
147462002-11-08 Juanma Barranquero <lektu@terra.es>
14747
14748 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
14749 window.
14750
147512002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14752
14753 * process.c (Fformat_network_address): Remove unused locals p,
14754 cp, and i.
14755
147562002-11-06 Dave Love <fx@gnu.org>
14757
14758 * buffer.c (Qset_buffer_major_mode_hook): New.
14759 (Fset_buffer_major_mode): Use it.
14760
147612002-11-06 Richard M. Stallman <rms@gnu.org>
14762
14763 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
14764 and stop_polling.
14765
14766 * process.c (wait_reading_process_input):
14767 Test POLLING_PROBLEM_IN_SELECT, not hpux.
14768 Avoid initialization for auto Lisp_Object var.
14769
14770 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
14771
14772 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
14773
147742002-11-05 Richard M. Stallman <rms@gnu.org>
14775
14776 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
14777
14778 * callint.c (Fcall_interactively): New local filter_specs.
14779 (Fcall_interactively): Check for progn as well as let.
14780 Add a gcpro.
14781 (Qprogn): New variable.
14782 (syms_of_callint): Staticpro and init Qprogn.
14783
147842002-11-04 John Paul Wallington <jpw@shootybangbang.com>
14785
14786 * lread.c (Feval_buffer): Doc fix.
14787
147882002-11-04 Dave Love <fx@gnu.org>
14789
14790 * keyboard.c (read_char): Always translate iff
14791 Vkeyboard_translate_table is a char table and c is valid.
14792
14793 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
14794 and fix C types.
14795
147962002-11-03 Stefan Monnier <monnier@cs.yale.edu>
14797
14798 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
14799
14800 * editfns.c (get_pos_property): Don't hardcode Qfield.
14801
14802 * keyboard.c (adjust_point_for_property): Handle `display' prop on
14803 overlays. Also handle `invisible' prop.
14804
148052002-11-02 Stefan Monnier <monnier@cs.yale.edu>
14806
14807 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
14808 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
14809
148102002-11-01 Andreas Schwab <schwab@suse.de>
14811
14812 * editfns.c (Fmessage): Revert last change to properly handle %%.
14813
148142002-11-01 Stefan Monnier <monnier@cs.yale.edu>
14815
14816 * xmenu.c (unuse_menu_items): New fun.
14817 (menu_items_inuse): New var.
14818 (syms_of_xmenu): Initialize it.
14819 (init_menu_items): Use it to detect re-entrance.
14820 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
14821 (Fx_popup_menu): Remove spurious XSETFRAME.
14822
14823 * editfns.c (find_field): Make an exception for nil fields.
14824
148252002-11-01 Dave Love <fx@gnu.org>
14826
14827 * m/gec63.h: Deleted.
14828
148292002-10-31 Dave Love <fx@gnu.org>
14830
14831 * xterm.c (XTread_socket): Fix last change.
14832 (xaw_scroll_callback): Cast call_data to long to avoid warning.
14833
148342002-10-31 Stefan Monnier <monnier@cs.yale.edu>
14835
14836 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
14837
148382002-10-30 Stefan Monnier <monnier@cs.yale.edu>
14839
14840 * editfns.c (overlays_around, get_pos_property): New funs.
14841 (find_field): Use them.
14842 Also be careful not to modify POS before its last use.
14843 (Fmessage): Don't Fformat if there's nothing to format.
14844
148452002-10-30 Dave Love <fx@gnu.org>
14846
14847 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
14848 [HAVE_PTY_H]; Include pty.h.
14849
14850 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
14851
14852 * xterm.c (Qeql): Declare.
14853 (Vx_keysym_table): New.
14854 (syms_of_xterm): Initialize it.
14855 (XTread_socket): Use it. Deal with ASCII keysyms.
14856 (XSetIMValues) [HAVE_X11R6]: Prototype.
14857
14858 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
14859 (lispy_kana_keys): Comment out.
14860 (make_lispy_event) [XK_kana_A]: Comment out.
14861 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
14862 Fix sprintf call.
14863
14864 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
14865 regexp.h change).
14866 (TERMINFO, LIBS_TERMCAP): Define.
14867
14868 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
14869 (bcmp): Define conditional on HAVE_BCMP.
14870 (NO_SIOCTL_H): Don't define.
14871 (TIOCSIGSEND): Don't make conditional on IRIX6.
14872
14873 * s/sol2-5.h: Don't include strings.h.
14874 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
14875
14876 * s/irix6-0.h (IRIX6): Don't define.
14877 (bcopy, bcmp, bzero): Don't undef.
14878
14879 * s/irix6-5.h: Don't include strings.h.
14880 (IRIX6): Don't define.
14881 (bcopy, bcmp, bzero): Don't undef.
14882
14883 * syntax.c (Fforward_comment): Doc fix.
14884
148852002-10-29 Kim F. Storm <storm@cua.dk>
14886
14887 * process.c (Fsignal_process): Allow PROCESS to be specified by
14888 name in addition to pid (as integer or string).
14889
148902002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
14891
14892 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
14893 environments.
14894
148952002-10-27 Kim F. Storm <storm@cua.dk>
14896
14897 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
14898
14899 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
14900
14901 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
14902
14903 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
14904
149052002-10-26 Richard M. Stallman <rms@gnu.org>
14906
14907 * editfns.c (Fformat): Detect invalid format letters for floats.
14908
149092002-10-25 Kenichi Handa <handa@m17n.org>
14910
14911 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
14912 (x_set_title): Likewise.
14913
149142002-10-25 Juanma Barranquero <lektu@terra.es>
14915
14916 * macgui.h:
14917 * w32gui.h: Remove definition of XColor.
14918
14919 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
14920
149212002-10-24 Kim F. Storm <storm@cua.dk>
14922
14923 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
14924 Callers changed (supply dummy arg).
14925
14926 * lisp.h (get_window_cursor_type): Update prototype.
14927
14928 * w32term.c (x_display_and_set_cursor): Get active_cursor from
14929 get_window_cursor_type to track system caret.
14930
149312002-10-24 Kim F. Storm <storm@cua.dk>
14932
14933 * process.c (Fformat_network_address): New function.
14934 (syms_of_process): Defsubr it.
14935 (list_processes_1): Use it to format :local/:remote address if
14936 service/host is not set; before Emacs would crash in that case.
14937 (Fmake_network_process): Don't use Ffind_operation_coding_system
14938 to setup coding system if host or service is not set.
14939
149402002-10-23 Juanma Barranquero <lektu@terra.es>
14941
14942 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
14943
14944 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
14945 COLORREF.
14946
14947 * macgui.h:
14948 * w32gui.h: Add definition of XColor.
14949
14950 * macfns.c:
14951 * w32fns.c:
14952 * xfaces.c: Remove definition of XColor.
14953
149542002-10-22 Stefan Monnier <monnier@cs.yale.edu>
14955
14956 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
14957
14958 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
14959 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
14960 window if it is dedicated.
14961 (Fshrink_window): Add preserve_before as was done for enlarge_window.
14962 (Vspecial_display_function): Update docstring.
14963
14964 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
14965 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
14966 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
14967
149682002-10-21 Stefan Monnier <monnier@cs.yale.edu>
14969
14970 * casefiddle.c (casify_region): Don't treat a prefix char as part
14971 of a word when at the beginning.
14972
149732002-10-17 Juanma Barranquero <lektu@terra.es>
14974
14975 * lread.c (syms_of_lread): Fix typos.
14976
149772002-10-17 Dave Love <fx@gnu.org>
14978
14979 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
14980
149812002-10-16 Richard M. Stallman <rms@gnu.org>
14982
14983 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
14984
149852002-10-14 Juanma Barranquero <lektu@terra.es>
14986
14987 * w16select.c (syms_of_win16select): Fix docstring for
14988 `selection-coding-system'.
14989
14990 * w32select.c (syms_of_w32select): Likewise.
14991
149922002-10-14 Stefan Monnier <monnier@cs.yale.edu>
14993
14994 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
14995 a backslash-quoted char.
14996 (scan_lists, scan_sexps_forward): Pacify the compiler.
14997
149982002-10-13 Richard M. Stallman <rms@gnu.org>
14999
15000 * window.c (window_scroll): Set immediate_quit.
15001
15002 * print.c (print): When backquote form is the car of a list,
15003 output in old style. Use old_backquote_output to output all
15004 comma forms inside it in old style too.
15005
15006 * buffer.h (struct buffer): Move `undo_list' down below `name'.
15007
150082002-10-11 Markus Rost <rost@math.ohio-state.edu>
15009
15010 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
15011 batch mode).
15012
15013 * lread.c (Fload): Doc fix (load-suffixes).
15014
150152002-10-10 Steven Tamm <steventamm@mac.com>
15016
15017 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
15018 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
15019 Also switch the default to Qnil from Qt.
15020
150212002-10-08 Kenichi Handa <handa@m17n.org>
15022
15023 * coding.c (code_convert_region): When we need more GAP for
15024 conversion, pay attention to the case that coding->produced is not
15025 greater than coding->consumed.
15026
150272002-10-07 Richard M. Stallman <rms@gnu.org>
15028
15029 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
15030
150312002-10-06 Andrew Choi <akochoi@shaw.ca>
15032
15033 * macmenu.c (mac_menu_show): Add j to count menu items; match
15034 menu_item_selection to it to find selected item.
15035
150362002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15037
15038 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
15039 cases. The correct fix is to pass ReparentNotify to Xt.
15040 The shell widget interprets ConfigureNotify differently depending
15041 on if it has been reparented or not.
15042
150432002-10-05 Markus Rost <rost@math.ohio-state.edu>
15044
15045 * editfns.c (Fformat_time_string): Doc fix.
15046
150472002-10-05 John Paul Wallington <jpw@shootybangbang.com>
15048
15049 * fns.c (Flength): Doc fix.
15050
150512002-10-04 Stefan Monnier <monnier@cs.yale.edu>
15052
15053 * keyboard.c (keyremap): New struct.
15054 (read_key_sequence): Use it: globally replace keytran_foo with
15055 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
15056 keytran_next and fkey_next to just `next'.
15057
150582002-10-04 Steven Tamm <steventamm@mac.com>
15059
15060 * macterm.c (keycode_to_xkeysym_table): Change return to be
15061 treated like an X keysym.
15062
150632002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15064
15065 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
15066 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
15067 This is to also handle x/y changes that occur because of a resize.
15068
150692002-10-02 John Paul Wallington <jpw@shootybangbang.com>
15070
15071 * frame.c (Vdelete_frame_functions): New variable.
15072 (syms_of_frame): Initialize and defvar it.
15073 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
15074 it when frame's `tooltip' parameter is non-nil.
15075
15076 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
15077
15078 * w32fns.c (x_create_tip_frame): Likewise.
15079
15080 * macfns.c (x_create_tip_frame): Likewise.
15081
150822002-09-30 Kenichi Handa <handa@m17n.org>
15083
15084 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
15085 -1 before calling ccl_driver.
15086
15087 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
15088 Only when it is non-nil, handle composition sequence.
15089 (setup_coding_system) <0>: Don't force composition handling.
15090
15091 * Makefile.in (lisp, shortlisp): Add utf-16.elc
15092
150932002-09-29 Richard M. Stallman <rms@gnu.org>
15094
15095 * search.c (Freplace_match): Adjust match data for the substitution
15096 just made in the buffer.
15097
15098 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
15099 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
15100
151012002-09-27 Richard M. Stallman <rms@gnu.org>
15102
15103 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
15104 (read_char): Use them. Do all exits thru the end of the function.
15105
151062002-09-27 Kenichi Handa <handa@etl.go.jp>
15107
15108 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
15109 is nil.
15110
151112002-09-26 Richard M. Stallman <rms@gnu.org>
15112
15113 * regex.h (__restrict_arr): Don't define if already defined.
15114
15115 * coding.c (run_pre_post_conversion_on_str):
15116 Save and restore Vdeactivate_mark.
15117
151182002-09-26 John Paul Wallington <jpw@shootybangbang.com>
15119
15120 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
15121
151222002-09-26 Kenichi Handa <handa@etl.go.jp>
15123
15124 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
15125 nonzero, try face's family at first. Otherwise try FAMILY at first.
15126 (choose_face_font): If C is a single byte char or latin-1, call
15127 try_font_list with PREFER_FACE_FAMILY 1.
15128
151292002-09-21 Richard M. Stallman <rms@gnu.org>
15130
15131 * window.c (select_window_1): Don't select frame.
15132 Set frame's selected window only when frame itself is selected.
15133 (Fselect_window): Doc fix.
15134
151352002-09-18 Kim F. Storm <storm@cua.dk>
15136
15137 * process.c (make-network-process): Doc fix (there is no
15138 network-server-log-function hook).
15139
151402002-09-18 Richard M. Stallman <rms@gnu.org>
15141
15142 * print.c (print): Clear out the unused parts of Vprint_number_table.
15143 (syms_of_print): Doc fix for `print-number-table'.
15144
15145 * unexelf.c (unexec): Undo previous change.
15146
151472002-09-17 Andreas Schwab <schwab@suse.de>
15148
15149 * m/alpha.h [LINUX]: Don't define DATA_START.
15150
151512002-09-16 Dave Love <fx@gnu.org>
15152
15153 * unexelf.c (unexec): Deal with .got, reinstating change from
15154 25-08-1999.
15155
151562002-09-13 Richard M. Stallman <rms@gnu.org>
15157
15158 * s/sol2-6.h (UNEXEC): Comment out definition.
15159
15160 * unexsol.c (unexec): Don't downcase first letter of error msg.
15161
15162 * xfaces.c (Fcolor_supported_p): Just one arg is required.
15163
151642002-09-12 Markus Rost <rost@math.ohio-state.edu>
15165
15166 * unexsol.c: Include buffer.h, charset.h, coding.h.
15167
151682002-09-11 Richard M. Stallman <rms@gnu.org>
15169
15170 * unexsol.c: Don't use report_file_error; do it by hand
15171 using dlerror.
15172
15173 * process.c (wait_reading_process_input, both versions):
15174 Before calling turn_on_atimers, call stop_polling.
15175
15176 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
15177
15178 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
15179 we go to too_near_end, call clear_glyph_matrix.
15180 (redisplay_window): After make_cursor_line_fully_visible,
15181 call clear_glyph_matrix and bypass `goto done'.
15182
15183 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
15184 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
15185
151862002-09-10 Richard M. Stallman <rms@gnu.org>
15187
15188 * fileio.c (Fdo_auto_save): Catch error making directory.
15189 Only call push_message if we need to.
15190 At the same time, make an unwind-protect to pop it.
15191 Rename local message_p to old_message_p.
15192 (do_auto_save_make_dir, do_auto_save_eh): New functions.
15193 (do_auto_save_unwind): Don't call pop_message.
15194
15195 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
15196
15197 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
15198
15199 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
15200
15201 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
15202
152032002-09-10 Stefan Monnier <monnier@cs.yale.edu>
15204
15205 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
15206 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
15207 (re_match_2_internal): Be more careful with infinite loops.
15208
152092002-09-10 Kim F. Storm <storm@cua.dk>
15210
15211 * macros.c (end_kbd_macro): New function.
15212 (Fend_kbd_macro): Use it.
15213
15214 * macros.h (end_kbd_macro): Declare extern.
15215
15216 * keyboard.c (Fdiscard_input): If defining keyboard macro,
15217 end and save it instead of discarding it.
15218
152192002-09-09 Markus Rost <rost@math.ohio-state.edu>
15220
15221 * s/sol2-6.h: Fix typo. Add comment.
15222
152232002-09-09 Richard M. Stallman <rms@gnu.org>
15224
15225 * regex.c (regnum_t): Use signed int, not unsigned int.
15226
15227 * s/sol2-6.h: New file.
15228
15229 * s/sol2-5.h (UNEXEC): Definition deleted.
15230
152312002-09-08 Kim F. Storm <storm@cua.dk>
15232
15233 * macros.c (executing_macro_index): Change type to EMACS_INT.
15234 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
15235
15236 * macros.h (executing_macro_index): Change type to EMACS_INT.
15237
152382002-09-06 Richard M. Stallman <rms@gnu.org>
15239
15240 * casetab.c (set_case_table): Make canon table point to eqv table.
15241
152422002-09-06 Juanma Barranquero <lektu@terra.es>
15243
15244 * coding.c (syms_of_coding): Fix spacing.
15245
15246 * composite.c (Fcompose_region_internal)
15247 (Fcompose_string_internal): Likewise.
15248
15249 * data.c (Flsh): Likewise.
15250
15251 * fontset.c (Fset_fontset_font): Likewise.
15252
15253 * macfns.c (Fx_server_max_request_size): Likewise.
15254
15255 * w16select.c (syms_of_win16select): Likewise.
15256
15257 * w32select.c (syms_of_w32select): Likewise.
15258
15259 * xselect.c (syms_of_xselect): Likewise.
15260
152612002-09-05 Richard M. Stallman <rms@gnu.org>
15262
15263 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
15264 call EXTEND_RANGE_TABLE and return a proper value.
15265 (set_image_of_range): Don't call set_image_of_range_1
15266 if no TRANSLATE or if range includes all of Latin-1.
15267 Only call it for the Latin-1 part of the range.
15268 For other cases, make two separate ranges,
15269 one for the original specified characters and one for
15270 their case-conversions.
15271
152722002-09-04 Richard M. Stallman <rms@gnu.org>
15273
15274 * s/sol2-5.h (UNEXEC): Use unexsol.o.
15275
15276 * window.c (displayed_window_lines): Correct for one-off bug
15277 in HEIGHT on non-window displays.
15278
15279 * regex.c (set_image_of_range_1): New function.
15280 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
15281 Return a value to indicate running out of memory.
15282 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
15283 (extend_range_table_work_area): New subroutine.
15284 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
15285 Different calling conventions, and used from set_image_of_range{,_1}.
15286 (IMMEDIATE_QUIT_CHECK): Definitions moved.
15287
152882002-09-04 Juanma Barranquero <lektu@terra.es>
15289
15290 * makefile.w32-in: All dependencies updated.
15291
152922002-09-01 Richard M. Stallman <rms@gnu.org>
15293
15294 * unexsol.c: New file.
15295
15296 * xfns.c (Qbox): Declare external, don't define.
15297
15298 * xdisp.c (redisplay_window) <force-start case>:
15299 If point is on semi-visible last line, reposition
15300 it at previous line.
15301
15302 * alloc.c (display_malloc_warning): Use display-warning.
15303 (malloc_warning_1): Function deleted.
15304
15305 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
15306
15307 * lread.c (read1): Handle #! by skipping the line.
15308
153092002-08-31 Richard M. Stallman <rms@gnu.org>
15310
15311 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
15312 Don't include LDFLAGS.
15313 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
15314
153152002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
15316
15317 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
15318 member of x_display_info unless we compile for some window system.
15319
153202002-08-31 Kim F. Storm <storm@cua.dk>
15321
15322 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
15323 (get_window_cursor_type): Don't use them.
15324 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
15325
153262002-08-30 Kenichi Handa <handa@etl.go.jp>
15327
15328 * xdisp.c (get_next_display_element): Fix previous change.
15329
153302002-08-30 Andrew Choi <akochoi@shaw.ca>
15331
15332 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
15333 (expose_window): Use it to fix the display of overlapping
15334 rows (merge code from xterm.c).
15335
15336 * macfns.c (Qbox): Add extern declaration.
15337
153382002-08-30 Juanma Barranquero <lektu@terra.es>
15339
15340 * w32fns.c (Qbox): Make extern.
15341 (syms_of_w32fns): Remove initialization of Qbox.
15342
153432002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
15344
15345 * xfns.c (Fx_open_connection): Fix error message.
15346
153472002-08-30 Kim F. Storm <storm@cua.dk>
15348
15349 The following changes consolidates the handling of the cursor
15350 type in xdisp.c, moving duplicate code and functionality from
15351 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
15352
15353 * frame.h (enum text_cursor_kinds): Consolidated here.
15354 Added DEFAULT_CURSOR value.
15355 (struct frame) <desired_cursor, cursor_width>
15356 <blink_off_cursor, blink_off_cursor_width>: New fields.
15357 Consolidated from output_x, output_w32 and output_mac structs.
15358 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
15359 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
15360
15361 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
15362 Variables consolidated here.
15363 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
15364 (Vcursor_in_non_selected_windows): Renamed from
15365 cursor_in_non_selected_windows and changed to Lisp_Object.
15366 (syms_of_xdisp): Define and staticpro new and moved variables.
15367 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
15368 consolidated here. Recognize Qhollow setting.
15369 (set_frame_cursor_types): New function to set frame cursor types
15370 based on the frame parameters.
15371 (get_window_cursor_type): New function to calculate new cursor
15372 type and width for the specified window. Based on duplicated
15373 code consolidated here.
15374 Enhancements: cursor-in-non-selected-windows may be a cursor type,
15375 check buffer-local alternate-cursor-type and blink-cursor-alist
15376 before using built-in blink off methods.
15377
15378 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
15379
15380 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
15381 (get_specified_cursor_type, get_window_cursor_type)
15382 (set_frame_cursor_types): Added prototypes.
15383
15384 * macfns.c (x_specified_cursor_type): Removed.
15385 (x_set_cursor_type): Use set_frame_cursor_types.
15386 (Qbar, Qbox): Removed.
15387 (syms_of_macfns): Don't intern or staticpro them.
15388
15389 * macterm.c (x_specified_cursor_type): Remove prototype.
15390 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
15391 (x_display_and_set_cursor): Use get_window_cursor_type.
15392 Remove unused local variables cursor_non_selected, active_cursor.
15393 Redraw cursor if hbar cursor width changes.
15394 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
15395
15396 * macterm.h (enum text_cursor_kinds): Removed.
15397 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
15398 <blink_off_cursor, blink_off_cursor_width>: Members removed.
15399 (FRAME_DESIRED_CURSOR): Macro removed.
15400
15401 * w32fns.c (Vblink_cursor_alist): Removed.
15402 (Qbar, Qhbar, Qbox, Qhollow): Removed.
15403 (syms_of_w32fns): Don't intern, staticpro, or define them.
15404 (x_specified_cursor_type): Removed.
15405 (x_set_cursor_type): Use set_frame_cursor_types.
15406
15407 * w32term.c (x_specified_cursor_type): Remove prototype.
15408 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
15409 (x_display_and_set_cursor): Use get_window_cursor_type.
15410 Remove unused local variables cursor_off_state.
15411 Redraw cursor if hbar cursor width changes.
15412 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
15413
15414 * w32term.h (enum text_cursor_kinds): Removed.
15415 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
15416 <blink_off_cursor, blink_off_cursor_width>: Members removed.
15417 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
15418 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
15419 (struct w32_display_info) <x_highlight_frame>: Renamed member from
15420 w32_highlight_frame.
15421
15422 * xfns.c (Vblink_cursor_alist): Removed.
15423 (Qbar, Qhbar, Qbox, Qhollow): Removed.
15424 (syms_of_xfns): Don't intern, staticpro, or define them.
15425 (x_specified_cursor_type): Removed.
15426 (x_set_cursor_type): Use set_frame_cursor_types.
15427
15428 * xterm.c (x_specified_cursor_type): Remove prototype.
15429 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
15430 (x_display_and_set_cursor): Use get_window_cursor_type.
15431 Remove unused local variables cursor_off_state.
15432 Redraw cursor if hbar cursor width changes.
15433
15434 * xterm.h (enum text_cursor_kinds): Removed.
15435 (struct output_x) <current_cursor, desired_cursor, cursor_width>
15436 <blink_off_cursor, blink_off_cursor_width>: Members removed.
15437 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
15438 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
15439 (x_specified_cursor_type): Remove prototype.
15440
154412002-08-28 Richard M. Stallman <rms@gnu.org>
15442
15443 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
15444 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
15445 (Vblink_cursor_alist): New variable.
15446 (syms_of_w32fns): Initialize and defvar it.
15447 (x_specified_cursor_type): Recognize Qbox for filled box.
15448 Exceptions are hollow boxes.
15449 (Qbox, Qhollow): New variables.
15450 (syms_of_w32fns): Initialize and staticpro them.
15451
15452 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
15453 New macros.
15454 (struct w32_output): New fields blink_off_cursor,
15455 blink_off_cursor_width.
15456 (FRAME_CURSOR_WIDTH): New macro.
15457
15458 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
15459 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
15460
15461 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
15462 for bar cursor.
15463
15464 * w32term.c (expose_overlaps): New function.
15465 (expose_window): Use it to fix the display of overlapping rows.
15466
154672002-08-28 Simon Josefsson <jas@extundo.com>
15468
15469 * xfns.c (Fx_open_connection): Improve help when X connection
15470 fails, xhost is insecure and xauth is better.
15471
154722002-08-28 Juanma Barranquero <lektu@terra.es>
15473
15474 * makefile.w32-in: Add missing dependencies on w32term.h and
15475 composite.h.
15476
15477 * emacs.c (USAGE1): Add missing newline.
15478
154792002-08-27 Andrew Choi <akochoi@shaw.ca>
15480
15481 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
15482
154832002-08-27 Richard M. Stallman <rms@gnu.org>
15484
15485 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
15486 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
15487 (Vblink_cursor_alist): New variable.
15488 (syms_of_xfns): Initialize and defvar it.
15489 (x_specified_cursor_type): Recognize Qbox for filled box.
15490 Exceptions are hollow boxes.
15491 (Qbox, Qhollow): New variables.
15492 (syms_of_xfns): Initialize and staticpro them.
15493
15494 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
15495 New macros.
15496 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
15497
15498 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
15499 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
15500
15501 * emacs.c (main): Handle --script.
15502 (USAGE1): Mention --script.
15503 (standard_args): Define sort order for --script.
15504
155052002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
15506
15507 * xdisp.c (redisplay_updating_p): Variable removed.
15508 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
15509 New variables.
15510 (init_iterator): Don't free realized faces if
15511 inhibit_free_realized_faces is set.
15512 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
15513 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
15514 initialize Qinhibit_free_realized_faces.
15515
15516 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
15517 when iterator is adding glyphs to a glyph matrix.
15518
155192002-08-27 Kenichi Handa <handa@etl.go.jp>
15520
15521 * xdisp.c (get_next_display_element): In unibyte case, don't use
15522 octal form for such eight-bit characters that can be converted to
15523 multibyte char.
15524
155252002-08-26 Kim F. Storm <storm@cua.dk>
15526
15527 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize
15528 foreground and background colors. From Joe Buehler.
15529
155302002-08-26 Miles Bader <miles@gnu.org>
15531
15532 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
15533
155342002-08-25 Andrew Choi <akochoi@shaw.ca>
15535
15536 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
15537 defined instead of MAC_OSX.
15538
15539 * s/darwin.h (select): Define select to sys_select only if
15540 HAVE_CARBON is defined.
15541 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
15542 (DONT_REOPEN_PTY): #def it.
15543
15544 * macterm.c (XTread_socket): Remove code to call
15545 SendEventToEventTarget for keys with command modifiers when
15546 mac_command_key_is_meta is nil.
15547
155482002-08-24 Andreas Schwab <schwab@suse.de>
15549
15550 * eval.c (Fdefvar): Fix last change.
15551
155522002-08-23 Richard M. Stallman <rms@gnu.org>
15553
15554 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
15555 Record variables in load history as (defvar . VAR).
15556 (Fdefvar): Don't record in load history if no initial value.
15557 (Qdefvar): New variable.
15558 (syms_of_eval): Init and staticpro it.
15559
15560 * lread.c (syms_of_lread): Doc fix.
15561 (build_load_history): Use Fmember to see if a definition
15562 is already in the Vload_history element.
15563
15564 * process.c (Fstart_process): Remove /: from program name.
15565
15566 * emacs.c (decode_env_path): Don't add /: if file name handler
15567 has a `safe-magic' property.
15568
15569 * callproc.c (Fcall_process): Remove /: from program name.
15570
155712002-08-23 Stefan Monnier <monnier@cs.yale.edu>
15572
15573 * regex.c (PATFETCH): Remove the translating fetch.
15574 (PATFETCH_RAW): Rename to PATFETCH.
15575 (set_image_of_range): New fun.
15576 (SET_RANGE_TABLE_WORK_AREA): Use it.
15577 (regex_compile): Don't translate the pattern chars so eagerly.
15578 Only do it when inserting an `exactn' bytecode or when handling
15579 a char-range.
15580 (mutually_exclusive_p): Avoid empty statement.
15581
155822002-08-22 Kim F. Storm <storm@cua.dk>
15583
15584 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
15585 end up on a partially visible line; this reverts a specific part
15586 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
15587 display error which has been reported several times now.
15588 However it introduces the problem that changes was supposed to fix.
15589 See my comments in the source if you want to debug this further.
15590
155912002-08-20 Kenichi Handa <handa@etl.go.jp>
15592
15593 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
15594
155952002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
15596
15597 * msdos.c (croak): Add `void' to definition.
15598
15599 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
15600 Don't define them, they are defined in msdos.c.
15601
15602 * mem-limits.h [MSDOS]: Declare etext.
15603
15604 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
15605 `const' since CORRECT_DIR_SEPS modifies its target.
15606
156072002-08-19 Kim F. Storm <storm@cua.dk>
15608
15609 * keyboard.c (Fclear_this_command_keys): Add optional arg
15610 KEEP-RECORD to avoid clearing lossage when we just want to clear
15611 the current key sequence (kmacro needs this).
15612
156132002-08-19 Kenichi Handa <handa@localhost>
15614
15615 * composite.c (run_composition_function): Call FUNC if it is fboundp.
15616
15617 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
15618 cons, return Qnil.
15619
156202002-08-17 Richard M. Stallman <rms@gnu.org>
15621
15622 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
15623
15624 * sysdep.c [!VMS]: Include sys/files.h.
15625
15626 * editfns.c (save_restriction_restore): Defend from unchained marker.
15627
15628 * buffer.c (overlays_at): Handle extending vec uniformly.
15629 (overlays_in): Handle extending vec from length 0 as in overlays_at.
15630
156312002-08-15 Andrew Choi <akochoi@shaw.ca>
15632
15633 * mac.c (init_mac_osx_environment): New function.
15634
15635 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
15636
156372002-08-14 Kim F. Storm <storm@cua.dk>
15638
15639 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
15640 executing macro before appending to it (when used from Lisp).
15641 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
15642 which is called prior to each iteration of macro (for kmacro.el).
15643 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
15644
15645 * lisp.h (Fexecute_kbd_macro): Update prototype.
15646
15647 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
15648
156492002-08-14 Kenichi Handa <handa@etl.go.jp>
15650
15651 * xselect.c (QUTF8_STRING): New variable.
15652 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
15653 (x_atom_to_symbol): Likewise.
15654 (x_get_local_selection): New argument local_request. If it is
15655 nonzero, call handler_fn with the second arg nil.
15656 (x_handle_selection_request): Call x_get_local_selection with
15657 local_request 0.
15658 (lisp_data_to_selection_data): Don't encode the string here.
15659 (Fx_get_selection_internal): Call x_get_local_selection with
15660 local_request 1.
15661 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
15662
15663 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
15664
15665 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
15666
156672002-08-13 Richard M. Stallman <rms@gnu.org>
15668
15669 * minibuf.c (Fminibufferp): New function.
15670 (syms_of_minibuf): Defsubr it.
15671 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
15672
156732002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
15674
15675 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
15676
156772002-08-12 Richard M. Stallman <rms@gnu.org>
15678
15679 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
15680 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
15681 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
15682 already.
15683
15684 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
15685
156862002-08-11 Andrew Choi <akochoi@shaw.ca>
15687
15688 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
15689 (Vmac_pass_command_to_system): New variable.
15690 (Vmac_pass_control_to_system): New variable.
15691 (do_mouse_moved): Check wp with is_emacs_window.
15692 (XTread_socket): Check window_ptr with is_emacs_window.
15693 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
15694 events back to Mac Toolbox for processing, depending on values of
15695 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
15696 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
15697 Vmac_pass_control_to_system.
15698
156992002-08-10 Kenichi Handa <handa@etl.go.jp>
15700
15701 * coding.c (unencodable_char_position): New function.
15702 (Funencodable_char_position): New function.
15703 (syms_of_coding): Defsubr Funencodable_char_position.
15704
157052002-08-10 Andrew Choi <akochoi@shaw.ca>
15706
15707 * mac.c (sys_select) [MAC_OSX]: New function.
15708
15709 * macterm.c (MakeMeTheFrontProcess): New function.
15710 (mac_initialize): Call MakeMeTheFrontProcess.
15711
15712 * s/darwin.h: Define select to sys_select.
15713
157142002-08-09 Richard M. Stallman <rms@gnu.org>
15715
15716 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
15717
157182002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
15719
15720 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
15721 end of the buffer.
15722
157232002-08-08 Ken Raeburn <raeburn@mit.edu>
15724
15725 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
15726
15727 * puresize.h (BASE_PURESIZE): Increase to 910000.
15728
157292002-08-08 Kenichi Handa <handa@etl.go.jp>
15730
15731 * coding.c (Ffind_operation_coding_system): For write-region, if
15732 VISIT is a filename, make it the target.
15733
157342002-08-07 Richard M. Stallman <rms@gnu.org>
15735
15736 * alloc.c (mark_object): Detect long lists for debugging.
15737 (mark_object_loop_halt): New variable.
15738
15739 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
15740
15741 * data.c (Fmake_variable_frame_local): Doc fix.
15742
157432002-08-01 David Ponce <david@dponce.com>
15744
15745 * w32menu.c (local_heap, local_alloc, local_free): New macros.
15746 (malloc_widget_value, free_widget_value)
15747 (w32_free_submenu_strings): Use them.
15748
15749 (push_submenu_start, push_submenu_end, push_left_right_boundary)
15750 (push_menu_pane, push_menu_item, single_keymap_panes)
15751 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
15752 (single_submenu, set_frame_menubar)
15753 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
15754
15755 (Fx_popup_menu): Don't show pop up menu until preceding one is
15756 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
15757
15758 * w32menu.c: Changes adapted from xmenu.c
15759 (set_frame_menubar): First parse all submenus,
15760 then make widget_value trees from them.
15761 Don't allocate any widget_value objects
15762 until we are done with the parsing.
15763 (parse_single_submenu): New function.
15764 (digest_single_submenu): New function.
15765 (single_submenu): Function deleted, replaced by those two.
15766
157672002-08-04 Andrew Choi <akochoi@shaw.ca>
15768
15769 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
15770 returns a valid window pointer before proceeding for keyDown and
15771 autoKey events.
15772
157732002-08-03 Andrew Choi <akochoi@shaw.ca>
15774
15775 * macterm.c (USE_CARBON_EVENTS): New macro.
15776 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
15777 (x_iconify_frame): Call CollapseWindow.
15778 (Vmac_reverse_ctrl_meta): New variable.
15779 (Vmac_wheel_button_is_mouse_2): New variable.
15780 (init_mac_drag_n_drop): New function.
15781 (mac_do_receive_drag): New function.
15782 (mac_handle_service_event): New function.
15783 (init_service_handler): New function.
15784 (mac_to_emacs_modifiers): New function.
15785 (mac_event_to_emacs_modifiers): New function.
15786 (mac_get_mouse_btn): New function.
15787 (mac_convert_event_ref): New function.
15788 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
15789 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
15790 mac_get_mouse_btn.
15791 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
15792
15793 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
15794 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
15795 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
15796 TOOL_BAR_EVENT for MAC_OS as well.
15797 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
15798 as for WINDOWS_NT.
15799 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
15800
15801 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
15802
158032002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
15804
15805 * xdisp.c (forward_to_next_line_start): Fix a condition that
15806 lead to a newline being skipped.
15807
158082002-08-02 Andrew Choi <akochoi@shaw.ca>
15809
15810 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
15811
158122002-08-01 Richard M. Stallman <rms@gnu.org>
15813
15814 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
15815
158162002-07-31 Andrew Choi <akochoi@shaw.ca>
15817
15818 * macfns.c: #undef init_process before #define-ing it.
15819
15820 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
15821 HAVE_CARBON is defined.
15822
158232002-07-31 Richard M. Stallman <rms@gnu.org>
15824
15825 * xmenu.c (set_frame_menubar): First parse all submenus,
15826 then make widget_value trees from them.
15827 Don't allocate any widget_value objects
15828 until we are done with the parsing.
15829 (parse_single_submenu): New function.
15830 (digest_single_submenu): New function.
15831 (single_submenu): Function deleted, replaced by those two.
15832
158332002-07-30 Juanma Barranquero <lektu@terra.es>
15834
15835 * w32proc.c (syms_of_ntproc): Fix docstring of
15836 `w32-get-true-file-attributes'.
15837
158382002-07-28 Richard M. Stallman <rms@gnu.org>
15839
15840 * s/hpux8.h (HPUX8): Define this before including hpux.h.
15841 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
15842
15843 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
15844
15845 * keyboard.c (make_lispy_event):
15846 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
15847 Explicitly clear up_modifier in event->modifiers.
15848
158492002-07-27 Richard M. Stallman <rms@gnu.org>
15850
15851 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
15852
15853 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
15854 for bar cursor.
15855
158562002-07-26 Kenichi Handa <handa@etl.go.jp>
15857
15858 * coding.c (detect_coding_iso2022): While checking a byte sequence
15859 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
15860 it in the normal loop.
15861
158622002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
15863
15864 * xterm.c (expose_overlaps): New function.
15865 (expose_window): Use it to fix the display of overlapping rows.
15866
15867 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
15868
158692002-07-23 Ken Raeburn <raeburn@gnu.org>
15870
15871 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
15872 since it only depends on XUINT.
15873
15874 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
15875 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
15876 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
15877 Macros deleted.
15878
15879 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
15880 its value over other approaches.
15881 * sysdep.c (start_of_data): Don't define the function if a macro
15882 form has been defined.
15883
158842002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
15885
15886 * xdisp.c (redisplay_updating_p): New variable.
15887 (init_iterator): Don't free realized faces when
15888 redisplay_updating_p is set.
15889 (redisplay_internal): Set redisplay_updating_p while updating
15890 the display.
15891
158922002-07-23 Richard M. Stallman <rms@gnu.org>
15893
15894 * editfns.c (Fmessage): Treat "" like nil.
15895
158962002-07-23 Kenichi Handa <handa@etl.go.jp>
15897
15898 * xdisp.c (face_before_or_after_it_pos):
15899 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
15900
159012002-07-22 Juanma Barranquero <lektu@terra.es>
15902
15903 * callproc.c (init_callproc) [DOS_NT]:
15904 Initialize Vshared_game_score_directory to nil.
15905 (syms_of_callproc) [DOS_NT]: Likewise.
15906
159072002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
15908
15909 * xdisp.c (display_line): Replace an abort with xassert.
15910
159112002-07-21 Richard M. Stallman <rms@gnu.org>
15912
15913 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
15914 and END_UNCHANGED when setting buffer_unchanged_p.
15915 Use current_matrix_up_to_date_p to decide whether to use
15916 try_cursor_movement.
15917
15918 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
15919
15920 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
15921
15922 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
15923 Set to nil if dir does not exist.
15924 (syms_of_callproc): Init unconditionally and simply.
15925
15926 * buffer.c (Fbuffer_list): Doc fix.
15927
159282002-07-21 Ken Raeburn <raeburn@gnu.org>
15929
15930 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
15931
15932 * buffer.c (mmap_realloc): When shrinking, make sure number of
15933 pages to unmap is rounded towards zero.
15934
15935 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
15936 (XSETINT): Deleted.
15937
15938 * m/att3b.h (XINT): Don't define.
15939 (VALBITS, VALMASK, XTYPE): Deleted.
15940 (DATA_SEG_BITS): Define.
15941 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
15942 ARRAY_MARK_FLAG): Deleted.
15943 (DATA_SEG_BITS): Define.
15944 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
15945 (DATA_SEG_BITS): Define.
15946
159472002-07-20 Richard M. Stallman <rms@gnu.org>
15948
15949 * print.c (print_error_message): New args CONTEXT and CALLER.
15950 Calls changed.
15951
15952 * lisp.h (print_error_message): Declare new args.
15953
15954 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
15955 and CONTEXT to print_error_message, don't print them here.
15956 For a Quit, don't use Vsignaling_function.
15957 Call message_log_maybe_newline.
15958
15959 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
15960
159612002-07-20 Kim F. Storm <storm@cua.dk>
15962
15963 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
15964
159652002-07-19 Ken Raeburn <raeburn@gnu.org>
15966
15967 * bytecode.c (struct byte_stack): Pointers into byte string now
15968 point to const.
15969 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
15970 const.
15971 * charset.h (BCOPY_SHORT): Source pointer now points to const.
15972 * coding.c (encode_eol, detect_coding, detect_eol):
15973 (decode_coding, encode_coding, detect_coding_system):
15974 Source strings now treated as const.
15975 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
15976 modify Lisp string contents.
15977 * coding.h (decode_coding, encode_coding, detect_coding,
15978 detect_eol): Declarations updated.
15979 * composite.c (compose_chars_in_text): Treat Lisp string contents
15980 as const.
15981 * dispnew.c (safe_bcopy): Source pointer now points to const.
15982 * lisp.h (STRING_COPYIN): New macro.
15983 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
15984 (internal_with_output_to_temp_buffer): Declarations updated.
15985 * print.c (temp_output_buffer_setup):
15986 (internal_with_output_to_temp_buffer): Buffer name argument is now
15987 pointer to const.
15988 * sound.c (struct sound_device): Function pointer field "write"
15989 buffer argument now points to const.
15990 (vox_write): Buffer argument points to const.
15991 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
15992 contents as const.
15993 * sysdep.c (emacs_write): Buffer pointer now const.
15994 * term.c (encode_terminal_code): Buffer pointer now const.
15995 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
15996 (x_face_list_fonts, x_update_menu_appearance):
15997 (hash_string_case_insensitive): Treat Lisp string contents as const.
15998
159992002-07-19 Juanma Barranquero <lektu@terra.es>
16000
16001 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
16002
16003 * fileio.c (syms_of_fileio): Likewise.
16004 (Ffile_name_as_directory): Fix argument name in docstring.
16005 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
16006
160072002-07-18 Richard M. Stallman <rms@gnu.org>
16008
16009 * data.c (Fdefalias): Doc fix.
16010
160112002-07-17 Dave Love <fx@gnu.org>
16012
16013 * intervals.h (text_property_stickiness): Use P_.
16014
16015 * ccl.c: Remove `emacs' conditionals.
16016 (ccl_backtrace_table): Fix size spec.
16017 (ccl_driver): Fix type errors.
16018
160192002-07-16 Ken Raeburn <raeburn@gnu.org>
16020
16021 * alloc.c (xstrdup, make_string, make_unibyte_string)
16022 (make_multibyte_string, build_string): String pointer args now
16023 point to const.
16024 * charset.c (find_charset_in_text, c_string_width):
16025 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
16026 * fileio.c (report_file_error):
16027 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
16028 (count_combining_before, count_combining_after, insert_1_both):
16029 (insert, insert_and_inherit, insert_string):
16030 (insert_before_markers, insert_before_markers_and_inherit):
16031 * lread.c (intern, oblookup, hash_string):
16032 * minibuf.c (temp_echo_area_glyphs):
16033 * search.c (fast_c_string_match_ignore_case):
16034 * sysdep.c (emacs_open, set_file_times):
16035 * xfaces.c (xstricmp):
16036 * xdisp.c (store_frame_title, string_char_and_length):
16037 (message_dolog, message2, message2_nolog, set_message): Likewise.
16038 (set_message_1): Cast message string argument to const pointer.
16039 * editfns.c (general_insert_function): Insertion function now
16040 takes pointer to const for input data.
16041 * charset.h (find_charset_in_text, c_string_width):
16042 (parse_str_as_multibyte): Declarations updated.
16043 * dispextern.h (xstricmp): Declaration updated.
16044 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
16045 (count_size_as_multibyte, count_combining_before):
16046 (count_combining_after, insert_1, insert_1_both, message_dolog):
16047 (insert, insert_and_inherit, insert_before_markers)
16048 (insert_before_markers_and_inherit, set_message, message2):
16049 (message2_dolog, build_string, make_string, make_unibyte_string):
16050 (make_multibyte_string, intern, oblookup, report_file_error):
16051 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
16052 (emacs_open, xstrdup): Declarations updated.
16053 * systime.h (set_file_times): Declaration updated.
16054
16055 * charset.c (find_charset_in_text, lisp_string_width): Use const
16056 for pointer to lisp string data.
16057 * charset.h (FETCH_STRING_CHAR_ADVANCE):
16058 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
16059 * coding.c (Ffind_coding_systems_region_interval):
16060 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
16061 (Fmake_directory_internal, Fdelete_directory):
16062 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
16063 * fontset.c (font_family_registry, fs_query_fontset):
16064 (list_fontsets):
16065 * frame.c (Fframe_parameter):
16066 * keyboard.c (cmd_error_internal):
16067 * keymap.c (Fdescribe_buffer_bindings):
16068 * lread.c (complete_filename_p, openp):
16069 * minibuf.c (Fminibuffer_complete_word):
16070 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
16071 (face_before_or_after_it_pos, next_element_from_string):
16072 (get_overlay_arrow_glyph_row, display_mode_element):
16073 (decode_mode_spec_coding):
16074 * xterm.c (same_x_server): Likewise.
16075
16076 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
16077 settings of non-existent fields.
16078
16079 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
16080 copy a lisp value.
16081
16082 * lread.c (Fintern_soft): Use string macros instead of
16083 Lisp_String fields.
16084 * keyboard.c (echo_char, parse_modifiers_uncached):
16085 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
16086 * textprop.c (validate_interval_range, interval_of): Likewise.
16087
16088 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
16089
16090 * charset.h (FETCH_STRING_CHAR_ADVANCE)
16091 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
16092 XSTRING()->size_byte.
16093
16094 * lisp.h (SDATA, SREF): Produce rvalue.
16095 (SSET): New macro.
16096 * alloc.c (make_event_array): Use SSET for storing into a string.
16097 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
16098 a string.
16099 * casefiddle.c (casify_object): Use SSET.
16100 * charset.h (FETCH_STRING_CHAR_ADVANCE)
16101 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
16102 address of string contents.
16103 * data.c (Faref): Use SDATA.
16104 (Faset): Use SDATA, SSET.
16105 * dired.c (directory_files_internal): Use SSET.
16106 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
16107 (Fread_file_name): Use SREF, SSET.
16108 * fns.c (concat): Use SSET.
16109 (concat, Fdelete): Use SDATA.
16110 * insdel.c (insert_from_string_1): Use SDATA.
16111 * keyboard.c (Fevent_convert_list): Use SREF.
16112 * lread.c (Fload): Use SDATA, SSET.
16113 * macfns.c (validate_x_resource_name): Use SSET.
16114 * process.c (status_message): Use SSET.
16115 * search.c (wordify): Use SDATA.
16116 (Freplace_match): Use SREF.
16117 * w32fns.c (validate_x_resource_name): Use SSET.
16118 * xfns.c (validate_x_resource_name): Use SSET.
16119 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
16120
161212002-07-16 Richard M. Stallman <rms@gnu.org>
16122
16123 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
16124
16125 * xdisp.c (reconsider_clip_changes):
16126 Don't test prevent_redisplay_optimizations_p.
16127 (redisplay_internal): Test prevent_redisplay_optimizations_p
16128 along with clip_changed in some cases.
16129 (try_window_id): Likewise.
16130 (redisplay_window): New local var buffer_unchanged_p.
16131
16132 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
16133
16134 * process.c (create_process): Test USG_SUBTTY_WORKS.
16135 (process_send_signal): Clean up handling of GID.
16136 Detect errors in ioctls meant to set GID.
16137
16138 * window.c (temp_output_buffer_show):
16139 Don't set prevent_redisplay_optimizations_p.
16140
161412002-07-15 Juanma Barranquero <lektu@terra.es>
16142
16143 * eval.c (Fdefvaralias): Add docstring argument.
16144
161452002-07-15 Ken Raeburn <raeburn@gnu.org>
16146
16147 * lisp.h (STRING_INTERVALS): Produce rvalue.
16148 (STRING_SET_INTERVALS): New macro.
16149 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
16150 * fns.c (Fstring_as_multibyte): Likewise.
16151 * intervals.c (balance_possible_root_interval, delete_interval)
16152 (create_root_interval, copy_intervals_to_string): Likewise.
16153 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
16154 instead of 0.
16155
161562002-07-14 Ken Raeburn <raeburn@gnu.org>
16157
16158 * lisp.h (STRING_SET_CHARS): New macro.
16159 (SCHARS, SBYTES): Produce rvalues.
16160 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
16161 * fns.c (concat): Likewise.
16162 * lread.c (read_vector): Likewise.
16163
16164 * lisp.h (SMBP): Delete. All uses changed to STRING_MULTIBYTE.
16165 (STRING_SET_UNIBYTE): New macro.
16166 (SET_STRING_BYTES): Delete. Callers (all of which supplied a
16167 length of -1) changed to use STRING_SET_UNIBYTE.
16168 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
16169 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
16170 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
16171 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
16172 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
16173 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
16174 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
16175 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
16176 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
16177 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
16178 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
16179 STRING_BYTES or indirection changed to SCHARS, SBYTES,
16180 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
16181 unchanged for now.
16182
161832002-07-13 Kim F. Storm <storm@cua.dk>
16184
16185 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
16186
161872002-07-12 Richard M. Stallman <rms@gnu.org>
16188
16189 * fileio.c (Fwrite_region): Doc fix.
16190
16191 * print.c (print_error_message): Don't handle Vsignaling_function here.
16192
16193 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
16194 (command_loop_1): Avoid certain actions after memory-full error.
16195
16196 * eval.c (Fsignal): Don't call cancel_hourglass.
16197 For a memory-full error, don't call Vsignal_hook_function
16198 and don't set Vsignaling_function.
16199
16200 * process.c (process_send_signal): Add abort call.
16201
162022002-07-11 Markus Rost <rost@math.ohio-state.edu>
16203
16204 * keymap.c (Fkey_binding): Fix typo.
16205
162062002-07-11 Richard M. Stallman <rms@gnu.org>
16207
16208 * alloc.c (Vmemory_full): New variable.
16209 (Vmemory_signal_data): Rename from memory_signal_data.
16210 Uses changed.
16211 (syms_of_alloc): Defvar them.
16212 (memory_full, buffer_memory_full): Set Vmemory_full.
16213
16214 * lisp.h (Vmemory_full): Add declaration.
16215 (current_column, indented_beyond_p): Change declaration.
16216
16217 * indent.c (last_known_column): Declare as double, not float.
16218 (current_column, current_column_1, string_display_width)
16219 (position_indentation): Return `double'.
16220 (indented_beyond_p): Arg `column' is `double'. Callers changed.
16221
16222 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
16223 (back_to_previous_visible_line_start)
16224 (reseat_at_next_visible_line_start, next_element_from_buffer):
16225 Use `double', not `float', when calling indented_beyond_p.
16226
16227 * s/hpux11.h (BROKEN_SA_RESTART): Define.
16228
16229 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
16230
162312002-07-11 Juanma Barranquero <lektu@terra.es>
16232
16233 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
16234 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
16235 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
16236 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
16237 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
16238 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
16239
162402002-07-10 Juanma Barranquero <lektu@terra.es>
16241
16242 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
16243 All callers changed.
16244
162452002-07-09 Stefan Monnier <monnier@cs.yale.edu>
16246
16247 * data.c (Fdefalias): Add an optional `docstring' argument.
16248 (set_internal, Fsetq_default): Use XCAR/XCDR.
16249
16250 * composite.c (HASH_VALUE, HASH_KEY):
16251 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
16252
162532002-07-09 Kenichi Handa <handa@etl.go.jp>
16254
16255 * callproc.c (Fcall_process): Fix previous change.
16256
162572002-07-07 Stefan Monnier <monnier@cs.yale.edu>
16258
16259 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
16260 Add support for hash-tables.
16261 (Ftry_completion): Return t even if the string appears multiple times.
16262
16263 * fns.c (Fnconc): Use XCDR.
16264 (Fprovide): Use CONSP and XCDR.
16265 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
16266 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
16267 (Fmake_hash_table): Accept `:size nil'.
16268 (Fmakehash): Delete: moved to subr.el.
16269 (syms_of_fns): Don't defsubr makehash.
16270
16271 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
16272 (HASH_TABLE_SIZE): Move from fns.c.
16273
162742002-07-07 Richard M. Stallman <rms@gnu.org>
16275
16276 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
16277 Instead just return 0 when there is something to be done.
16278 (try_scrolling): If make_cursor_line_fully_visible returns 0,
16279 retry scrolling as if cursor were off the bottom.
16280 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
16281 return CURSOR_MOVEMENT_MUST_SCROLL.
16282 (redisplay_window): If make_cursor_line_fully_visible returns 0,
16283 go to try_to_scroll.
16284
16285 * buffer.c (Fbuffer_local_value): Store current value into its binding
16286 so we get the up-to-date value for the binding that is loaded.
16287
16288 * eval.c (Fdefmacro): Doc fix.
16289
162902002-07-05 Dave Love <fx@gnu.org>
16291
16292 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
16293 correctly.
16294
16295 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
16296 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
16297 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
16298 CCL_LookupCharConstTbl.
16299 (syms_of_ccl): Defvar translation-hash-table-vector.
16300
163012002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16302
16303 * xdisp.c: Remove unused variable `face'.
16304
163052002-07-04 Juanma Barranquero <lektu@terra.es>
16306
16307 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
16308 obsolescence information.
16309
163102002-07-03 Andrew Choi <akochoi@shaw.ca>
16311
16312 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
16313 pattern. Search cache first.
16314 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
16315 for Japanese font.
16316 (XLoadQueryFont): Use it.
16317
163182002-07-02 Richard M. Stallman <rms@gnu.org>
16319
16320 * keymap.c (Fdefine_key): Doc fix.
16321
16322 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
16323
163242002-07-02 Juanma Barranquero <lektu@terra.es>
16325
16326 * keymap.c (syms_of_keymap): Fix typo.
16327
163282002-07-01 Andrew Choi <akochoi@shaw.ca>
16329
16330 * s/darwin.h: Define POSIX_SIGNALS.
16331
16332 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
16333 and FSRefMakePath to convert FSSpec returned with Apple Event to
16334 Posix pathname.
16335 (mac_initialize) [TARGET_API_MAC_CARBON]:
16336 Call init_required_apple_events and disable the `Quit' menu item
16337 provided automatically by the Carbon Toolbox.
16338
163392002-07-01 Dave Love <fx@gnu.org>
16340
16341 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
16342 for K&R.
16343
16344 * xterm.c: Fix prototype for K&R.
16345
16346 * term.c (costs_set): Declare static, non-initialized for pcc.
16347
163482002-07-01 Richard M. Stallman <rms@gnu.org>
16349
16350 * keyboard.c (timer_last_idleness_start_time): New variable.
16351 (timer_start_idle): Set that.
16352 (read_key_sequence): Use that to reset timer_idleness_start_time
16353 to previous value.
16354
16355 * window.c (Frecenter): With arg, set optional_new_start.
16356
16357 * xdisp.c (redisplay_internal): Make optional_new_start really work.
16358
16359 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
16360 buffer for completion.
16361
163622002-06-29 Ken Raeburn <raeburn@gnu.org>
16363
16364 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
16365
163662002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16367
16368 * keyboard.c (readable_filtered_events): New function that filters
16369 FOCUS_IN_EVENT depending on parameter.
16370 (readable_events): Calls readable_filtered_events, not filtering
16371 FOCUS_IN_EVENT.
16372 (get_filtered_input_pending): New function, filtering parameter passed
16373 to readable_filtered_events.
16374 (get_input_pending): Calls get_filtered_input_pending, not filtering
16375 FOCUS_IN_EVENT.
16376 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
16377 FOCUS_IN_EVENT.
16378
16379 * xterm.h (struct x_output): Add focus_state.
16380
16381 * xterm.c (x_focus_changed): New function.
16382 (x_detect_focus_change): New function.
16383 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
16384 EnterNotify and LeaveNotify to track X focus changes.
16385
163862002-06-28 Andreas Schwab <schwab@suse.de>
16387
16388 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
16389
163902002-06-27 Kim F. Storm <storm@cua.dk>
16391
16392 * xdisp.c (mode_line_string_list, mode_line_string_face)
16393 (mode_line_string_face_prop): New variables.
16394 (store_mode_line_string): New function.
16395 (display_mode_element): Use store_mode_line_string to
16396 add mode-line string elements to mode_line_string_list
16397 when mode_line_string_list is non-nil.
16398 (Fformat_mode_line): Now returns propertized string by
16399 default. New arg NO-PROPS to ignore properties.
16400 (decode_mode_spec): Only add two dashes for %- in propertized
16401 mode-line string.
16402 (syms_of_xdisp): Init and staticpro mode_line_string_list.
16403
164042002-06-27 Stefan Monnier <monnier@cs.yale.edu>
16405
16406 * minibuf.c (minibuffer_completion_contents): Add return type.
16407
164082002-06-27 Juanma Barranquero <lektu@terra.es>
16409
16410 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
16411
164122002-06-26 Juanma Barranquero <lektu@terra.es>
16413
16414 * fileio.c (read_file_name_cleanup): Add missing return.
16415
164162002-06-26 Richard M. Stallman <rms@gnu.org>
16417
16418 * window.c (Frecenter): Don't set force_start flag.
16419
16420 * minibuf.c (do_completion, Fminibuffer_complete_word)
16421 (Fminibuffer_completion_help): Complete just the text before point.
16422 (minibuffer_completion_contents): New function.
16423
16424 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
16425
16426 * frame.c (frames_bury_buffer): Function deleted.
16427
164282002-06-25 Miles Bader <miles@gnu.org>
16429
16430 * callint.c (Fcall_interactively): When checking to see if doprnt hit
16431 the end of callint_message, allow for a terminating '\0'.
16432
164332002-06-24 Juanma Barranquero <lektu@terra.es>
16434
16435 * w32select.c: Include composite.h.
16436
16437 * w16select.c: Likewise.
16438
164392002-06-24 Kenichi Handa <handa@etl.go.jp>
16440
16441 * callproc.c (Fcall_process): If code detection is necessary,
16442 call detect_coding directly here.
16443
16444 * coding.c (detect_eol): Preserve coding->cmp_data.
16445
16446 * w16select.c (Fw16_get_clipboard_data):
16447 * w32fns.c (w32_to_x_font):
16448 * w32select.c (Fw32_get_clipboard_data):
16449 * xselect.c (selection_data_to_lisp_data):
16450 * xterm.c (XTread_socket): Disable composition handling.
16451
164522002-06-24 Stefan Monnier <monnier@cs.yale.edu>
16453
16454 * print.c (temp_output_buffer_setup): Kill all local variables.
16455
164562002-06-22 Stefan Monnier <monnier@cs.yale.edu>
16457
16458 * lread.c (Fread): Remove redundant and imprecise declaration.
16459
16460 * xfns.c (check_x_display_info): Use check_x_frame.
16461
16462 * .gdbinit (xprintsym): Use the new `xname' field.
16463 (xsymbol): Use it.
16464
164652002-06-22 Jason Rumney <jasonr@gnu.org>
16466
16467 * w32fns.c (file_dialog_callback): New function.
16468 (Fx_file_dialog): Allow selecting directories as well as files.
16469
164702002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16471
16472 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
16473 OpenBSD. Add support for mipseb-*-netbsd* machines.
16474
164752002-06-17 Andrew Choi <akochoi@shaw.ca>
16476
16477 * macterm.c (mac_scroll_area): Set foreground and backcolor to
16478 black and white before scrolling. Restore frame background and
16479 foreground color after scrolling.
16480 (do_window_update): Call XClearWindow before calling expose_frame.
16481 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
16482 FRAME_FOREGROUND_PIXEL of frame.
16483
16484 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
16485 test Mac command key as <ALT> key.
16486
164872002-06-17 Stefan Monnier <monnier@cs.yale.edu>
16488
16489 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
16490
16491 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
16492 Lookup keys in function-key-map immediately so that key-translation-map
16493 can be applied earlier.
16494 Remove function_key_possible and key_translation_possible, replaced
16495 by checking `keytran_start < t'.
16496
16497 * .gdbinit (xsymbol): Use the new `xname' field.
16498
164992002-06-17 Andrew Choi <akochoi@shaw.ca>
16500
16501 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
16502 test Mac command key as <ALT> key.
16503
16504 * mac.c (do_applescript): Call initialize_applescript if necessary
16505 when first called. Dispose of result_desc only when there is no error.
16506 (Fdo_applescript): Use %d format specifier instead of %ld.
16507
165082002-06-16 Andrew Choi <akochoi@shaw.ca>
16509
16510 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
16511 of FrontWindow for cases keyDown and autoKey.
16512
16513 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
16514 Vdefault_fontset to Monaco with mac-roman coding.
16515
16516 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
16517 init_process before and after inclusion of Carbon/Carbon.h, resp.
16518
16519 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
16520 cursor_gc.
16521 (add_font_name_table_entry): New function.
16522 (init_font_name_table): Use add_font_name_table_entry; add italic,
16523 bold, and bold-italic entries for truetype fonts.
16524
16525 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
16526 for Mac too.
16527 (try_font_list) [MAC_OS]: If no font matches given registry, try
16528 fonts with any registry matching face_family.
16529 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
16530
16531 * s/darwin.h: If autoconf detects the Ncurses library, define
16532 LIBS_TERMCAP to -lncurses to use it.
16533
165342002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
16535
16536 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
16537
165382002-06-15 Richard M. Stallman <rms@gnu.org>
16539
16540 * window.c (Fset_window_configuration): Explicitly preserve
16541 the point value that new_current_buffer had at the start.
16542
165432002-06-14 Juanma Barranquero <lektu@terra.es>
16544
16545 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
16546 Fix typos.
16547
165482002-06-14 Kim F. Storm <storm@cua.dk>
16549
16550 * insdel.c (insert_1_both, insert_from_string_1)
16551 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
16552 insert happened in the end_unchanged region. Otherwise, the
16553 redisplay may be confused and duplicate the last line in the
16554 buffer [seen after save-buffer when require-final-newline==t].
16555
165562002-06-13 Jason Rumney <jasonr@gnu.org>
16557
16558 * w32.c (init_environment): Remove EMACSLOCKDIR.
16559 (stat): Swap _S_IFDIR and _S_IFREG.
16560
165612002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16562
16563 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
16564 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
16565 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
16566 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
16567 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
16568 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
16569 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
16570 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
16571 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
16572 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
16573 SELECTION_REQUEST_EVENT, selection_clear_event to
16574 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
16575 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
16576 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
16577 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
16578 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
16579 no_event to NO_EVENT.
16580
165812002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16582
16583 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
16584
165852002-06-12 Stefan Monnier <monnier@cs.yale.edu>
16586
16587 * intervals.c (textget): Don't forget to `return'.
16588 (lookup_char_property): Use XCAR/XCDR.
16589
165902002-06-12 Juanma Barranquero <lektu@terra.es>
16591
16592 * xdisp.c (Fformat_mode_line): Fix typo.
16593
165942002-06-12 Kim F. Storm <storm@cua.dk>
16595
16596 * xdisp.c (Fformat_mode_line): New function.
16597 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
16598 (store_frame_title_char, store_frame_title): Use unconditionally.
16599 (init_xdisp): Defsubr Fformat_mode_line.
16600 Initialize frame_title_buf etc. unconditionally.
16601
166022002-06-11 Stefan Monnier <monnier@cs.yale.edu>
16603
16604 * keyboard.c (read_key_sequence):
16605 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
16606 things through those maps after downcasing events.
16607 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
16608 applies after function-key-map.
16609 Make sure that keytran can be done in the middle in the sequence.
16610 Be careful not to throw away events past the one we downcase.
16611
16612 * lread.c (read_integer): Remove unused var `tem'.
16613 (read1): Fix int/Lisp_Object mixup.
16614
16615 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
16616
166172002-06-11 Richard M. Stallman <rms@gnu.org>
16618
16619 * keyboard.c (readable_events): Ignore any number of
16620 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
16621
166222002-06-09 Miles Bader <miles@gnu.org>
16623
16624 * xfaces.c (Ftty_supports_face_attributes_p): New function.
16625 (parse_rgb_list, tty_lookup_color): New functions.
16626 (tty_defined_color): Use `tty_lookup_color' to do all the work.
16627 (color_distance, Fcolor_distance): New functions.
16628 (TTY_SAME_COLOR_THRESHOLD): New macro.
16629 (Qtty_color_standard_values): New variable.
16630 (syms_of_xfaces): Initialize new vars & functions.
16631
166322002-06-08 Colin Walters <walters@verbum.org>
16633
16634 * textprop.c (Vchar_property_alias_alist): New variable.
16635 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
16636
16637 * intervals.c (lookup_char_property): New function for looking up
16638 overlay and text properties, created from textget.
16639 (textget): Use it.
16640
16641 * intervals.h (lookup_char_property): Declare.
16642 (Vchar_property_alias_alist): Declare.
16643
16644 * buffer.c (Foverlay_get): Use lookup_char_property.
16645
166462002-06-07 Sam Steingold <sds@gnu.org>
16647
16648 * xselect.c (lisp_data_to_selection_data): Fix last change:
16649 *data_ret is not a Lisp string, while unibyte_string is.
16650
166512002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
16652
16653 * xselect.c (lisp_data_to_selection_data): Fix last change:
16654 set size_ret.
16655
166562002-06-07 Andreas Schwab <schwab@suse.de>
16657
16658 * m/amdx86-64.h: New file.
16659
166602002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
16661
16662 * fns.c (Fstring_make_unibyte): Doc fix.
16663
16664 * xselect.c (lisp_data_to_selection_data): If the requested type
16665 is STRING, call string_make_unibyte to encode the selected text
16666 as a string.
16667
16668 * window.c (Fset_window_hscroll): Doc fix.
16669
166702002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16671
16672 * fileio.c (choose_write_coding_system):
16673 Call select-safe-coding-system properly.
16674
166752002-06-03 Richard M. Stallman <rms@gnu.org>
16676
16677 * xdisp.c (message_with_string): Error if STRING is not a string.
16678
16679 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
16680
16681 * fileio.c (choose_write_coding_system): Pass FILE arg to
16682 Vselect_safe_coding_system_function.
16683
166842002-06-03 Ken Raeburn <raeburn@gnu.org>
16685
16686 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
16687
166882002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
16689
16690 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
16691 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
16692 * keymap.c (describe_command): Likewise.
16693 * minibuf.c (read_minibuf): Likewise.
16694
16695 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
16696 Cast `current_column' return value to int.
16697 (back_to_previous_visible_line_start)
16698 (reseat_at_next_visible_line_start, next_element_from_buffer):
16699 Cast `indented_beyond_p' 3rd arg to float.
16700
16701 * indent.c (last_known_column): Now a float.
16702 (current_column_1, position_indentation, current_column)
16703 (string_display_width): Return float.
16704 (Fcurrent_column): Cast `current_column' return value to int.
16705 (Fcurrent_indentation): Cast `position_indentation' retval to int.
16706 (indented_beyond_p): Third arg now a float.
16707 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
16708
16709 * lisp.h (current_column): Now returns float.
16710 (indented_beyond_p): 3rd arg now a float.
16711
167122002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
16713
16714 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
16715 is Qcompound_text_with_extensions.
16716
16717 * xselect.c (lisp_data_to_selection_data): Always set selection
16718 type as string if x_encode_text returns streingp non-NULL.
16719
16720 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
16721
167222002-05-30 Richard M. Stallman <rms@gnu.org>
16723
16724 * window.c (Fset_window_configuration): Correct the handling
16725 of point in current buffer, to work with multiple windows.
16726
167272002-05-29 Colin Walters <walters@verbum.org>
16728
16729 * lread.c (Fread_from_string): Don't depend on order of evaluation
16730 for C function parameters.
16731
167322002-05-28 Richard M. Stallman <rms@gnu.org>
16733
16734 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
16735 way for blinked-off state and for a nonselected window.
16736
16737 * window.c (window_scroll_pixel_based): Don't call Fbolp;
16738 instead, see if the new start pos is at beginning of line.
16739
16740 * fileio.c (Fwrite_region): If START is a string, don't
16741 make any annotations.
16742
16743 * eval.c (syms_of_eval): Doc fix.
16744
167452002-05-28 Colin Walters <walters@debian.org>
16746
16747 * emacs.c (USAGE1): Add --no-splash.
16748 (standard_args): Ditto.
16749
167502002-05-28 Colin Walters <walters@gnu.org>
16751
16752 * lread.c (readchar_count): New variable.
16753 (readchar): Increment it.
16754 (unreadchar): Decrement it.
16755 (read_multibyte): Decrement it.
16756 (Vread_with_symbol_positions): New variable.
16757 (Vread_symbol_positions_list): New variable.
16758 (read_internal_start): New function, created from Fread and
16759 Fread_from_string. Handle Vread_symbol_positions_list and
16760 Vread_with_symbol_positions.
16761 (readevalloop, Fread, Fread_from_string): Use it.
16762 (read1): Use readchar_count to add symbol positions to
16763 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
16764 (syms_of_lread): DEFVAR_LISP and initialize them.
16765
16766 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
16767 (substitute_object_recurse, substitute_object_in_subtree)
16768 (substitute_in_interval): Prototype.
16769 (read_multibyte): Return c if it's less than zero.
16770
167712002-05-28 Kim F. Storm <storm@cua.dk>
16772
16773 * fileio.c (Fread_file_name_internal): Added brute-force
16774 speed up for using predicate file-directory-p.
16775
167762002-05-28 Kim F. Storm <storm@cua.dk>
16777
16778 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
16779 New variables.
16780 (syms_of_fileio): DEFVAR_LISP them.
16781 (read_file_name_cleanup): New unwind function.
16782 (Fread_file_name_internal): Only return completions satifying
16783 Vread_file_name_predicate. Temporarily unwind protect and rebind
16784 default-directory while checking completions against the predicate.
16785 (Fread_file_name): Added PREDICATE argument. Specbind it to
16786 Vread_file_name_predicate during completion.
16787 Call Vread_file_name_function to read the file name if non-nil.
16788
16789 * lisp.h (Fread_file_name): Now has 6 args.
16790
16791 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
16792 predicate for Fread_file_name when reading directory name.
16793 Supply Qnil for predicate in other calls to Fread_file_name.
16794
167952002-05-26 Miles Bader <miles@gnu.org>
16796
16797 * term.c (tty_capable_p): New function.
16798 * dispextern.h (tty_capable_p): New function declaration.
16799 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
16800 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
16801
168022002-05-23 Stefan Monnier <monnier@cs.yale.edu>
16803
16804 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
16805 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
16806 (Vwrite_region_annotate_functions): Docstring fix.
16807
168082002-05-23 Kim F. Storm <storm@cua.dk>
16809
16810 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
16811 phys_cursor's hpos is overwritten. This is still not completely
16812 correct, as it doesn't really make sense to use hpos at all to
16813 get the cursor glyph (as that is relative to the width of the
16814 characters on the line, which may have changed during the update).
16815
168162002-05-22 Jason Rumney <jasonr@gnu.org>
16817
16818 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
16819 Lisp_Object.
16820 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
16821 Use modified enumfont_t struct.
16822
16823 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
16824
16825 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
16826 Handle the `hbar' cursor type.
16827 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
16828
16829 * w32fns.c (Qhbar): New variable.
16830 (x_specified_cursor_type): Use it.
16831
168322002-05-21 Ken Raeburn <raeburn@gnu.org>
16833
16834 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
16835 now, when the address is needed.
16836
168372002-05-21 Colin Walters <walters@gnu.org>
16838
16839 * Makefile.in (shortlisp): Add font-core.el.
16840
168412002-05-20 Richard M. Stallman <rms@gnu.org>
16842
16843 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
16844
16845 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
16846 equivalent key bindings here.
16847
168482002-05-20 Ken Raeburn <raeburn@gnu.org>
16849
16850 Change symbol structure to contain a lisp object for the symbol
16851 name:
16852 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
16853 object field named "xname".
16854 (SYMBOL_NAME): New macro.
16855 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
16856 name field.
16857 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
16858 (mark_object, gc_sweep): Use symbol xname field and XSTRING
16859 instead of name field.
16860 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
16861 SYMBOL_NAME instead of XSYMBOL and name field.
16862 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
16863 instead of XSYMBOL and name field.
16864 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
16865 and SYMBOL_NAME instead of XSYMBOL and name field.
16866 * coding.c (Fread_coding_system, code_convert_region1)
16867 (code_convert_string1, code_convert_string_norecord)
16868 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
16869 XSYMBOL and name field.
16870 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
16871 (Fmake_variable_buffer_local, Fmake_local_variable)
16872 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
16873 of XSYMBOL and name field.
16874 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
16875 XSYMBOL and name field.
16876 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
16877 instead of XSYMBOL and name field.
16878 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
16879 XSYMBOL and name field.
16880 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
16881 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
16882 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
16883 instead of XSYMBOL and name field.
16884 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
16885 (parse_modifiers, apply_modifiers, Fevent_convert_list)
16886 (parse_solitary_modifier, Fexecute_extended_command):
16887 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
16888 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
16889 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
16890 of XSYMBOL and name field.
16891 (describe_command, describe_translation): Use SYMBOL_NAME and
16892 assignment instead of XSYMBOL and name field and XSETSTRING.
16893 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
16894 instead of XSYMBOL and name field.
16895 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
16896 name field and XSETSTRING.
16897 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
16898 of XSYMBOL and name field.
16899 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
16900 assignment instead of XSYMBOL and name field and XSETSTRING.
16901 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
16902 XSTRING instead of XSYMBOL and name field.
16903 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
16904 and XSTRING instead of XSYMBOL and name field.
16905 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
16906 and XSTRING instead of XSYMBOL and name field.
16907 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
16908 XSTRING instead of XSYMBOL and name field.
16909 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
16910 of XSYMBOL and name field.
16911 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
16912 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
16913
169142002-05-19 Ken Raeburn <raeburn@gnu.org>
16915
16916 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
16917 and XCDR real rvalues in most configurations.
16918
16919 * buffer.c (fix_overlays_in_range, fix_overlays_before):
16920 Don't take the address of the cdr part of a cons cell; instead, track
16921 the parent cell and call XSETCDR, or set the variable for the head
16922 of the list if we haven't started down the list yet.
16923
169242002-05-19 Richard M. Stallman <rms@gnu.org>
16925
16926 * doc.c (reread_doc_file): Don't ask for confirmation.
16927
169282002-05-18 Jason Rumney <jasonr@gnu.org>
16929
16930 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
16931 (xbm_load_image): Use it.
16932 (xbm_load): Ditto.
16933 (xbm_read_bitmap_data): Reverted to xfns.c version.
16934 From David Ponce <david@dponce.com>.
16935
169362002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
16937
16938 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
16939 2.02 and later.
16940
169412002-05-16 Juanma Barranquero <lektu@terra.es>
16942
16943 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
16944
169452002-05-15 Stefan Monnier <monnier@cs.yale.edu>
16946
16947 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
16948 meaningful test.
16949 (read_char_minibuf_menu_prompt): Fix typo.
16950
169512002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
16952
16953 * eval.c (Fcommandp): Doc fix.
16954
169552002-05-13 Stefan Monnier <monnier@cs.yale.edu>
16956
16957 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
16958 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
16959 (Fset_keymap_parent): Gcpro a bit more.
16960 (access_keymap): Gcpro around meta_map call and around the main loop.
16961 (get_keyelt): Gcpro when following indirect references.
16962 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
16963 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
16964 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
16965 Remove useless ad-hoc remap code.
16966
169672002-05-13 Richard M. Stallman <rms@gnu.org>
16968
16969 * search.c (search_buffer): Give up boyer moore search if inverse
16970 translation change charset_base.
16971
169722002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
16973
16974 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
16975 characters is carried over from the previous block of text, adjust
16976 coding->produced to account for the extra character.
16977
169782002-05-11 Andreas Schwab <schwab@suse.de>
16979
16980 * coding.c (intersection): Keep the elements of the returned list
16981 in the same order as in the first list.
16982
169832002-05-11 Kim F. Storm <storm@cua.dk>
16984
16985 * keymap.c (current_minor_maps): Fix resizing of cmm_maps;
16986 only update cmm_size if realloc actually succeeds.
16987 Testing with initial size of 2 elements revealed that using
16988 realloc on GNU/Linux would cause a random trap in xmalloc
16989 later on, so I rewrote the code to use malloc/bcopy/free instead
16990 of realloc.
16991
169922002-05-10 Jason Rumney <jasonr@gnu.org>
16993
16994 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
16995
169962002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
16997
16998 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
16999 parens, to ensure correct evaluation order.
17000
170012002-05-10 Kim F. Storm <storm@cua.dk>
17002
17003 * keymap.c (Vemulation_mode_map_alists): New variable.
17004 (syms_of_keymap): DEFVAR_LISP it.
17005 (current_minor_maps): Process keymap alists in that list before
17006 minor-mode-overriding-map-alist and minor-mode-map-alist.
17007
170082002-05-09 Richard M. Stallman <rms@gnu.org>
17009
17010 * search.c (Freplace_match): Doc fix.
17011
170122002-05-09 Kim F. Storm <storm@cua.dk>
17013
17014 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
17015 Enlarge cursor rectangle drawn around image with non-zero relief.
17016
17017 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
17018 Enlarge cursor rectangle drawn around image with non-zero relief.
17019
17020 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
17021 Enlarge cursor rectangle drawn around image with non-zero relief.
17022
170232002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
17024
17025 * xselect.c (lisp_data_to_selection_data): Don't set selection
17026 type if comes from the Lisp object's car. If the selection
17027 contains a pure ASCII text, always return QSTRING as its type.
17028
170292002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17030
17031 * mac.c (mac-cut-function): Doc fix.
17032
170332002-05-05 Richard M. Stallman <rms@gnu.org>
17034
17035 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
17036
170372002-05-04 Jason Rumney <jasonr@gnu.org>
17038
17039 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
17040 for event-click-count.
17041
17042 * process.c (init_process): Only add server subfeature if we can
17043 use non-blocking I/O.
17044
170452002-05-04 Andrew Choi <akochoi@shaw.ca>
17046
17047 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
17048 repeatedly.
17049
170502002-05-03 Jason Rumney <jasonr@gnu.org>
17051
17052 * process.c (Fmake_network_process): Only support server sockets
17053 when we can make them non-blocking.
17054
17055 * s/ms-w32.h (HAVE_SELECT): Define.
17056
17057 * w32.h (FILE_NDELAY): New flag.
17058
17059 * w32.c (sys_getpeername, fcntl): New functions.
17060 (_sys_read_ahead): Temporarily block on non-blocking sockets.
17061
17062 * w32proc.c: Include sys/file.h.
17063
170642002-05-03 Colin Walters <walters@verbum.org>
17065
17066 * callproc.c (Vgame_score_directory): Renamed to
17067 Vshared_game_score_directory.
17068
170692002-04-30 Richard M. Stallman <rms@gnu.org>
17070
17071 * s/gnu.h [emacs]: Include stdio.h.
17072 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
17073
17074 * eval.c (do_autoload): Error if called while preparing to dump.
17075
17076 * fns.c (Frequire): Error if need to load while preparing to dump.
17077
170782002-04-28 Colin Walters <walters@verbum.org>
17079
17080 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
17081 Default to "~/.emacs.d/games".
17082
170832002-04-29 Stefan Monnier <monnier@cs.yale.edu>
17084
17085 * lread.c (openp): Change arg exec_only to predicate.
17086 (build_load_history): Use XCAR/XCDR.
17087 (Flocate_file_internal): New fun.
17088 (syms_of_lread): Defsubr it.
17089 (Fload): Update call to openp.
17090
17091 * lisp.h (openp): Update prototype.
17092
17093 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
17094 * w32proc.c (sys_spawnve):
17095 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
17096 * w32.c (check_windows_init_file):
17097 * sound.c (Fplay_sound_internal):
17098 * process.c (Fstart_process):
17099 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
17100 * mac.c (run_mac_command):
17101 * emacs.c (init_cmdargs):
17102 * callproc.c (Fcall_process): Update call to openp.
17103
17104 * textprop.c (remove_properties): Don't use XCAR without CONSP.
17105
17106 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
17107
171082002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17109
17110 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
17111 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
17112
171132002-04-28 Richard M. Stallman <rms@gnu.org>
17114
17115 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
17116
17117 * eval.c (Fcommandp): New arg for_call_interactively.
17118 * lisp.h (Fcommandp): Declare new arg.
17119
171202002-04-28 Jason Rumney <jasonr@gnu.org>
17121
17122 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
17123
17124 * w32.c (stat, fstat): Use file index information to generate
17125 inodes for directories where available.
17126
171272002-04-26 Andrew Choi <akochoi@shaw.ca>
17128
17129 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
17130 [HAVE_CARBON]: Include Mac object files.
17131
17132 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
17133 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
17134 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
17135 MAC_OSX, and MAC_OS instead of macintosh.
17136
17137 * editfns.c [MAC_OS8]: Include stdio.h.
17138
17139 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
17140
17141 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
17142 Apple Monaco.
17143
17144 * process.c (QCfamily, QCfilte): Declare extern.
17145 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
17146 calling select.
17147
17148 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
17149
17150 * tparam.c [MAC_OSX]: Don't define BC and UP.
17151
17152 * config.in [HAVE_CARBON]: Add.
17153
17154 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
17155 Move here from mac/src and mac/inc.
17156
17157 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
17158
171592002-04-26 Gerd Moellmann <gerd@gnu.org>
17160
17161 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
17162 Compute phys_cursor_width from the x position returned
17163 by x_draw_glyhs, which is cheaper.
17164 (x_display_and_set_cursor): Compute the buffer-local value
17165 of `cursor-in-non-selected-windows' only when needed.
17166
171672002-04-25 Gerd Moellmann <gerd@gnu.org>
17168
17169 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
17170 cursor on a stretch glyph has a width that depends on
17171 x_stretch_cursor_p.
17172
171732002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17174
17175 * abbrev.c (abbrev-start-location): Doc fix.
17176
17177 * indent.c (Fvertical_motion): Fix last change.
17178
171792002-04-25 Gerd Moellmann <gerd@gnu.org>
17180
17181 * indent.c (Fvertical_motion): Move to the start of the line
17182 containing PT before moving up or down.
17183
171842002-04-24 Gerd Moellmann <gerd@gnu.org>
17185
17186 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
17187 case of writing a whole row, more or less analogous to the case of
17188 writing only parts of a row.
17189
17190 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
17191 0 for NO_CURSOR.
17192
17193 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
17194
171952002-04-23 Colin Walters <walters@verbum.org>
17196
17197 * buffer.c (syms_of_buffer): Doc fix.
17198
171992002-04-23 Gerd Moellmann <gerd@gnu.org>
17200
17201 * xterm.c (notice_overwritten_cursor): Handle the special case
17202 of the cursor being in the first blank non-text line at the
17203 end of a window.
17204
17205 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
17206 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
17207 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
17208 bar cursors only, to make phys_cursor_width contain what its name
17209 suggests.
17210 (notice_overwritten_cursor): Consider the cursor image erased if
17211 the output area intersects the cursor image in y-direction.
17212
172132002-04-23 Simon Marshall <simon@gnu.org>
17214
17215 * xfns.c (x_set_mouse_color): Change default for cross_cursor
17216 to XC_hand2.
17217
172182002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17219
17220 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
17221
172222002-04-22 Kim F. Storm <storm@cua.dk>
17223
17224 * textprop.c (remove_properties): Fixed trap for malformed plist.
17225
172262002-04-22 Richard M. Stallman <rms@gnu.org>
17227
17228 * cmds.c (Fend_of_line): Handle intangible text in mid line.
17229
17230 * window.c (make_window): Initialize height_fixed_p,
17231 last_cursor_off_p, and p->cursor_off_p slots.
17232
172332002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17234
17235 * fns.c (use-dialog-box): Doc fix.
17236
172372002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17238
17239 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
17240 variables `row', `i' and `area'.
17241 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
17242 toolkit library.
17243
172442002-04-19 Stefan Monnier <monnier@cs.yale.edu>
17245
17246 * xfaces.c (clear_font_table): Don't free the default font of
17247 a frame even if it's on another display.
17248 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
17249 that could be Qt.
17250
172512002-04-19 Juanma Barranquero <lektu@terra.es>
17252
17253 * indent.c (Fmove_to_column): Remove unused local variable
17254 `next_boundary_byte'.
17255 (current_column_1): Likewise.
17256
172572002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
17258
17259 * msdos.c (Qhbar): New variable.
17260 (syms_of_msdos): Intern and staticpro it.
17261 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
17262 cursor type.
17263
172642002-04-19 Dave Lambert <dlambert@acm.org>
17265
17266 Theses change implement an underscore-like (`hbar') cursor.
17267
17268 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
17269
17270 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
17271 Handle the `hbar' cursor type.
17272 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
17273
17274 * xfns.c (Qhbar): New variable.
17275 (syms_of_xfns): Intern and staticpro it.
17276 (x_specified_cursor_type): Handle `hbar' cursor.
17277
17278 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
17279 not defined.
17280
172812002-04-18 Richard M. Stallman <rms@gnu.org>
17282
17283 * textprop.c (remove_properties): New arg LIST allows scanning
17284 either a list or a plist.
17285 (interval_has_some_properties_list): New function, like
17286 interval_has_some_properties using list instead of plist.
17287 All callers changed.
17288 (Fremove_list_of_text_properties): New function.
17289 (syms_of_textprop): Defsubr it.
17290
172912002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
17292
17293 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
17294
172952002-04-17 Juanma Barranquero <lektu@terra.es>
17296
17297 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
17298
172992002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
17300
17301 * window.c (coordinates_in_window): Don't report on margin area
17302 if its width is zero.
17303
173042002-04-16 Jason Rumney <jasonr@gnu.org>
17305
17306 * w32fns.c (Fx_file_dialog): Decode file name before using.
17307
17308 * w32term.c (construct_drag_n_drop): Likewise.
17309
173102002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
17311
17312 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
17313 store load-history in pure space.
17314
17315 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
17316
173172002-04-16 Stefan Monnier <monnier@cs.yale.edu>
17318
17319 * xterm.c (Qlatin_1, Qutf_8): New vars.
17320 (syms_of_xterm): Initialize them.
17321 (XTread_socket): Eliminate incorrect optimization that tried to avoid
17322 decoding the output of X*LookupString.
17323 Always use latin-1 to decode the output of XLookupString.
17324 Try Xutf8LookupString if XmbLookupString failed.
17325
17326 * region-cache.c (new_region_cache): Use BEG.
17327
173282002-04-16 Gerd Moellmann <gerd@gnu.org>
17329
17330 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
17331 configuration files.
17332 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
17333 returns 0.
17334
173352002-04-15 Andreas Schwab <schwab@suse.de>
17336
17337 * config.in: Regenerated using autoheader.
17338
17339 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
17340 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
17341 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
17342 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
17343 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
17344 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
17345 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
17346 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
17347 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
17348 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
17349 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
17350 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
17351 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
17352 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
17353 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
17354 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
17355 STACK_DIRECTION, now set by autoconf.
17356
173572002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17358
17359 * dispnew.c (marginal_area_string): Sort arguments.
17360
17361 * dispextern.h (marginal_area_string): Add prototype.
17362
173632002-04-13 Richard M. Stallman <rms@gnu.org>
17364
17365 * fileio.c (Finsert_file_contents):
17366 Don't call temp_output_buffer_setup--do just part, by hand.
17367
17368 * coding.c (run_pre_post_conversion_on_str):
17369 Don't call temp_output_buffer_setup--do just part, by hand.
17370
17371 * keyboard.c (command_loop_1): Don't call start_hourglass
17372 or cancel_hourglass when executing a macro.
17373
17374 * marker.c (count_markers): New function.
17375
17376 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
17377 grow without limit. Move recently used elements to the front.
17378
173792002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
17380
17381 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
17382
173832002-04-12 Gerd Moellmann <gerd@gnu.org>
17384
17385 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
17386 rows marginal areas.
17387 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
17388 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
17389
17390 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
17391
173922002-04-12 Dave Love <fx@gnu.org>
17393
17394 * dispnew.c (marginal_area_string): New.
17395
17396 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
17397 (Qleft_margin, Qright_margin): Declare.
17398 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
17399
17400 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
17401 note_mode_line_highlight and extended.
17402
17403 * keyboard.c (Qleft_margin, Qright_margin): Declare.
17404 (make_lispy_event): Deal with mouse events in margins.
17405
174062002-04-12 Stefan Monnier <monnier@cs.yale.edu>
17407
17408 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
17409
17410 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
17411 than deactivating the mark if tmm is set to `lambda'.
17412 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
17413 Use a single event for HELP_EVENT.
17414 (Fexecute_extended_command): Save last_point_position.
17415
174162002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17417
17418 * lisp.h (Fpropertize): Add prototype.
17419
17420 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
17421
174222002-04-10 Colin Walters <walters@verbum.org>
17423
17424 * config.in: Add HAVE_SHARED_GAME_DIR.
17425
17426 * callproc.c (Vgame_score_directory): New variable.
17427 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
17428
174292002-04-10 Richard M. Stallman <rms@gnu.org>
17430
17431 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
17432
174332002-04-09 Stefan Monnier <monnier@cs.yale.edu>
17434
17435 * minibuf.c (read_minibuf): Use empty_string.
17436 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
17437 Short-circuit the search as soon as it "failed".
17438 (Fall_completions): Allow lambda forms and lists of strings for alist.
17439 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
17440 when require_match is nil.
17441 (Ftest_completion): Rename from `test_completion' and export to elisp.
17442 Call the predicate also when alist is a list.
17443 Obey Vcompletion_regexp_list.
17444 (do_completion, Fminibuffer_complete_and_exit): Use it.
17445 (Fassoc_string): Rename from `assoc_for_completion'.
17446 Allow list of strings as well and export to elisp.
17447
174482002-04-08 Stefan Monnier <monnier@cs.yale.edu>
17449
17450 * puresize.h (BASE_PURESIZE): Increase to 900KB.
17451
174522002-04-08 Juanma Barranquero <lektu@terra.es>
17453
17454 * w32.c (sys_accept): Don't hide variable `s'.
17455
174562002-04-05 Gerd Moellmann <gerd@gnu.org>
17457
17458 * callint.c (Fcall_interactively): Use INTEGERP instead of
17459 NUMBERP for checking Vhistory_length.
17460
174612002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17462
17463 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
17464 Doc fix to reflect it.
17465
174662002-04-04 Richard M. Stallman <rms@gnu.org>
17467
17468 * xdisp.c (display_mode_element): New arg RISKY.
17469 Disregard text props found or specified within a variable
17470 that isn't marked risky-local-variable.
17471 (Qrisky_local_variable): New variable.
17472 (syms_of_xdisp): Init and staticpro it.
17473
174742002-04-04 Stefan Monnier <monnier@cs.yale.edu>
17475
17476 * undo.c (record_point): New fun.
17477 (record_delete, record_insert): Use it.
17478
174792002-04-03 Juanma Barranquero <lektu@terra.es>
17480
17481 * doc.c (Fdocumentation): Add missing parentheses.
17482 (Fdocumentation_property): Likewise.
17483
174842002-04-03 Stefan Monnier <monnier@cs.yale.edu>
17485
17486 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
17487 data is 0, just return nil.
17488
174892002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
17490
17491 * msdos.c (syms_of_msdos): Fix last change with
17492 mouse_autoselect_window.
17493
174942002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17495
17496 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
17497 mouse_autoselect_window.
17498
174992002-04-02 Stefan Monnier <monnier@cs.yale.edu>
17500
17501 * keyboard.c (make_lispy_event): Handle unknown keysyms together
17502 with system-specific keysyms. Use it also for unknown function keys.
17503
17504 * doc.c (reread_doc_file): Return whether reload was attempted.
17505 (Fdocumentation, Fdocumentation_property): Don't try to reload
17506 if the doc is 0 and only ask once.
17507
17508 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
17509
175102002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
17511
17512 * keyboard.c (read_char): If the event was Qselect_window,
17513 restore timer_idleness_start_time to its previous value.
17514
17515 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
17516
175172002-04-01 Stefan Monnier <monnier@cs.yale.edu>
17518
17519 * region-cache.c (new_region_cache): Use BEG.
17520
17521 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
17522 Use BEG and BEG_BYTE.
17523
17524 * doc.c (get_doc_string): Return nil if the location is wrong.
17525 (reread_doc_file): New fun.
17526 (Fdocumentation, Fdocumentation_property):
17527 Call it if get_doc_string fails.
17528 (Fsnarf_documentation): Make it work for a dumped Emacs.
17529
17530 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
17531 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
17532
17533 * charset.c (Fstring): Allow 0 arguments.
17534
17535 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
17536
17537 * process.c (DATAGRAM_CONN_P, list_processes_1)
17538 (Fprocess_datagram_address, Fset_process_datagram_address)
17539 (Fset_network_process_options, server_accept_connection):
17540 Fix some int/Lisp_Object confusions (thank you union types).
17541
175422002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17543
17544 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
17545
17546 * w32term.c: Likewise.
17547 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
17548
17549 * keyboard.c (Qselect_window): New symbol.
17550 (head_table): Use it.
17551 (keys_of_keyboard): Bound select-window event to handle-select-window.
17552 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
17553
17554 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
17555 (last_window): New variable.
17556 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
17557 (note_mouse_movement): Remove reimplemented code in #if 0.
17558 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
17559 Emacs windows.
17560
17561 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
17562
175632002-03-31 Gerd Moellmann <gerd@gnu.org>
17564
17565 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
17566 Callers changed.
17567
175682002-03-30 Richard M. Stallman <rms@gnu.org>
17569
17570 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
17571 loop whenever it stops making progress.
17572
17573 * widget.c (set_frame_size): Don't call change_frame_size.
17574
175752002-03-30 Gerd Moellmann <gerd@gnu.org>
17576
17577 * dispnew.c (direct_output_for_insert):
17578 Call mark_window_display_accurate.
17579
175802002-03-29 Jason Rumney <jasonr@gnu.org>
17581
17582 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
17583
175842002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
17585
17586 * Makefile.in (lread.o): Depend on coding.h.
17587
17588 * lread.c (openp, Fload): Encode the file name before passing it
17589 to `stat', `access', and `emacs_open'.
17590 (openp): GCPRO the encoded file name. Don't recompute Lisp
17591 strings unnecessarily.
17592
175932002-03-29 Kim F. Storm <storm@cua.dk>
17594
17595 * fns.c (Flax_plist_put): Doc fix.
17596
175972002-03-28 Miles Bader <miles@gnu.org>
17598
17599 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
17600
176012002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17602
17603 * process.c (set-network-process-options): Add usage.
17604 (make-network-process): Doc fix.
17605
176062002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
17607
17608 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
17609
176102002-03-26 Richard M. Stallman <rms@gnu.org>
17611
17612 * fns.c (Fsubstring_no_properties): New function.
17613 (Flax_plist_get, Flax_plist_put): New functions.
17614 (syms_of_fns): defsubr them.
17615
17616 * xdisp.c (update_menu_bar): Test only update_mode_lines;
17617 don't test or alter w->update_mode_line.
17618
17619 * window.c (Fdisplay_buffer): Doc fix.
17620
176212002-03-24 Richard M. Stallman <rms@gnu.org>
17622
17623 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
17624
176252002-03-24 Gerd Moellmann <gerd@gnu.org>
17626
17627 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
17628 (Fdefmacro): Handle `(declare ...)'.
17629 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
17630 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
17631
176322002-03-24 Jason Rumney <jasonr@gnu.org>
17633
17634 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
17635 (xbm_file_p): Add prototypes.
17636 (xbm_format, xbm_image_p): Sync with xfns.c.
17637 (reflect_byte): New function.
17638 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
17639 (xbm_load_image): Create bitmaps with a depth of 1.
17640 (init_xfns): Enable XBM images.
17641
176422002-03-23 Jason Rumney <jasonr@gnu.org>
17643
17644 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
17645 correctly. Do not pass up_modifier to keyboard buffer.
17646
17647 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
17648
176492002-03-22 Stefan Monnier <monnier@cs.yale.edu>
17650
17651 * Makefile.in (bootstrapclean): New target.
17652 (bootstrap-temacs, bootstrap-doc): Remove.
17653 (bootstrap-emacs): Use a bog-standard `temacs'.
17654 Don't bother to build a DOC file.
17655
17656 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
17657
17658 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
17659 in temacs even if !CANNOT_DUMP.
17660 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
17661
17662 * alloc.c (check_pure_size): Only output a warning.
17663
176642002-03-22 Jason Rumney <jasonr@gnu.org>
17665
17666 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
17667 supported.
17668
17669 * w32term.c (zv_bits): Declare as short, for word alignment.
17670 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
17671 (syms_of_w32term): Define x-use-underline-position-properties.
17672
17673 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
17674 (clear_image_cache): Block input, fix logic, clear matrices in
17675 all frames that share this cache.
17676
176772002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
17678
17679 * emacs.c (main): Update the Copyright year in the blurb printed
17680 by "emacs --version".
17681
17682 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
17683
17684 * xterm.c (XTread_socket): If XK_ISO_Lock and
17685 XK_ISO_Last_Group_Lock are defined, handle keysyms between
17686 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
17687
176882002-03-21 Kim F. Storm <storm@cua.dk>
17689
17690 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
17691 menu-bar bindings in keymap and local-map properties _are_ used.
17692 But try keymap property first in accordance with 2002-01-03 patch.
17693 Added comment describing why this is not always reliable.
17694 (tool_bar_items): Ditto for tool-bar.
17695
176962002-03-21 Jason Rumney <jasonr@gnu.org>
17697
17698 * w32fns.c (x_clear_image_1): Disable color table code.
17699
177002002-03-21 Kim F. Storm <storm@cua.dk>
17701
17702 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
17703 removed the wrong version of the DEFUN macro; fixed it.
17704
17705 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
17706 Fmember rather than Fmemq).
17707 (Fprovide): Check that subfeatures is a list.
17708
17709 * process.c (QCfeature, QCdatagram): Removed variables.
17710 (QCtype, Qdatagram): New variables.
17711 (network_process_featurep): Removed function.
17712 (Fmake_network_process): Removed :feature check.
17713 Use :type 'datagram instead of :datagram t to create a datagram
17714 socket. This allows us to add other connection types (e.g. raw
17715 sockets) later in a consistent manner.
17716 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
17717 supported subfeatures for feature make-network-process.
17718 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
17719 Intern and staticpro QCtype and Qdatagram.
17720 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
17721
17722 * xfns.c: (QCtype): Remove duplicate declaration and
17723 initialization (is now declared in process.c).
17724
17725 * w32fns.c: (QCtype): Remove duplicate declaration and
17726 initialization (is now declared in process.c).
17727
177282002-03-21 Richard M. Stallman <rms@gnu.org>
17729
17730 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
17731 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
17732 when jumping to `fail' to avoid undoing reg changes in the
17733 last iteration of the loop.
17734 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
17735
17736 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
17737 Depend on process.h.
17738
177392002-03-20 Jason Rumney <jasonr@gnu.org>
17740
17741 Most of the following changes are still conditional on HAVE_IMAGES
17742 which is not set by default on Windows.
17743
17744 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
17745
17746 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
17747 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
17748 (four_corners_best, x_clear_image_1, x_clear_image)
17749 (x_alloc_image_color, postprocess_image)
17750 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
17751 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
17752 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
17753
17754 * w32gui.h (struct XImage): Define.
17755
17756 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
17757 extract mouse co-ordinates.
17758
177592002-03-20 Jason Rumney <jasonr@gnu.org>
17760
17761 * w32.c (init_winsock): Dynamically load new server and UDP
17762 socket functions.
17763 (socket_to_fd): New function.
17764 (sys_socket): Use it.
17765 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
17766 (sys_recvfrom, sys_sendto): New wrapper functions.
17767
17768 * process.c (QCfamily, QCfilter): Remove duplicate declaration
17769 and initialization.
17770
17771 * makefile.w32-in (LIBS): Remove $(WSOCK32).
17772
177732002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
17774
17775 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
17776 Don't use "sun" as a variable, it's a predefined constant on Sun
17777 machines.
17778
177792002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17780
17781 * bytecode.c (Fbyte_code): Revert last change.
17782
177832002-03-19 Kim F. Storm <storm@cua.dk>
17784
17785 * makefile.w32-in (LIBS): Add $(WSOCK32).
17786 From David Ponce <dponce@voila.fr>.
17787
177882002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17789
17790 * process.c (wait_reading_process_input): Move variables `pname'
17791 and `pnamelen' down where they are used.
17792
17793 * bytecode.c (Fbyte_code): Discard unused computed value to
17794 prevent gcc warning.
17795
17796 * lisp.h (Fplist_member): Add prototype.
17797
177982002-03-18 Kim F. Storm <storm@cua.dk>
17799
17800 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
17801 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
17802
17803 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
17804 Remove explicit GNU_LINUX settings for datagram support.
17805
178062002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17807
17808 * process.c (Fmake_network_process): Remove unused variable `sa'.
17809 Doc fix. Add usage:.
17810 (set_socket_options): Remove unused variables `optnum' and `opttype'.
17811
178122002-03-17 Richard M. Stallman <rms@gnu.org>
17813
17814 * xdisp.c (cursor_type_changed): New variable.
17815 (redisplay_internal): Redisplay all windows if cursor_type_changed.
17816 Clear it when clearing windows_or_buffers_changed.
17817 (try_cursor_movement, redisplay_window, try_window_id)
17818 (try_window_reusing_current_matrix): Test cursor_type_changed
17819 along with windows_or_buffers_changed.
17820
17821 * window.h (cursor_type_changed): New variable.
17822
17823 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
17824 not update_mode_lines, and always set it to 1.
17825
17826 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
17827 if no frames needed redrawing.
17828
178292002-03-17 Kim F. Storm <storm@cua.dk>
17830
17831 The following changes add support for network server processes,
17832 datagram connections, and local (unix) sockets.
17833
17834 * process.h (struct Lisp_Process): New member log.
17835 Doc fix: Member command used to indicate stopped network process.
17836 Doc fix: Member childp contains plist for network process.
17837 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
17838
17839 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
17840 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
17841 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
17842 New variables.
17843 (NETCONN1_P): New macro.
17844 (DATAGRAM_SOCKETS): New conditional symbol.
17845 (datagram_address): New array.
17846 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
17847 (status_message): Use concat3.
17848 (Fprocess_status): Add `listen' status to doc string. Return `stop'
17849 for a stopped network process.
17850 (Fset_process_buffer): Update contact plist for network process.
17851 (Fset_process_filter): Ditto. Don't enable input for stopped
17852 network processes. Server must listen, even if filter is t.
17853 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
17854 New functions.
17855 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
17856 (Fprocess_contact): Added KEY argument. Handle datagrams.
17857 (list_processes_1): Optionally show only processes with the query
17858 on exit flag set. Dynamically adjust column widths. Omit tty
17859 column if not needed. Report stopped network processes.
17860 Identify server and datagram network processes.
17861 (Flist_processes): New optional arg `query-only'.
17862 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
17863 (conv_lisp_to_sockaddr, set_socket_options)
17864 (network_process_featurep, unwind_request_sigio): New helper functions.
17865 (Fprocess_datagram_address, Fset_process_datagram_address):
17866 (Fset_network_process_options): New lisp functions.
17867 (Fopen_network_stream): Removed. Now defined in simple.el.
17868 (Fmake_network_process): New lisp function. Code is based on previous
17869 Fopen_network_stream, but heavily reworked with new property list based
17870 argument list, support for datagrams, server processes, and local
17871 sockets in addition to old client-only functionality.
17872 (server_accept_connection): New function.
17873 (wait_reading_process_input): Use it to handle incoming connects.
17874 Do not enable input on a new connection if process is stopped.
17875 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
17876 (send_process): Handle datagram sockets.
17877 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
17878 network process is indicated by setting command field to t .
17879 (Fprocess_send_eof): No-op if datagram connection.
17880 (Fstatus_notify): Don't read input for a stream server socket or a
17881 stopped network process.
17882 (init_process): Initialize datagram_address array.
17883 (syms_of_process): Intern and staticpro new variables, defsubr new
17884 functions.
17885
178862002-03-16 Jason Rumney <jasonr@gnu.org>
17887
17888 * w32fns.c (w32_to_all_x_charsets): Return correct type in
17889 startup case.
17890
178912002-03-16 Richard M. Stallman <rms@gnu.org>
17892
17893 * xdisp.c (redisplay_internal, redisplay_windows):
17894 Use list_of_error to call internal_condition_case_1.
17895 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
17896 so as to catch all errors with no possibility of debugger redisplay.
17897 (list_of_error): New variable.
17898 (syms_of_xdisp): Init and staticpro it.
17899
17900 * print.c (print_object): Delete `\ ' from printed rep of frame.
17901
179022002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
17903
17904 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
17905 until its implementation is fixed.
17906
179072002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17908
17909 * xfns.c (png_load): Remove unused variable `gamma_str'.
17910
179112002-03-14 Richard M. Stallman <rms@gnu.org>
17912
17913 * xfns.c (x_real_positions): Handle failure in XQueryTree.
17914
179152002-03-14 Miles Bader <miles@gnu.org>
17916
17917 * intervals.c (adjust_for_invis_intang): New function.
17918 (set_point_both): Use `adjust_for_invis_intang' to do most of the
17919 work for dealing with invisible+intangible regions. Do so before
17920 and after both forward and backward movements, to handle both
17921 front-sticky and rear-sticky cases.
17922 * textprop.c (text_property_stickiness): Function moved here from
17923 `editfns.c'.
17924 * intervals.h (text_property_stickiness): New declaration.
17925 * editfns.c (char_property_eq): Function removed.
17926 (text_property_stickiness): Function moved to `textprop.c'.
17927
179282002-03-13 Jason Rumney <jasonr@gnu.org>
17929
17930 * config.in: Add STRFTIME_NO_POSIX2.
17931
17932 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
17933 and %OX when underlying strftime does not.
17934
179352002-03-13 Stefan Monnier <monnier@cs.yale.edu>
17936
17937 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
17938 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
17939 line) to avoid annoying flicker.
17940 (xm_scroll_callback): Get rid of the now unnecessary kludge.
17941 (XTread_socket): Mark it static.
17942
17943 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
17944
179452002-03-13 Kim F. Storm <storm@cua.dk>
17946
17947 * puresize.h (BASE_PURESIZE): Increase to 775000.
17948
179492002-03-12 Juanma Barranquero <lektu@terra.es>
17950
17951 * editfns.c (syms_of_editfns): Fix typo.
17952
179532002-03-12 Gerd Moellmann <gerd@gnu.org>
17954
17955 * xsmfns.c: Include stdio.h because termhooks.h needs it.
17956 Include termopt.h for interrupt_input.
17957
179582002-03-11 Andreas Schwab <schwab@suse.de>
17959
17960 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
17961
179622002-03-11 Gerd Moellmann <gerd@gnu.org>
17963
17964 * xterm.c (note_mouse_movement): Put code for
17965 x_autoselect_window_p in #if 0.
17966
17967 * lread.c (Fload): Don't assume that message_with_string uses the
17968 string it is given like a C string.
17969
179702002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17971
17972 * xterm.h (x_session_check_input, x_session_initialize): Declare.
17973
17974 * xterm.c (XTread_socket): Add call to x_session_check_input and
17975 x_session_have_connection.
17976 (x_initialize): Add call to x_session_initialize.
17977
17978 * termhooks.h (enum event_kind): Add save_session_event.
17979
17980 * keyboard.c: Add Emacs event save_session_event.
17981
17982 * emacs.c (main): Add call to syms_of_xsmfns.
17983
17984 * lisp.h (syms_of_xsmfns): Declare extern.
17985
17986 * config.in: Add HAVE_X_SM.
17987
17988 * Makefile.in (LIBXT): Add -lSM -lICE
17989 if HAVE_X_SM and not USE_X_TOOLKIT.
17990 (XOBJ): New file xsmfns.c added.
17991
17992 * xsmfns.c: New file for X session management.
17993
179942002-03-09 Jason Rumney <jasonr@gnu.org>
17995
17996 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
17997 read-only when setting modified time.
17998
179992002-03-08 Gerd Moellmann <gerd@gnu.org>
18000
18001 * xdisp.c (move_it_vertically_backward): At the end of the function,
18002 when moving forward by lines, treat terminal frames specially.
18003
18004 * keyboard.c (echo_char): Make sure to add a separator between
18005 keys even if echo_dash hasn't been called.
18006
18007 * xdisp.c: Use new string macros.
18008 (update_echo_area): Pass number of bytes to message3 instead of
18009 number of chars.
18010 (set_message_1): Don't access a string's size_byte directly.
18011 (decode_mode_spec_coding): Use number of bytes of eoltype string
18012 instead number of chars.
18013
18014 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
18015
180162002-03-08 Juanma Barranquero <lektu@terra.es>
18017
18018 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
18019 24-bit.
18020
180212002-03-06 Jason Rumney <jasonr@gnu.org>
18022
18023 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
18024
180252002-03-06 Gerd Moellmann <gerd@gnu.org>
18026
18027 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
18028 (cancel_echoing, echo_length, echo_truncate): Changed to
18029 work with new kboard definition.
18030 (echo_now): Use message3_nolog instead of message2_nolog.
18031
18032 * alloc.c (mark_kboards): Mark echo_string.
18033
18034 * keyboard.h (ECHOBUFSIZE): Removed.
18035 (struct kboard): Member echoptr removed, member echobuf renamed
18036 to echo_string.
18037
18038 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
18039 message3 instead of message2 to display the message using STRING's
18040 text properties.
18041
180422002-03-05 Andreas Schwab <schwab@suse.de>
18043
18044 * xdisp.c (hscroll_margin): Change to EMACS_INT.
18045
180462002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
18047
18048 * frame.c (default-frame-alist): Explain that setting it doesn't
18049 affect existing frames.
18050
180512002-03-05 Stefan Monnier <monnier@cs.yale.edu>
18052
18053 * indent.c (skip_invisible): Fix my brain fart.
18054
18055 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
18056
180572002-03-04 Stefan Monnier <monnier@cs.yale.edu>
18058
18059 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
18060 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
18061 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
18062 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
18063 and variables to use EMACS_INT instead of just int.
18064
18065 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
18066
180672002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
18068
18069 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
18070 environment, pass it down with corrected value.
18071
180722002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18073
18074 * lread.c (read_filtered_event): Do not call start_hourglass
18075 before returning.
18076
180772002-03-04 Juanma Barranquero <lektu@terra.es>
18078
18079 * w32term.c (x_display_and_set_cursor): Fix typo.
18080
180812002-03-03 Richard M. Stallman <rms@gnu.org>
18082
18083 * fileio.c (Fmake_temp_name): Doc fix.
18084
180852002-03-03 Gary Wong <gtw@gnu.org>
18086
18087 * termcap.c [!emacs]: Replace ospeed for building standalone
18088 libtermcap, for binary compatibility.
18089
18090 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
18091
180922002-03-03 Richard M. Stallman <rms@gnu.org>
18093
18094 * xrdb.c (file_p): Rename arg `path' to `filename'.
18095
18096 * abbrev.c (Fexpand_abbrev): Increment plist as use count
18097 only if it is an integer.
18098
18099 * xfns.c (png_load): Set screen_gamma based on f->gamma.
18100 If png_get_sRGB gives an answer, call png_set_gamma
18101 using the default image gamma value.
18102
18103 * lread.c (read1): When reading from a file, default string to
18104 multibyte only if it has some multibyte characters.
18105
18106 * print.c (print_object): Output multibyte chars 128...255
18107 using \x even if ! print_escape_multibyte.
18108
18109 * xdisp.c (display_mode_element): Move the places where
18110 bytepos, charpos, this, and lisp_string are set.
18111 Use lisp_string to set bytepos.
18112
18113 * xdisp.c (redisplay_internal):
18114 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
18115
18116 * xdisp.c (display_mode_element): Merge properties specified with
18117 :propertize onto those that come with the string.
18118
181192002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
18120
18121 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
18122 automatic-hscrolling. Users changed.
18123 <hscroll-margin>: Renamed from automatic-hscroll-margin.
18124 Users changed.
18125 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
18126
181272002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
18128
18129 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
18130
181312002-03-02 Kim F. Storm <storm@cua.dk>
18132
18133 * window.c (Fminibuffer_selected_window): New function.
18134 (syms_of_window): Defsubr it.
18135
181362002-03-01 Kim F. Storm <storm@cua.dk>
18137
18138 * window.h (struct window): New member phys_cursor_width.
18139
18140 * window.c (make_window, replace_window): Init phys_cursor_width.
18141
18142 * xterm.c (x_display_and_set_cursor): Blink box cursor using
18143 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
18144
18145 * w32term.c (x_display_and_set_cursor): Blink box cursor using
18146 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
18147
18148 * lisp.h (GCPRO6): New macro.
18149
18150 * process.c (Fopen_network_stream): Use GCPRO6.
18151
181522002-03-01 Kim F. Storm <storm@cua.dk>
18153
18154 * process.c (Qconnect, Qfailed): New variables.
18155 (syms_of_process): Intern and staticpro them.
18156 (Fprocess_status): Document connect and failed return values.
18157 [NON_BLOCKING_CONNECT]: New conditional.
18158 (connect_wait_mask, num_pending_connects): New variables.
18159 (status_message): Convert Qfailed status.
18160 (Fopen_network_stream): Added support for non-blocking connect.
18161 New optional args: filter, sentinel, non_blocking. Doc updated.
18162 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
18163 (deactivate_process): Handle pending non-blocking connect.
18164 (wait_reading_process_input): Poll for status of non-blocking
18165 connects. Exec sentinel directly when connect succeeds.
18166 (status_notify): Don't read process output if not yet connected.
18167
181682002-02-28 Kim F. Storm <storm@cua.dk>
18169
18170 * window.c: (minibuf_selected_window): Renamed from
18171 Vminibuf_selected_window. Users changed.
18172 (syms_of_window): Staticpro it.
18173
181742002-02-26 Kim F. Storm <storm@cua.dk>
18175
18176 The following changes add a new Vminibuf_selected_window variable
18177 which is similar to Vminibuf_scroll_window, but which is only set
18178 on entry to the minibuffer (from a non-minibuffer window):
18179
18180 * window.c: (Vminibuf_selected_window): New variable.
18181 (struct save_window_data): New member minibuf_selected_window.
18182 (Fset_window_configuration): Restore Vminibuf_selected_window.
18183 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
18184 Set minibuf_scroll_window member to nil if minibuf_level is 0.
18185 (compare_window_configurations): Compare minibuf_selected_window.
18186
18187 * window.h: (Vminibuf_selected_window): Declare extern.
18188
18189 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
18190 entry to minibuffer or on entry from a non-minibuffer window.
18191
18192 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
18193 Vminibuf_selected_window instead of Vminibuf_scroll_window.
18194
18195 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
18196 instead of Vminibuf_scroll_window when deciding in which window
18197 the region should be highlighted. Consequently, the region remains
18198 highlighteded even when a completion buffer is also displayed.
18199
182002002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
18201
18202 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
18203
18204 * xselect.c (Qcompound_text_with_extensions): Renamed from
18205 Qcompound_text_no_extensions.
18206 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
18207
182082002-02-26 Juanma Barranquero <lektu@terra.es>
18209
18210 * w32proc.c (syms_of_ntproc): Doc fix.
18211
182122002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18213
18214 * intervals.h: Include "dispextern.h" unconditionally.
18215
182162002-02-24 Jason Rumney <jasonr@gnu.org>
18217
18218 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
18219 and disp-table.elc.
18220 (lisp): Add emacs-lisp/backquote.elc.
18221
182222002-02-24 Kim F. Storm <storm@cua.dk>
18223
18224 * keymap.c (Flookup_key): Fix problem in 2001-12-28 patch:
18225 The validation of the event type was too strict as it didn't
18226 allow string events; buffer names are used in bindings for
18227 menu-bar-select-buffer (see `menu-bar-update-buffers').
18228
182292002-02-23 Kim F. Storm <storm@cua.dk>
18230
18231 The following changes rework my patch of 2002-02-06 which
18232 added command remapping by entering the commands directly into
18233 the keymaps. Now, command remapping uses an explicit `remap'
18234 prefix in the keymaps, i.e. [remap COMMAND].
18235
18236 * keymap.c (Qremap, remap_command_vector): New variables.
18237 (is_command_symbol): Remove function.
18238 (Fdefine_key): No longer accept a symbol for KEY.
18239 Added validation of [remap COMMAND] argument for KEY.
18240 The DEF is no longer required to be a symbol when remapping a command.
18241 (Fremap_command): New function to remap command through keymaps.
18242 (Flookup_key): Perform command remapping initiated by
18243 Fremap_command directly for speed.
18244 (Fkey_binding): Use Fremap_command for command remapping.
18245 (where_is_internal): Handle new command remapping representation.
18246 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
18247 staticpro them. Defsubr Fremap_command.
18248
18249 * keymap.h (Fremap_command): Declare extern.
18250 (is_command_symbol): Remove extern.
18251
18252 * keyboard.c (command_loop_1): Use Fremap_command for command
18253 remapping; now try command remapping for all symbols.
18254
182552002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
18256
18257 * coding.h (run_pre_post_conversion_on_str): Add prototype.
18258
182592002-02-23 Jason Rumney <jasonr@gnu.org>
18260
18261 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
18262 on the string before encoding it.
18263 (Fw32_get_clipboard_data): Run post-read-conversion on the string
18264 after decoding it.
18265
18266 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
18267
182682002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18269
18270 * w32term.c (enter_timestamp): Remove unused static variable to
18271 prevent warning.
18272
18273 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
18274
182752002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
18276
18277 * w16select.c (Fw16_get_clipboard_data): Fix last change.
18278
18279 * xselect.c (selection_data_to_lisp_data): Fix last change.
18280
182812002-02-22 Jason Rumney <jasonr@gnu.org>
18282
18283 * w32term.h (struct w32_output): New member menu_command_in_progress.
18284
18285 * w32menu.c (menubar_selection_callback): Free the menu and
18286 clear the menu_command_in_progress flag.
18287
18288 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
18289 (menu_free_timer): New variable.
18290 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
18291 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
18292 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
18293 menu command is in progress.
18294 <WM_COMMAND>: Set the menu_command_in_progress flag.
18295 Kill any menu_free_timer that is running.
18296
18297 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
18298 Call ExtTextOutA rather than ExtTextOut.
18299
183002002-02-22 Eli Zaretskii <eliz@gnu.org>
18301
18302 * puresize.h (BASE_PURESIZE): Increase to 755000.
18303
183042002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
18305
18306 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
18307 on the string before encoding it.
18308 (Fw16_get_clipboard_data): Run post-read-conversion on the string
18309 after decoding it.
18310
183112002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
18312
18313 Support for ICCCM Extended Segments in X selections:
18314
18315 * xselect.c <Qcompound_text_no_extensions>: New variable.
18316 (syms_of_xselect): Intern and staticpro it.
18317 (selection_data_to_lisp_data): Run post-read-conversion on decoded
18318 selection text.
18319 (lisp_data_to_selection_data): If next-selection-coding-system is
18320 compound-text-no-extensions, set the type of selection to be
18321 compound-text.
18322
18323 * xterm.h (x_encode_text): Update prototype.
18324
18325 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
18326 callers changed. If SELECTIONP is non-zero, run the
18327 pre-write-conversion function before encoding the selection text.
18328
183292002-02-21 Kim F. Storm <storm@cua.dk>
18330
18331 * frame.c (syms_of_frame): Change mouse-highlight default to t.
18332
18333 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
18334 Correct composing of language-change event.
18335
183362002-02-20 Kim F. Storm <storm@cua.dk>
18337
18338 * keyboard.c (menu_bar_items): Don't include keymap or local-map
18339 bindings at PT when building menu (the menu is not updated often
18340 enough for this to work reliable).
18341 (tool_bar_items): Likewise.
18342 (current_active_maps): Removed unused (and buggy) function.
18343
183442002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18345
18346 * xfns.c (gif_load): Use correct width and height for GIF images.
18347
183482002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
18349
18350 * floatfns.c (Fatan): Accept an optional second arg and call
18351 atan2 if passed 2 args.
18352
183532002-02-18 Jason Rumney <jasonr@gnu.org>
18354
18355 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
18356
183572002-02-17 Jason Rumney <jasonr@gnu.org>
18358
18359 * w32term.c (x_autoselect_window_p): New variable.
18360 (syms_of_w32term): DEFVAR_BOOL and initialize it.
18361 (note_mouse_movement): Use it.
18362
18363 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
18364
18365 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
18366
18367 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
18368 New variables.
18369 (syms_of_w32fns): Intern and staticpro them.
18370 (x_frame_parms) <"fullscreen">: New parameter.
18371 (x_fullscreen_move, x_set_fullscreen): New functions.
18372 (x_set_frame_parameters): Support Qfullscreen.
18373 (x_real_positions): Save x/y_pixels_diff frame params.
18374 (x_figure_window_size): Support full-screen frames.
18375 (Fx_create_frame): Default the fullscreen parameter.
18376
18377 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
18378 (x_fullscreen_adjust): New functions.
18379 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
18380 fullscreen. Call x_check_fullscreen_move, and set the
18381 want_fullscreen member of output_data.w32
18382 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
18383
18384 * w32term.h: New enum for FULLSCREEN_* constants.
18385 (struct w32_output): New members want_fullscreen, x_pixels_diff,
18386 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
18387 (x-fullscreen-adjust): New prototype.
18388
183892002-02-17 Kim F. Storm <storm@cua.dk>
18390
18391 * frame.c (Vmouse_highlight): New variable.
18392 (syms_of_frame): DEFVAR_LISP it.
18393
18394 * frame.h (Vmouse_highlight): Declare extern.
18395
18396 * xterm.h (struct x_display_info): Add mouse_face_hidden.
18397
18398 * xterm.c (disable_mouse_highlight): Removed variable.
18399 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
18400 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
18401 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
18402 and on after keyboard input.
18403 (x_term_init): Initialize mouse_face_hidden.
18404
18405 * msdos.h (struct display_info): Add mouse_face_hidden.
18406
18407 * msdos.c (disable_mouse_highlight): Removed variable.
18408 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
18409 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
18410 (internal_terminal_init): Initialize mouse_face_hidden.
18411 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
18412 and on after keyboard input.
18413
18414 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
18415
18416 * w32term.c (disable_mouse_highlight): Removed variable.
18417 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
18418 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
18419 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
18420 and on after keyboard input.
18421 (w32_initialize_display_info): Initialize mouse_face_hidden.
18422
184232002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
18424
18425 * msdos.c (last_mouse_window): New variable.
18426 (dos_rawgetc): Fix last change--if the mouse is in the same window
18427 as recorded in last_mouse_window, don't select this window.
18428
18429 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
18430
18431 * msdos.c (x_autoselect_window_p): New variable.
18432 (syms_of_msdos): Defvar it.
18433 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
18434 which the last mouse movement occured, unless it is already selected.
18435
18436 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
18437 New variables.
18438 (syms_of_xdisp): DEVFAR them.
18439 (hscroll_window_tree): Use automatic_hscroll_margin and
18440 Vautomatic_hscroll_step to compute the amount of window scrolling.
18441
184422002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18443
18444 * xterm.c (x-autoselect-window): New variable.
18445 (note_mouse_movement): Use it.
18446
18447 * keyboard.c: Do not include "systime.h" twice.
18448
184492002-02-15 Andreas Schwab <schwab@suse.de>
18450
18451 * puresize.h (PURESIZE_RATIO): Increase to 9/5.
18452
18453 * alloc.c (NSTATICS): Increase to 1280.
18454
184552002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
18456
18457 * alloc.c (NSTATICS): Bump to 1026.
18458
18459 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
18460 (Vx_super_keysym): New variables.
18461 (syms_of_xterm): DEFVAR_LISP them.
18462 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
18463 variables to determine which keys to use for the various modifiers.
18464
184652002-02-13 Kim F. Storm <storm@cua.dk>
18466
18467 * window.c: (Vmode_line_in_non_selected_windows): Removed.
18468 (mode_line_in_non_selected_windows): New variable.
18469 (syms_of_window): DEFVAR_BOOL it.
18470
18471 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
18472 Use mode_line_in_non_selected_windows.
18473 (mode_line_in_non_selected_windows): Declare extern.
18474 (Vmode_line_in_non_selected_windows): Removed extern.
18475
184762002-02-13 Richard M. Stallman <rms@gnu.org>
18477
18478 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
18479 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
18480 (Fclear_this_command_keys): Doc fixes.
18481
18482 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
18483 (update_face_from_frame_parameter): Increment face_change_count
18484 and windows_or_buffers_changed to force redisplay using changed faces.
18485
18486 * xdisp.c (QCpropertize): New variable.
18487 (mode_line_proptrans_alist): New variable.
18488 (display_mode_element): New arg PROPS; all calls changed.
18489 Implement this, for strings.
18490 Handle literal output of strings by sharing the
18491 main-line code for strings, using local var `literal'.
18492 Handle :propertize feature.
18493 (syms_of_xdisp): Initialze and staticpro QCpropertize and
18494 mode_line_proptrans_alist.
18495
184962002-02-11 Kim F. Storm <storm@cua.dk>
18497
18498 * window.c: (Vmode_line_in_non_selected_windows): New variable.
18499 (syms_of_window): DEFVAR_LISP it.
18500
18501 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
18502 (CURRENT_MODE_LINE_FACE_ID): Use it.
18503 (Vmode_line_in_non_selected_windows): Declare extern.
18504
18505 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
18506 to get mode line face.
18507
185082002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
18509
18510 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
18511 variables; cus-start.el doesn't need them anymore.
18512
185132002-02-09 Kim F. Storm <storm@cua.dk>
18514
18515 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
18516 reduction. This fixes a display problem where stray newlines were
18517 inserted in the window (corrected by C-l). Clarified code (IMHO).
18518
185192002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
18520
18521 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
18522
18523 * xdisp.c (display_mode_lines): Fix last change.
18524
185252002-02-09 Jason Rumney <jasonr@gnu.org>
18526
18527 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
18528 match each other.
18529 (w32_load_system_font): Prevent Cleartype fonts from loading.
18530 (Fx_show_tip): Ensure tip frames are above other topmost windows.
18531
185322002-02-09 Kim F. Storm <storm@cua.dk>
18533
18534 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
18535 (CURRENT_MODE_LINE_HEIGHT): Use it.
18536 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
18537
18538 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
18539 (pos_visible_p, handle_face_prop): Likewise.
18540 (display_mode_lines): Likewise, but for the real selected window.
18541 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
18542
18543 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
18544 in non-selected windows.
18545 (realize_basic_faces): Realize it.
18546 (syms_of_term): Intern and staticpro it.
18547
185482002-02-08 Kim F. Storm <storm@cua.dk>
18549
18550 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
18551 Changed mail addresses to emacs-devel@gnu.org.
18552
185532002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
18554
18555 * fileio.c (Fsubstitute_in_file_name): If the file name includes
18556 ~user, and there's no such user, don't discard everything before ~user.
18557
18558 * floatfns.c (Fround): Doc fix.
18559
185602002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18561
18562 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
18563
185642002-02-07 Stefan Monnier <monnier@cs.yale.edu>
18565
18566 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
18567
185682002-02-07 Kim F. Storm <storm@cua.dk>
18569
18570 * keymap.c (where_is_internal): Only check whether definition is
18571 remapped if it fulfills is_command_symbol.
18572
185732002-02-07 Andreas Schwab <schwab@suse.de>
18574
18575 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
18576
18577 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
18578
185792002-02-06 Kim F. Storm <storm@cua.dk>
18580
18581 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
18582 defining command remapping. Doc updated.
18583 (Flookup_key): Remap command through keymap if KEY is a symbol.
18584 (is_command_symbol): New function.
18585 (Fkey_binding): Use it. New optional argument NO-REMAP.
18586 Doc updated. Callers changed. Perform command remapping via
18587 recursive call unless that arg is non-nil.
18588 (where_is_internal): New argument no_remap. Callers changed.
18589 Call recursively to find original key bindings for a remapped
18590 comand unless that arg is non-nil.
18591 (Fwhere_is_internal): New optional argument NO-REMAP.
18592 Doc updated. Callers changed. Pass arg to where_is_internal.
18593
18594 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
18595 (is_command_symbol): Add prototype.
18596
18597 * keyboard.c (Vthis_original_command): New variable.
18598 (syms_of_keyboard): DEFVAR_LISP it.
18599 (command_loop_1): Set it, and perform command remapping.
18600
186012002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18602
18603 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
18604
186052002-02-06 Jason Rumney <jasonr@gnu.org>
18606
18607 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
18608
186092002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
18610
18611 * charset.c (get_charset_id): Use if-else instead of ?:.
18612
186132002-02-06 Richard M. Stallman <rms@gnu.org>
18614
18615 * filelock.c (S_ISLNK): Define if not defined.
18616
186172002-02-03 Richard M. Stallman <rms@gnu.org>
18618
18619 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
18620
18621 * lread.c (read1): Redesign strategy for force_multibyte and
18622 force_singlebyte. Now is_multibyte records whether read_buffer
18623 is multibyte. Encountering any multibyte character makes it so.
18624
186252002-02-02 Stefan Monnier <monnier@cs.yale.edu>
18626
18627 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
18628 with the same sequence, map that sequence to f10 rather than f0.
18629
186302002-02-03 Andreas Schwab <schwab@suse.de>
18631
18632 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
18633 latter never being defined on GNU/Linux.
18634
186352002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
18636
18637 * xfaces.c (realize_default_face): Don't set the weight and slant of
18638 the default face to Qnormal, unless these attributes are unspecified.
18639
186402002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18641
18642 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
18643 Call cancel_hourglass unconditionally.
18644
18645 * eval.c (Fsignal): Remove duplicated declaration of
18646 the variable `display_hourglass_p'.
18647
186482002-01-31 Richard M. Stallman <rms@gnu.org>
18649
18650 * editfns.c (region_limit): Nicer error message.
18651
18652 * coding.c (decode_composition_emacs_mule):
18653 Give up if NCOMPONENT gets too large to index `component'.
18654
18655 * callint.c (check_mark): New arg to specify clearer error message.
18656 Callers changed.
18657
186582002-01-27 Richard M. Stallman <rms@gnu.org>
18659
18660 * minibuf.c (Fcompleting_read): Doc fix.
18661
186622002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18663
18664 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
18665 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
18666 Fix doc-strings.
18667
186682002-01-26 Richard M. Stallman <rms@gnu.org>
18669
18670 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
18671
18672 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
18673 and scroll_up_aggressively.
18674
186752002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18676
18677 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
18678
186792002-01-25 Stefan Monnier <monnier@cs.yale.edu>
18680
18681 * textprop.c (Fnext_property_change, Fnext_single_property_change)
18682 (Fprevious_property_change, Fprevious_single_property_change):
18683 Stay within the narrowed-buffer boundaries.
18684
186852002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
18686
18687 * term.c (Ftty_display_color_cells): New function.
18688 (syms_of_term): Defsubr it.
18689 (Ftty_display_color_cells, Ftty_display_color_p): Change the
18690 argument name to DISPLAY. Doc fix.
18691
18692 * dispextern.h: Add prototype for set_tty_color_mode and
18693 tty_setup_colors.
18694
186952002-01-24 Jason Rumney <jasonr@gnu.org>
18696
18697 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
18698 If region left to draw is not what was expected, mark the frame as
18699 garbaged.
18700
18701 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
18702 Combine the regions returned by BeginPaint and GetUpdateRect.
18703
187042002-01-23 Jason Rumney <jasonr@gnu.org>
18705
18706 * w32term.c (x_update_window_begin): Only hide caret if
18707 w32_use_visible_system_caret is set.
18708 (x_update_window_end): Only show caret if
18709 w32_use_visible_system_caret is set.
18710 (syms_of_w32term): Handle SystemParametersInfo call failing.
18711
18712 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
18713
187142002-01-22 Richard M. Stallman <rms@gnu.org>
18715
18716 * unexelf.c (unexec): Define n so as to cause compilation error
18717 for the code where people have often written n instead of nn.
18718
18719 * .gdbinit (hookpost-run): Defined.
18720
187212002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
18722
18723 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
18724
187252002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
18726
18727 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
18728 if fullscreen is being set.
18729
187302002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18731
18732 * minibuf.c (Fminibuffer_contents)
18733 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
18734 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
18735
187362002-01-21 Richard M. Stallman <rms@gnu.org>
18737
18738 * window.c (check_frame_size): Fix minimum height calculation.
18739
187402002-01-20 Ken Raeburn <raeburn@gnu.org>
18741
18742 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
18743 height before comparison.
18744 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
18745
187462002-01-20 Jason Rumney <jasonr@gnu.org>
18747
18748 * w32term.c (w32_system_caret_width): Remove.
18749 (w32_use_visible_system_caret): New user flag.
18750 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
18751 Windows reports a screen reader running.
18752 (x_update_window_begin): Hide the system caret.
18753 (x_update_window_end): Show the system caret.
18754 (x_display_and_set_cursor): Don't draw a cursor when
18755 w32_use_visible_system_caret is set. Do not adjust width.
18756
18757 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
18758 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
18759 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
18760 the user requests it. Use system default width when creating.
18761 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
18762
18763 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
18764 New window messages.
18765
187662002-01-20 Richard M. Stallman <rms@gnu.org>
18767
18768 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
18769
187702002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18771
18772 * doprnt.c (doprnt1): Fix typos in error call.
18773
187742002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
18775
18776 * unexelf.c (unexec) [__sgi]: Support the .got sections.
18777
187782002-01-20 Jason Rumney <jasonr@gnu.org>
18779
18780 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
18781 that Windows returns. If a double check fails, try to guess how
18782 ExtTextOut is going to act.
18783
18784 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
18785 in place of stricmp.
18786 (w32_list_synthesized_fonts): Removed.
18787 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
18788 (struct enumfont_t): New element; list.
18789 (enum_font_cb2): List all style and charset variations of a font.
18790 (Fw32_select_font): New optional argument; include_proportional.
18791 Exclude vertical fonts. Exclude proportional fonts unless
18792 include_proportional is non-nil.
18793 (w32_enable_synthesized_fonts): Change to a boolean.
18794 (Fw32_send_sys_command): Doc fix.
18795
187962002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18797
18798 * dispnew.c (update_frame): Move the variable `tem' to the block
18799 where it is used.
18800
188012002-01-19 Jason Rumney <jasonr@gnu.org>
18802
18803 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
18804 call to face-set-after-frame-default.
18805
188062002-01-18 Richard M. Stallman <rms@gnu.org>
18807
18808 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
18809 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
18810
188112002-01-17 Richard M. Stallman <rms@gnu.org>
18812
18813 * window.c (enlarge_window): When exceeding size of parent,
18814 directly delete all the siblings instead of trying to resize it.
18815
188162002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18817
18818 * term.c (set_tty_color_mode): Remove unused variable `tem'.
18819
188202002-01-16 Henrik Enberg <henrik@enberg.org>
18821
18822 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
18823
188242002-01-16 Kim F. Storm <storm@cua.dk>
18825
18826 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
18827 is invisible. This can happen if cursor is on top line of a
18828 window, and we switch to a buffer with a header line.
18829
18830 * w32term.c (x_erase_phys_cursor): Ditto.
18831
188322002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18833
18834 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
18835 `dont_resize' only when used.
18836
18837 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
18838
188392002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
18840
18841 * xdisp.c (display_mode_element): When computing charpos, depend
18842 on multibyteness of elt, not the text in field.
18843
188442002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18845
18846 * buffer.c (Fkill_all_local_variables):
18847 Increment `update_mode_lines' only once.
18848
188492002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18850
18851 * lisp.h (adjust_after_replace_noundo)
18852 (Fupdate_coding_systems_internal): Add prototypes.
18853
18854 * sound.c (Fplay_sound): Initialize header_size also for :data case.
18855
188562002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
18857
18858 Support for the --color command-line argument and tty-color-mode
18859 frame parameter:
18860
18861 * term.c (tty_default_color_capabilities, tty_setup_colors)
18862 (set_tty_color_mode): New functions.
18863 (term_init): Call tty_default_color_capabilities.
18864 (Qtty_color_mode_alist): New variable.
18865 (syms_of_term): Intern and staticpro it.
18866
18867 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
18868 frames.
18869 (do_switch_frame): For termcap frames, switch the tty
18870 color mode as specified by the frame's parameters.
18871 (Qtty_color_mode): New variable.
18872 (syms_of_frame): Intern and staticpro it.
18873
18874 * emacs.c (USAGE2): Add the --color option.
18875 (standard_args): Ditto.
18876
188772002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
18878
18879 * xterm.h (struct x_output): New members want_fullscreen,
18880 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
18881 y_pixels_outer_diff.
18882 New enum for FULLSCREEN_* constants.
18883 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
18884 is NULL.
18885 (x_fullscreen_adjust): Add prototype.
18886
18887 * emacs.c (USAGE2): Add the new full-screen arguments.
18888 (standard_args): Ditto.
18889
18890 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
18891 New variables.
18892 (syms_of_xfns): Intern and staticpro them.
18893 (x_frame_parms) <"fullscreen">: New parameter.
18894 (x_fullscreen_move, x_set_fullscreen): New functions.
18895 (x_set_frame_parameters): Support for Qfullscreen.
18896 (x_real_positions): More accurate computation of the frame position.
18897 (x_figure_window_size): Support full-screen frames.
18898 (Fx_create_frame): Default the fullscreen parameter.
18899
18900 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
18901 (XTread_socket) <Expose>: Call x_check_fullscreen.
18902 <ConfigureNotify>: Don't resize to fullscreen.
18903 Call x_check_fullscreen_move, and set the want_fullscreen member of
18904 output_data.x.
18905
189062002-01-13 Jason Rumney <jasonr@gnu.org>
18907
18908 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
18909 for mice with more than 3 buttons.
18910
18911 * w32term.c (parse_button): New parameter xbutton. Callers changed.
18912 (w32_read_socket): Handle new "XBUTTON" messages.
18913
18914 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
18915 (syms_of_w32fns): DEFVAR_BOOL it.
18916 (w32_wnd_proc): Handle new "XBUTTON" messages.
18917
189182002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18919
18920 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
18921
189222002-01-13 Andreas Schwab <schwab@suse.de>
18923
18924 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
18925
189262002-01-12 Andreas Schwab <schwab@suse.de>
18927
18928 * .gdbinit (xbuffer): Remove address operator since data is now a
18929 pointer.
18930
189312002-01-11 Richard M. Stallman <rms@gnu.org>
18932
18933 * insdel.c (adjust_after_replace_noundo): New function.
18934
18935 * coding.c (code_convert_region): Don't copy old text if undo disabled.
18936
189372002-01-09 Jason Rumney <jasonr@gnu.org>
18938
18939 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
18940 when checking for multiple frames.
18941
189422002-01-08 Richard M. Stallman <rms@gnu.org>
18943
18944 * window.c (delete_window): Rewrite the code for changing the
18945 selected window to handle the case where WINDOW is not a leaf.
18946
189472002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
18948
18949 * process.c (send_process): Set src_multibyte to 1 after the call
18950 top setup_coding_system, not before the call.
18951
189522002-01-07 Jason Rumney <jasonr@gnu.org>
18953
18954 * xmenu.c (set_frame_menubar, xmenu_show):
18955 (xdialog_show): Initialize wv->help to Qnil.
18956
18957 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
18958 (w32_dialog_show): Initialize wv->help to Qnil.
18959
189602002-01-06 Jason Rumney <jasonr@gnu.org>
18961
18962 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
18963
18964 * w32menu.c (w32_menu_display_help): Revert last change.
18965
18966 * xmenu.c (menu_highlight_callback): Revert last change.
18967
189682002-01-06 Andreas Schwab <schwab@suse.de>
18969
18970 * insdel.c (make_gap_larger): Make sure buffer size does not
18971 overflow range of int.
18972
189732002-01-05 Jason Rumney <jasonr@gnu.org>
18974
18975 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
18976 OVERLAPS_P.
18977
18978 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
18979
18980 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
18981 to the left or to the right of the pointer, put it against
18982 the left screen edge.
18983 (x_frame_parms): Add missing braces around initializer.
18984
18985 * w32term.c (x_setup_relief_colors): Don't compute an image's
18986 background color if it doesn't have a Pixmap.
18987 (notice_overwritten_cursor): Don't depend on
18988 output_cursor and updated_area. Compare pixel coordinates with
18989 window's cursor pixel coordinates.
18990 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
18991 Call notice_overwritten_cursor with new arg list.
18992 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
18993 unconditionally.
18994 (x_draw_image_relief): Use predefined macro instead of
18995 constant when the value of `tool_bar_button_relief' is negative.
18996
18997 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
18998
189992002-01-04 Richard M. Stallman <rms@gnu.org>
19000
19001 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
19002
190032002-01-03 Richard M. Stallman <rms@gnu.org>
19004
19005 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
19006 (Fkey_binding): Try the `keymap' property map first.
19007 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
19008 minor mode bindings.
19009
190102002-01-03 Kim F. Storm <storm@cua.dk>
19011
19012 * keyboard.c (read_key_sequence): Fix cast of submaps arg to bcopy.
19013
190142002-01-02 Richard M. Stallman <rms@gnu.org>
19015
19016 * keyboard.c (read_key_sequence): Handle the keymap property
19017 before minor mode maps.
19018
19019 * editfns.c (Fformat): Update thissize from field_width
19020 based on the actual width, in the string case.
19021
190222002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19023
19024 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
19025 when used as truth value to prevent gcc warnings.
19026
19027 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
19028 * w32proc.c: Include <config.h>.
19029
190302002-01-01 Andreas Schwab <schwab@suse.de>
19031
19032 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
19033 not EMACS_INT, to make them compatible with DEFVAR_INT.
19034 * lisp.h (max_specpdl_size): Adjust declaration.
19035
190362002-01-01 Richard M. Stallman <rms@gnu.org>
19037
19038 * print.c (print_object): Test print_escape_nonascii only for
19039 unibyte strings.
19040 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
19041 when outputting to a multibyte buffer.
19042
190432001-12-29 Richard M. Stallman <rms@gnu.org>
19044
19045 * print.c (print_object): In multibyte string, use hex escapes.
19046 Use octal only for unibyte strings.
19047 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
19048
19049 * lread.c (read_escape): New arg BYTEREP for reporting whether
19050 escape forces unibyte or multibyte.
19051 (read1): When reading a string, take note of that info.
19052
190532001-12-29 Ken Raeburn <raeburn@gnu.org>
19054
19055 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
19056 comparison to test lisp value returned by Fget.
19057
190582001-12-29 Richard M. Stallman <rms@gnu.org>
19059
19060 * lisp.h (max_specpdl_size): Add declaration.
19061
19062 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
19063
19064 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
19065 Handle modifier bits. Correct typo in error message.
19066
190672001-12-28 Richard M. Stallman <rms@gnu.org>
19068
19069 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
19070 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
19071 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
19072 Update calls to Fdefine_abbrev.
19073 (write_abbrev): Update for changed data format.
19074 Don't list "system" abbrevs.
19075 (Fexpand_abbrev): Update use count with new data format.
19076 (describe_abbrev): Update for changed data format.
19077 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
19078
19079 * config.in (HAVE_MBSINIT): Add #undef.
19080
19081 * strftime.c (mbsinit): Define as no-op if not available.
19082
19083 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
19084 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
19085
19086 * keymap.c (Flookup_key): Error message if key has wrong data type.
19087 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
19088 (exclude_key): New variable.
19089
190902001-12-28 Gerd Moellmann <gerd@gnu.org>
19091
19092 * xterm.c (x_setup_relief_colors): Don't compute an image's
19093 background color if it doesn't have a Pixmap.
19094
19095 * xterm.c (notice_overwritten_cursor): Don't depend on
19096 output_cursor and updated_area. Compare pixel coordinates with
19097 window's cursor pixel coordinates.
19098 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
19099 Call notice_overwritten_cursor with new arg list.
19100 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
19101 unconditionally.
19102
19103 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
19104 height of the cursor line to the amount to scroll.
19105
191062001-12-27 Richard M. Stallman <rms@gnu.org>
19107
19108 * intervals.c (set_point_both): The position after an invisible,
19109 intangible character is not an acceptable stopping point.
19110
191112001-12-27 Ken Raeburn <raeburn@gnu.org>
19112
19113 * window.c (enlarge_window): In new preserve_before code, convert
19114 CURBEG from lisp object to integer before doing arithmetic.
19115
191162001-12-27 Richard M. Stallman <rms@gnu.org>
19117
19118 * bytecode.c (Fbyte_code): Undo previous change.
19119
191202001-12-26 Kim F. Storm <storm@cua.dk>
19121
19122 * keyboard.c (record_char): Ignore duplicate help-echo events only
19123 separated by mouse-movement. When tracking mouse, only record
19124 first and last mouse-movement event in same window.
19125 Don't record mouse-movement events in keyboard macros.
19126
191272001-12-25 Richard M. Stallman <rms@gnu.org>
19128
19129 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
19130 (Fenlarge_window): New arg PRESERVE_BEFORE.
19131
19132 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
19133 instead of Fstring_as_unibyte.
19134
191352001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19136
19137 The following changes remove mocklisp support:
19138
19139 * mocklisp.h, mocklisp.c: Files removed.
19140
19141 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
19142 `Qmocklisp' and `Qmocklisp_arguments'.
19143 Remove prototype of syms_of_mocklisp.
19144
19145 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
19146
19147 * callint.c: Do not include mocklisp.h.
19148 (Fcall_interactively): Do not test for mocklisp case.
19149
19150 * eval.c: Remove variables `Qmocklisp_arguments',
19151 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
19152 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
19153 Do not test for mocklisp case.
19154 (Fwhile): Remove unused variable `tem'.
19155 (syms_of_eval): Remove variable `moclisp-arguments'.
19156
19157 * data.c (wrong_type_argument): Remove mocklisp case.
19158
19159 * doc.c (Fdocumentation): Remove mocklisp case.
19160
19161 * emacs.c (main): Do not call syms_of_mocklisp.
19162
191632001-12-21 Richard M. Stallman <rms@gnu.org>
19164
19165 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
19166 to the left or to the right of the pointer, put it against
19167 the left screen edge.
19168
191692001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
19170
19171 * Makefile.in (distclean): Remove .gdbinit if we are building
19172 outside the source tree.
19173
191742001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
19175
19176 * w32.c (emacs_root_dir): New function.
19177
19178 * msdos.c (emacs_root_dir): New function.
19179
19180 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
19181 of the current drive as the fallback for default_directory.
19182
19183 * dired.c (file_name_completion): Run the elements of
19184 completion-ignored-extensions through ENCODE_FILE.
19185
19186 * lisp.h (scmp): Remove prototype, since it's now a static
19187 function private to dired.c.
19188
191892001-12-18 Richard M. Stallman <rms@gnu.org>
19190
19191 * dired.c (scmp): Function moved from minibuf.c.
19192 Delete multibyte handling--used only on encoded strings.
19193
19194 * minibuf.c (scmp): Function moved to dired.c.
19195
19196 * fns.c (merge): Add QUIT call.
19197
191982001-12-18 Dave Love <fx@gnu.org>
19199
19200 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
19201 language/georgian.el.
19202
192032001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
19204
19205 * Makefile.in (lisp, shortlisp): Synchronize with changes to
19206 lisp/Makefile.in:DONTCOMPILE.
19207
192082001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19209
19210 * xdisp.c (window_box_height): Do not return negative values.
19211 From Gerd Moellmann <gerd@gnu.org>.
19212
19213 * keyboard.c (head_table): Add missing braces around initializer.
19214
19215 * term.c (keys): Likewise.
19216
19217 * xfns.c (x_frame_parms, visual_classes): Likewise.
19218
192192001-12-17 Sam Steingold <sds@gnu.org>
19220
19221 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
19222 patch (COMPOSING_P, not COMPOSING).
19223
192242001-12-17 Richard M. Stallman <rms@gnu.org>
19225
19226 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
19227
19228 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
19229 before calling decode_coding.
19230
19231 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
19232
19233 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
19234 instead of only for COMPOSITION_DISABLED.
19235
192362001-12-16 Richard M. Stallman <rms@gnu.org>
19237
19238 * alloc.c (pure_alloc): After overflow, allocate just a small block.
19239
19240 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
19241
19242 * buffer.h (struct buffer): New field `display_error_modiff'.
19243 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
19244
19245 * window.c (Frecenter): Clear display_error_modiff field.
19246
19247 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
19248 Call redisplay_window, but not if display_error_modiff field says no.
19249 (redisplay_window_error): New function.
19250 (displayed_buffer): New variable.
19251 (redisplay_internal, redisplay_windows): Call the new functions
19252 instead of redisplay_window directly.
19253
192542001-12-15 Richard M. Stallman <rms@gnu.org>
19255
19256 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
19257
192582001-12-14 Andrew Innes <andrewi@gnu.org>
19259
19260 * makefile.w32-in (EMACSLOADPATH): Define.
19261 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
19262 (bootstrap-temacs): Remove dependency on bootstrap-clean.
19263
192642001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
19265
19266 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
19267 parameter have a numeric value all the time.
19268
19269 * w32fns.c (x_report_frame_params): Likewise.
19270
192712001-12-12 Richard M. Stallman <rms@gnu.org>
19272
19273 * fileio.c (Fwrite_region): Doc fix.
19274
19275 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
19276 (redisplay_internal): Call clear_image_cache only for window terminals.
19277
192782001-12-12 Gerd Moellmann <gerd@gnu.org>
19279
19280 * xdisp.c (move_it_vertically_backward): Change heuristic
19281 for the case that we didn't move far enough initially.
19282
19283 * window.c (Frecenter): Simplify computation in the case of window
19284 system frames and ARG < 0; use window_box_height.
19285
192862001-12-11 Richard M. Stallman <rms@gnu.org>
19287
19288 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
19289 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
19290
192912001-12-11 Andrew Innes <andrewi@gnu.org>
19292
19293 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
19294 arg is negative.
19295
192962001-12-11 Richard M. Stallman <rms@gnu.org>
19297
19298 * m/hp800.h: Split the __hpux conditional into the parts
19299 that are right for GNU/Linux too and the parts that are not.
19300 Use the former if GNU_LINUX.
19301 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
19302
19303 * s/gnu-linux.h (GNU_LINUX): Defined.
19304
193052001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19306
19307 * macros.c, msdos.c, w16select.c: Change doc-string comments to
19308 `new style' [w/`doc:' keyword].
19309
193102001-12-10 Jason Rumney <jasonr@gnu.org>
19311
19312 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
19313 before using.
19314
193152001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19316
19317 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
19318 keyword].
19319
193202001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
19321
19322 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
19323
19324 * s/hpux10.h (srand48): Don't undefine.
19325
193262001-12-09 Jason Rumney <jasonr@gnu.org>
19327
19328 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
19329 Add comment to explain where the struct came from.
19330 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
19331 (add_menu_item): Process pop-up menus first to avoid memory leak.
19332 (add_menu_item, w32_menu_display_help): Use `help' field as
19333 Lisp_Object.
19334 (w32_free_submenu_strings): Only free owner-drawn strings.
19335
193362001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19337
19338 * COPYING: Moved back.
19339
19340 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
19341 Add parentheses around && within ||.
19342
19343 * indent.c (compute_motion): Likewise.
19344
19345 * intervals.c (merge_properties_sticky): Likewise.
19346
19347 * coding.c (setup_coding_system, shrink_encoding_region)
19348 (Fdecode_sjis_char): Likewise.
19349
193502001-12-07 Andreas Schwab <schwab@suse.de>
19351
19352 * xdisp.c (display_mode_element): Don't read past end of string if
19353 it ends with '%'.
19354
19355 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
19356 can hold.
19357
19358 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
19359 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
19360 type changed to Lisp_Object.
19361 (syms_of_data): DEFVAR_LISP them.
19362
193632001-12-07 Richard M. Stallman <rms@gnu.org>
19364
19365 * callproc.c (init_callproc): Set Vdata_directory based on the source
19366 location whenever Emacs was run uninstalled.
19367
193682001-12-06 Paul Eggert <eggert@twinsun.com>
19369
19370 * config.in (HAVE_WORKING_VFORK): New #undefs.
19371 * process.c (create_process):
19372 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
19373 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
19374 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
19375 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
19376 * m/intel386.h (HAVE_VFORK): Likewise.
19377 * m/mips-siemens.h (HAVE_VFORK): Likewise.
19378 * m/mips.h (HAVE_VFORK): Likewise.
19379 * s/freebsd.h (vfork): Remove #define.
19380 * s/lynxos.h (HAVE_VFORK): Remove #undef.
19381 * s/usg5-4-2.h: Fix comment about vfork.
19382
193832001-12-06 Richard M. Stallman <rms@gnu.org>
19384
19385 * s/hpux10.h (random): Add undef.
19386 (HAVE_RANDOM): Define it just once.
19387
193882001-12-06 Stefan Monnier <monnier@cs.yale.edu>
19389
19390 * eval.c: Undo last change: the standard syntax is not wanted.
19391
193922001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
19393
19394 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
19395 scroll bars of the frame before deleting the frame itself. If the
19396 frame has a widget, delete the frame with XtDestroyWidget, and do
19397 not call XDestroyWindow before that.
19398
193992001-12-06 Kim F. Storm <storm@cua.dk>
19400
19401 * xfns.c (x_report_frame_params): Return actual fringe widths.
19402
19403 * w32fns.c (x_report_frame_params): Return actual fringe widths.
19404
194052001-12-05 Andrew Innes <andrewi@gnu.org>
19406
19407 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
19408 excessively large.
19409
19410 * insdel.c (make_gap_larger): New function.
19411 (make_gap_smaller): New function.
19412 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
19413 Call make_gap_smaller if arg is negative.
19414
194152001-12-04 Stefan Monnier <monnier@cs.yale.edu>
19416
19417 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
19418 Pass a dummy argument when calling interrupt_signal.
19419 (parse_menu_item): Mark disabled items before checking for empty def.
19420 (read_char_minibuf_menu_prompt): Make safety more visible.
19421 (read_key_sequence): Add a `first_unbound' variable.
19422 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
19423 unbound prefix as soon as we can detect it.
19424
19425 * doc.c (Fsnarf_documentation): Add prototype.
19426 (get_doc_string): Handle negative arguments.
19427 (Fdocumentation): Use AREF and ASIZE.
19428 Move the calls to get_doc_string to a single place.
19429 Don't confuse an interactive-spec for a docstring reference.
19430 (Fdocumentation_property): Take advantage of the fact that
19431 get_doc_string now ignores the sign of the docstring position.
19432
19433 * eval.c: Use standard syntax for usage in docstrings.
19434
194352001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19436
19437 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
19438
194392001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19440
19441 * xterm.c (x_draw_image_relief): Use predefined macro instead of
19442 constant when the value of `tool_bar_button_relief' is negative.
19443
194442001-12-02 Richard M. Stallman <rms@gnu.org>
19445
19446 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
19447 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
19448
19449 * fileio.c (read_non_regular): Delete Fsignal call.
19450
194512001-12-01 Stefan Monnier <monnier@cs.yale.edu>
19452
19453 * lisp.h (run_hook_list_with_args): Undo last change.
19454
194552001-12-01 Gerd Moellmann <gerd@gnu.org>
19456
19457 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
19458
194592001-12-01 Jason Rumney <jasonr@gnu.org>
19460
19461 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
19462
19463 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
19464 [!WM_MOUSELEAVE]: Define.
19465
19466 * w32menu.c (current_popup_menu, get_menu_item_info):
19467 (set_menu_item_info): New vars.
19468 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
19469 (w32_menu_show): Set current_popup_menu.
19470 (add_menu_item): Allocate new strings for owner-drawn menu items
19471 and help strings.
19472 Use owner-draw for disabled menu items again.
19473 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
19474 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
19475
19476 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
19477 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
19478 <WM_EXITMENULOOP>: Free menu strings.
19479 <WM_MOUSELEAVE>: Stop tracking mouse.
19480 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
19481
19482 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
19483 and mouse face.
19484
194852001-12-01 Kim F. Storm <storm@cua.dk>
19486
19487 The following changes add left-fringe and right-fringe
19488 frame parameters to adjust fringe widths, or remove one or
19489 both fringes.
19490
19491 * frame.h (struct frame): Remove trunc_area_pixel_width and
19492 trunc_area_cols fields.
19493 (Qleft_fringe, Qright_fringe): Declare.
19494 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
19495
19496 * frame.c (Qleft_fringe, Qright_fringe): New vars.
19497 (syms_of_frame): Initialize them.
19498
19499 * window.c (coordinates_in_window): Handle separate left and right
19500 fringe widths.
19501
19502 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
19503 and fringe_cols fields.
19504 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
19505 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
19506 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
19507 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
19508 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
19509 (x_compute_fringe_widths): Add prototype.
19510
19511 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
19512 fill fringe evenly with small dashes.
19513 (x_draw_fringe_bitmap): Clear background if necessary. Align and
19514 clip the new ZV bitmap to avoid jitter between rows.
19515 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
19516 background. Don't draw fringe bitmaps if fringe width is zero.
19517 (x_compute_fringe_widths): New function.
19518 (x_new_font, x_set_window_size_1): Use it.
19519
19520 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
19521 (x_set_frame_parameters): Process `font' parameter before other
19522 parameters as fringe widths depend on it.
19523 (x_set_fringe_width): New function.
19524 (x_figure_window_size): Use x_compute_fringe_widths.
19525 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
19526 parameters.
19527
19528 * widget.c (set_frame_size): Use x_compute_fringe_widths.
19529 (EmacsFrameSetCharSize): Ditto.
19530
19531 * w32term.h: Merged changes from xterm.h.
19532 * w32term.c: Merged changes from xterm.c.
19533 * w32fns.c: Merged changes from xfns.c.
19534
195352001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19536
19537 * COPYING: Removed.
19538
195392001-11-29 Dave Love <fx@gnu.org>
19540
19541 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
19542 extra extra slot.
19543 (detect_coding_mask): Fix call of detect_coding_iso2022.
19544
195452001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19546
19547 * fileio.c (file-name-coding-system)
19548 (default-file-name-coding-system): Doc fix (links to referenced
19549 variables added).
19550
195512001-11-28 Stefan Monnier <monnier@cs.yale.edu>
19552
19553 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
19554 Add dummy uses of gcproN variables.
19555
19556 * category.c (describe_category, describe_category_1)
19557 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
19558 (syms_of_category): Don't defsubr Sdescribe_categories.
19559
195602001-11-28 Richard M. Stallman <rms@gnu.org>
19561
19562 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
19563
19564 * Makefile.in (lispdir): New variable, referring to build dir.
19565 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
19566
195672001-11-28 Andrew Innes <andrewi@gnu.org>
19568
19569 * w32menu.c (w32_menu_display_help): Actually add the new argument
19570 OWNER.
19571
195722001-11-28 Jason Rumney <jasonr@gnu.org>
19573
19574 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
19575 menu items. From David Ponce <dponce@wanadoo.fr>.
19576 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
19577 conditionally.
19578 (w32_menu_display_help): New argument OWNER. Rewritten to store a
19579 help event in the owner frame's keyboard buffer.
19580
19581 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
19582 (Fx_show_tip): Don't subtract last width from row width.
19583
19584 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
19585 (w32_read_socket): Use EQ to compare frames.
19586
195872001-11-28 Gerd Moellmann <gerd@gnu.org>
19588
19589 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
19590 OVERLAPS_P.
19591
195922001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19593
19594 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
19595 `gcpro3' and `gcpro4'.
19596
19597 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
19598
195992001-11-28 Stefan Monnier <monnier@cs.yale.edu>
19600
19601 * ccl.c: Use AREF and ASIZE.
19602
196032001-11-27 Stefan Monnier <monnier@cs.yale.edu>
19604
19605 * lisp.h (run_hook_list_with_args): Remove.
19606 (LIST_END_P): Fix call to wrong_type_argument.
19607 (make_fixnum_or_float): Use EMACS_INT rather than int.
19608
196092001-11-26 Stefan Monnier <monnier@cs.yale.edu>
19610
19611 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
19612 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
19613
19614 * eval.c: Use AREF and ASIZE.
19615 (Ffetch_bytecode): Add the file name to the error message.
19616
19617 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
19618 which match the end of the file-name.
19619 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
19620 is not a valid env var, but leave it as is instead.
19621
19622 * keymap.c (access_keymap): Handle t bindings like nil bindings.
19623 Make nil bindings in char-tables transparent.
19624 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
19625
196262001-11-26 Richard M. Stallman <rms@gnu.org>
19627
19628 * textprop.c (set_text_properties_1): Allow START, END in either order.
19629 Do nothing if range is empty.
19630
19631 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
19632
19633 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
19634 (clean): Not here.
19635
196362001-11-25 Stefan Monnier <monnier@cs.yale.edu>
19637
19638 * textprop.c (set_text_properties_1): Clearly mark that the
19639 interval should not be empty.
19640
19641 * intervals.c (graft_intervals_into_buffer):
19642 Don't call set_text_properties_1 on an empty interval.
19643
196442001-11-25 Richard M. Stallman <rms@gnu.org>
19645
19646 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
19647
19648 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
19649 don't lose the data in it.
19650
196512001-11-25 Juanma Barranquero <lektu@terra.es>
19652
19653 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
19654
19655 * buffer.c (Fkill_buffer): Likewise.
19656
19657 * print.c (temp_output_buffer_setup): Likewise.
19658
196592001-11-25 Stefan Monnier <monnier@cs.yale.edu>
19660
19661 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
19662
196632001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
19664
19665 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
19666 Niemitalo <kon@iki.fi>.
19667
196682001-11-25 Jason Rumney <jasonr@gnu.org>
19669
19670 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
19671
19672 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
19673 (Fx_show_tip): Block input during frame creation.
19674 (Fx_show_tip, Fx_hide_tip): Enable.
19675
196762001-11-24 Richard M. Stallman <rms@gnu.org>
19677
19678 * lread.c (Fload): Detect recursive load error for more than 3
19679 nestings of the same file.
19680 (Vrecursive_load_depth_limit): Variable deleted.
19681 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
19682
196832001-11-24 Jason Rumney <jasonr@gnu.org>
19684
19685 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
19686 mouse position if either left or top is not specified.
19687
19688 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
19689 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
19690 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
19691 (my_create_tip_window): Assign tip_window.
19692 (x_create_tip_frame): Use same defaults as X.
19693 (compute_tip_xy): Remove unused variable. Use full screen width.
19694 (Fx_show_tip): Do not double height. Call ShowWindow directly.
19695
19696 * w32term.c (x_after_update_window_line): Doc fix.
19697 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
19698 frames.
19699 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
19700
19701 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
19702 for all Windowed systems.
19703
197042001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
19705
19706 * msdos.c (IT_clear_screen): If the frame's faces are not yet
19707 realized, use the initial screen colors to clear the screen.
19708
197092001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19710
19711 * textprop.c (Fset_text_properties): Remove unused variables
19712 `unchanged', `prev_changed', `s' and `len'.
19713
19714 * search.c (Freplace_match): Remove unused variable `inslen'.
19715
19716 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
19717
197182001-11-22 Jason Rumney <jasonr@gnu.org>
19719
19720 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
19721 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
19722 (my_create_tip_window): New function.
19723 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
19724 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
19725
197262001-11-20 Jason Rumney <jasonr@gnu.org>
19727
19728 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
19729 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
19730
19731 * w32fns.c (Vw32_system_coding_system): Remove.
19732 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
19733
197342001-11-19 Stefan Monnier <monnier@cs.yale.edu>
19735
19736 * fileio.c (Fwrite_region): Move choose_write_coding_system to
19737 after build_annotations.
19738
19739 * syntax.c (describe_syntax): Add dummy arg.
19740 (describe_syntax_1): Update call to describe_vector.
19741
19742 * category.c (describe_category): Add dummy arg.
19743 (describe_category_1): Update call to describe_vector.
19744
19745 * keymap.c (Fdescribe_vector): Add `describer' parameter.
19746 (describe_command, describe_translation): Add dummy second param.
19747 (describe_map): Call elt_describer with two arguments.
19748 (describe_vector_princ): Add `fun' parameter.
19749 Call it instead of the hardcoded `princ'.
19750 (describe_vector): Add arg `args'.
19751 Pass it as a new second argument to elt_describer.
19752
19753 * keymap.h (describe_vector): Update prototype.
19754
19755 * frame.c: Don't include keymap.h any more.
19756 (keys_of_frame): Remove.
19757
19758 * lisp.h (keys_of_frame): Remove declaration.
19759
19760 * emacs.c (main): Don't call `keys_of_frame' any more.
19761
197622001-11-14 Andreas Schwab <schwab@suse.de>
19763
19764 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
19765 if defined, 0 otherwise.
19766 (MAP_FAILED): Define if not defined and use it to test mmap failure.
19767 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
19768
197692001-11-19 Richard M. Stallman <rms@gnu.org>
19770
19771 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
19772
197732001-11-18 Jason Rumney <jasonr@gnu.org>
19774
19775 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
19776 (x_draw_bar_cursor): If the background color of the glyph under
19777 the cursor equals the frame's cursor color, use the glyph's
19778 foreground color for drawing the bar cursor.
19779 (x_after_update_window_line): Clear internal border in different
19780 circumstances.
19781 (w32_set_vertical_scroll_bar): Check for width and height > 0.
19782 (w32_draw_relief_rect): Correct relief by 1 pixel.
19783 (x_set_glyph_string_background_width):
19784 Set extends_to_end_of_line_p if the row's fill_line_p is set and
19785 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
19786 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
19787 if cursor_in_non_selected_windows is false.
19788 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
19789 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
19790 Notice if cursor gets overwritten.
19791 (notice_overwritten_cursor): Renamed from
19792 note_overwritten_text_cursor. Rewritten to take glyph widths
19793 into account, and to take X positions as parameters.
19794 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
19795 around call to x_draw_glyphs.
19796 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
19797 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
19798 color to use for image glyph reliefs.
19799 (x_draw_image_relief): Accept zero tool_bar_button_relief.
19800 (glyph_rect): Remove unused variable `area'.
19801
19802 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
19803 some items.
19804 (x_set_internal_border_width): Set frame garbaged when window
19805 doesn't exist yet.
19806 (Fx_create_frame): Accept zero tool_bar_button_relief.
19807 (x_clear_image_1, four_corners_best, image_background)
19808 (image_background_transparent): New functions.
19809 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
19810 (gs_format): Add `:background' entry.
19811 (lookup_image): Set IMG's background color if specified.
19812 (pbm_load, xbm_load_image, png_load): Set IMG's background field
19813 when appropriate.
19814 (x_clear_image_1): Reset `background_valid' and
19815 `background_transparent_valid' fields.
19816 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
19817 calculating it here. Set IMG's background_transparent field.
19818 (enum xpm_keyword_index): Add XPM_BACKGROUND.
19819 (enum png_keyword_index): Add PNG_BACKGROUND.
19820 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
19821 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
19822 (enum gif_keyword_index): Add GIF_BACKGROUND.
19823 (enum gs_keyword_index): Add GS_BACKGROUND.
19824 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
19825 Pre-calculate image background color where necessary.
19826 (x_create_x_image_and_pixmap, xbm_load, gs_load):
19827 Use display info's n_cbits entry for screen depth.
19828 (Fx_show_tip): Remove unused variables `buffer', `top',
19829 `left', `max_width' and `max_height'.
19830
19831 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
19832
198332001-11-18 Gerd Moellmann <gerd@gnu.org>
19834
19835 * puresize.h (BASE_PURESIZE): Increase to 750000.
19836
198372001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19838
19839 * frame.c (Fframe_live_p): Doc fix.
19840
198412001-11-18 Richard M. Stallman <rms@gnu.org>
19842
19843 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
19844 (message_dolog_marker3): New static variables hold three markers.
19845 (syms_of_xdisp): Initialize and staticpro them.
19846 (message_dolog): Use message_dolog_marker1..3 instead of
19847 allocating markers each time. Unchain them when done.
19848
198492001-11-17 Richard M. Stallman <rms@gnu.org>
19850
19851 * doc.c (Fsnarf_documentation): Doc fix.
19852
198532001-11-17 Andreas Schwab <schwab@suse.de>
19854
19855 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
19856
198572001-11-17 Richard M. Stallman <rms@gnu.org>
19858
19859 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
19860
198612001-11-17 Jason Rumney <jasonr@gnu.org>
19862
19863 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
19864
198652001-11-17 Gerd Moellmann <gerd@gnu.org>
19866
19867 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
19868 with invalid position.
19869
198702001-11-16 Richard M. Stallman <rms@gnu.org>
19871
19872 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
19873
19874 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
19875 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
19876 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
19877
19878 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
19879
198802001-11-16 Stefan Monnier <monnier@cs.yale.edu>
19881
19882 * fileio.c (build_annotations): Split off the tail.
19883 (build_annotations_2): New fun. Extracted from build_annotations.
19884 (Fwrite_region): Split the call to build_annotations into two
19885 calls to build_annotations and build_annotations_2.
19886
198872001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19888
19889 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
19890 clear_waiting_for_input with argument.
19891
19892 * xterm.h (x_update_cursor): Remove duplicated prototype.
19893
19894 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
19895
19896 * xterm.c (waiting_for_input): Remove unnecessary declaration.
19897
19898 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
19899
199002001-11-16 Stefan Monnier <monnier@cs.yale.edu>
19901
19902 * fileio.c (choose_write_coding_system): New fun, extracted
19903 from Fwrite_region.
19904 (Fwrite_region): Use it.
19905
19906 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
19907 (funcall_lambda, run_hook_with_args): Make static and add prototype.
19908 (ml_apply, find_handler_clause): Add prototype.
19909
199102001-11-16 Eli Zaretskii <eliz@gnu.org>
19911
19912 * config.in: Add #undef HAVE_COFF_H.
19913
19914 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
19915 Required for ISC 4.1.
19916
199172001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
19918
19919 * syswait.h (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
19920 Andrew Wiseman <a.wiseman@btclick.com>.
19921
199222001-11-16 Kim F. Storm <storm@cua.dk>
19923
19924 The following changes are made to clean up the various internal
19925 references to the fringes to actually use the term `fringe' for
19926 them. Previously, they were called `flags areas', `bitmap areas',
19927 `left/right side of windows', or implicitly as `flags' or
19928 `bitmaps':
19929
19930 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
19931 Comments fixed. Use renamed symbols.
19932
19933 * dispnew.c: Comment fix. Use renamed symbols.
19934
19935 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
19936 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
19937 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
19938
19939 * msdos.c: Comment fix.
19940
19941 * w32fns.c: Use renamed symbols.
19942
19943 * w32term.c: Comment fixes. Use renamed symbols.
19944 (fringe_bitmap_type): Renamed from bitmap_type.
19945 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
19946 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
19947 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
19948
19949 * w32term.h: Comment fixes. Use renamed symbols.
19950 (fringes_extra): Renamed from flags_areas_extra.
19951 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
19952 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
19953 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
19954 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
19955 (FRAME_X_LEFT_FRINGE_WIDTH):
19956 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
19957 (FRAME_X_RIGHT_FRINGE_WIDTH):
19958 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
19959
19960 * widget.c: Use renamed symbols.
19961
19962 * window.c: Comment fixes. Use renamed symbols.
19963 (coordinates-in-window-p): Doc fix.
19964
19965 * xdisp.c: Comment fixes. Use renamed symbols.
19966
19967 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
19968
19969 * xfns.c: Use renamed symbols.
19970
19971 * xterm.c: Comment fixes. Use renamed symbols.
19972 (fringe_bitmap_type): Renamed from bitmap_type.
19973 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
19974 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
19975 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
19976
19977 * xterm.h: Comment fixes. Use renamed symbols.
19978 (fringes_extra): Renamed from flags_areas_extra.
19979 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
19980 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
19981 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
19982 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
19983 (FRAME_X_LEFT_FRINGE_WIDTH):
19984 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
19985 (FRAME_X_RIGHT_FRINGE_WIDTH):
19986 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
19987
199882001-11-15 Jason Rumney <jasonr@gnu.org>
19989
19990 * w32menu.c (add-menu-item): Make help_echo and radio buttons
19991 work for most menu items. From David Ponce
19992 <david.ponce@wanadoo.fr>.
19993
199942001-11-15 Gerd Moellmann <gerd@gnu.org>
19995
19996 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
19997 Some x_set_* function expect to be called even if old and new
19998 value are equal.
19999
20000 * xdisp.c (build_desired_tool_bar_string): Accept zero
20001 tool_bar_button_relief.
20002
20003 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
20004
20005 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
20006
20007 * xterm.c (x_draw_bar_cursor): If the background color of the
20008 glyph under the cursor equals the frame's cursor color, use
20009 the glyph's foreground color for drawing the bar cursor.
20010
20011 * dispnew.c (direct_output_forward_char): Fix character/byte
20012 position comparison.
20013
200142001-11-15 Miles Bader <miles@gnu.org>
20015
20016 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
20017 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
20018 Update arguments to find_field.
20019 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
20020 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
20021 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
20022 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
20023
200242001-11-14 Richard M. Stallman <rms@gnu.org>
20025
20026 * editfns.c (Fpropertize): Allow call with 1 arg.
20027
20028 * dispextern.h (image_background, image_background_transparent):
20029 Conditionalize on HAVE_X_WINDOWS.
20030
200312001-11-13 Richard M. Stallman <rms@gnu.org>
20032
20033 * print.c (Fprin1_to_string): Doc fix.
20034
20035 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
20036
20037 * floatfns.c (Fceiling, Ffloor): Doc fixes.
20038
20039 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
20040
20041 * fileio.c (Ffile_accessible_directory_p): Doc fix.
20042
20043 * eval.c (syms_of_eval): Doc fix.
20044
20045 * coding.c (syms_of_coding): Doc fix.
20046
20047 * doc.c (Fsnarf_documentation): Doc fix.
20048
20049 * dispnew.c (syms_of_display): Doc fix.
20050
20051 * category.c (Fget_unused_category): Doc fix.
20052
20053 * buffer.c (syms_of_buffer): Doc fixes.
20054
200552001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
20056
20057 * print.c (prin1, print): Doc fix.
20058
200592001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20060
20061 * fontset.h: Remove declarations of variables
20062 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
20063
20064 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
20065 `Vclip_large_size_font'.
20066
200672001-11-13 Jason Rumney <jasonr@gnu.org>
20068
20069 * w32fns.c: Doc fix.
20070
200712001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20072
20073 * xfaces.c (Fface_attributes_as_vector): Doc fix.
20074
20075 * fns.c: Doc fix.
20076
20077 * emacs.c: Doc fix.
20078
20079 * coding.c: Doc fix.
20080
20081 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
20082 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
20083 `new style' [w/`doc:' keyword].
20084
200852001-11-12 Richard M. Stallman <rms@gnu.org>
20086
20087 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
20088 LeaveNotify events. Only FocusIn and FocusOut do that now.
20089 (x_display_and_set_cursor): Do display hollow cursors in active
20090 minibuffer windows when they are not selected.
20091
200922001-11-12 Jason Rumney <jasonr@gnu.org>
20093
20094 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
20095 * w32term.c: Change doc-string comments to `new style'
20096 [w/`doc:' keyword]. Doc fixes.
20097
20098 * w32fns.c: Don't define max.
20099 (Fx_open_connection): Only execute once.
20100
201012001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20102
20103 * ccl.c: Change macros to use do-while block instead of if-else.
20104 Use braces to follow GNU Coding Standards.
20105
201062001-11-11 Richard M. Stallman <rms@gnu.org>
20107
20108 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
20109
20110 * lread.c (read_escape): Use end_of_file_error for reporting eof.
20111
20112 * insdel.c (replace_range): Use adjust_markers_for_replace
20113 instead of adjust_markers_for_delete and adjust_markers_for_insert.
20114
20115 * intervals.h (set_text_properties, set_text_properties_1): Declare.
20116
20117 * textprop.c (set_text_properties_1): New subroutine
20118 broken out of set_text_properties.
20119 (set_text_properties): Use set_text_properties_1.
20120
20121 * intervals.c (graft_intervals_into_buffer):
20122 Use set_text_properties_1 to clear out properties.
20123
20124 * search.c (Freplace_match): Use replace_range to insert
20125 and delete. Don't request property inheritance from
20126 surrounding text.
20127
201282001-11-10 Jason Rumney <jasonr@gnu.org>
20129
20130 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
20131 vertical fonts. Allow them if face name is explicitly specified.
20132 Do not give up if we find a font that cannot be converted to an xlfd.
20133
201342001-11-10 Gerd Moellmann <gerd@gnu.org>
20135
20136 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
20137 instead of malloc/free.
20138
201392001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20140
20141 * xfaces.c (merge_face_vectors): Use braces to follow GNU
20142 Coding Standards.
20143 (Finternal_set_lisp_face_attribute): Likewise.
20144
20145 * buffer.c (Fbury_buffer): Likewise.
20146
20147 * indent.c (current_column_1): Remove unused variable `prev_col'.
20148
20149 * coding.c (encode_coding): Use precomputed value of `src'.
20150 (encode_coding): Remove unused variable `src_end'.
20151 (code_convert_region): Remove unused variables `count'.
20152
201532001-11-07 Jason Rumney <jasonr@gnu.org>
20154
20155 * w32term.c (x_display_and_set_cursor): Do not move system caret
20156 if cursor_glyph is NULL.
20157
201582001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20159
20160 * keymap.c (access_keymap): Fix compilation error.
20161
201622001-11-07 Miles Bader <miles@gnu.org>
20163
20164 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
20165
201662001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20167
20168 * intervals.c (graft_intervals_into_buffer):
20169 Remove #ifdef'd-out code.
20170 (graft_intervals_into_buffer): Remove unused variable `middle'.
20171
20172 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
20173 code (eval-current-buffer).
20174 Change doc-string comments to `new style' [w/`doc:' keyword].
20175
201762001-11-06 Richard M. Stallman <rms@gnu.org>
20177
20178 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
20179
201802001-11-06 Stefan Monnier <monnier@cs.yale.edu>
20181
20182 * lread.c (read1): Fix behavior with nested backquoting.
20183
20184 * keyboard.c (make_lispy_event): Check integerness and fix
20185 Lisp_Object/int mixup.
20186
201872001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20188
20189 * fns.c (copy_hash_table): Remove unused variable `v'.
20190
20191 * fontset.c (fontset_font_pattern): Remove unused variable
20192 `family_registry'.
20193
20194 * indent.c (current_column_1): Remove unused variable `prev_col'.
20195
201962001-11-05 Richard M. Stallman <rms@gnu.org>
20197
20198 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
20199
20200 * buffer.c (Fkill_buffer): Don't delete auto save file
20201 if buffer is modified.
20202
202032001-11-05 Andrew Innes <andrewi@gnu.org>
20204
20205 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
20206 CHECK_NUMBER_CDR.
20207
202082001-11-05 Richard M. Stallman <rms@gnu.org>
20209
20210 * unexelf.c (unexec): Minor changes; clean up comments.
20211
202122001-11-05 Sam Steingold <sds@gnu.org>
20213
20214 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
20215
202162001-11-05 Andreas Schwab <schwab@suse.de>
20217
20218 * sound.c (sound_perror): Save errno from being clobbered.
20219
202202001-11-05 Dale Hagglund <rdh@yottayotta.com>
20221
20222 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
20223 the program image directly.
20224
202252001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20226
20227 * buffer.h (Fbuffer_local_value): Add prototype.
20228
202292001-11-04 Richard M. Stallman <rms@gnu.org>
20230
20231 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
20232 and CHECK_BUFFER.
20233
20234 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
20235 (record_char): Likewise.
20236
20237 * keyboard.c (make_lispy_event): Don't insist a drag event must
20238 move to a different buffer position. Instead, check for moving at
20239 least double_click_fuzz.
20240
20241 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
20242
20243 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
20244
20245 * indent.c (current_column_1, Fmove_to_column): Separate the code
20246 for display-table glyphs from the code for buffer text, to fix
20247 bugs in the former.
20248
202492001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
20250
20251 * buffer.c (Fbuffer_local_value): New function.
20252 (syms_of_buffer): Defsubr it.
20253
20254 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
20255 value of `cursor-in-non-selected-windows'.
20256
20257 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
20258 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
20259 (syms_of_xdisp): Initialize it.
20260
202612001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20262
20263 * xfns.c (Fx_create_frame): Doc fix.
20264
20265 * coding.c: Change doc-string comments to `new style' [w/`doc:'
20266 keyword].
20267
20268 * eval.c (top_level_value, top_level_set): Remove commented and
20269 #ifdef'd-out code.
20270 (Fdefvar): Fix usage in doc-string.
20271
202722001-11-03 Richard M. Stallman <rms@gnu.org>
20273
20274 * xfns.c: Include unistd.h, if it exists.
20275
20276 * editfns.c: Move the include of ctype.h after unistd.h.
20277
20278 * gmalloc.c: Test BROKEN_PROTOTYPES.
20279
202802001-11-03 Ken Raeburn <raeburn@gnu.org>
20281
20282 * lisp.h (CHECK_STRING_CAR): New macro.
20283 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
20284 treating XCAR and XCDR as lvalues.
20285 (openp): Use CHECK_STRING_CAR.
20286 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
20287
202882001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
20289
20290 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
20291 (SIGMASKTYPE): Define.
20292
20293 * syssignal.h (sigunblock): Don't define if already defined.
20294
202952001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20296
20297 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
20298 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
20299 Fix typos in comments.
20300
20301 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
20302 and #ifdef'd-out code.
20303 Fix and reindent comments.
20304
20305 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
20306
20307 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
20308 argument `i' in macros.
20309
20310 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
20311 `i' in macros.
20312
20313 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
20314 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
20315 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
20316 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
20317 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
20318 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
20319 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
20320 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
20321 in macros.
20322
20323 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
20324 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
20325 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
20326 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
20327 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
20328 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
20329 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
20330 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
20331 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
20332 (remove unused second argument).
20333
203342001-11-02 Stefan Monnier <monnier@cs.yale.edu>
20335
20336 * syntax.c (describe_syntax): New wrapper.
20337 (Finternal_describe_syntax_value): Rename from describe_syntax.
20338 Don't insert space at front and \n at the end.
20339 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
20340
20341 * regex.c (re_wctype): Try to fix some warnings.
20342 (regcomp, regexec): Don't forget the __restrict.
20343
203442001-11-02 Richard M. Stallman <rms@gnu.org>
20345
20346 * textprop.c (Fget_char_property): Doc fix.
20347
203482001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20349
20350 * process.c (Fstart_process): Add usage to doc-string.
20351
20352 * data.c (Fsetq_default): Ditto.
20353
20354 * callint.c (Finteractive): Ditto.
20355
203562001-11-01 Stefan Monnier <monnier@cs.yale.edu>
20357
20358 * macros.c: Don't include keymap.h any more.
20359
203602001-11-01 Richard M. Stallman <rms@gnu.org>
20361
20362 * data.c (Fmake_local_variable): Doc fix.
20363
20364 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
20365 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
20366
20367 * keymap.c (Fdescribe_buffer_bindings): Print character property
20368 bindings along with or instead of the buffer local map.
20369 Make the overriding maps override what they should.
20370
203712001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20372
20373 * window.c (grow_mini_window): Fix typo in comment.
20374
203752001-11-01 Gerd Moellmann <gerd@gnu.org>
20376
20377 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
20378 (XTset_vertical_scroll_bar): Likewise.
20379
20380 * xfns.c (x_build_heuristic_mask): Use four_corners_best
20381 instead of IMAGE_BACKGROUND.
20382
20383 * xfns.c (four_corners_best): Reindent.
20384
20385 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
20386 Handle :box so that it is possible to specify sexprs.
20387
203882001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
20389
20390 * s/hpux11.h: New file.
20391
203922001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20393
20394 * emacs.c (USAGE1): Show command line option --no-window-system
20395 instead of --no-windows in usage.
20396 (standard_args): Rename --no-windows to --no-window-system.
20397 (bug_reporting_address): Follow Emacs coding conventions.
20398
20399 * eval.c (Fcommandp): Doc fix.
20400 Change doc-string comments to `new style' [w/`doc:' keyword].
20401
20402 * frame.c (Fframe_live_p): Doc fix.
20403
20404 * buffer.c (selective-display-ellipses): Doc fix.
20405
204062001-10-31 Gerd Moellmann <gerd@gnu.org>
20407
20408 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
20409
20410 * xfaces.c (realize_x_face): If C is not a single-byte character,
20411 set the face's colors_copied_bitwise_p instead of the defaulted_p
20412 members which have a different meaning.
20413 (free_face_colors): Do nothing for a face whose colors have been
20414 copied bitwise.
20415
20416 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
20417
204182001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20419
20420 * marker.c, mocklisp.c: Change doc-string comments to `new style'
20421 [w/`doc:' keyword].
20422
204232001-10-31 Gerd Moellmann <gerd@gnu.org>
20424
20425 * fns.c (require_unwind): Return Lisp_Object.
20426
204272001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20428
20429 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
20430 (last-input-char): Revert doc-string to be the same as the
20431 doc-string of `last-input-event'.
20432
20433 * xdisp.c: Fix typos in comments.
20434
204352001-10-31 Gerd Moellmann <gerd@gnu.org>
20436
20437 * window.c (grow_mini_window): Handle case that the root
20438 window is already smaller than the nominal mininum height.
20439
204402001-10-30 Stefan Monnier <monnier@cs.yale.edu>
20441
20442 * emacs.c (main): Don't call keys_of_macros any more.
20443
20444 * lisp.h (keys_of_macros): Remove.
20445
20446 * macros.c (keys_of_macros): Remove.
20447
20448 * xfaces.c (Fface_attribute_relative_p): Declare args.
20449
204502001-10-30 Jason Rumney <jasonr@gnu.org>
20451
20452 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
20453 (enum_font_cb2): Ignore fonts with vertical orientation.
20454
204552001-10-30 Richard M. Stallman <rms@gnu.org>
20456
20457 * keyboard.c (Finput_pending_p): Doc fix.
20458
204592001-10-30 Gerd Moellmann <gerd@gnu.org>
20460
20461 * xterm.c (x_after_update_window_line): Don't run the code
20462 clearing in borders for rows whose visible height is 0.
20463
20464 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
20465 resized_p flag is set. If not set, use the much less flickering
20466 method previously used.
20467
20468 * dispnew.c (change_frame_size_1): Set frame's resized_p.
20469
20470 * frame.h (struct frame) <resized_p>: New member.
20471
20472 * lread.c (to_multibyte): Ensure read_buffer is at least twice
20473 as large as the number of bytes to convert.
20474
20475 * lread.c (to_multibyte): New function.
20476 (read1): Use it.
20477
204782001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
20479
20480 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
20481
204822001-10-30 Gerd Moellmann <gerd@gnu.org>
20483
20484 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
20485 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
20486 if the row's fill_line_p is set and drawing the last glyph with
20487 DRAW_IMAGE_{RAISED,SUNKEN}.
20488
20489 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
20490
204912001-10-29 Stefan Monnier <monnier@cs.yale.edu>
20492
20493 * xmenu.c: Include coding.h and charset.h.
20494 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
20495 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
20496 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
20497 Explicitly set wv->help. Use `TRUE' rather than `True'.
20498 (menu_help_callback): Use empty_string.
20499
20500 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
20501 (Fx_popup_dialog): Explicitly init f.
20502 (w32_menu_display_help): Use empty_string.
20503
205042001-10-29 Richard M. Stallman <rms@gnu.org>
20505
20506 * fns.c (Frequire): Detect recursive try to require the same
20507 feature 3 or more levels deep, and get error.
20508 (require_unwind): New subroutine.
20509 (require_nesting_list): New variable.
20510 (syms_of_fns): Init and staticpro it.
20511
20512 * print.c (print_object): Clarify indication of insertion type.
20513
205142001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
20515
20516 * coding.c (syms_of_coding): Document that locale-coding-system is
20517 used for decoding input on X.
20518
20519 * window.c (Fscroll_left, Fscroll_right): Doc fix.
20520
205212001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20522
20523 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
20524 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
20525
205262001-10-29 Gerd Moellmann <gerd@gnu.org>
20527
20528 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
20529 use NO_CURSOR if cursor_in_non_selected_windows is false.
20530
20531 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
20532 the slant attribute if FRAME is t.
20533
20534 * xfns.c (x_set_internal_border_width): Set frame garbaged
20535 when X window doesn't exist yet.
20536
20537 * xterm.c (x_after_update_window_line): Clear internal border
20538 in different circumstances.
20539
20540 * xterm.c (XTread_socket) <KeyPress>: Don't use
20541 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
20542 <handa@etl.go.jp>.
20543
205442001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
20545
20546 * m/ibms390.h: New file. From Adam Thornton
20547 <athornton@sinenomine.net>.
20548
205492001-10-28 Gerd Moellmann <gerd@gnu.org>
20550
20551 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
20552
20553 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
20554 a loop counter.
20555
205562001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20557
20558 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
20559
20560 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
20561 keyword].
20562 Fix typos in comments.
20563
20564 * emacs.c (bug_reporting_address): New function.
20565 Use it when displaying usage message.
20566
20567 * minibuf.c (read_minibuf): Remove unused external declaration of
20568 variable `Qread_only'.
20569
20570 * keymap.c (access_keymap): Remove unused variable `charset'.
20571
205722001-10-28 Miles Bader <miles@gnu.org>
20573
20574 * xfaces.c (merge_face_heights): Handle TO being relative as well.
20575 Remove #ifdef'd-out code.
20576 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
20577 (syms_of_xfaces): Initialize them.
20578
205792001-10-27 Jason Rumney <jasonr@gnu.org>
20580
20581 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
20582 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
20583 position using the system caret.
20584
20585 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
20586 (w32_system_caret_height, w32_system_caret_x)
20587 (w32_system_caret_y): New variables for tracking system caret.
20588 (w32_initialize): Initialize them.
20589 (x_display_and_set_cursor): Make system caret follow the active cursor.
20590
20591 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
20592 New messages types.
20593
20594 * w32term.c (note_mouse_highlight): Clear old help_echo.
20595
205962001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20597
20598 * xterm.c: Fix typo in a comment.
20599
20600 * emacs.c: Fix typos in comments.
20601 Remove unnecessary spaces.
20602 Change doc-string comments to `new style' [w/`doc:' keyword].
20603 (USAGE2): Fix typos in usage string.
20604
20605 * xterm.c: Fix typo in a comment.
20606
20607 * lisp.h (gdb_lisp_params): Remove code in #if 0 which is now in
20608 emacs.c.
20609
206102001-10-27 Gerd Moellmann <gerd@gnu.org>
20611
20612 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
20613 instead of 1/2 line_height in the heuristic for skipping
20614 farther backward when target_y was not reached.
20615
20616 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
20617 Display errno only if non-zero.
20618 (sound_warning): New function.
20619 (vox_configure): Don't treat failing to set sample rate as error.
20620 (various places): Improve error messages.
20621
206222001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
20623
20624 * fileio.c (Faccess_file): Run the argument filename through
20625 Fexpand_file_name, before using it.
20626
20627 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
20628 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
20629
206302001-10-26 Gerd Moellmann <gerd@gnu.org>
20631
20632 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
20633
20634 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
20635 Fix clearing in the case of scroll bars on the right.
20636
206372001-10-26 Juanma Barranquero <lektu@terra.es>
20638
20639 * w32gui.h (XImage): Add a dummy typedef.
20640
206412001-10-26 Gerd Moellmann <gerd@gnu.org>
20642
20643 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
20644
206452001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
20646
20647 * frame.c (Fframe_parameter): Fix last change.
20648
20649 * fileio.c: Revert last change (which removed old commented-out
20650 version of expand-file-name). Add a comment that explains why
20651 this old version should not be removed.
20652
206532001-10-25 Gerd Moellmann <gerd@gnu.org>
20654
20655 * frame.c (Fframe_parameter): Fix a bug whereby some
20656 ``artificial'' frame parameters, like `minibuffer' were not
20657 obtained by calling Fframe_parameters.
20658
20659 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
20660 cursor differently.
20661
20662 * xdisp.c (move_it_vertically_backward): Compute line height
20663 differently. Add heuristic to try to be more compatible to 20.x.
20664
206652001-10-25 Stefan Monnier <monnier@cs.yale.edu>
20666
20667 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
20668
20669 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
20670 boolean.
20671
206722001-10-25 Miles Bader <miles@gnu.org>
20673
20674 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
20675 BG is a pointer to a structure, not a structure.
20676 (gif_format, png_format): Add missing commas.
20677
206782001-10-24 Richard M. Stallman <rms@gnu.org>
20679
20680 * xfaces.c (Fface_attributes_as_vector): New function.
20681 (syms_of_xfaces): Defsubr it.
20682
206832001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20684
20685 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
20686 variable `area'.
20687
206882001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20689
20690 * search.c (scan_newline): Remove unused variable `selective_display'.
20691
206922001-10-25 Miles Bader <miles@gnu.org>
20693
20694 * dispextern.h (struct image): Add `background',
20695 `background_valid', and `background_transparent' fields.
20696 (image_background, image_background_transparent): New declarations.
20697 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
20698 * xfns.c (image_background, image_background_transparent)
20699 (four_corners_best): New functions.
20700 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
20701 (gs_format): Add `:background' entry.
20702 (lookup_image): Set IMG's background color if specified.
20703 (pbm_load, xbm_load_image, png_load): Set IMG's background field
20704 when appropriate.
20705 (x_clear_image_1): Reset `background_valid' and
20706 `background_transparent_valid' fields.
20707 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
20708 calculating it here. Set IMG's background_transparent field.
20709 (enum xpm_keyword_index): Add XPM_BACKGROUND.
20710 (enum png_keyword_index): Add PNG_BACKGROUND.
20711 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
20712 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
20713 (enum gif_keyword_index): Add GIF_BACKGROUND.
20714 (enum gs_keyword_index): Add GS_BACKGROUND.
20715 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
20716 Pre-calculate image background color where necessary.
20717 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
20718 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
20719 color to use for image glyph reliefs.
20720
207212001-10-24 Gerd Moellmann <gerd@gnu.org>
20722
20723 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
20724 in full-width rows.
20725
20726 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
20727 Fix clearing of area not covered by scroll bar.
20728
207292001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20730
20731 * xterm.c (x_insert_glyphs): Remove unused variables `real_end'
20732 and `real_start'.
20733 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
20734 (glyph_rect): Remove unused variable `area'.
20735
207362001-10-24 Gerd Moellmann <gerd@gnu.org>
20737
20738 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
20739
20740 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
20741 (row_containing_pos): Take additional argument DY.
20742 Treat rows ending in middle of char differently.
20743 (display_line): Handle tabs on window systems differently.
20744
20745 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
20746 with additional argument.
20747
20748 * dispextern.h (row_containing_pos): Adjust prototype.
20749
20750 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
20751 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
20752 (try_window_id, try_window_reusing_current_matrix)
20753 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
20754 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
20755
207562001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20757
20758 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
20759 gnuemacs).
20760 (HAVE_BOXES): Fix typo in comment.
20761 (push_menu_pane): Fix typo in comment.
20762
20763 * xdisp.c (display_prop_string_p): Remove unused local declaration
20764 of `Qwhen'.
20765 (single_display_prop_string_p): Remove unused local declarations
20766 of `Qwhen' and `Qmargin'.
20767 (string_buffer_position): Remove unused variable `around'.
20768 (store_frame_title): Remove unused variable `width'.
20769
20770 * window.c: Don't define max.
20771 (coordinates_in_window): Remove unused variable `uy'.
20772
20773 * widget.c: Don't define max.
20774
20775 * process.c: Don't define max.
20776 (create_process): Remove unused variable `buffer'.
20777
207782001-10-23 Gerd Moellmann <gerd@gnu.org>
20779
20780 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
20781
207822001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
20783
20784 * xfaces.c (Finternal_set_lisp_face_attribute)
20785 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
20786 frame is on a windowed display.
20787
207882001-10-23 Gerd Moellmann <gerd@gnu.org>
20789
20790 * dispnew.c (sync_window_with_frame_matrix_rows):
20791 Fix handling of windows which aren't full-width, fix handling
20792 of marginal areas.
20793
20794 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
20795
207962001-10-23 Andreas Schwab <schwab@suse.de>
20797
20798 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
20799 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
20800
208012001-10-23 Gerd Moellmann <gerd@gnu.org>
20802
20803 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
20804 REAL_END. Notice if cursor gets overwritten.
20805 (notice_overwritten_cursor): Take X positions as parameters.
20806 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
20807 around call to x_draw_glyphs.
20808
208092001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20810
20811 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
20812 instead of C) and usage.
20813
20814 * editfns.c (char-to-string): Fix argument names (use CHAR instead
20815 of C) and usage.
20816
20817 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
20818 `left', `max_width' and `max_height'.
20819
208202001-10-23 Gerd Moellmann <gerd@gnu.org>
20821
20822 * xdisp.c (display_line): For a tab continued to the next line,
20823 set row's ends_in_middle_of_char_p.
20824
208252001-10-22 Gerd Moellmann <gerd@gnu.org>
20826
20827 * xdisp.c (display_line): Fix computation of continuation lines
20828 width for TABs.
20829
208302001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20831
20832 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
20833 `Qlaplace'.
20834
20835 * fileio.c: Remove unused code.
20836
208372001-10-22 Miles Bader <miles@gnu.org>
20838
20839 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
20840 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
20841 Remove `DOC_STRINGS_IN_COMMENTS' cases.
20842
208432001-10-21 Jason Rumney <jasonr@gnu.org>
20844
20845 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
20846
208472001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
20848
20849 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
20850 (Finsert_string): Avoid the multi-line string literals warning.
20851
208522001-10-22 Miles Bader <miles@gnu.org>
20853
20854 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
20855 (Fdocumentation): Don't use it.
20856 (syms_of_doc): Don't initialize it.
20857
20858 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
20859 * print.c (Fwith_output_to_temp_buffer): Likewise.
20860 * window.c (Fsave_window_excursion): Likewise.
20861 * editfns.c (Fsave_excursion, Fsave_current_buffer)
20862 (Fsave_restriction): Likewise.
20863 * eval.c (Frun_hooks, Frun_hook_with_args)
20864 (Frun_hook_with_args_until_failure)
20865 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
20866 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
20867 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
20868 (Funwind_protect, Fcondition_case): Likewise.
20869 * coding.c (Ffind_operation_coding_system): Likewise.
20870 * keyboard.c (Ftrack_mouse): Likewise.
20871
208722001-10-21 Miles Bader <miles@gnu.org>
20873
20874 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
20875 (Fmake_hash_table): Add usage: string to doc string.
20876 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
20877 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
20878 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
20879 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
20880 (Fml_prefix_argument_loop): Likewise.
20881
208822001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20883
20884 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
20885
20886 * sysdep.c (init_sys_modes): Change doc-string comments to `new
20887 style' [w/`doc:' keyword].
20888
20889 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
20890 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
20891 comments to `new style' [w/`doc:' keyword].
20892
208932001-10-21 Jason Rumney <jasonr@gnu.org>
20894
20895 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
20896
20897 * w32term.c (remember_mouse_glyph): New function.
20898 (w32_mouse_position): Use it.
20899 (note_mouse_movement): If the mouse moved off the glyph, remember
20900 its new position.
20901
20902 * w32term.h (struct w32_output): Correct spelling of x_compatible.
20903 (w32_display_info): Add mouse_face_overlay.
20904
20905 * w32term.c (notice_overwritten_cursor): Renamed from
20906 note_overwritten_text_cursor. Rewritten to take glyph widths into
20907 account.
20908 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
20909 (fast_find_string_pos): New function.
20910 (fast_find_position): Return the correct vpos. Add parameter
20911 STOP. In the final row, stop before glyphs having STOP as object.
20912 Don't consider glyphs that are not from a buffer.
20913 (fast_find_position) [0]: Add a presumably more correct version
20914 for after 21.1.
20915 (expose_window_tree, expose_frame): Don't compute intersections here.
20916 (expose_window): Do it here instead.
20917 (expose_window_tree, expose_window, expose_line): Return 1 when
20918 overwriting mouse-face.
20919 (expose_window): If W is the window currently being updated, mark
20920 the frame garbaged.
20921 (expose_frame): If mouse-face was overwritten, redo it.
20922 (x_use_underline_position_properties): New variable.
20923 (syms_of_xterm): DEFVAR_BOOL it.
20924 (x_draw_glyph_string): Add comment to use it in future.
20925 (x_draw_glyph_string): Restore clipping after drawing box.
20926 Fix a computation of the underline position.
20927 (w32_get_glyph_string_clip_rect): Minor cleanup.
20928 (x_fill_stretch_glyph_string): Remove an assertion.
20929 (x_produce_glyphs): Don't convert multibyte characters
20930 to unibyte characters in unibyte buffers.
20931 (cursor_in_mouse_face_p): New function.
20932 (x_draw_stretch_glyph_string): Use it to choose a different GC
20933 when drawing a cursor within highlighted text. Don't draw
20934 background again if it has already been drawn.
20935 (x_draw_glyph_string_box): Don't draw a full-width
20936 box just because the glyph row's full_width_p flag is set.
20937 (x_draw_glyphs): Fix computation of rightmost x for
20938 full-width rows.
20939 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
20940 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
20941 change bottom shadow accordingly. Some cleanup.
20942 (x_update_window_end): Handle overwritten mouse face
20943 also for tool bar windows.
20944 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
20945 DRAW is DRAW_IMAGE_RAISED.
20946 (clear_mouse_face): Return 1 if text with mouse face was
20947 actually redrawn. Make the function static.
20948 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
20949 optimize away highlighting if we pass over that same overlay again.
20950 (note_mouse_highlight): Call mouse_face_overlay_overlaps
20951 to detect a case where we have to highlight a different region
20952 despite not having left the currently highlighted region.
20953 Set mouse_face_overlay in the x_display_info. Avoid changing the
20954 mouse pointer shape when show_mouse_face has already done it, or
20955 there is no need. Handle mouse-face and help-echo in strings.
20956 (glyph_rect): New function.
20957 (w32_mouse_position): Use it to raise the threshold for mouse
20958 movement event generation.
20959 (w32_initialize_display_info): Initialize the x_display_info's
20960 mouse_face_overlay.
20961 (w32_set_vertical_scroll_bar): Don't clear a zero height
20962 or width area.
20963 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
20964 a widget to zero height.
20965
20966 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
20967 Protect unibyte strings created by replacing their multibyte
20968 equivalents in menu_items.
20969 (w32_menu_show): Don't overwrite an item's name with its key
20970 description in case the description is a multibyte string.
20971 (single_submenu): Some cleanup.
20972
20973 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
20974 (postprocess_image): New function.
20975 (lookup_image): Call it for all image types except PostScript.
20976 (x_kill_gs_process): Call postprocess_image.
20977 (tiff_error_handler, tiff_warning_handler): New functions.
20978 (tiff_load): Install them as handlers.
20979 (x_kill_gs_process): Recognize if someone has cleared the image
20980 cache under us.
20981 (valid_image_p): Protect better against invalid image
20982 specifications. Previous code could signal an error.
20983 (Fx_hide_tip, Fshow_tip): Doc fix.
20984 (Fv_max_tooltip_size): New variable.
20985 (syns_of_xfns): DEFVAR_LISP it.
20986 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
20987 window buffer to *tip* right after creating the frame. Set frame's
20988 window_width. Use a maximum tooltip size specified by
20989 Vx_max_tooltip_size, if that has valid contents.
20990 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
20991 Make sure the tooltip is completely visible.
20992 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
20993 (Fx_create_frame): Adjust the frame's height for presence
20994 of the tool bar before calling x_figure_window_size.
20995 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
20996 when the window gets smaller.
20997 (x_set_foreground_color): Set frame's cursor_pixel.
20998 (x_set_foreground_color, x_set_background_color): Cleaned up.
20999 (x_set_font): Handle case of x_new_fontset returning the same name
21000 as before, although there was a change in fontsets.
21001
210022001-10-21 Miles Bader <miles@gnu.org>
21003
21004 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
21005 (Flogxor): Add usage: string to doc string.
21006 * charset.c (Fstring): Likewise.
21007 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
21008 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
21009
210102001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21011
21012 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
21013
21014 * alloc.c: Reindent DEFUNs with doc: keywords.
21015
21016 * abbrev.c (Finsert_abbrev_table_description): Reindent.
21017
21018 * frame.c: Change doc-string comments to `new style' [w/`doc:'
21019 keyword].
21020
21021See ChangeLog.9 for earlier changes.
21022
21023;; Local Variables:
21024;; coding: iso-2022-7bit
21025;; End:
21026
21027 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
21028 Copying and distribution of this file, with or without modification,
21029 are permitted provided the copyright notice and this notice are preserved.
21030
21031;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4