]> code.delx.au - gnu-emacs/blob - src/ChangeLog
30db05481725a5b976d4ac25c975f07e1515cd27
[gnu-emacs] / src / ChangeLog
1 2005-10-14 Kim F. Storm <storm@cua.dk>
2
3 * xterm.c (note_mouse_movement): Return 1 if mouse moved; 0 otherwise.
4 (handle_one_xevent): Only clear help_echo_string; restore it if
5 note_mouse_movement didn't record any mouse movement.
6
7 * xdisp.c (pos_visible_p): Convert w->hscroll to pixels before use.
8 (remember_mouse_glyph): Clear RECT if mouse is over an image glyph.
9
10 * keyboard.c (make_lispy_position): Adjust wx for left margin if ON_TEXT.
11 (Fposn_at_x_y): Fix calculation of x coordinate.
12 (Fposn_at_point): Return nil if point is hscrolled out of view.
13
14 2005-10-13 Andreas Schwab <schwab@suse.de>
15
16 * sysdep.c (request_sigio, unrequest_sigio): Do nothing in
17 non-interactive mode.
18
19 2005-10-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20
21 * xterm.c, w32term.c, macterm.c (note_mouse_movement): Undo last change.
22
23 2005-10-12 Kim F. Storm <storm@cua.dk>
24
25 * xterm.c (handle_one_xevent): Clear last_mouse_glyph on mouse up/down.
26
27 2005-10-12 Romain Francoise <romain@orebokech.com>
28
29 * buffer.c (init_buffer): Rename `rc' to `len' for clarity.
30
31 2005-10-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
32
33 * xdisp.c (remember_mouse_glyph): Use MATRIX_BOTTOM_TEXT_ROW to
34 get end of text rows. Obtain header-line/mode-line rows directly.
35
36 * xterm.c, w32term.c, macterm.c (note_mouse_movement): Restore
37 help_echo_string if mouse is moved inside last_mouse_glyph.
38
39 2005-10-12 Kim F. Storm <storm@cua.dk>
40
41 * xdisp.c (remember_mouse_glyph): New generic version based on
42 glyph_rect and remember_mouse_glyph from xterm.c enhanced to
43 properly handle all different window areas.
44
45 * dispextern.h (remember_mouse_glyph): Add prototype.
46
47 * xterm.c (glyph_rect, remember_mouse_glyph): Remove X versions.
48 (note_mouse_movement, XTmouse_position): Use generic
49 remember_mouse_glyph, add last_mouse_glyph arg.
50
51 * w32term.c (note_mouse_movement): Fix last_mouse_glyph check.
52 (glyph_rect, remember_mouse_glyph): Remove w32 specific versions.
53 (note_mouse_movement, w32_mouse_position): Use generic
54 remember_mouse_glyph, add last_mouse_glyph arg.
55
56 * macterm.c (note_mouse_movement): Add call to remember_mouse_glyph.
57 (glyph_rect, remember_mouse_glyph): Remove mac specific versions.
58 (XTmouse_position): Adapt to use generic remember_mouse_glyph
59 instead of pixel_to_glyph_coords.
60
61 * window.c (coordinates_in_window): Fix x position for ON_RIGHT_MARGIN.
62 Fix x position for ON_TEXT when left margin width > 0.
63
64 2005-10-11 Kim F. Storm <storm@cua.dk>
65
66 * window.c (coordinates_in_window): Fix y position for ON_SCROLL_BAR.
67
68 * keyboard.c (make_lispy_position): Fix buffer calculations for
69 mouse click or movement in right fringe and the margins.
70
71 2005-10-11 Juanma Barranquero <lekktu@gmail.com>
72
73 * image.c (fn_jpeg_stdio_src): Don't define it.
74 (init_jpeg_functions): Don't initialize `fn_jpeg_stdio_src'.
75 (our_common_init_source): Rename from `our_init_source'.
76 (our_common_term_source): Rename from `our_term_source'.
77 (our_memory_fill_input_buffer): Rename from
78 `our_fill_input_buffer'.
79 (our_memory_skip_input_data): Rename from `our_skip_input_data'.
80 (jpeg_memory_src): Use the new names.
81 (struct jpeg_stdio_mgr): New struct.
82 (JPEG_STDIO_BUFFER_SIZE): New constant.
83 (our_stdio_fill_input_buffer, our_stdio_skip_input_data)
84 (jpeg_file_src): New functions.
85 (jpeg_load): Use `jpeg_file_src' instead of `fn_jpeg_stdio_src'.
86
87 2005-10-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
88
89 * macterm.c (PER_CHAR_METRIC): Remove unused macro.
90 (fm_font_family_alist): New variable.
91 (syms_of_macterm): Initialize and staticpro it.
92 (decode_mac_font_name): Replace '-' in family name with '_' if it
93 occurs just once. Lower family name.
94 (parse_x_font_name): Rename from x_font_name_to_mac_font_name.
95 All uses changed. Remove argument MF and code conversion for it.
96 Add argument SIZE. Rename argument MF_DECODED to FAMILY, and CS
97 to CHARSET. Parse font size. Lower family name. Return integer
98 value for status of parsing.
99 (init_font_name_table) [USE_ATSUI]: Use decode_mac_font_name.
100 Don't use Fdowncase because family name is already lowered by
101 decode_mac_font_name.
102 (init_font_name_table): Always call decode_mac_font_name. Add
103 pair of family name and its reference to fm_font_family_alist.
104 (mac_clear_font_name_table): Clear fm_font_family_alist.
105 (XLoadQueryFont): Move font size parsing part to parse_x_font_name.
106 Lookup fm_font_family_alist to get font family reference.
107 (XLoadQueryFont) [USE_ATSUI]: Don't use Fdowncase because family
108 name is already lowered by parse_x_font_name.
109
110 2005-10-11 Kim F. Storm <storm@cua.dk>
111
112 * xterm.c (glyph_rect): Return 0 if position is outside text area.
113
114 * keyboard.c (make_lispy_position): Fix buffer position calculation for
115 mouse click or movement in fringe.
116
117 2005-10-10 Jason Rumney <jasonr@gnu.org>
118
119 * xterm.c (remember_mouse_glyph): New function.
120 (note_mouse_movement): Use it to remember the current glyph if changed.
121 (XTmouse_position): Fix calculation of fake glyph under mouse.
122 Move code to calculate glyph under mouse into remember_mouse_glyph.
123
124 2005-10-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
125
126 * emacs.c (USAGE3, standard_args): -nb => -nbi.
127
128 2005-10-10 Juanma Barranquero <lekktu@gmail.com>
129
130 * frame.c (Fredirect_frame_focus): Fix typos in docstring.
131 (next_frame, prev_frame, set_term_frame_name): Make static.
132
133 * window.c (Fwindow_tree): Fix spelling.
134
135 2005-10-09 Romain Francoise <romain@orebokech.com>
136
137 * window.c (Fwindow_end): Don't try to redisplay if non-interactive.
138
139 2005-10-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
140
141 * emacs.c (standard_args): Remove options -i, -itype, --icon-type.
142 Add options -nb, --no-bitmap-icon.
143
144 * xfns.c (Fx_create_frame): Make bitmapIcon have default on.
145
146 2005-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
147
148 * macgui.h (MAX_CLIP_RECTS): New define.
149 (struct _XGC): New member clip_region.
150 (struct _XGC) [MAC_OSX && USE_ATSUI]: New members n_clip_rects and
151 clip_rects.
152
153 * macterm.c (GC_CLIP_REGION): New macro.
154 (saved_port_clip_region): New variable.
155 (mac_begin_clip, mac_end_clip): New functions.
156 (XDrawLine, mac_erase_rectangle, mac_draw_bitmap, XFillRectangle)
157 (mac_draw_rectangle, mac_draw_string_common, mac_copy_area)
158 (mac_copy_area_with_mask, mac_scroll_area): Use them.
159 (mac_set_clip_rectangle, mac_reset_clipping): Remove functions.
160 [USE_ATSUI] (atsu_get_text_layout_with_text_ptr)
161 [MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Specify kATSLineFractDisable.
162 (mac_draw_string_common) [MAC_OSX && USE_ATSUI]: Clip to clipping
163 rectangles stored in gc.
164 (XFreeGC): Dispose of clipping region.
165 (mac_set_clip_rectangles, mac_reset_clip_rectangles): New functions.
166 (x_draw_fringe_bitmap, x_set_glyph_string_clipping)
167 (x_draw_relief_rect, x_draw_box_rect, x_draw_stretch_glyph_string)
168 (x_draw_glyph_string, x_clip_to_row, x_draw_hollow_cursor)
169 (x_draw_bar_cursor): Use them.
170 (x_set_glyph_string_clipping): Use get_glyph_string_clip_rects to
171 get multiple clipping rectangles.
172
173 * macterm.h (mac_term_init): Add types to extern.
174 (struct mac_output): Remove members mWP and pending_menu_activation.
175 Put members scroll_bar_foreground_pixel and
176 scroll_bar_background_pixel in #if 0.
177 (FRAME_MAC_WINDOW, FRAME_X_WINDOW): Use window_desc.
178
179 * xfaces.c (x_create_gc, x_free_gc) [MAC_OS]: Add BLOCK_INPUT.
180 Add debug code.
181
182 2005-10-08 Kim F. Storm <storm@cua.dk>
183
184 * window.c (window_tree, Fwindow_tree): Rename fns added 2005-10-04.
185
186 2005-10-07 Kim F. Storm <storm@cua.dk>
187
188 * dispnew.c (redraw_overlapped_rows, redraw_overlapping_rows)
189 [!HAVE_WINDOW_SYSTEM]: Don't declare them...
190 (update_window) [!HAVE_WINDOW_SYSTEM]: ...and don't call them.
191
192 2005-10-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
193
194 * dispextern.h (struct glyph_string): Rename member for_overlaps_p
195 to for_overlaps. Now occupy 3 bits.
196 (OVERLAPS_PRED, OVERLAPS_SUCC, OVERLAPS_BOTH)
197 (OVERLAPS_ERASED_CURSOR): New defines.
198 (struct redisplay_interface): Add new OVERLAPS arg to member
199 fix_overlapping_area.
200 (x_fix_overlapping_area): Add new OVERLAPS arg.
201 (get_glyph_string_clip_rects): Add extern.
202
203 * dispnew.c (redraw_overlapping_rows): Call
204 rif->fix_overlapping_area with new OVERLAPS arg as redrawn part.
205
206 * xdisp.c: Rename member for_overlaps_p in struct glyph_string to
207 for_overlaps.
208 (get_glyph_string_clip_rects): New function created from
209 get_glyph_string_clip_rect. Set clipping rectangles according to the
210 value of for_overlaps. Enable to store multiple clipping rectangles.
211 (get_glyph_string_clip_rect): Use get_glyph_string_clip_rects.
212 (fill_composite_glyph_string, fill_glyph_string, draw_glyphs):
213 Rename argument OVERLAPS_P to OVERLAPS. All uses in macros changed.
214 (x_fix_overlapping_area): Add OVERLAPS arg. Pass it to draw_glyphs.
215 (draw_phys_cursor_glyph): Set width of erased cursor to use it for
216 calculating clipping rectangles later. Call x_fix_overlapping_area
217 with new OVERLAPS arg to draw only erased cursor area.
218 (expose_overlaps): Call x_fix_overlapping_area with new OVERLAPS arg
219 to draw overlaps in both preceding and succeeding rows.
220
221 * xterm.c, w32term.c, macterm.c: Rename member for_overlaps_p in
222 struct glyph_string to for_overlaps.
223
224 2005-10-04 Kim F. Storm <storm@cua.dk>
225
226 * window.c (window_split_tree): New function.
227 (Fwindow_split_tree): New defun.
228 (syms_of_window): Defsubr it.
229
230 2005-10-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
231
232 * macterm.c (mac_invert_rectangle): New function.
233 (XTflash): Use it.
234
235 2005-10-04 Stefan Monnier <monnier@iro.umontreal.ca>
236
237 * regex.h (re_char): Don't expose it in the interface.
238 (re_set_whitespace_regexp): Adjust the arg's type to not use it.
239
240 * regex.c (re_char): Move it back here.
241 (re_set_whitespace_regexp): Change the arg's type to not use it.
242
243 * keyboard.c (make_lispy_event): If point has moved between down and up
244 event, make it a drag, not a click, to mirror what
245 mouse-drag-region expects.
246
247 2005-10-02 Dan Nicolaescu <dann@ics.uci.edu>
248
249 * lisp.h (fatal): Undo previous change.
250 * term.c (fatal): Undo previous change.
251
252 2005-10-01 Richard M. Stallman <rms@gnu.org>
253
254 * xfaces.c (face_color_gray_p): Colors close to black count as gray.
255
256 2005-10-01 Kim F. Storm <storm@cua.dk>
257
258 * xdisp.c (try_window): Skip scroll-margin check if ZV is visible.
259
260 2005-10-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
261
262 * keyboard.c (init_keyboard) [MAC_OSX]: Don't install SIGINT handler.
263
264 * macfns.c (start_hourglass): Apply 2005-05-07 change for xfns.c.
265 (x_create_tip_frame) [GLYPH_DEBUG]: Uncomment debug code.
266 (Fx_create_frame, x_create_tip_frame) [USE_ATSUI]:
267 Try ATSUI-compatible 12pt Monaco font first.
268
269 * macgui.h (struct _XCharStruct): New member valid_p.
270 (STORE_XCHARSTRUCT): Set valid_p.
271 (struct MacFontStruct) [USE_ATSUI]: New member mac_style.
272
273 * macterm.c (mac_draw_string_common, x_per_char_metric)
274 (mac_compute_glyph_string_overhangs, init_font_name_table)
275 (XLoadQueryFont, mac_unload_font) [USE_ATSUI]: Add ATSUI support.
276 (atsu_get_text_layout_with_text_ptr) [USE_ATSUI]: New function.
277 (x_draw_glyph_string_background)
278 (x_draw_glyph_string_foreground) [MAC_OS8 && USE_ATSUI]: Don't use
279 XDrawImageString. Always draw background and foreground separately.
280 (x_draw_glyph_string_foreground) [USE_ATSUI]: Don't use 8-bit
281 functions for one-byte chars when using ATSUI-compatible fonts.
282 (atsu_font_id_hash) [USE_ATSUI]: New variable.
283 (syms_of_macterm) [USE_ATSUI]: Initialize and staticpro it.
284 (XLoadQueryFont): Set min_byte1, max_byte1, min_char_or_byte2, and
285 max_char_or_byte2 more in detail.
286 (quit_char_comp, mac_check_for_quit_char) [MAC_OSX]: Remove functions.
287
288 2005-09-30 Dan Nicolaescu <dann@ics.uci.edu>
289
290 * image.c (slurp_file, xbm_read_bitmap_data): Cast to the correct type.
291 * xterm.c (handle_one_xevent, handle_one_xevent): Likewise.
292
293 * unexelf.c (fatal): Fix prototype.
294
295 * term.c (fatal): Implement using varargs.
296
297 * regex.c (re_char): Move typedef ...
298 * regex.h (re_char): ... here.
299 (re_iswctype, re_wctype, re_set_whitespace_regexp): New prototypes.
300
301 * emacs.c (malloc_set_state): Fix return type.
302 (endif): Fix type.
303
304 * lisp.h (fatal): Add argument types.
305
306 * dispextern.h (fatal): Delete prototype.
307
308 * systime.h: (make_time): Prototype moved from ...
309 * editfns.c (make_time): ... here.
310
311 * editfns.c: Move systime.h include after lisp.h.
312 * dired.c:
313 * xsmfns.c:
314 * process.c: Likewise.
315
316 * alloc.c (old_malloc_hook, old_realloc_hook, old_realloc_hook):
317 Add parameter types.
318 (__malloc_hook, __realloc_hook, __free_hook): Fix prototypes.
319 (emacs_blocked_free): Change definition to match __free_hook.
320 (emacs_blocked_malloc): Change definition to match __malloc_hook.
321 (emacs_blocked_realloc): Change definition to match __realloc_hook.
322
323 2005-09-30 Romain Francoise <romain@orebokech.com>
324
325 * minibuf.c (Fread_buffer): Follow convention for reading from the
326 minibuffer with a default value. Doc fix.
327
328 2005-09-29 Juri Linkov <juri@jurta.org>
329
330 * editfns.c (Fmessage, Fmessage_box, Fmessage_or_box):
331 Rename argument name `string' to `format-string'.
332 (Fformat): Doc fix.
333
334 2005-09-28 Kim F. Storm <storm@cua.dk>
335
336 * image.c (gif_load): Fix size of allocated image buffer
337 for images where a sub-image may be larger than the image's
338 total height/width specifications.
339
340 2005-09-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
341
342 * macgui.h (struct _XCharStruct): Each member now takes short value.
343
344 2005-09-27 Dan Nicolaescu <dann@ics.uci.edu>
345
346 * xfaces.c (lookup_derived_face): Add parameter type.
347
348 * xdisp.c (cursor_row_fully_visible_p): Add parameter type.
349
350 * marker.c (verify_bytepos): Add parameter type.
351
352 * process.c (get_operating_system_release): Move prototype ...
353
354 * systime.h (get_operating_system_release): ... here.
355
356 * xterm.c (handle_one_xevent): Refer to union field to match the
357 type required by the function definition.
358 (set_vertical_scroll_bar): Move prototype ...
359
360 * xterm.h: ... here.
361
362 * fns.c (internal_equal, seed_random): Fix prototypes.
363 (internal_equal): Add missing parameter.
364
365 2005-09-25 Richard M. Stallman <rms@gnu.org>
366
367 * keyboard.c (update_menu_bindings): Variable deleted.
368 (syms_of_keyboard): Don't defvar it.
369 (parse_menu_item): Don't test it.
370
371 2005-09-23 Richard M. Stallman <rms@gnu.org>
372
373 * editfns.c (Fformat): Explicitly test for end of format string
374 and don't use `index'.
375
376 2005-09-23 Dan Nicolaescu <dann@ics.uci.edu>
377
378 * s/aix4-2.h (BROKEN_GET_CURRENT_DIR_NAME):
379 Define BROKEN_GET_CURRENT_DIR_NAME.
380
381 * sysdep.c (get_current_dir_name): Also define if
382 BROKEN_GET_CURRENT_DIR_NAME.
383
384 * m/ibmrs6000.h: Test for USG5, not USG5_4.
385
386 2005-09-22 Kim F. Storm <storm@cua.dk>
387
388 * xdisp.c (message_dolog): Add warning about GC and Lisp strings.
389 (message2): Fix commentary. Ok to use alloca'ed memory.
390 Still not ok to use Lisp string data (because of GC).
391 (set_message): Add comment why GC cannot happen.
392
393 2005-09-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
394
395 * macterm.c (xlfdpat_block_match_1): Fix assertion.
396 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't add style
397 variants for a scalable font multiple times.
398
399 2005-09-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
400
401 * process.c (create_process) [RTU || UNIPLUS || DONT_REOPEN_PTY]:
402 Setup slave tty options before forking.
403
404 2005-09-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
405
406 * gtkutil.c (xg_set_geometry): Do a gtk_window_move if program
407 positions have been set for the frame (as is done for frames in
408 special-display-buffer-names).
409
410 2005-09-19 Kim F. Storm <storm@cua.dk>
411
412 * editfns.c (Fformat): Don't scan past end of format string that
413 ends in %. Reported by: Johan Bockg\e,Ae\e(Brd.
414
415 2005-09-18 Andreas Schwab <schwab@suse.de>
416
417 * window.h (struct window): Remove height_fixed_p, no longer set.
418
419 * window.c (make_window): Don't initialize height_fixed_p.
420 (window_fixed_size_p): Don't use it.
421
422 2005-09-18 John Paul Wallington <jpw@pobox.com>
423
424 * data.c (Fdefalias): Signal an error if SYMBOL is not a symbol.
425
426 2005-09-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
427
428 * Makefile.in (SOME_MACHINE_OBJECTS): Undo previous change.
429
430 * macfns.c (image_cache_refcount, dpyinfo_refcount) [GLYPH_DEBUG]:
431 New variables.
432 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Don't allow multiple
433 file selection.
434
435 * sysdep.c [MAC_OS8]: Don't include stdlib.h. Include sys/param.h.
436
437 2005-09-17 Eli Zaretskii <eliz@gnu.org>
438
439 * Makefile.in (XMENU_OBJ) [!HAVE_CARBON]: Reinstate variable.
440 (obj): Use XMENU_OBJ, not a literal xmenu.o.
441
442 2005-09-16 Romain Francoise <romain@orebokech.com>
443
444 * fileio.c (syms_of_fileio) <write-region-inhibit-fsync>: Doc fix.
445
446 2005-09-15 Richard M. Stallman <rms@gnu.org>
447
448 * xdisp.c (overlay_arrow_at_row): Add HAVE_WINDOW_SYSTEM conditional.
449 (display_mode_element): Instead of `lisp_string' and `this',
450 record `offset' and increment that.
451 `last_offset' replaces `last'.
452
453 * Makefile.in (XMENU_OBJ): Variable deleted.
454 (obj): Use xmenu.o unconditionally.
455 (SOME_MACHINE_OBJECTS): Delete xmenu.o.
456
457 * emacs.c (main): Don't conditionalize syms_of_xmenu on HAVE_XMENU.
458
459 2005-09-15 Kim F. Storm <storm@cua.dk>
460
461 * xdisp.c (move_it_vertically): Don't try to fetch byte BEGV-1.
462 (reseat_at_next_visible_line_start): Likewise (in xassert).
463
464 2005-09-14 Romain Francoise <romain@orebokech.com>
465
466 * fileio.c (write_region_inhibit_fsync): New variable.
467 (Fwrite_region): Use it to skip call to fsync.
468 (syms_of_fileio): Initialize it.
469
470 2005-09-14 Kenichi Handa <handa@m17n.org>
471
472 * coding.c (code_convert_region_unwind): Argument format changed.
473 (run_pre_post_conversion_on_str): If pre-write-conversion function
474 changed the current buffer, delete the new buffer.
475 (run_pre_write_conversin_on_c_str): Likewise.
476
477 * fileio.c (Fexpand_file_name): Check multibyteness of
478 default_directory.
479
480 2005-09-13 Kenichi Handa <handa@m17n.org>
481
482 * composite.c (compose_chars_in_text): Delete it.
483
484 * composite.h (compose_chars_in_text): Delete extern.
485
486 2005-09-13 Kim F. Storm <storm@cua.dk>
487
488 * print.c (print_error_message): Fix last change.
489
490 2005-09-12 Kim F. Storm <storm@cua.dk>
491
492 * composite.c (compose_chars_in_text): Fix setup of `pend'.
493 Unconditionally reload `ptr' and `pend' after eval.
494
495 * xdisp.c (message3): Pass copy of lisp string to message_dolog.
496
497 * print.c (print_error_message): Pass copy of caller name to
498 message_dolog.
499
500 * fileio.c (auto_save_error): Pass copy of lisp string to message2.
501
502 2005-09-12 Kenichi Handa <handa@m17n.org>
503
504 * xdisp.c (display_mode_element): Be sure to make variables THIS
505 and LISP_STRING point into a string data of ELT.
506
507 2005-09-12 Kim F. Storm <storm@cua.dk>
508
509 * editfns.c (Ftranslate_region_internal): Reload `tt' after
510 signal_after_change that may have GC'ed.
511 (Fmessage, Fmessage_box, Fmessage_or_box): Doc fix.
512
513 * keymap.c (Fdescribe_buffer_bindings): Reload `translate'
514 after insert while runs signal_after_change.
515
516 * minibuf.c (Fminibuffer_complete_word): Move `completion_string'
517 declaration to where it is used.
518
519 * w32.c (check_windows_init_file): Fix allocation of error buffer.
520
521 * xfns.c (x_encode_text): Declare static. Add FREEP arg.
522 (x_set_name_internal): Call x_encode_text with new FREEP arg to
523 know if xfree is needed instead of guessing.
524
525 * xterm.h (x_encode_text): Remove prototype.
526
527 2005-09-11 Chris Prince <cprince@gmail.com> (tiny change)
528
529 * w32term.c (x_bitmap_icon): Load small icons too.
530
531 2005-09-10 Romain Francoise <romain@orebokech.com>
532
533 * buffer.c (init_buffer): Grow buffer to add directory separator
534 and terminal zero. Fix typos.
535
536 2005-09-10 Eli Zaretskii <eliz@gnu.org>
537
538 * buffer.c (init_buffer): Fix error message for failed call to
539 get_current_dir_name.
540 (get_current_dir_name): Remove prototype.
541
542 * xsmfns.c: (get_current_dir_name): Remove prototype.
543
544 * lisp.h: (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]: Add
545 prototype.
546
547 * sysdep.c [WINDOWSNT]: Add prototype for getwd.
548 Don't #undef NULL after including blockinput.h.
549
550 * config.in: Regenerated.
551
552 2005-09-10 Giuseppe Scrivano <gscrivano@gmail.com>
553
554 Remove the MAXPATHLEN limitations:
555
556 * sysdep.c (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]:
557 New function.
558
559 * buffer.c (init_buffer): Use it.
560
561 * xsmfns.c (smc_save_yourself_CB): Ditto.
562
563 2005-09-09 Kim F. Storm <storm@cua.dk>
564
565 * doc.c (Fsubstitute_command_keys): Lookup key binding for
566 commands that are remapped from some other command.
567
568 * xdisp.c (try_window_reusing_current_matrix): Clear mode_line_p
569 flag in disabled rows below the window.
570
571 * frame.h (struct frame): New member updated_p.
572
573 * xdisp.c (redisplay_internal): Mark updated frames in new updated_p
574 member. Remove local `updated' array and associated variables.
575
576 2005-09-07 Kim F. Storm <storm@cua.dk>
577
578 * xdisp.c (handle_display_prop): Respect overlay window property.
579
580 * xdisp.c (try_window): Remove superfluous cursor_height calculation.
581 Fixes crash reported by YAMAMOTO Mitsuharu.
582
583 2005-09-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
584
585 * macterm.c (struct xlfdpat_block, struct xlfdpat): New structs.
586 (xlfdpat_destroy, xlfdpat_create, xlfdpat_exact_p)
587 (xlfdpat_block_match_1, xlfdpat_match): New functions.
588 (xlfdpat_block_match): New macro.
589 (mac_to_x_fontname): Don't use tolower for non-ASCII characters.
590 (x_font_name_to_mac_font_name): Set coding.dst_multibyte to 0.
591 (add_font_name_table_entry): Increase font_name_table_size more
592 rapidly.
593 (mac_c_string_match): Remove function.
594 (mac_do_list_fonts): Use XLFD pattern match instead of regular
595 expression match.
596
597 * xfaces.c (xstrlwr): Don't use tolower for non-ASCII characters.
598
599 2005-09-03 Richard M. Stallman <rms@gnu.org>
600
601 * xdisp.c (redisplay_internal): Make UPDATED as long as needed.
602 (move_it_in_display_line_to): Stop after last char on line even
603 on a windowing terminal, if that's the specified stop position.
604
605 * fns.c (Fsort): Doc fix.
606
607 * editfns.c (Fpropertize): Don't insist that properties be symbols.
608
609 2005-09-02 Stefan Monnier <monnier@iro.umontreal.ca>
610
611 * dired.c (directory_files_internal_unwind, directory_files_internal)
612 (file_name_completion): Use a Save_Value object rather than a cons of
613 two 16bit ints to store the DIR*.
614 (directory_files_internal, file_name_completion): Handle both EINTR and
615 EAGAIN consistently after `readdir'.
616
617 2005-09-01 Stefan Monnier <monnier@iro.umontreal.ca>
618
619 * intervals.c (update_interval): Add position info in error.
620
621 * dispnew.c (window_to_frame_hpos, update_window):
622 Avoid gcc warning about unused variable `f'.
623
624 2005-08-31 Jason Rumney <jasonr@gnu.org>
625
626 * w32menu.c (add_menu_item): If unicode_append_menu returns an
627 error, revert to using AppendMenu.
628
629 2005-08-31 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
630
631 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN): Remove argument.
632 All uses changed.
633 [MAC_OS] (XPutPixel, XGetPixel): Add efficient versions for common
634 cases.
635 (x_create_x_image_and_pixmap) [MAC_OS]: Don't call x_destroy_x_image.
636 [MAC_OS] (find_image_fsspec) [!MAC_OSX]: Don't use FSRef.
637 Use posix_pathname_to_fsspec.
638 [MAC_OS] (xpm_load_image): Fill in background_transparent field
639 while we have mask.
640
641 * macgui.h [!TARGET_API_MAC_CARBON] (GetPixDepth): New define.
642
643 * macterm.h (PIX_MASK_DRAW, PIX_MASK_RETAIN): Move defines to image.c.
644
645 2005-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
646
647 * syntax.c (update_syntax_table): Properly reproduce the special +1
648 setting of e_property at the end of the buffer when bumping into the
649 INTERVALS_AT_ONCE limit.
650
651 2005-08-27 Eli Zaretskii <eliz@gnu.org>
652
653 * emacs.c (USAGE1): Fix the description of the -Q option.
654
655 2005-08-26 Stefan Monnier <monnier@iro.umontreal.ca>
656
657 * xdisp.c (pos_visible_p): Yet another int/Lisp_Object mixup (YAILOM).
658
659 2005-08-26 Kim F. Storm <storm@cua.dk>
660
661 * xdisp.c (resize_mini_window): Fix 2005-08-20 change.
662 Don't move PT to new window start.
663
664 2005-08-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
665
666 * keyboard.c (kbd_buffer_get_event) [MAC_OS]: Make events for
667 ICONIFY/DEICONIFY_EVENT.
668
669 * macterm.c (mac_copy_area, mac_copy_area_with_mask):
670 Restore background color.
671 (mac_handle_visibility_change): New function.
672 (x_make_frame_invisible, x_iconify_frame)
673 (XTread_socket) [!USE_CARBON_EVENTS]: Use it.
674 [USE_CARBON_EVENTS] (mac_handle_window_event)
675 (install_window_handler): Handle visibility change events.
676 (x_make_frame_visible): Don't reposition window if it is iconified
677 or asked for visible before. Select and uncollapse window when it
678 is made visible.
679 (x_make_frame_invisible): Don't reset x_highlight_frame.
680 (x_iconify_frame): Likewise. Make invisible frame visible before
681 it is iconified.
682 (read_socket_inev): Move variable outside #if USE_CARBON_EVENTS.
683 (do_window_update): Don't change visibility of invisible frame.
684
685 2005-08-22 Juri Linkov <juri@jurta.org>
686
687 * term.c (turn_on_face): Check for TS_set_foreground and
688 TS_set_background depending on standout_mode. Simplify.
689
690 2005-08-21 Kim F. Storm <storm@cua.dk>
691
692 * fringe.c (update_window_fringes): Only put TOP and BOTTOM
693 bitmaps on fully visible rows.
694
695 * fringe.c (update_window_fringes): Replace FORCE_P arg with
696 KEEP_CURRENT_P arg; if non-zero, don't update current row fringes,
697 and return 0.
698
699 * xdisp.c (redisplay_window): Call update_window_fringes with
700 KEEP_CURRENT_P non-0 if we are going to refresh fringes later.
701
702 2005-08-20 Richard M. Stallman <rms@gnu.org>
703
704 * xdisp.c (display_echo_area_1): Get display start pos from w->start.
705 (resize_mini_window): Set w->start, and PT, so as to display the tail
706 end of the buffer, if it doesn't all fit.
707
708 2005-08-18 Kim F. Storm <storm@cua.dk>
709
710 * xdisp.c (calc_pixel_width_or_height): Use actual display
711 resolution when available instead of Vdisplay_pixels_per_inch.
712
713 2005-08-17 Kim F. Storm <storm@cua.dk>
714
715 * xdisp.c (pos_visible_p): Adjust X value if window is hscrolled.
716
717 * dispnew.c (buffer_posn_from_coords): Check that target row is
718 within matrix.
719
720 2005-08-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
721
722 * xterm.c (x_wm_set_icon_pixmap): Move GTK specific code to
723 xg_set_frame_icon and call it.
724
725 * gtkutil.c (xg_set_frame_icon): New function.
726
727 * gtkutil.h (xg_set_frame_icon): Declare it.
728
729 2005-08-16 Kim F. Storm <storm@cua.dk>
730
731 * dispnew.c (increment_row_positions): Skip non-enabled rows.
732
733 * window.c (SAVED_WINDOW_VECTOR_SIZE): Remove dangerous define.
734 (Fcurrent_window_configuration): Use VECSIZE macro instead.
735
736 2005-08-15 Richard M. Stallman <rms@gnu.org>
737
738 * xdisp.c (message3_nolog): Clear echo_message_buffer.
739
740 2005-08-15 Kim F. Storm <storm@cua.dk>
741
742 * lisp.h (QUIT) [!SYNC_INPUT]: Throw t to Vthrow_on_input.
743
744 * process.c (deactivate_process, status_notify, read_process_output)
745 (update_status, status_convert, decode_status, allocate_pty)
746 (make_process, remove_process, list_processes_1)
747 (create_process_1, unwind_request_sigio, read_process_output)
748 (send_process, keyboard_bit_set): Declare static.
749 (Fdelete_process): Simplify. Pass process to status_notify, so we
750 don't try to read output from it.
751 (status_notify): New arg deleting_process--don't try to read
752 output from that process.
753
754 * lisp.h (deactivate_process, status_notify, read_process_output):
755 Remove prototypes.
756
757 2005-08-14 Richard M. Stallman <rms@gnu.org>
758
759 * image.c (syms_of_image): Init Qxbm, Qpbm before calling
760 define_image_type.
761
762 2005-08-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
763
764 * gtkutil.c (xg_get_pixbuf_from_pix_and_mask): New function.
765 (xg_get_image_for_pixmap): Move some code to
766 xg_get_pixbuf_from_pix_and_mask, and call it.
767
768 * gtkutil.h (xg_get_pixbuf_from_pix_and_mask): Declare.
769
770 * xterm.c (x_wm_set_icon_pixmap): Call xg_get_pixbuf_from_pix_and_mask
771 to get an GTK icon and set it with GTK functions to avoid having GTK
772 override an icon set with just X functions.
773
774 2005-08-11 Richard M. Stallman <rms@gnu.org>
775
776 * image.c (syms_of_image): Init image_types here, and call
777 define_image_type.
778 (init_image): Not here.
779
780 2005-08-09 Richard M. Stallman <rms@gnu.org>
781
782 * bytecode.c (BYTE_CODE_QUIT): Throw t to Vthrow_on_input.
783
784 * lisp.h (QUIT): Throw t to Vthrow_on_input.
785
786 2005-08-09 Thien-Thi Nguyen <ttn@gnu.org>
787
788 * floatfns.c (Fexpt): Use floats for negative exponent.
789
790 2005-08-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
791
792 * gtkutil.c (xg_modify_menubar_widgets): Remove semicolon that
793 should not be there, causing menu display errors with GTK 2.6.9.
794
795 2005-08-07 Richard M. Stallman <rms@gnu.org>
796
797 * floatfns.c (Fexpt): Undo previous change.
798
799 * dispnew.c (Fframe_or_buffer_changed_p): Take an arg
800 so it can be used with various state vectors.
801
802 * emacs.c (endif): Convert -script into -scriptload.
803 (standard_args): Add -scriptload. Allow -basic-display with one dash.
804
805 * fns.c (syms_of_fns): Add `emacs' to features.
806
807 * term.c (set_terminal_modes): If no TS_termcap_modes string,
808 output newlines to scroll the old screen contents off the screen.
809
810 2005-08-06 Thien-Thi Nguyen <ttn@gnu.org>
811
812 * floatfns.c (Fexpt): Use floats for negative exponent.
813 Reported by D Goel.
814
815 2005-08-02 Richard M. Stallman <rms@gnu.org>
816
817 * frame.c (Fframe_char_width): Doc fix.
818
819 2005-07-30 Juanma Barranquero <lekktu@gmail.com>
820
821 * xdisp.c (syms_of_xdisp) <redisplay-end-trigger-functions>:
822 Defvar it.
823
824 2005-07-28 Juanma Barranquero <lekktu@gmail.com>
825
826 * w32fns.c (my_set_window_pos, my_show_window): Don't declare.
827 (my_create_window, my_create_tip_window): Make static.
828
829 * w32term.c (my_show_window, my_set_window_pos, my_set_focus)
830 (my_set_foreground_window, my_destroy_window): Make static.
831
832 2005-07-26 Paul Eggert <eggert@cs.ucla.edu>
833
834 Merge gnulib getopt implementation into Emacs.
835
836 * s/cygwin.h (C_SWITCH_SYSTEM): Remove, since gettext.h is
837 now part of lib-src.
838
839 2005-07-26 Stefan Monnier <monnier@iro.umontreal.ca>
840
841 * eval.c (Fdefvar): Allow (defvar enable-multibyte-characters).
842
843 2005-07-25 Jason Rumney <jasonr@gnu.org>
844
845 * w32menu.c (w32_menu_display_help): Suppress tooltip when
846 navigating menus with the keyboard.
847
848 2005-07-23 Richard M. Stallman <rms@gnu.org>
849
850 * insdel.c (syms_of_insdel): staticpro combine_after_change_buffer.
851
852 * bytecode.c (MAYBE_GC): Test gc_cons_threshold and
853 gc_relative_threshold, one by one.
854
855 * keyboard.c (read_char): Test gc_cons_threshold.
856 (syms_of_keyboard): staticpro Qecho_area_clear_hook.
857
858 * eval.c (Feval, Ffuncall): Test gc_cons_threshold and
859 gc_relative_threshold, one by one.
860
861 * alloc.c (gc_cons_threshold): Not static.
862 (gc_cons_combined_threshold): Var deleted.
863 (gc_relative_threshold): New variable.
864 (Fgarbage_collect, init_alloc_once): Compute gc_relative_threshold
865 instead of gc_cons_combined_threshold.
866
867 * lisp.h (gc_cons_threshold, gc_relative_threshold): Declare.
868 (gc_cons_combined_threshold): Declaration deleted.
869
870 2005-07-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
871
872 * mac.c: Don't include stdlib.h or string.h.
873 (Fdo_applescript, Fmac_file_name_to_posix)
874 (Fmac_file_name_to_posix): Doc fixes.
875 [TARGET_API_MAC_CARBON] (Fmac_get_preference)
876 (Fmac_code_convert_string): Likewise.
877 [MAC_OSX] (init_mac_osx_environment): Fall back on terminal mode
878 if the executable is not contained in a bundle.
879
880 * macfns.c: Don't include stdlib.h or string.h. Include atimer.h.
881 (gray_width, gray_height): Remove defines.
882 (gray_bits, gray_bitmap_width, gray_bitmap_height)
883 (gray_bitmap_bits): Remove variables.
884 (lispy_function_keys): Remove extern.
885 (free_frame_menubar): Add extern.
886 (x_window_to_frame): Remove function.
887 (unwind_create_tip_frame): Add declaration.
888 (x_set_name_internal): New function.
889 (x_set_name, x_set_title): Use it.
890 (Fx_create_frame, Fx_display_grayscale_p, Fx_display_pixel_width)
891 (Fx_display_pixel_height, Fx_display_planes)
892 (Fx_display_color_cells, Fx_server_max_request_size)
893 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
894 (Fx_display_mm_height, Fx_display_mm_width)
895 (Fx_display_backing_store, Fx_display_visual_class)
896 (Fx_display_save_under, Fx_synchronize, Fx_show_tip): Doc fixes.
897
898 * macmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
899
900 * macselect.c (Fx_own_selection_internal): Follow error conventions.
901 (Fx_get_selection_internal, Fx_selection_owner_p)
902 (Fx_selection_exists_p): Doc fixes.
903 (syms_of_macselect) <selection-converter-alist>: Likewise.
904
905 2005-07-21 Juanma Barranquero <lekktu@gmail.com>
906
907 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
908
909 * ccl.c (Fregister_ccl_program): Fix typos in docstring.
910 (Fccl_execute_on_string): Likewise; add usage info.
911
912 * composite.c (Fcompose_region_internal)
913 (Fcompose_string_internal):
914 Improve argument/docstring consistency.
915
916 * minibuf.c (Fminibuffer_prompt_end, Feval_minibuffer):
917 Fix typos in docstrings.
918
919 * textprop.c (Fnext_char_property_change)
920 (Fprevious_char_property_change): Doc fixes.
921
922 * window.c (Fset_window_margins, Fset_window_fringes):
923 Improve argument/docstring consistency.
924
925 * xfaces.c (Finternal_lisp_face_p): Doc fix.
926
927 2005-07-21 Andreas Schwab <schwab@suse.de>
928
929 * eval.c (restore_stack_limits): Return a value.
930
931 2005-07-20 Juanma Barranquero <lekktu@gmail.com>
932
933 * eval.c (Fdefvar): Doc fix.
934
935 2005-07-20 Kim F. Storm <storm@cua.dk>
936
937 * fileio.c (Fdo_auto_save, do_auto_save_unwind):
938 Use make_save_value to unwind protect stream.
939
940 * lread.c (Fload, load_unwind):
941 Use make_save_value to unwind protect stream.
942
943 2005-07-19 Juanma Barranquero <lekktu@gmail.com>
944
945 * eval.c (Fprog2, Fcalled_interactively_p),
946 (syms_of_eval) <debug-on-quit>: Doc fixes.
947 (syms_of_eval) <max-specpdl-size>:
948 (Finteractive_p): Fix typos in docstrings.
949
950 2005-07-19 Kim F. Storm <storm@cua.dk>
951
952 * w32fns.c (Vx_hand_shape): Variable removed.
953 (syms_of_w32fns): Intern and staticpro Qw32_charset_default.
954
955 2005-07-19 Kenichi Handa <handa@m17n.org>
956
957 * fns.c (Fstring_as_multibyte): Escape backslashes in the docstring.
958
959 2005-07-18 Stefan Monnier <monnier@iro.umontreal.ca>
960
961 * buffer.h (Fgenerate_new_buffer_name): Declare (for use in coding.c).
962
963 2005-07-18 Kim F. Storm <storm@cua.dk>
964
965 * frame.h (struct frame): New member already_hscrolled_p.
966
967 * xdisp.c (redisplay_internal): Only try to hscroll each frame once
968 to avoid redisplay looping hscrolling back and forth ad infinitum.
969
970 2005-07-18 Juri Linkov <juri@jurta.org>
971
972 * buffer.c (scroll-up-aggressively, scroll-down-aggressively):
973 * keymap.c (Fminor_mode_key_binding):
974 * macterm.c (mac-emulate-three-button-mouse):
975 Delete duplicate duplicate words.
976
977 2005-07-18 Ken Raeburn <raeburn@gnu.org>
978
979 * minibuf.c (Ftest_completion): Fix odd syntax in test.
980
981 2005-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
982
983 * macfns.c (x_set_cursor_color): Use XSetBackground and XSetForeground.
984
985 * macgui.h (struct _XGC): New struct.
986 (GC): Use it.
987 (GCForeground, GCBackground, GCFont): Use X11 mask values.
988 (XCreateGC, XParseGeometry): Move externs to macterm.h.
989
990 * macterm.c (x_bitmap_icon, x_make_frame_visible): Remove declarations.
991 (XSetFont): Add declaration.
992 (mac_set_forecolor, mac_set_backcolor, mac_set_colors):
993 Remove functions.
994 (GC_FORE_COLOR, GC_BACK_COLOR, GC_FONT, MAC_WINDOW_NORMAL_GC):
995 New defines.
996 (XDrawLine, mac_draw_line_to_pixmap, XClearWindow)
997 (mac_draw_bitmap, XCreatePixmapFromBitmapData, XFillRectangle)
998 (mac_draw_rectangle, mac_draw_string_common, mac_scroll_area):
999 Use them.
1000 (mac_erase_rectangle): New function.
1001 (XClearArea, x_draw_fringe_bitmap, x_clear_glyph_string_rect)
1002 (x_draw_stretch_glyph_string): Use it.
1003 (XChangeGC, XCreateGC, XGetGCValues, XSetForeground)
1004 (XSetBackground, XSetFont): Adjust for new GC implementation.
1005 (x_draw_fringe_bitmap, x_draw_box_rect): Use GC to set colors.
1006 (XTset_vertical_scroll_bar): Clear area under scroll bar.
1007
1008 * macterm.h (struct mac_display_info): Change types of
1009 scratch_cursor_gc black_relief.gc, and white_relief.gc to GC.
1010 (XCreateGC, XParseGeometry): Move externs from macgui.h.
1011
1012 * xfaces.c [MAC_OS] (XCreateGC): Remove extern.
1013
1014 2005-07-16 Richard M. Stallman <rms@gnu.org>
1015
1016 * buffer.c (Fmake_overlay): Doc fix.
1017
1018 2005-07-16 Eli Zaretskii <eliz@gnu.org>
1019
1020 * w32proc.c (syms_of_ntproc): staticpro Qhigh, Qlow,
1021 Vw32_valid_locale_ids, and Vw32_valid_codepages.
1022
1023 2005-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1024
1025 * mac.c [TARGET_API_MAC_CARBON] (Fmac_code_convert_string):
1026 Use Fstring_as_unibyte instead of string_make_unibyte.
1027
1028 2005-07-15 Richard M. Stallman <rms@gnu.org>
1029
1030 * xdisp.c (select_frame_for_redisplay): Use find_symbol_value.
1031
1032 2005-07-15 Kim F. Storm <storm@cua.dk>
1033
1034 * xdisp.c: Fix redisplay loop in last change.
1035 (IT_POS_VALID_AFTER_MOVE_P): New macro.
1036 (move_it_vertically_backward, move_it_by_lines): Use it.
1037
1038 2005-07-14 Jason Rumney <jasonr@gnu.org>
1039
1040 * w32.c (init_environment): Default HOME directory to user's
1041 appdata directory if possible.
1042
1043 2005-07-14 Kim F. Storm <storm@cua.dk>
1044
1045 * .gdbinit (pitx): Fix output format. Print string charpos.
1046
1047 * lread.c (syms_of_lread): Initialize seen_list.
1048
1049 * search.c (syms_of_search): Staticpro searchbuf.whitespace_regexp.
1050
1051 * syntax.c (syms_of_syntax): Staticpro lisp objects in gl_state.
1052 Staticpro re_match_object.
1053
1054 2005-07-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1055
1056 * macselect.c (get_scrap_target_type_list): Avoid NULL pointer
1057 dereference.
1058
1059 * macterm.c (mac_window_to_frame): Remove duplicate define.
1060
1061 2005-07-14 Kenichi Handa <handa@m17n.org>
1062
1063 * coding.c (code_convert_region_unwind): ARG is changed to a cons.
1064 (code_convert_region): Adjust for the above change.
1065 (set_conversion_work_buffer): If the work buffer is already in
1066 use, generate a new buffer and return it. Otherwise return Qnil.
1067 (run_pre_post_conversion_on_str): Adjust for the above change.
1068 (run_pre_write_conversin_on_c_str): Likewise.
1069
1070 2005-07-13 Kim F. Storm <storm@cua.dk>
1071
1072 * xdisp.c (start_display): Don't reseat to next visible line start
1073 if current start position is in a string or image.
1074 (move_it_vertically_backward): Be sure to move out of strings and
1075 images when moving it2 forward.
1076 (move_it_by_lines): When moving forward, move to next buffer
1077 position if we end up in a string or image. When moving backward,
1078 count rows moved over when moving to start of current row in case
1079 row starts in middle of a string or image. Also move further
1080 backward if we end up in a string or image.
1081 (try_cursor_movement): If overlay string spans multiple lines,
1082 move backward to set cursor on start of an overlay string.
1083 (cursor_row_p): Row is ok if cursor is at newline from string, but
1084 string starts on this line (so we always position cursor at start
1085 of string).
1086
1087 * indent.c (Fvertical_motion): If start position is on an image,
1088 don't move back if we move too far (that's almost certain to happen).
1089
1090 * xdisp.c (cursor_row_fully_visible_p): Allow partially visible
1091 row in minibuffer windows.
1092 (try_window): Don't check margins in minibuffer windows.
1093
1094 2005-07-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1095
1096 * macterm.c: Don't include stdlib.h or composite.h.
1097 (x_use_underline_position_properties, last_mouse_press_frame)
1098 (x_noop_count, Qvendor_specific_keysyms): Remove unused variables.
1099 (syms_of_macterm, mac_initialize): Don't initialize them.
1100 (waiting_for_input, initial_argv, initial_argc)
1101 (Vcommand_line_args, Vx_no_window_manager, errno, window_scroll)
1102 (set_frame_menubar, path_from_vol_dir_name): Remove externs.
1103 (extra_keyboard_modifiers): Fix type in extern.
1104 (x_window_to_frame, x_window_to_scroll_bar): Remove declarations.
1105 (x_scroll_bar_report_motion): Add argument types to declaration.
1106 (mac_compute_glyph_string_overhangs): Add declaration.
1107 (disable_mouse_highlight): Remove unused variable.
1108 [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click)
1109 (x_scroll_bar_handle_press, x_scroll_bar_handle_release)
1110 (x_scroll_bar_handle_drag): Remove argument `timestamp'.
1111 All callers changed.
1112 [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click): Don't set
1113 timestamp.
1114 [USE_CARBON_EVENTS] (mac_handle_mouse_event): Likewise.
1115 (x_scroll_bar_create, XTset_vertical_scroll_bar): Show scroll bar
1116 only when its width is less than the height.
1117 (XTredeem_scroll_bar): Sync with xterm.c.
1118 (font_name_table, font_name_table_size, font_name_count):
1119 Make static.
1120 (drag_and_drop_file_list): Remove variable. Previous use is now
1121 local to function.
1122 (do_ae_open_documents): Move DRAG_N_DROP event construction part
1123 from XTread_socket.
1124 (XTread_socket): Consolidate setting of event timestamp.
1125 Move DRAG_N_DROP event construction part to do_ae_open_documents.
1126 Support extra_keyboard_modifiers.
1127
1128 * xfaces.c (try_font_list) [MAC_OS]: Try font family name
1129 beginning with that for ASCII.
1130
1131 2005-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
1132
1133 * alloc.c (gc_cons_combined_threshold, Vgc_cons_percentage): New vars.
1134 (Fgarbage_collect, init_alloc_once): Set gc_cons_combined_threshold.
1135 (syms_of_alloc): Declare gc-cons-percentage.
1136
1137 * eval.c (Feval, Ffuncall):
1138 * keyboard.c (read_char):
1139 * bytecode.c (MAYBE_GC): Use gc_cons_combined_threshold.
1140
1141 * lisp.h (gc_cons_combined_threshold): Declare.
1142
1143 2005-07-12 Kim F. Storm <storm@cua.dk>
1144
1145 * coding.c (Qprocess_argument):
1146 * coding.h (Qprocess_argument): Remove unused var.
1147
1148 * xselect.c (intern): Remove dup. intern and staticpro for QTIMESTAMP.
1149
1150 2005-07-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1151
1152 * mac.c [!TARGET_API_MAC_CARBON]: Include charset.h, coding.h, and
1153 Endian.h.
1154 [!MAC_OSX] (fchmod, fchown): New functions.
1155 (mac_get_code_from_arg): Don't accept Lisp integer as argument.
1156 Use SBYTES and EndianU32_BtoN.
1157 (mac_get_object_from_code): Return 4 byte string even if argument
1158 is 0. Use make_unibyte_string and EndianU32_NtoB.
1159 (Fmac_get_file_creator, Fmac_get_file_type, Fmac_set_file_creator)
1160 (Fmac_set_file_type): Fix documents and argument declarations.
1161 Don't specify kFSCatInfoNodeFlags. Support Mac OS Classic.
1162
1163 2005-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
1164
1165 * window.c (Frecenter): Yet another int/Lisp_Object mixup (YAILOM).
1166
1167 2005-07-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1168
1169 * xfaces.c (x_update_menu_appearance): Use fontSet resource for
1170 Lucid if X_I18N, font otherwise.
1171
1172 2005-07-10 Steven Tamm <steventamm@mac.com>
1173
1174 * mac.c (Fmac_get_file_type, Fmac_get_file_creator): Add.
1175 (Fmac_set_file_type, Fmac_set_file_creator): Add.
1176 (mac_get_object_from_code, mac_get_code_from_arg): Add.
1177
1178 2005-07-10 Richard M. Stallman <rms@gnu.org>
1179
1180 * lread.c (Qeval_buffer_list, Veval_buffer_list): New vars.
1181 (syms_of_lread): Set up eval-buffer-list.
1182 (Feval_buffer, Feval_region): Bind eval-buffer-list.
1183
1184 2005-07-08 Richard M. Stallman <rms@gnu.org>
1185
1186 * eval.c (Fdefvar): Allow defvaring a constant to itself quoted.
1187
1188 2005-07-08 Kim F. Storm <storm@cua.dk>
1189
1190 * keyboard.c (menu_bar_items): Don't GCPRO menu_bar_items_vector here.
1191 (syms_of_keyboard): Initialize and staticpro menu_bar_items_vector.
1192
1193 2005-07-07 Kim F. Storm <storm@cua.dk>
1194
1195 * window.c (Frecenter): Fix last change (set iarg before use).
1196
1197 2005-07-06 Richard M. Stallman <rms@gnu.org>
1198
1199 * window.c (Frecenter): When arg is inside the scroll margin,
1200 move it out of the margin.
1201
1202 2005-07-06 Jason Rumney <jasonr@gnu.org>
1203
1204 * w32console.c (initialize_w32_display): Detect when the console
1205 dimensions are insane, and default to 80x25 instead.
1206 (w32_use_full_screen_buffer): Default to NIL.
1207
1208 2005-07-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1209
1210 * macterm.c (mac_draw_vertical_window_border): Use foreground of
1211 VERTICAL_BORDER_FACE_ID for vertical border line.
1212 (mac_encode_char): Call check_ccl_update in advance.
1213 (mac_to_x_fontname, x_font_name_to_mac_font_name)
1214 (init_font_name_table, mac_do_list_fonts, XLoadQueryFont):
1215 Don't assume that font family length is less than 32.
1216 (x_compute_min_glyph_bounds): Make static.
1217 (x_load_font): Never set fonts_changed_p to zero.
1218
1219 2005-07-04 Lute Kamstra <lute@gnu.org>
1220
1221 * Update FSF's address in GPL notices.
1222
1223 2005-07-03 Richard M. Stallman <rms@gnu.org>
1224
1225 * xdisp.c (try_window): Fix previous change in how it handles
1226 a partially-visible line or one only partly past the margin.
1227
1228 * window.c (window_scroll_pixel_based): Take account
1229 of this_scroll_margin when finding point when scrolling up.
1230
1231 2005-06-29 Ralf Angeli <angeli@iwi.uni-sb.de>
1232
1233 * window.c (window_scroll_pixel_based, window_scroll_line_based):
1234 Handle `scroll-preserve-screen-position' non-nil, non-t specially.
1235 (syms_of_window): <scroll-preserve-screen-position>: Doc fix.
1236
1237 2005-07-02 Juri Linkov <juri@jurta.org>
1238
1239 * w32term.c (w32_draw_vertical_window_border): Use foreground of
1240 VERTICAL_BORDER_FACE_ID for vertical border line.
1241
1242 2005-07-02 Eli Zaretskii <eliz@gnu.org>
1243
1244 * fileio.c (Fcopy_file): Rearrange the code that calls fchown and
1245 fchmod so that chmod doesn't get called on MSDOS before the file
1246 is closed.
1247
1248 2005-07-01 Jason Rumney <jasonr@gnu.org>
1249
1250 * w32term.c (cleartype_active): New flag for enabling sub-pixel
1251 workaround.
1252 (w32_initialize): Initialize it.
1253 (w32_native_per_char_metric): Allow a couple of extra pixels when
1254 Cleartype is active.
1255
1256 * w32term.c (w32_initialize): Move check for screen reader here
1257 from syms_of_w32term.
1258
1259 2005-06-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1260
1261 * xterm.c (handle_one_xevent): bzero compose_status when nbytes
1262 is not zero.
1263
1264 2005-07-01 Masatake YAMATO <jet@gyve.org>
1265
1266 * emacs.c (main): Passing ADD_NO_RANDOMIZE to `personality'.
1267
1268 2005-06-30 Juri Linkov <juri@jurta.org>
1269
1270 * xdisp.c (x_draw_vertical_border): If left fringe is not present
1271 decrease x coord of vertical border by 1 pixel to not occupy text
1272 area of the right window.
1273
1274 * xterm.c (x_draw_vertical_window_border): Use foreground of
1275 VERTICAL_BORDER_FACE_ID for vertical border line.
1276
1277 * term.c (turn_on_face): In standout mode apply specified
1278 fg to bg, and specified bg to fg (this makes the logic of
1279 inversion on terminal consistent with X).
1280
1281 2005-06-29 Juanma Barranquero <lekktu@gmail.com>
1282
1283 * eval.c (user_variable_p_eh): New function.
1284 (Fuser_variable_p): Use it. Clarify docstring.
1285 Return t for aliases of user options, nil for alias loops.
1286
1287 2005-06-27 Richard M. Stallman <rms@gnu.org>
1288
1289 * eval.c (Fdefvar): Improve error message.
1290
1291 2005-06-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1292
1293 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Fix last
1294 change.
1295
1296 2005-06-27 Juanma Barranquero <lekktu@gmail.com>
1297
1298 * eval.c (Fdefvar): Don't try to set constant symbols.
1299
1300 2005-06-25 Richard M. Stallman <rms@gnu.org>
1301
1302 * macfns.c (Fx_show_tip): Pass new arg to try_window.
1303
1304 * w32fns.c (Fx_show_tip): Pass new arg to try_window.
1305
1306 * xfns.c (Fx_show_tip): Pass new arg to try_window.
1307
1308 * xdisp.c (try_window): New arg CHECK_MARGINS. Calls changed.
1309 (redisplay_window): Handle try_window reporting point in scroll margin.
1310
1311 * dispextern.h (try_window): Declare new arg.
1312
1313 * fileio.c (Fcopy_file): New arg PRESERVE_UID_GID.
1314 Use fchmod to copy the file modes.
1315 (Frename_file): Don't copy UID and GID here;
1316 instead, specify t for PRESERVE_UID_GID when calling Fcopy_file.
1317
1318 * eval.c (call_debugger): Take full care of extending stack limits
1319 to make space for the debugger, and restore the change afterward.
1320 Bind debug-on-error to nil.
1321 (restore_stack_limits): New subroutine.
1322 (Fsignal): Extend specpdl bound along with eval depth bound,
1323 for calling edebug. Don't do either one, for calling debugger.
1324 (find_handler_clause): Don't bind debug-on-error here.
1325 Don't unbind anything either.
1326 Temporarily advance max_specpdl_size for calling
1327 internal_with_output_to_temp_buffer.
1328 (grow_specpdl): Don't alter max_specpdl_size before signaling
1329 an error.
1330 (syms_of_eval) <max-specpdl-size>: Doc fix.
1331
1332 * lread.c (read1): 0.0e+NaN should make a "positive" NaN.
1333
1334 2005-06-24 Eli Zaretskii <eliz@gnu.org>
1335
1336 * fileio.c (Frename_file): Undo last change: no need to ifdef away
1337 chown on DOS_NT platforms.
1338
1339 * w32.c (sys_chown): New function.
1340
1341 * s/ms-w32.h (chown): New; define to sys_chown.
1342
1343 2005-06-24 Juanma Barranquero <lekktu@gmail.com>
1344
1345 * xdisp.c (syms_of_xdisp) <nobreak-char-display>: Doc fix.
1346 (syms_of_xdisp) <void-text-area-pointer>: Doc fix.
1347
1348 * fileio.c (Frename_file)[!DOS_NT]: Don't call chown on MSDOS/Windows.
1349
1350 2005-06-23 Richard M. Stallman <rms@gnu.org>
1351
1352 * xdisp.c (get_next_display_element): Finish reversing the tests of
1353 Vnobreak_char_display.
1354
1355 * xdisp.c (Vnobreak_char_display): Rename from Vshow_nonbreak_escape.
1356 All uses changed.
1357 (Qnobreak_space): Rename from Qno_break_space. All uses changed.
1358 (syms_of_xdisp): Define nobreak-char-display and nobreak-space.
1359
1360 * fileio.c (Frename_file): Preserve owner and group, if possible,
1361 when copying.
1362
1363 2005-06-23 Juanma Barranquero <lekktu@gmail.com>
1364
1365 * abbrev.c (Funexpand_abbrev):
1366 * category.c (Fmake_category_set):
1367 * dispnew.c (Fsleep_for, Fsit_for):
1368 * editfns.c (Fsubst_char_in_region):
1369 * eval.c (Fdefvar, Fdefconst, Feval, Ffuncall):
1370 * frame.c (make_frame_without_minibuffer):
1371 * lread.c (read_vector):
1372 * macfns.c (check_x_frame):
1373 * process.c (Fstop_process, Fcontinue_process):
1374 * search.c (Freplace_match):
1375 * syntax.c (Fstring_to_syntax):
1376 * w32fns.c (check_x_frame, check_x_display_info):
1377 * xfaces.c (x_supports_face_attributes_p):
1378 * xselect.c (Fx_own_selection_internal): Follow error conventions.
1379
1380 * image.c (fn_png_init_io): Don't define it.
1381 (init_png_functions) [HAVE_NTGUI]: Don't initialize fn_png_init_io.
1382 (png_read_from_file): New function, based on png_read_from_memory.
1383 (png_load): Use it, instead of fn_png_init_io.
1384
1385 2005-06-23 Kim F. Storm <storm@cua.dk>
1386
1387 * search.c (Fmatch_data): Remove evaporate option.
1388 (Fset_match_data): Do not mention evaporate option in doc string.
1389 Add commentary explaining evaporate arg (for internal use only).
1390 (unwind_set_match_data): Add comment on evaporate use.
1391
1392 2005-06-22 Miles Bader <miles@gnu.org>
1393
1394 * xfaces.c (Qvertical_border): Rename from `Qvertical_divider'.
1395 (realize_basic_faces, syms_of_xfaces): Update references to it.
1396 * dispextern.h (enum face_id): Rename `VERTICAL_DIVIDER_FACE_ID'
1397 to `VERTICAL_BORDER_FACE_ID'.
1398 * dispnew.c (build_frame_matrix_from_leaf_window): Update references.
1399
1400 2005-06-21 Juri Linkov <juri@jurta.org>
1401
1402 * dispextern.h: Add extern Qframe_set_background_mode.
1403
1404 * xfaces.c: Rename obsolete function Qframe_update_face_colors to
1405 Qframe_set_background_mode.
1406
1407 * frame.c (Fmodify_frame_parameters):
1408 Call frame-set-background-mode after changing the background color
1409 on non-window non-dos branch.
1410
1411 2005-06-21 Juanma Barranquero <lekktu@gmail.com>
1412
1413 * fns.c (Fchar_table_range):
1414 * process.c (Fmake_network_process): Fix spellings.
1415
1416 2005-06-20 Kim F. Storm <storm@cua.dk>
1417
1418 * fns.c (Fsort): Doc fix.
1419
1420 2005-06-20 Miles Bader <miles@gnu.org>
1421
1422 * xfaces.c (Qvertical_divider): New variable.
1423 (realize_basic_faces): Realize its face.
1424 (syms_of_xfaces): Initialize it.
1425
1426 * dispextern.h (enum face_id): Add `VERTICAL_DIVIDER_FACE_ID'.
1427
1428 * dispnew.c (build_frame_matrix_from_leaf_window): Display vertical
1429 window-separator on ttys using `vertical-divider' face by default.
1430
1431 2005-06-17 Richard M. Stallman <rms@gnu.org>
1432
1433 * xdisp.c (get_next_display_element):
1434 Reverse test of Vshow_nonbreak_escape.
1435
1436 * term.c (produce_special_glyphs): Use spec_glyph_lookup_face.
1437 (Ftty_no_underline): New function.
1438 (syms_of_term): defsubr it.
1439
1440 * keyboard.c (read_char): Call restore_getcjmp after jump occurs.
1441
1442 * dispnew.c (spec_glyph_lookup_face): New function.
1443 (build_frame_matrix_from_leaf_window): Use it.
1444
1445 * dispextern.h (spec_glyph_lookup_face): Add declaration.
1446
1447 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
1448
1449 2005-06-12 Richard M. Stallman <rms@gnu.org>
1450
1451 * keyboard.c (read_char): After catching a longjmp,
1452 call restore_getcjmp.
1453
1454 2005-06-17 Juanma Barranquero <lekktu@gmail.com>
1455
1456 * xselect.c (lisp_data_to_selection_data): Fix spelling.
1457
1458 2005-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1459
1460 * macterm.c (mac_compute_glyph_string_overhangs): Don't set
1461 overhangs unless the given glyph type is noncomposite CHAR_GLYPH.
1462 [USE_CARBON_EVENTS] (mac_convert_event_ref): Convert dead key down
1463 events.
1464 (XTread_socket): Don't pass keyboard events with the option
1465 modifier to the system when Vmac_command_key_is_meta is nil or
1466 Vmac_option_modifier is non-nil.
1467 [USE_CARBON_EVENTS] (read_socket_inev): New variable.
1468 [USE_CARBON_EVENTS] (init_command_handler): Fix argument.
1469 [USE_CARBON_EVENTS] (mac_handle_mouse_event): New Carbon event
1470 handler function.
1471 (install_window_handler) [USE_CARBON_EVENTS]: Install it.
1472 (XTread_socket) [USE_CARBON_EVENTS]: Move mouse wheel event
1473 handler part to mac_handle_mouse_event.
1474
1475 2005-06-14 Juanma Barranquero <lekktu@gmail.com>
1476
1477 * eval.c (Fdefvaralias): Rename arguments SYMBOL and ALIASED to
1478 NEW-ALIAS and BASE-VARIABLE, respectively.
1479
1480 2005-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
1481
1482 * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
1483 (get_phys_cursor_geometry, format_mode_line_unwind_data)
1484 (get_line_height_property, x_produce_glyphs): Remove unused vars.
1485
1486 * coding.c (run_pre_post_conversion_on_str): Remove unused var `buf'.
1487
1488 2005-06-13 Eli Zaretskii <eliz@gnu.org>
1489
1490 * w32term.c (x_use_underline_position_properties): New variable.
1491 (x_draw_glyph_string): Remind in a comment to change doc string of
1492 x-use-underline-position-properties if/when underline positioning
1493 is implemented.
1494 (syms_of_w32term): DEFVAR_BOOL x-use-underline-position-properties,
1495 and initialize it to nil.
1496
1497 2005-06-12 Jason Rumney <jasonr@gnu.org>
1498
1499 * w32fns.c (NEWOPENFILENAME): New struct.
1500 (Fx_file_dialog): Use it to trick the system into giving us up to
1501 date dialogs on systems that are documented to support it.
1502 Do not set OFN_FILEMUSTEXIST flag if looking for a directory.
1503
1504 2005-06-12 Eli Zaretskii <eliz@gnu.org>
1505
1506 * w32fns.c (w32_abort): Use the MB_YESNO dialog instead of
1507 MB_ABORTRETRYIGNORE. Never return, even if DebugBreak does.
1508
1509 2005-06-11 Eli Zaretskii <eliz@gnu.org>
1510
1511 * image.c (x_create_x_image_and_pixmap) [HAVE_NTGUI]: Cast 4th arg
1512 to CreateDIBSection to avoid a compiler warning.
1513 (pbm_load): Cast 3rd arg to IMAGE_BACKGROUND to avoid a compiler
1514 warning.
1515 (png_load): Cast return values of fn_png_create_read_struct and
1516 fn_png_create_info_struct, to avoid compiler warnings on W32.
1517 Cast 3rd arg to IMAGE_BACKGROUND and image_background_transparent
1518 to avoid compiler warnings.
1519 (jpeg_load): Cast return value of fn_jpeg_std_error to avoid a
1520 compiler warning on W32. Cast 3rd arg to IMAGE_BACKGROUND to
1521 avoid a compiler warning.
1522 (tiff_load): Cast return values of fn_TIFFOpen and
1523 fn_TIFFClientOpen to avoid compiler warning on W32. Cast 3rd arg
1524 to IMAGE_BACKGROUND to avoid a compiler warning.
1525 (gif_load): Cast return values of fn_DGifOpenFileName and
1526 fn_DGifOpen to avoid compiler warnings on W32. Cast 3rd arg to
1527 IMAGE_BACKGROUND to avoid a compiler warning.
1528 (DrawText) [HAVE_NTGUI || MAC_OS]: If already defined, undef
1529 before redefining.
1530
1531 * w32bdf.c (create_offscreen_bitmap): Cast `bitsp' to `void **' in
1532 the call to CreateDIBSection, to avoid a compiler warning.
1533
1534 2005-06-11 Jason Rumney <jasonr@gnu.org>
1535
1536 * w32fns.c (Fx_file_dialog): Unblock input before falling back to
1537 minibuffer.
1538 * macfns.c (Fx_file_dialog): Likewise.
1539
1540 2005-06-10 Eli Zaretskii <eliz@gnu.org>
1541
1542 * makefile.w32-in ($(TEMACS)): Depend on addsection.exe.
1543
1544 2005-06-10 Juanma Barranquero <lekktu@gmail.com>
1545
1546 * process.c (syms_of_process) [ADAPTIVE_READ_BUFFERING]:
1547 * w32fns.c (syms_of_w32fns): Fix spellings.
1548
1549 2005-06-10 Eli Zaretskii <eliz@gnu.org>
1550
1551 * unexw32.c (COPY_CHUNK, COPY_PROC_CHUNK): Add a new argument
1552 `verbose'; print diagnostic messages only if it is non-zero.
1553 All callers changed to pass a zero value unless DEBUG_DUMP is defined
1554 in the environment.
1555 (copy_executable_and_dump_data): Print section names with %.8s.
1556
1557 2005-06-10 Masatake YAMATO <jet@gyve.org>
1558
1559 * xdisp.c (note_mode_line_or_margin_highlight): Call clear_mouse_face
1560 when mouse_face is not given.
1561
1562 2005-06-09 Luc Teirlinck <teirllm@auburn.edu>
1563
1564 * window.c (Fselect_window): Adapt call to Fselect_frame.
1565
1566 * lisp.h: Update EXFUN of Fselect_frame.
1567
1568 * keyboard.c (command_loop_1): Adapt call to Fselect_frame.
1569
1570 * frame.c (Fhandle_switch_frame, Fselect_frame): Delete unused arg
1571 no_enter.
1572 (Fset_mouse_position, Fset_mouse_pixel_position, Ficonify_frame):
1573 Adapt to above change.
1574
1575 2005-06-10 Juanma Barranquero <lekktu@gmail.com>
1576
1577 * fns.c (Fmemq, Fmaphash): Doc fixes.
1578
1579 2005-06-09 Juanma Barranquero <lekktu@gmail.com>
1580
1581 * xfaces.c (Fdisplay_supports_face_attributes_p):
1582 Fix typo in docstring.
1583
1584 2005-06-08 Steven Tamm <steventamm@mac.com>
1585
1586 * unexmacosx.c (copy_data_segment): Copy __la_sym_ptr2 section
1587 used by gcc4 on intel mac.
1588
1589 2005-06-09 Kim F. Storm <storm@cua.dk>
1590
1591 * search.c (Fmatch_data): Add optional RESEAT arg. Unchain markers
1592 in REUSE list if non-nil; free them if equal to evaporate.
1593 (Fset_match_data): Add optional RESEAT arg. Unchain markers in LIST
1594 if non-nil; free them if equal to evaporate. Use XCAR/XCDR.
1595 (restore_search_regs): Rename from restore_match_data. Uses changed.
1596 (unwind_set_match_data): New function.
1597 (record_unwind_save_match_data): New function like save-match-data.
1598
1599 * lisp.h (Fmatch_data, Fset_match_data): Fix EXFUN.
1600 (record_unwind_save_match_data): Add prototype.
1601 (restore_search_regs): Rename from restore_match_data.
1602
1603 * composite.c (compose_chars_in_text):
1604 * eval.c (do_autoload):
1605 * macmenu.c (set_frame_menubar):
1606 * process.c (read_process_output, exec_sentinel):
1607 * xmenu.c (set_frame_menubar):
1608 * xdisp.c (prepare_menu_bars, update_menu_bar, update_tool_bar):
1609 * w32menu.c (set_frame_menubar):
1610 Use record_unwind_save_match_data.
1611
1612 2005-06-08 Richard M. Stallman <rms@gnu.org>
1613
1614 * xdisp.c (get_next_display_element): Alter previous change:
1615 Distinguish Vshow_nonbreak_escape = t or not t.
1616 For t, use escape_glyph once again, as before previous change.
1617 Use space or hyphen for display, instead of the non-ASCII char.
1618 (syms_of_xdisp) <show-nonbreak-escape>: Doc fix.
1619
1620 * process.c (Fstart_process): Don't touch command_channel_p slot.
1621
1622 * process.h (struct process): Delete command_channel_p.
1623
1624 2005-06-07 Masatake YAMATO <jet@gyve.org>
1625
1626 * xdisp.c (note_mode_line_or_margin_highlight):
1627 Check the overlapping of re-rendering area to avoid flickering.
1628 (note_mouse_highlight): Call clear_mouse_face if PART
1629 is not ON_MODE_LINE nor ON_HEADER_LINE.
1630
1631 2005-06-07 Kim F. Storm <storm@cua.dk>
1632
1633 * process.c: Improve commentary for adaptive read buffering.
1634
1635 2005-06-06 Stefan Monnier <monnier@iro.umontreal.ca>
1636
1637 * xterm.c (x_create_toolkit_scroll_bar): Use XtNarrowScrollbars
1638 if available.
1639
1640 2005-06-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1641
1642 * macmenu.c (menu_quit_handler, install_menu_quit_handler):
1643 New functions for popping down menus on C-g.
1644 (set_frame_menubar, mac_menu_show): Call install_menu_quit_handler.
1645
1646 * macterm.c: Make mac_quit_char_modifiers and mac_quit_char_keycode
1647 non-static.
1648
1649 * config.in: Add HAVE_CANCELMENUTRACKING.
1650
1651 2005-06-06 Eli Zaretskii <eliz@gnu.org>
1652
1653 * w32heap.h (OFFSET_TO_RVA, RVA_TO_OFFSET, RVA_TO_PTR): Remove macros.
1654
1655 * unexw32.c (RVA_TO_PTR): Move here from w32heap.h.
1656
1657 * w32proc.c (RVA_TO_PTR): New macro.
1658
1659 * w32heap.c (RVA_TO_PTR): No need to #undef now.
1660
1661 * makefile.w32-in ($(BLD)/emacs.$(O), $(BLD)/w32select.$(O)):
1662 Depend on w32heap.h.
1663
1664 2005-06-06 Luc Teirlinck <teirllm@auburn.edu>
1665
1666 * keyboard.c (command_loop_1): Update Vthis_original_command.
1667
1668 2005-06-06 Richard M. Stallman <rms@gnu.org>
1669
1670 * xmenu.c (popup_get_selection): Undo previous change.
1671
1672 2005-06-06 Juri Linkov <juri@jurta.org>
1673
1674 * xdisp.c (Qno_break_space): New variable.
1675 (syms_of_xdisp): Initialize it.
1676 (get_next_display_element): Add no-break space and soft hypen
1677 codes for iso8859-2 and iso8859-5. Don't add `\' for them.
1678 Use `no-break-space' face for no-break spaces.
1679
1680 2005-06-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1681
1682 * window.c (delete_window): Handle the case where a h/vchild has
1683 a h/vchild.
1684
1685 2005-06-05 Eli Zaretskii <eliz@gnu.org>
1686
1687 * w32.c (sys_setsockopt): Change arg 4 to `const void *'. In the
1688 call to pfn_setsockopt, cast optval to `const char *'.
1689
1690 2005-06-04 Eli Zaretskii <eliz@gnu.org>
1691
1692 * w32.c (gettimeofday): Use struct _timeb, not struct timeb.
1693 (open_unc_volume): Cast return value of map_w32_filename, to avoid
1694 compiler warnings.
1695
1696 * s/ms-w32.h (fileno): Don't define if already defined.
1697
1698 * emacs.c: Include w32heap.h, to avoid compiler warning about sbrk.
1699
1700 * makefile.w32-in (DOC): Define to point to the generated DOC-X.
1701
1702 2005-06-04 Richard M. Stallman <rms@gnu.org>
1703
1704 * xmenu.c (popup_get_selection): Click not in menu deactivates menu.
1705
1706 2005-06-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1707
1708 * macmenu.c (cleanup_popup_menu): New function.
1709 (Fx_popup_menu): Unwind protect cleanup_popup_menu in case
1710 mac_menu_show Quit:s.
1711 (mac_menu_show): Quit on cancel if not popped up on click (i.e.
1712 a dialog).
1713
1714 2005-06-04 Kim F. Storm <storm@cua.dk>
1715
1716 * coding.c (decode_coding_string): Handle CODING_FINISH_INTERRUPT.
1717
1718 * callproc.c (Fcall_process): Don't use alloca to gradually
1719 increase size of buf, as it effectively uses twice the necessary
1720 space on the stack. Instead, pre-allocate buf of full size, and
1721 gradually increase the read size.
1722
1723 * bytecode.c (BYTE_CODE_QUIT): Check Vthrow_on_input.
1724
1725 * eval.c (unbind_to): Preserve value of Vquit_flag.
1726
1727 * xterm.c (handle_one_xevent): Also ignore mouse motion just
1728 before a button release event.
1729
1730 2005-06-03 Juanma Barranquero <lekktu@gmail.com>
1731
1732 * xfaces.c (Finternal_lisp_face_equal_p): Really report
1733 on faces in a frame, if the argument FRAME is non-nil.
1734 Improve argument/docstring consistency.
1735
1736 2005-06-02 Kim F. Storm <storm@cua.dk>
1737
1738 * xdisp.c (MODE_LINE_NOPROP_LEN): New macro.
1739 (x_consider_frame_title, Fformat_mode_line): Save offset into
1740 mode_line_noprop_buf rather than pointer, in case buffer is relocated.
1741
1742 2005-06-01 Kim F. Storm <storm@cua.dk>
1743
1744 * fns.c (mapcar1): Maybe exit loop if original sequence was modified.
1745
1746 2005-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1747
1748 * macterm.c (mac_to_x_fontname, mac_do_list_fonts): Set XLFD
1749 resolution fields for scalable fonts to 0.
1750
1751 * xfaces.c (build_scalable_font_name): Round pixel size to the
1752 nearest integer.
1753
1754 2005-06-01 Kim F. Storm <storm@cua.dk>
1755
1756 * xdisp.c (display_mode_line): Support nested calls to redisplay
1757 and format-mode-line. Set mode_line_target to MODE_LINE_DISPLAY.
1758
1759 2005-05-31 Stefan Monnier <monnier@iro.umontreal.ca>
1760
1761 * fileio.c (Finsert_file_contents):
1762 * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
1763
1764 2005-05-31 Kim F. Storm <storm@cua.dk>
1765
1766 * xdisp.c (mode_line_noprop_buf, mode_line_noprop_buf_end)
1767 (mode_line_noprop_ptr): Rename from frame_title_*.
1768 (store_mode_line_noprop_char): Rename from store_frame_title_char.
1769 (store_mode_line_noprop): Rename from store_frame_title.
1770 (mode_line_target): New enum to specify current output target
1771 for mode line formatting.
1772 (display_mode_element): Test it rather than frame_title_ptr and
1773 mode_line_string_list to determine where output should go.
1774 (mode_line_proptrans_alist, mode_line_string_alist): Make static.
1775 (Vmode_line_unwind_vector): New variable.
1776 (format_mode_line_unwind_data, unwind_format_mode_line):
1777 New functions for unwind protection in mode line formatting.
1778 (x_consider_frame_title): Use them and new local var 'title_start'
1779 to support nested calls to format-mode-line and redisplay.
1780 Set mode_line_target to MODE_LINE_TITLE.
1781 (Fformat_mode_line): Use them and new local var 'string_start' to
1782 support nested calls to format-mode-line and redisplay.
1783 Set mode_line_target to MODE_LINE_NOPROP or MODE_LINE_STRING.
1784 Don't trim trailing dashes.
1785 (decode_mode_spec): Don't make infinite number of trailing dashes
1786 for MODE_LINE_NOPROP and MODE_LINE_STRING targets.
1787 (syms_of_xdisp): Initialize and staticpro mode_line_string_face,
1788 mode_line_string_face_prop, and Vmode_line_unwind_vector.
1789 (init_xdisp): Initialize mode_line_noprop_ptr to start of _buf.
1790 Initialize mode_line_target to MODE_LINE_DISPLAY.
1791
1792 2005-05-29 Richard M. Stallman <rms@gnu.org>
1793
1794 * buffer.c (Fbuffer_local_value): Call indirect_variable.
1795
1796 2005-05-28 Masatake YAMATO <jet@gyve.org>
1797
1798 * xdisp.c (note_mode_line_or_margin_highlight): Change the
1799 pointer to a hand cursor when hoovering over a mouse-face.
1800
1801 2005-05-27 Kenichi Handa <handa@m17n.org>
1802
1803 * xterm.c (x_encode_char): Call check_ccl_update in advance.
1804
1805 * ccl.c: Now an element of Vccl_program_table is a vector of
1806 length 4, not 3.
1807 (ccl_get_compiled_code): New arg idx. Caller changed.
1808 Adjust for the change of Vccl_program_table.
1809 (setup_ccl_program): Adjust for the change of Vccl_program_table.
1810 (check_ccl_update): New function.
1811 (Fregister_ccl_program): Use ASET to set an element of a vector.
1812 Adjusted for the change of Vccl_program_table.
1813
1814 * ccl.h (struct ccl_program): New member idx.
1815 (check_ccl_update): Extern it.
1816
1817 2005-05-27 Juanma Barranquero <lekktu@gmail.com>
1818
1819 * image.c (Vimage_library_alist): Move from image.el.
1820 (syms_of_image): Defvar it.
1821 (lookup_image_type): Use it.
1822
1823 * buffer.c (Fbuffer_local_value): Make argument name match its use
1824 in docstring.
1825
1826 2005-05-26 Juanma Barranquero <lekktu@gmail.com>
1827
1828 * keyboard.c (Frecursive_edit): Fix typo in docstring.
1829 (Fposn_at_x_y): Make argument name match its use in docstring.
1830
1831 2005-05-26 Lute Kamstra <lute@gnu.org>
1832
1833 * eval.c (Frun_hooks): Mention run-mode-hooks in docstring.
1834
1835 2005-05-24 Masatake YAMATO <jet@gyve.org>
1836
1837 * xdisp.c (note_mode_line_or_margin_highlight): Use b and e
1838 as loop sentinels.
1839
1840 2005-05-24 Nick Roberts <nickrob@snap.net.nz>
1841
1842 * xmenu.c (Fx_popup_dialog): Add a third boolean argument to
1843 select frame title ("Question"/"Information").
1844 (xdialog_show): Use it.
1845
1846 * macmenu.c (Fx_popup_dialog, mac_dialog_show): As for xmenu.c.
1847
1848 * w32menu.c (Fx_popup_dialog, w32_dialog_show): As for xmenu.c.
1849
1850 * fns.c (Fyes_or_no_p, Fy_or_n_p): Call Fx_popup_dialog with
1851 a third argument (Qnil).
1852
1853 * lisp.h: x-popup-dialog can have three arguments.
1854
1855 * editfns.c (Fmessage_box): Use "Information" for frame title.
1856
1857 2005-05-23 Thien-Thi Nguyen <ttn@gnu.org>
1858
1859 * termcap.c [VMS]: Include <starlet.h>.
1860
1861 2005-05-23 Masatake YAMATO <jet@gyve.org>
1862
1863 * xdisp.c (note_mode_line_or_margin_highlight): Add code
1864 for mouse-face. Change the type of the first argument from `window'
1865 to `Lisp_Object'.
1866 (note_mouse_highlight): Call note_mode_line_or_margin_highlight with
1867 window instead of w.
1868
1869 2005-05-22 Andreas Schwab <schwab@suse.de>
1870
1871 * process.c (send_process): Move misplaced volatile.
1872
1873 2005-05-21 Richard M. Stallman <rms@gnu.org>
1874
1875 * xdisp.c (display_mode_element): If we're processing a list and
1876 padding is specified, put it after the last element.
1877
1878 2005-05-21 Eli Zaretskii <eliz@gnu.org>
1879
1880 * fileio.c (Fexpand_file_name) [DOS_NT]: Don't try to support
1881 "superroot" on DOS_NT systems.
1882
1883 2005-05-21 David Hunter <hunterd42@comcast.net> (tiny change)
1884
1885 * process.c (send_process): Restore the SIGPIPE handler if we
1886 catch a SIGPIPE.
1887
1888 2005-05-20 Juanma Barranquero <lekktu@gmail.com>
1889
1890 * image.c (lookup_image, png_read_from_memory): Remove hacks (and
1891 misleading comments).
1892 (DEF_IMGLIB_FN): Use C calling convention for image libraries.
1893
1894 2005-05-20 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
1895
1896 * window.c (Fwindow_inside_edges, Fwindow_inside_pixel_edges):
1897 Correct the right value.
1898
1899 2005-05-19 Nick Roberts <nickrob@snap.net.nz>
1900
1901 * keyboard.c (syms_of_keyboard): Remove Lisp variables
1902 post-command-idle-hook and post-command-idle-delay.
1903 (command_loop_1): Don't try to execute post-command-idle-hook.
1904
1905 2005-05-16 Kim F. Storm <storm@cua.dk>
1906
1907 * xdisp.c (handle_display_prop): Handle empty replacement.
1908 (handle_single_display_spec): Return -1 for empty replacement.
1909
1910 * keyboard.c (adjust_point_for_property): Skip empty overlay string.
1911
1912 * .gdbinit (pitx): Print more info about iterator.
1913
1914 2005-05-16 Andreas Schwab <schwab@suse.de>
1915
1916 * unexmacosx.c (unexec_realloc): Move declarations before statements.
1917
1918 2005-05-14 Richard M. Stallman <rms@gnu.org>
1919
1920 * xdisp.c (message3): Call cancel_echoing.
1921
1922 * alloc.c (Fmemory_full_p): New function.
1923 (syms_of_alloc): defsubr it.
1924
1925 * process.c (send_process_trap): Unblock SIGPIPE.
1926 (send_process): Reset SIGPIPE handler before reporting error.
1927
1928 2005-05-14 Nick Roberts <nickrob@snap.net.nz>
1929
1930 * emacs.c (syms_of_emacs): Fix doc string for system-type.
1931
1932 2005-05-13 Richard M. Stallman <rms@gnu.org>
1933
1934 * fileio.c (Ffind_file_name_handler): Handle lambda-exp as handler.
1935 (Finsert_file_contents): If we read 0 bytes from a special file,
1936 unlock the visited file if we locked it.
1937 (Fmake_symbolic_link, Frecent_auto_save_p): Doc fixes.
1938 (Ffile_exists_p, Ffile_symlink_p): Doc fixes.
1939
1940 2005-05-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1941
1942 * emacs.c (main) [MAC_OS8]: Call init_atimer before mac_term_init.
1943
1944 * keyboard.c (readable_events) [USE_TOOLKIT_SCROLL_BARS]:
1945 Regard toolkit scroll bar thumb drag events as squeezable and prevent
1946 redisplay from being paused by them.
1947
1948 * mac.c [!MAC_OSX]: Include keyboard.h and syssignal.h.
1949 [!MAC_OSX] (target_ticks): Remove variable.
1950 [!MAC_OSX] (check_alarm, pause, index): Remove functions.
1951 [!MAC_OSX && __MRC__] (sys_strftime): Likewise.
1952 [!MAC_OSX] (select): If fd 0 is not set in rfds and some input
1953 event occurs before timeout, behave as if the function were interrupted.
1954 [!MAC_OSX] (sigblock, sigsetmask, alarm): Simulate SIGALRM
1955 handling using Time Manager routines.
1956 [!MAC_OSX] (mac_atimer_task, mac_atimer_qlink, signal_mask):
1957 New variables.
1958 [!MAC_OSX] (mac_atimer_handler, set_mac_atimer, remove_mac_atimer)
1959 (setitimer): New functions.
1960
1961 * macfns.c, macmenu.c: Don't include signal.h.
1962
1963 * macterm.c [USE_TOOLKIT_SCROLL_BARS] (get_control_part_bounds):
1964 Rename from get_control_part_bound. All callers changed.
1965 (x_scroll_bar_clear): New function.
1966 (x_clear_frame): Use it.
1967 (XTset_vertical_scroll_bar): Don't call Draw1Control.
1968 (x_scroll_bar_handle_click): Change type of second argument from
1969 int to ControlPartCode.
1970 (check_alarm): Remove declaration.
1971 (XTread_socket) [!TARGET_API_MAC_CARBON]: Don't call it.
1972 (XTread_socket): Use ControlPartCode instead of SInt16.
1973
1974 2005-05-13 Nozomu Ando <nand@mac.com>
1975
1976 * unexmacosx.c: Include assert.h.
1977 (MACOSX_MALLOC_MULT16): New define.
1978 [MACOSX_MALLOC_MULT16] (ptr_in_unexec_regions): Determine whether
1979 ptr is in unexec regions by checking it is multiple of 16.
1980 (unexec_malloc_header_t): New typedef.
1981 (unexec_malloc, unexec_realloc, unexec_free): Store and use
1982 allocated size information in unexec_malloc_header.
1983
1984 2005-05-10 Richard M. Stallman <rms@gnu.org>
1985
1986 * xterm.c (noinclude): Add #undef.
1987
1988 * image.c, xfns.c, xmenu.c: Don't include signal.h.
1989
1990 2005-05-09 Juanma Barranquero <lekktu@gmail.com>
1991
1992 * fileio.c (Fexpand_file_name, Frename_file, Fadd_name_to_file)
1993 (Fmake_symbolic_link, Faccess_file, Frecent_auto_save_p):
1994 Doc fixes.
1995
1996 * dired.c (Ffile_name_completion): Make argument name
1997 match its use in docstring.
1998
1999 2005-05-08 Luc Teirlinck <teirllm@auburn.edu>
2000
2001 * eval.c (Fdefvaralias): Remove any pre-existing
2002 variable-documentation property of the alias.
2003
2004 2005-05-07 Thien-Thi Nguyen <ttn@gnu.org>
2005
2006 * xfns.c (start_hourglass): Do nothing when running on a tty.
2007
2008 2005-05-07 Juanma Barranquero <lekktu@gmail.com>
2009
2010 * fns.c (Fchar_table_range): Fix typos in docstring.
2011
2012 2005-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
2013
2014 * fns.c (Fchar_table_range): Yet Another Int/Lisp_Object Mixup.
2015
2016 2005-05-06 Eli Zaretskii <eliz@gnu.org>
2017
2018 * lread.c (Flocate_file_internal): Doc fix.
2019
2020 * Makefile.in (lisp, shortlisp): Add jka-cmpr-hook.elc.
2021
2022 2005-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2023
2024 * macselect.c (x_own_selection): Accept Lisp string as result of
2025 selection converter function.
2026 (x_clear_frame_selections): Don't call x-lost-selection-functions
2027 if Emacs is not owner of the selection.
2028 (Vmac_services_selection): Put variable and initialization in
2029 #ifdef MAC_OSX.
2030 (syms_of_macselect) [MAC_OSX]: Set default value of
2031 Vmac_services_selection to PRIMARY.
2032
2033 * macterm.c (toolkit_scroll_bar_interaction): Remove unused variable.
2034 (mac_handle_tool_bar_click): Remove unused function and declaration.
2035 [USE_TOOLKIT_SCROLL_BARS] (scroll_bar_timer_callback)
2036 (install_scroll_bar_timer, set_scroll_bar_timer)
2037 (control_part_code_to_scroll_bar_part, construct_scroll_bar_click)
2038 (get_control_part_bound, x_scroll_bar_handle_press)
2039 (x_scroll_bar_handle_release, x_scroll_bar_handle_drag)
2040 (x_set_toolkit_scroll_bar_thumb): New functions and declarations.
2041 [USE_TOOLKIT_SCROLL_BARS] (last_scroll_bar_part, scroll_bar_timer)
2042 (scroll_bar_timer_event_posted_p): New variables.
2043 [USE_TOOLKIT_SCROLL_BARS] (SCROLL_BAR_FIRST_DELAY)
2044 (SCROLL_BAR_CONTINUOUS_DELAY): New macros.
2045 (x_scroll_bar_create): Set control reference with NewControl.
2046 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
2047 Initialize track_top and track_height to nil.
2048 (x_scroll_bar_set_handle, x_scroll_bar_note_movement):
2049 Put functions in #ifndef USE_TOOLKIT_SCROLL_BARS.
2050 (XTset_vertical_scroll_bar): Don't make space between scroll bar
2051 and associated window.
2052 (XTset_vertical_scroll_bar) [MAC_OSX]: Get scroll bar area width
2053 from window config.
2054 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
2055 Set track_top and track_height to nil when scroll bar size is changed.
2056 Recalculate them if they are nil.
2057 (XTread_socket) [MAC_OSX]: Use control kind to determine if the
2058 clicked control is a scroll bar.
2059 (XTread_socket) [USE_TOOLKIT_SCROLL_BARS]: Use toolkit scroll bar
2060 event handler functions. Don't add modifiers to scroll bar click
2061 events. Call scroll bar release handler when window is deactivated.
2062 (mac_initialize): Remove unused code for X toolkit.
2063 (syms_of_macterm) [!USE_TOOLKIT_SCROLL_BARS]:
2064 Initialize Vx_toolkit_scroll_bars to nil.
2065
2066 * macterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
2067 New members track_top and track_height.
2068
2069 * sysselect.h [DARWIN || MAC_OSX]: Temporarily undefine
2070 init_process when including sys/select.h.
2071
2072 2005-05-05 Luc Teirlinck <teirllm@auburn.edu>
2073
2074 * eval.c (Fdefvaralias): Doc fix.
2075
2076 * xmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
2077
2078 2005-05-05 Kim F. Storm <storm@cua.dk>
2079
2080 * buffer.c (init_buffer_once): Set cursor_in_non_selected_windows
2081 default value.
2082 (syms_of_buffer): Add default-cursor-in-non-selected-windows.
2083 Fix type of cursor-in-non-selected-windows.
2084
2085 2005-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2086
2087 * mac.c: #undef init_process so not to conflict with system headers.
2088
2089 2005-05-02 Richard M. Stallman <rms@gnu.org>
2090
2091 * buffer.c (syms_of_buffer): Define cursor-in-non-selected-windows.
2092
2093 * buffer.h (struct buffer): Add cursor_in_non_selected_windows slot.
2094
2095 * xdisp.c (Vcursor_in_non_selected_windows)
2096 (Qcursor_in_non_selected_windows): Vars deleted.
2097 (syms_of_xdisp): Don't initialize them.
2098 (get_window_cursor_type): Use cursor_in_non_selected_windows
2099 buffer slot.
2100
2101 2005-05-02 Kim F. Storm <storm@cua.dk>
2102
2103 * macros.c (executing_kbd_macro_index): Rename from
2104 executing_macro_index. All uses changed.
2105 (executing_kbd_macro_iterations): Rename from
2106 executing_macro_iterations. All uses changed.
2107 (executing_kbd_macro): Rename from executing_macro.
2108 All uses changed.
2109 (syms_of_macros): Rename Lisp var executing-macro-index to
2110 executing-kbd-macro-index.
2111
2112 * xdisp.c (move_it_in_display_line_to): Fix last change.
2113
2114 2005-05-01 Luc Teirlinck <teirllm@auburn.edu>
2115
2116 * xmenu.c (Fx_popup_menu): Doc fix.
2117
2118 * charset.c (syms_of_charset): Delete defsubr for Schars_in_region.
2119
2120 2005-05-02 Jason Rumney <jasonr@gnu.org>
2121
2122 * emacs.c (USAGE3, USAGE4): Keep strings below 2048 bytes.
2123
2124 2005-05-02 Nozomu Ando <nand@mac.com>
2125
2126 * sysselect.h: Fix typo.
2127
2128 2005-05-02 Nick Roberts <nickrob@snap.net.nz>
2129
2130 * charset.c (Fchars_in_region): Remove as obsolete.
2131
2132 2005-05-01 Kim F. Storm <storm@cua.dk>
2133
2134 * xdisp.c (move_it_in_display_line_to): Stop if we move beyond
2135 TO_CHARPOS. This may happen if last glyphs was an image or stretch
2136 glyph.
2137
2138 2005-05-01 Luc Teirlinck <teirllm@auburn.edu>
2139
2140 * dispnew.c (sit_for): Vexecuting_macro -> Vexecuting_kbd_macro.
2141
2142 2005-05-01 Richard M. Stallman <rms@gnu.org>
2143
2144 * xmenu.c [not HAVE_X_TOOLKIT] (xmenu_show):
2145 If user cancels the menu, quit unless FOR_CLICK.
2146
2147 * macros.c (Vexecuting_kbd_macro): Rename from Vexecuting_macro.
2148 All uses changed.
2149 (syms_of_macros): Define only executing-kbd-macro, not executing-macro.
2150 * keyboard.c: Change Vexecuting_macro to Vexecuting_kbd_macro.
2151 * macros.h (Vexecuting_kbd_macro): Declare instead of Vexecuting_macro.
2152 * commands.h (Vexecuting_kbd_macro): Likewise.
2153
2154 2005-05-01 Thien-Thi Nguyen <ttn@gnu.org>
2155
2156 * sysdep.c (get_frame_size) [VMS]: Use a fresh i/o channel.
2157
2158 2005-04-30 Richard M. Stallman <rms@gnu.org>
2159
2160 * fileio.c (Ffind_file_name_handler): Handle the `operations'
2161 property of the file name handler.
2162 (Qoperations): New variable.
2163 (syms_of_fileio): Initialize and staticpro it.
2164
2165 * xdisp.c (set_message_1): Delete xassert.
2166
2167 2005-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2168
2169 * mac.c: Don't include time.h. Include sysselect.h after systime.h.
2170
2171 * macfns.c (Fx_server_version): Add BLOCK_INPUT around Gestalt.
2172
2173 * macgui.h [HAVE_CARBON && MAC_OSX]: Don't undefine/define mktime
2174 before/after including Carbon.h if there is a working mktime.
2175
2176 2005-04-28 Kim F. Storm <storm@cua.dk>
2177
2178 * xfaces.c (resolve_face_name): Add arg SIGNAL_P. Calls changed.
2179 Fix cyclic alias check. If alias loop is detected, signal
2180 circular-list error if SIGNAL_P, and return Qdefault if !SIGNAL_P.
2181
2182 2005-04-28 Lute Kamstra <lute@gnu.org>
2183
2184 * eval.c (do_autoload): Record only autoloads in the autoload
2185 property of symbols.
2186
2187 2005-04-28 Nick Roberts <nickrob@snap.net.nz>
2188
2189 * emacs.c (USAGE1): Add --basic-display and --quick options.
2190
2191 2005-04-27 Kim F. Storm <storm@cua.dk>
2192
2193 * data.c (syms_of_data) Staticpro Qcyclic_variable_indirection.
2194
2195 2005-04-26 Richard M. Stallman <rms@gnu.org>
2196
2197 * window.c (Fsame_window_p, Fspecial_display_p): Doc fixes.
2198 (syms_of_window): Doc fixes.
2199
2200 * indent.c (Fvertical_motion): Undo previous change.
2201
2202 2005-04-26 Kenichi Handa <handa@m17n.org>
2203
2204 * fns.c (char_table_range): New function.
2205 (Fchar_table_range): Signal an error if characters in the range
2206 have inconsistent values. Don't check the parent.
2207
2208 2005-04-25 Kenichi Handa <handa@m17n.org>
2209
2210 * fontset.c (fontset_set): Fix previous change.
2211
2212 2005-04-24 Richard M. Stallman <rms@gnu.org>
2213
2214 * indent.c (Fvertical_motion): Bind fontification-functions to nil.
2215
2216 2005-04-24 Eli Zaretskii <eliz@gnu.org>
2217
2218 * regex.c (re_search_2, re_match_2_internal): Convert second arg
2219 of RE_TRANSLATE to int, to shut up GCC warnings.
2220
2221 * fileio.c (Fcopy_file): Doc fix.
2222 [MSDOS]: Fix call to emacs_open: buffer_file_type not defined and
2223 not needed.
2224
2225 2005-04-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2226
2227 * Makefile.in [HAVE_CARBON] (MAC_OBJ): Add macselect.o.
2228 (SOME_MACHINE_OBJECTS): Likewise.
2229 (mac.o): Depend on ccl.h.
2230 (macselect.o): New target.
2231
2232 * emacs.c (main) [MAC_OS8 || MAC_OSX && HAVE_CARBON]:
2233 Call syms_of_macselect.
2234
2235 * frame.c (Fdelete_frame) [MAC_OS]: Call x_clear_frame_selections.
2236
2237 * mac.c [!TARGET_API_MAC_CARBON]: Don't include charset.h or coding.h.
2238 (QCLIPBOARD): Remove variable.
2239 (syms_of_mac): Don't initialize it.
2240 (Fmac_paste_function, Fmac_cut_function, Fx_selection_exists_p):
2241 Remove functions.
2242 (syms_of_mac): Don't defsubr them.
2243 [TARGET_API_MAC_CARBON] (Qmime_charset, QNFD, QNFKD, QNFC, QNFKC)
2244 (QHFS_plus_D, QHFS_plus_C): New variables.
2245 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
2246 [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp)
2247 (cfstring_create_normalized): New functions.
2248 [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Likewise.
2249 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
2250
2251 * macterm.c (handling_window_update, terminate_flag):
2252 Remove variables.
2253 (do_window_update, do_ae_quit_application, XTread_socket):
2254 Don't use them.
2255 (WNE_SLEEP_AT_SUSPEND, WNE_SLEEP_AT_RESUME): Don't define.
2256 [USE_CARBON_EVENTS && MAC_OSX] (mac_handle_service_event)
2257 (init_service_handler): Move to macselect.c. Remove declarations.
2258 [USE_CARBON_EVENTS && MAC_OSX] (init_service_handler): Add extern.
2259 (Qapplication, Qabout): New variables.
2260 (syms_of_mac): Initialize them.
2261 [USE_CARBON_EVENTS && MAC_OSX] (Qpreferences, Qservices, Qpaste)
2262 (Qperform): New variables.
2263 (syms_of_mac) [USE_CARBON_EVENTS && MAC_OSX]: Initialize them.
2264 (do_get_menus) [TARGET_API_MAC_CARBON]: Don't call AppendResMenu.
2265 (do_menu_choice): Unhighlight menu bar also when menu_id is 0.
2266 (mac_store_application_menu_event, init_menu_bar): New functions.
2267 [USE_CARBON_EVENTS] (mac_handle_command_event)
2268 (init_command_handler): New functions.
2269 (mac_handle_window_event): Return noErr on window update event.
2270 (do_ae_quit_application): Call mac_store_application_menu_event.
2271 (mac_initialize) [USE_CARBON_EVENTS]: Call init_command_handler
2272 and init_menu_bar.
2273
2274 * macterm.h (x_clear_frame_selections): Add extern.
2275
2276 * macselect.c: New file for selection processing on Mac OS.
2277
2278 2005-04-23 Richard M. Stallman <rms@gnu.org>
2279
2280 * fileio.c (Fcopy_file): New arg MUSTBENEW.
2281 (Frename_file): Pass new arg to Fcopy_file.
2282
2283 * window.c (window_size_fixed): Variable deleted.
2284 (syms_of_window): Initialize window-size-fixed to nil.
2285 But don't DEFVAR window_size_fixed.
2286
2287 2005-04-23 Andreas Schwab <schwab@suse.de>
2288
2289 * m/macppc.h (LD_SWITCH_MACHINE) [LINUX]: Don't define.
2290 (START_FILES, LIB_STANDARD) [LINUX && _ARCH_PPC64]: Override to
2291 use lib64 instead of lib.
2292 (_LP64) [_ARCH_PPC64]: Define if not defined.
2293
2294 2005-04-23 David Hunter <hunterd42@comcast.net> (tiny change)
2295
2296 * s/ms-w32.h (HAVE_PWD_H): Define.
2297
2298 2005-04-22 Kenichi Handa <handa@m17n.org>
2299
2300 * fns.c (copy_sub_char_table): Explicitly copy the default value
2301 of the sub-chartable.
2302
2303 * fontset.c (fontset_set): When a sub-chartable is created,
2304 explicitly sets the defalt value.
2305
2306 2005-04-22 Kim F. Storm <storm@cua.dk>
2307
2308 * fns.c (Fplist_get): Replace by Fsafe_plist_get.
2309 (Fsafe_plist_get): Rename to Fplist_get.
2310 (Fsafe_get): Remove, as Fget now uses safe Fplist_get.
2311 (defsubr): Remove defsubr for Fsafe_plist_get and Fsafe_get.
2312
2313 * lisp.h (Fsafe_plist_get, Fsafe_get): Remove EXFUN.
2314
2315 * xdisp.c (store_mode_line_string, produce_stretch_glyph)
2316 (note_mode_line_or_margin_highlight, note_mouse_highlight):
2317 Use Fplist_get instead of Fsafe_plist_get.
2318
2319 * xfaces.c (resolve_face_name): Use Fget instead of Fsafe_get.
2320
2321 2005-04-21 Miles Bader <miles@gnu.org>
2322
2323 * xdisp.c (dump_glyph_row): Don't display overlay_arrow_p field.
2324
2325 2005-04-20 Thien-Thi Nguyen <ttn@gnu.org>
2326
2327 * sysdep.c: Remove reference to defunct vms-pwd.h.
2328 * dired.c: Likewise. Also, for pwd.h, use HAVE_PWD_H, not !VMS.
2329 * editfns.c, fileio.c, filelock.c, sysdep.c, xrdb.c: Likewise.
2330
2331 * config.in: Regenerate.
2332
2333 2005-04-20 Kenichi Handa <handa@m17n.org>
2334
2335 * lisp.h (CHAR_TABLE_DEFAULT_SLOT_ASCII): New macro.
2336 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_CONTROL): New macro.
2337 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_GRAPHIC): New macro.
2338
2339 * alloc.c (make_sub_char_table): Argument changed to initial
2340 value of the slots.
2341
2342 * data.c (Faref): Handle special slots used as default values of
2343 ascii, eight-bit-control, eight-bit-control. Don't ignore a
2344 default value set for a group of characters.
2345 (Faset): Signal an error if IDXVAL is not a valid character code.
2346 Make a sub-chartable with correct initial value.
2347
2348 * fns.c (Fset_char_table_range): Don't set slots used as default
2349 values for ascii, eight-bit-control, eight-bit-graphic.
2350 Don't call Faref with charset-id.
2351 (Fset_char_table_default): Document how to treat normal character
2352 argument. Handle special slots used as default values of ascii,
2353 eight-bit-control, eight-bit-control. Make a sub chartable if
2354 necessary.
2355
2356 2005-04-20 Kenichi Handa <handa@m17n.org>
2357
2358 * search.c (boyer_moore): Fix previous change.
2359
2360 2005-04-19 Kim F. Storm <storm@cua.dk>
2361
2362 * xdisp.c (setup_for_ellipsis): Reset saved_face_id to use default
2363 face unless last visible char and first invisible char have the
2364 same face. Also use default face if saved_face_id is undefined.
2365
2366 2005-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2367
2368 * macgui.h (MacFontStruct): Remove member `fontname'. Add member
2369 `full_name'.
2370 [TARGET_API_MAC_CARBON] (MacFontStruct): Use type int for
2371 mac_scriptcode member.
2372
2373 * macterm.c (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): Remove variables.
2374 (syms_of_mac): Don't initialize them.
2375 (Vmac_charset_info_alist): New variable.
2376 (syms_of_mac): Defvar it.
2377 (create_text_encoding_info_alist): New function.
2378 (decode_mac_font_name, mac_to_x_fontname)
2379 (x_font_name_to_mac_font_name, init_font_name_table): Don't hard
2380 code the correspondence among XLFD charsets, Mac script codes, and
2381 Emacs coding systems. Use Vmac_charset_info_alist and result of
2382 create_text_encoding_info_alist instead.
2383 (init_font_name_table) [TARGET_API_MAC_CARBON]: Use Font Manager
2384 routines also on Mac OS Classic.
2385 (init_font_name_table) [!TARGET_API_MAC_CARBON]:
2386 Use add_font_name_table_entry.
2387 (mac_do_list_fonts): Regard 0 in XLFD scaleble fields as
2388 specified. Derive unspecified scalable fields from specified one.
2389 (x_list_fonts): Consider Valternate_fontname_alist.
2390 (kDefaultFontSize): Change value from 9 to 12.
2391 (XLoadQueryFont): Get decoded font family, font face, and charset
2392 from x_font_name_to_mac_font_name. Set full name of loaded font.
2393 (mac_unload_font): Free `full_name' member.
2394 (x_load_font): Don't try XLoadQueryFont if x_list_fonts returns
2395 NULL. Copy full_name member of struct MacFontStruct to that of
2396 struct font_info.
2397
2398 2005-04-19 Kim F. Storm <storm@cua.dk>
2399
2400 * xdisp.c (handle_stop): Set saved_face_id to current face if
2401 selective_display_ellipsis_p so ellipsis will be shown in same
2402 face as preceding text.
2403 (setup_for_ellipsis): Don't set saved_face_id here.
2404 (next_element_from_display_vector): Default to saved_face_id.
2405
2406 * fns.c (Fsafe_get): New function.
2407 (syms_of_fns): Defsubr it.
2408
2409 * lisp.h (Fsafe_get): EXFUN it.
2410
2411 * xfaces.c (resolve_face_name): Use Fsafe_get to avoid redisplay
2412 loops in case of bad face property lists. Limit number of face
2413 alias lookups to 10 (in case of face alias loops).
2414
2415 2005-04-18 Kim F. Storm <storm@cua.dk>
2416
2417 * dispextern.h (struct glyph_row): New member overlay_arrow_bitmap.
2418 It replaces the corresponding member from struct window, as a
2419 window may now show multiple overlay arrows.
2420 Remove member overlay_arrow_p, superseeded by overlay_arrow_bitmap.
2421
2422 * dispnew.c (row_equal_p, update_window_line, scrolling_window):
2423 Compare overlay_arrow_bitmap than overlay_arrow_p members.
2424
2425 * fringe.c (draw_fringe_bitmap): Use overlay_arrow_bitmap from row
2426 rather than from window.
2427 (update_window_fringes): Compare overlay_arrow_bitmap rather than
2428 overlay_arrow_p members.
2429 (Ffringe_bitmaps_at_pos): Return fringe overlay_arrow_bitmap name
2430 if not default.
2431
2432 * window.h (struct window): Remove member overlay_arrow_bitmap.
2433
2434 * window.c (make_window): Don't initialize overlay_arrow_bitmap.
2435
2436 * xdisp.c (overlay_arrow_string_or_property): Remove PBITMAP arg.
2437 Calls changed. Don't check for overlay-arrow-bitmap property here.
2438 (overlay_arrow_at_row): Remove PBITMAP arg. Instead, if left
2439 fringe is present, return Lisp integer for bitmap (or -1 for default).
2440 Fix value of overlay-arrow-bitmap property to be a symbol, use
2441 lookup_fringe_bitmap to parse it.
2442 (display_line): Change call to overlay_arrow_at_row. Store integer
2443 return value as overlay bitmap in row rather than window.
2444 Only show overlay arrow if row displays text, or if no other overlay
2445 arrow is seen in window (if overlay marker is at point-max).
2446
2447 2005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
2448
2449 * xfaces.c (realize_x_face) [!HAVE_WINDOW_SYSTEM]: Return NULL.
2450
2451 2005-04-18 Lute Kamstra <lute@gnu.org>
2452
2453 * lread.c (Vloads_in_progress): Static.
2454 * fns.c (Vloads_in_progress): Remove extern.
2455 (load_in_progress): Add extern.
2456 (Frequire): Use load_in_progress instead of Vloads_in_progress.
2457
2458 2005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
2459
2460 * xmenu.c (Fx_popup_menu): Initialize error_name to NULL.
2461
2462 2005-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2463
2464 * macterm.c (XTread_socket): Don't beep on keyboard input even if
2465 no frame is visible.
2466
2467 2005-04-16 Dan Nicolaescu <dann@ics.uci.edu>
2468
2469 * term.c (struct keys): Add support for shifted keys.
2470
2471 2005-04-16 Richard M. Stallman <rms@gnu.org>
2472
2473 * xdisp.c (with_echo_area_buffer): Delete WHICH < 0 case.
2474 (set_message): Call with_echo_area_buffer with WHICH = 0.
2475 (set_message_1): Erase the echo area buffer first thing.
2476 (echo_area_display): Don't clear echo_message_buffer.
2477
2478 2005-04-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2479
2480 * Makefile.in (mac.o): Depend on charset.h and coding.h.
2481
2482 * mac.c: Include charset.h and coding.h.
2483 [TARGET_API_MAC_CARBON] (Qutf_8): Remove extern.
2484 [TARGET_API_MAC_CARBON] (cfstring_create_with_string): New function.
2485 [TARGET_API_MAC_CARBON] (Fmac_get_preference): Use it.
2486
2487 * macfns.c [TARGET_API_MAC_CARBON] (Fx_file_dialog): Likewise.
2488
2489 * image.c [MAC_OSX] (image_load_quartz2d): Likewise.
2490
2491 * macterm.c (x_autoselect_window_p): Remove variable.
2492 (last_window): New variable.
2493 (XTreassert_line_highlight, x_change_line_highlight):
2494 Remove declarations.
2495 (mac_focus_changed, x_detect_focus_change): New functions and
2496 declarations.
2497 (XTextExtents16, front_emacs_window): Remove function.
2498 (mac_focus_frame): New function.
2499 (XTmouse_position, do_menu_choice, do_zoom_window, XTread_socket)
2500 (mac_check_for_quit_char): Use it instead of front_emacs_window.
2501 (x_scroll_bar_report_motion): Obtain window from control owner.
2502 (x_make_frame_invisible): Set window manager size hint.
2503 (do_mouse_moved): Remove function.
2504 (XTread_socket): Move its contents here. Generate select-window
2505 event on mouse movement if needed. Use x_detect_focus_change on
2506 activate/deactivate events. Don't deiconify frame or invalidate
2507 window rectangle when dnd items are dropped.
2508 Don't activate/deactivate root control.
2509 (frame_highlight, frame_unhighlight): Activate/deactivate root
2510 control here.
2511 (syms_of_macterm): Delete DEFVAR_BOOL for x_autoselect_window_p.
2512
2513 * macterm.h (cfstring_create_with_string) [TARGET_API_MAC_CARBON]:
2514 New extern.
2515
2516 2005-04-15 Luc Teirlinck <teirllm@auburn.edu>
2517
2518 * Makefile.in: Define new macro TOOLTIP_SUPPORT.
2519 (lisp): Use it.
2520 (SOME_MACHINE_LISP): Add tooltip.
2521
2522 2005-04-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2523
2524 * mac.c [!TARGET_API_MAC_CARBON]: Include MacLocales.h.
2525 Don't include TextEncodingConverter.h.
2526 (mac_system_script_code, Vmac_system_locale): New variables.
2527 (syms_of_mac): Defvar them.
2528 (mac_get_system_locale): New function.
2529
2530 * macfns.c (x_set_name, x_set_title) [!TARGET_API_MAC_CARBON]:
2531 Use ENCODE_SYSTEM to encode title bar string.
2532 (x_create_tip_frame): Apply 2005-03-18 change for xfns.c.
2533 (Fx_file_dialog) [TARGET_API_MAC_CARBON && !MAC_OSX]:
2534 Use CFStringGetSystemEncoding to get system default string encoding.
2535
2536 * macterm.c [!TARGET_API_MAC_CARBON]: Don't include
2537 TextEncodingConverter.h.
2538
2539 2005-04-13 Steven Tamm <steventamm@mac.com>
2540
2541 * macterm.c (syms_of_macterm): Remove redundant definition of
2542 mac-pass-control-to-system.
2543
2544 2005-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
2545
2546 * window.c (Fset_window_configuration): Be careful when you choose
2547 among several possible points for the new_current_buffer.
2548
2549 2005-04-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2550
2551 * keyboard.c (poll_for_input) [SYNC_INPUT]: Don't call
2552 poll_for_input_1. Set interrupt_input_pending to 1 instead.
2553 (Qlanguage_change) [MAC_OS]: New variable.
2554 (syms_of_keyboard) [MAC_OS]: Intern and staticpro it.
2555 (kbd_buffer_get_event) [MAC_OS]: Make event for LANGUAGE_CHANGE_EVENT.
2556
2557 * macterm.c (mac_keyboard_text_encoding)
2558 (current_mac_keyboard_text_encoding): Remove variables.
2559 (XTread_socket): Store language-change event if keyboard script change
2560 is detected. Don't convert input to `mac_keyboard_text_encoding'.
2561 (syms_of_macterm): Delete DEFVAR_INT for mac-keyboard-text-encoding.
2562
2563 * termhooks.h (enum event_kind) [MAC_OS]: Add LANGUAGE_CHANGE_EVENT.
2564
2565 2005-04-10 Richard M. Stallman <rms@gnu.org>
2566
2567 * emacs.c (standard_args): Rename --bare-bones to --quick.
2568 Add -D aka --basic-display.
2569
2570 * buffer.c (Fmake_indirect_buffer): Clear out some local variables.
2571
2572 2005-04-09 Richard M. Stallman <rms@gnu.org>
2573
2574 * keymap.c (where_is_internal): Convert a string used as event type
2575 into "(any string)".
2576
2577 * lread.c (Vloads_in_progress): Not static.
2578 * fns.c (Vloads_in_progress): Add extern.
2579 (Frequire): Don't do LOADHIST_ATTACH if Vloads_in_progress is nil.
2580
2581 2005-04-09 Thien-Thi Nguyen <ttn@surf.glug.org>
2582
2583 * dispnew.c (mirror_line_dance): Avoid crash if W2 is null.
2584
2585 2005-04-09 Lute Kamstra <lute@gnu.org>
2586
2587 * print.c (PRINTPREPARE): Check if the marker PRINTCHARFUN is
2588 within the accessible part of the buffer.
2589
2590 2005-04-09 Kim F. Storm <storm@cua.dk>
2591
2592 * lread.c (readevalloop): Add args START and END as region in
2593 current buffer to read. Callers changed.
2594 When specified, narrow to this region only when reading,
2595 not during eval. Track next point to read from during eval.
2596 Also restore point to "real" buffer position before eval.
2597 (Feval_region): Don't save excursion and restriction here, and
2598 don't narrow to region. Just pass region to readevalloop.
2599 Note: Point is now preserved even when PRINTFLAG is nil.
2600
2601 2005-04-08 Kim F. Storm <storm@cua.dk>
2602
2603 * xdisp.c (syms_of_xdisp): Init overlay-arrow-string to "=>".
2604
2605 2005-04-06 Kim F. Storm <storm@cua.dk>
2606
2607 * emacs.c (standard_args): Add -Q, --bare-bones, -bare-bones.
2608
2609 2005-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2610
2611 * mac.c (cfdate_to_lisp): Add `const' for variable `epoch_gdate'.
2612 (Fmac_get_preference): Doc fix.
2613
2614 * macfns.c (Fx_create_frame, x_create_tip_frame):
2615 Add "fontset-mac" to fallback font/fontsets.
2616
2617 2005-04-04 Kim F. Storm <storm@cua.dk>
2618
2619 * alloc.c (Fgarbage_collect): Call CHECK_CONS_LIST before and after gc.
2620
2621 * eval.c (Ffuncall): Always call CHECK_CONS_LIST on entry.
2622 Call it again after autoload.
2623
2624 2005-04-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2625
2626 * alloc.c (allocate_string_data): Call BLOCK_INPUT before calling
2627 mallopt.
2628
2629 * ralloc.c (r_alloc_init): Ditto.
2630
2631 2005-04-01 Kenichi Handa <handa@m17n.org>
2632
2633 * lisp.h (Vascii_upcase_table, Vascii_canon_table)
2634 (Vascii_eqv_table): Extern them.
2635
2636 * casetab.c (set_case_table): If standard is nonzero, setup
2637 Vascii_upcase_table, Vascii_canon_table, and Vascii_eqv_table.
2638
2639 * search.c (looking_at_1): Use current_buffer->case_canon_table,
2640 not DOWNCASE_TABLE.
2641 (string_match_1): Likewise.
2642 (fast_c_string_match_ignore_case): Use Vascii_canon_table, not
2643 Vascii_downcase_table.
2644 (fast_string_match_ignore_case): Likewise.
2645 (search_buffer): Fix checking of boyer-moore usability.
2646 (boyer_moore): Calculate translate_prev_byte1/2/3 in advance.
2647 No need of tranlating characters in PAT. Fix calculation of
2648 simple_translate.
2649
2650 2005-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
2651
2652 * xterm.c [HAVE_XAW3D]: Include ThreeD.h for XtNbeNiceToColormap.
2653 (x_create_toolkit_scroll_bar): Test XtNbeNiceToColormap before using it.
2654 Use XtNtopShadowPixel and XtNbottomShadowPixel.
2655 (x_set_toolkit_scroll_bar_thumb): Remove ugly old hack that didn't
2656 really work and that breaks with some versions of Xaw3d.
2657
2658 2005-03-31 Kenichi Handa <handa@m17n.org>
2659
2660 * coding.c (syms_of_coding): Fix previous change.
2661
2662 2005-03-30 Stefan Monnier <monnier@iro.umontreal.ca>
2663
2664 * fileio.c (search_embedded_absfilename): Fix last change.
2665
2666 2005-03-25 Kenichi Handa <handa@m17n.org>
2667
2668 * coding.c (syms_of_coding): Suggest to use set-coding-category in
2669 the docstring of coding-category-list.
2670
2671 2005-03-31 Kim F. Storm <storm@cua.dk>
2672
2673 * keyboard.c (Qmouse_fixup_help_message): New var.
2674 (syms_of_keyboard): Intern and staticpro it.
2675 (show_help_echo): Apply mouse-fixup-help-message to help string.
2676
2677 2005-03-30 Kim F. Storm <storm@cua.dk>
2678
2679 * xdisp.c (display_line): Allow multiple overlay arrows in window.
2680
2681 2005-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
2682
2683 * fileio.c (Fexpand_file_name): Use IS_DEVICE_SEP.
2684 (file_name_absolute_p): New fun, extracted from Ffile_name_absolute_p.
2685 (Ffile_name_absolute_p): Use it.
2686 (search_embedded_absfilename): New fun, extracted from
2687 Fsubstitute_in_file_name. Use file_name_absolute_p.
2688 Free the pw data after use.
2689 (Fsubstitute_in_file_name): Use it.
2690 After cutting a prefix, re-check file-name-handler.
2691
2692 2005-03-26 Lennart Borgman <lennart.borgman.073@student.lu.se>
2693
2694 * w32term.h (x_output): Add focus_state.
2695
2696 * w32term.c (x_focus_changed, w32_detect_focus_change): New functions.
2697 (w32_read_socket) [WM_SETFOCUS]: Call w32_detect_focus_change.
2698
2699 2005-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
2700
2701 * minibuf.c (Fminibuffer_complete_and_exit, Fself_insert_and_exit):
2702 Use Fexit_minibuffer.
2703 (Fexit_minibuffer): Mark it as no-return, deactivate the mark.
2704
2705 2005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
2706
2707 * dired.c (Ffile_attributes): Add a missing gcpro.
2708
2709 * alloc.c (make_number): The arg can be bigger than `int'.
2710 * lisp.h (make_number): Make prototype more precise.
2711
2712 * process.c, dired.c (Vfile_name_coding_system)
2713 (Vdefault_file_name_coding_system):
2714 * callproc.c (Vdoc_file_name, Vfile_name_coding_system)
2715 (Vdefault_file_name_coding_system): Remove unused declarations.
2716
2717 2005-03-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2718
2719 * xmenu.c (create_and_show_popup_menu): Just remove menu and return
2720 if it failed to pop up (Gnome "show pointer on ctrl" option makes
2721 menus fail to pop up).
2722
2723 2005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
2724
2725 * xdisp.c (get_next_display_element): Also use `\ ' & `\-' for latin-9.
2726 Just prepend a backslash without replacing the NBSP by an SPC.
2727
2728 2005-03-22 Kim F. Storm <storm@cua.dk>
2729
2730 * xfaces.c (lookup_derived_face): Add arg SIGNAL_P.
2731 * dispextern.h (lookup_derived_face): Fix prototype.
2732 * msdos.c (XMenuActivate): Fix call to lookup_derived_face.
2733
2734 * xdisp.c (handle_single_display_spec): Derive left-fringe and
2735 right-fringe face from fringe face.
2736
2737 * fringe.c (draw_fringe_bitmap_1, Fset_fringe_bitmap_face):
2738 Derive face from fringe face.
2739
2740 2005-03-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2741
2742 * xrdb.c (x_load_resources): Undo previous change (2005-03-18).
2743
2744 2005-03-22 David Kastrup <dak@gnu.org>
2745
2746 * textprop.c (Fnext_char_property_change)
2747 (Fprevious_char_property_change): Allow marker as limit.
2748 (Fnext_single_char_property_change)
2749 (Fprevious_single_char_property_change): Check that limit is a
2750 number in strings.
2751 (Fnext_single_char_property_change): Coerce position to integer.
2752 (Fprevious_single_char_property_change): Same here.
2753
2754 2005-03-21 Thien-Thi Nguyen <ttn@gnu.org>
2755
2756 * s/openbsd.h (LD_SWITCH_SYSTEM_tmp): Define if undefined.
2757
2758 2005-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
2759
2760 * frame.c (Fignore_event): Remove.
2761 (syms_of_frame): Don't defsubr it.
2762
2763 * keyboard.c (keys_of_keyboard): Just use `ignore' instead of the
2764 redundant `ignore-event'.
2765
2766 2005-03-19 Eli Zaretskii <eliz@gnu.org>
2767
2768 * unexec.c (write_segment, unexec): Move these functions to avoid
2769 forward references (which cause errors with "gcc -gcoff").
2770
2771 2005-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2772
2773 * xfns.c (x_create_tip_frame): Remove setting of Vx_resource_name so
2774 that it doesn't become "tooltip". The specbind is enough.
2775
2776 * xrdb.c (x_load_resources): Use different char *helv when I18N
2777 is present.
2778
2779 2005-03-17 Kenichi Handa <handa@m17n.org>
2780
2781 * coding.c (syms_of_coding): Docstring of coding-category-list fixed.
2782
2783 2005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
2784
2785 * xfaces.c (x_update_menu_appearance) [HAVE_X_I18N]:
2786 Use xic_create_fontsetname even for non-Motif menus.
2787 Don't forget to free the fontsetname.
2788
2789 * xfns.c (xic_create_fontsetname): Add a final catch-all font pattern.
2790
2791 2005-03-17 Richard M. Stallman <rms@gnu.org>
2792
2793 * dispnew.c (mirror_line_dance): Set W2 according to FRAME_FROM.
2794
2795 * fileio.c (Fcopy_file, Frename_file, Fadd_name_to_file)
2796 (Fmake_symbolic_link): Use G to read the new file name.
2797
2798 * callint.c (Finteractive): Document G option.
2799 (Fcall_interactively): Implement G option.
2800
2801 * buffer.c (buffer_lisp_local_variables): New function,
2802 broken out from Fbuffer_local_variables.
2803 (clone_per_buffer_values): Use buffer_lisp_local_variables.
2804
2805 2005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
2806
2807 * xfns.c (xic_create_fontsetname): Add `motif' argument.
2808 Always return a freshly allocated string.
2809 (xic_create_xfontset): Adjust call.
2810
2811 * xfaces.c (x_update_menu_appearance) [USE_MOTIF]:
2812 Use xic_create_fontsetname to create a fontset so utf-8 locales work.
2813 (dump_realized_face): Fix warning.
2814
2815 * emacs.c (Fkill_emacs): YAILOM.
2816
2817 * frame.c (Fignore_event): Fix ancient obscure C-u handling bug.
2818
2819 2005-03-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2820
2821 * mac.c (HASHKEY_TERMINAL): Remove.
2822 (HASHKEY_MAX_NID): New macro.
2823 (xrm_q_get_resource_1): Rename from xrm_q_get_resource. Add extra
2824 argument.
2825 (xrm_q_get_resource): Call xrm_q_get_resource_1 with extra argument.
2826 (xrm_create_database, xrm_q_put_resource)
2827 (xrm_merge_string_database, xrm_q_get_resource_1)
2828 (xrm_q_get_resource): Change resource database representation so
2829 that it may not use multiple hash tables for a single database.
2830 [TARGET_API_MAC_CARBON] (xrm_cfproperty_list_to_value): YAILOM.
2831
2832 2005-03-16 Stefan Monnier <monnier@iro.umontreal.ca>
2833
2834 * xmenu.c (ENCODE_MENU_STRING) [HAVE_X_I18N]: Use ENCODE_SYSTEM.
2835
2836 * coding.h (ENCODE_SYSTEM, DECODE_SYSTEM) [!WINDOWSNT]: Use the
2837 locale-coding-system, as was already done for WINDOWSNT.
2838
2839 * keyboard.c (read_char): Only do the 7-bit-meta -> 27-bit-meta
2840 translation for chars in the 0-255 range.
2841
2842 2005-03-16 Lute Kamstra <lute@gnu.org>
2843
2844 * floatfns.c (Ffloor): Doc fix.
2845
2846 2005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2847
2848 * mac.c: Include macterm.h instead of directly including Carbon.h.
2849 [TARGET_API_MAC_CARBON] (Qstring, Qnumber, Qboolean, Qdate, Qdata)
2850 (Qarray, Qdictionary): New variables.
2851 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
2852 [TARGET_API_MAC_CARBON] (Qutf_8): Add extern.
2853 [TARGET_API_MAC_CARBON] (DECODE_UTF_8): New macro.
2854 [TARGET_API_MAC_CARBON] (struct cfdict_context): New struct used
2855 in callback for CFDictionaryApplyFunction.
2856 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
2857 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
2858 (cfobject_desc_to_lisp, cfdictionary_add_to_list)
2859 (cfdictionary_puthash, cfproperty_list_to_lisp): New functions.
2860 [TARGET_API_MAC_CARBON] (Fmac_get_preference): New function.
2861 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
2862 (P, LOOSE_BINDING, SINGLE_COMPONENT, HASHKEY_TERMINAL): New macro.
2863 (skip_white_space, parse_comment, parse_include_file)
2864 (parse_binding, parse_component, parse_resource_name, parse_value)
2865 (parse_resource_line, xrm_create_database, xrm_q_put_resource)
2866 (xrm_merge_string_database, xrm_q_get_resource, xrm_get_resource)
2867 (xrm_cfproperty_list_to_value, xrm_get_preference_database):
2868 New functions.
2869
2870 * macfns.c (mac_get_rdb_resource): Remove function.
2871 (x_get_string_resource): Use xrm_get_resource.
2872
2873 * macgui.h (XrmDatabase): Typedef to Lisp_Object.
2874
2875 * macterm.c (x_list_fonts): FONT-LIST-CACHE is now cadr part of
2876 name_list_element.
2877 (mac_make_rdb): Create resource database from preferences and
2878 argument string.
2879 (mac_term_init): Save resource database to cddr part of
2880 name_list_element.
2881
2882 * macterm.h (xrm_merge_string_database, xrm_get_resource)
2883 (xrm_get_preference_database): Add externs.
2884 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
2885 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
2886 (cfobject_desc_to_lisp, cfproperty_list_to_lisp): Likewise.
2887
2888 * process.c (init_process): Change `#ifdef DARWIN' to `#if
2889 defined (DARWIN) || defined (MAC_OSX)'
2890
2891 * s/darwin.h (DARWIN): Don't define.
2892
2893 2005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2894
2895 * macfns.c (Qhyper, Qsuper, Qmeta, Qalt, Qctrl, Qcontrol, Qshift):
2896 Remove unused variables.
2897 (syms_of_macfns): Don't initialize them. Likewise for
2898 Qface_set_after_frame_default. Defvar and initialize
2899 Vx_window_horizontal_drag_shape.
2900 (x_set_mouse_color): Change mouse pointer shape.
2901 (mac_window) [!MAC_OSX]: Create root control.
2902 (Fx_create_frame): Remove initializations of mouse pointer shapes.
2903 (hourglass_started): New function (from xfns.c).
2904 (start_hourglass, cancel_hourglass): Put function body in #ifdef
2905 MAC_OSX.
2906 (show_hourglass) [TARGET_API_MAC_CARBON]: Create progress
2907 indicator for each non-tooltip frame if needed, and show it.
2908 (hide_hourglass) [TARGET_API_MAC_CARBON]: Hide progress indicators.
2909
2910 * macgui.h [!TARGET_API_MAC_CARBON]: Include Appearance.h and
2911 Controls.h. Use ThemeCursor instead of CursHandle.
2912
2913 * macterm.c (activate_scroll_bars, deactivate_scroll_bars):
2914 Remove functions and declarations.
2915 (mac_set_colors): Take argument for saving background color.
2916 All callers changed.
2917 (XDrawLine, XClearArea, mac_draw_bitmap, XFillRectangle)
2918 (mac_draw_rectangle, mac_draw_string_common): Save and Restore
2919 background color.
2920 (x_update_end, mac_do_track_drag): Don't reset background color.
2921 (mac_define_frame_cursor) [!TARGET_API_MAC_CARBON]:
2922 Use SetThemeCursor.
2923 (x_set_window_size) [TARGET_API_MAC_CARBON]: Move progress
2924 indicator control to the upper-right corner of the window.
2925 (arrow_cursor) [!TARGET_API_MAC_CARBON]: Remove variable.
2926 (do_init_managers) [!TARGET_API_MAC_CARBON]: Don't initialize it.
2927 (do_window_update): Update controls after updating content area.
2928 (mac_handle_window_event): Remove unused extern.
2929 (XTread_socket): Check both control handle and control part code
2930 to determine whether a scroll bar is clicked. Activate/deactivate
2931 root control instead of contained scroll bar controls.
2932 (make_mac_terminal_frame): Use ThemeCursor constants.
2933
2934 * macterm.h (struct mac_output) [TARGET_API_MAC_CARBON]:
2935 New member hourglass_control.
2936 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): New defines.
2937 (activate_scroll_bars, deactivate_scroll_bars): Remove declarations.
2938
2939 2005-03-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2940
2941 * macterm.c (keycode_to_xkeysym_table): Change mapping so that it
2942 coincides with that in Apple X11 except `clear', `enter' on
2943 laptops, and fn + `enter' on laptops.
2944
2945 2005-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
2946
2947 * xmenu.c (ENCODE_MENU_STRING): Explicitly use string_make_unibyte.
2948 (list_of_panes, list_of_items, Fx_popup_menu): Use XCAR/XCDR.
2949 (digest_single_submenu, xmenu_show): Use ENCODE_MENU_STRING.
2950
2951 * xfns.c (xic_defaut_fontset): New constant.
2952 (xic_create_fontsetname): New function.
2953 Extracted from create_frame_xic. Try to generate a slightly
2954 better fontset.
2955 (xic_create_xfontset): Use it.
2956 (create_frame_xic): Simplify.
2957
2958 2005-03-11 Stefan Monnier <monnier@iro.umontreal.ca>
2959
2960 * fileio.c (Fmake_symbolic_link): Fix last change.
2961
2962 2005-03-11 Richard M. Stallman <rms@gnu.org>
2963
2964 * fileio.c (Frename_file, Fadd_name_to_file)
2965 (Fmake_symbolic_link): If NEWNAME or LINKNAME is a directory,
2966 expand the basename of FILE relative to it.
2967
2968 2005-03-11 Kenichi Handa <handa@m17n.org>
2969
2970 * fileio.c (Finsert_file_contents): Call Fcheck_coding_system
2971 before calling setup_coding_system so that autoloading of a coding
2972 system work.
2973
2974 2005-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2975
2976 * xfns.c (hourglass_started): New function.
2977
2978 * dispextern.h: Declare hourglass_started.
2979
2980 * keyboard.c (Fexecute_extended_command): Restart hourglass
2981 after call to Fcompleting_read if already started.
2982
2983 * gtkutil.c (xg_update_scrollbar_pos): Call x_sync so that the
2984 GTK main loop is entered in xterm.c, thus doing the redraw.
2985
2986 2005-03-10 Kim F. Storm <storm@cua.dk>
2987
2988 * xdisp.c (pos_visible_p): Fix X value in last line of buffer.
2989
2990 2005-03-08 Kenichi Handa <handa@m17n.org>
2991
2992 * frame.c (x_set_font): Call set_default_ascii_font if an
2993 available font is found.
2994
2995 * fontset.c (set_default_ascii_font): New function.
2996 (syms_of_fontset): Don't set FONTSET_ASCII (Vdefault_fontset) here.
2997
2998 * fontset.h (set_default_ascii_font): Extern it.
2999
3000 2005-03-07 Kim F. Storm <storm@cua.dk>
3001
3002 * xdisp.c (CLEAR_IMAGE_CACHE_COUNT): New const.
3003 (clear_image_cache_count): New var.
3004 (redisplay_internal): Don't clear face and image caches in the
3005 middle of redisplay; do it afterwards.
3006
3007 * blockinput.h (TOTALLY_UNBLOCK_INPUT): Avoid dangling else.
3008
3009 * xdisp.c (notice_overwritten_cursor): Check that phys_cursor.vpos
3010 is valid. If not, clear phys_cursor_on_p and return.
3011
3012 2005-03-07 Andreas Schwab <schwab@suse.de>
3013
3014 * blockinput.h (UNBLOCK_INPUT_TO): Always call UNBLOCK_INPUT.
3015
3016 2005-03-06 Richard M. Stallman <rms@gnu.org>
3017
3018 * keyboard.c (Ftop_level): Let Fthrow deal with UNBLOCK_INPUT.
3019
3020 * eval.c (unwind_to_catch): Use UNBLOCK_INPUT_TO.
3021 (Feval, Ffuncall): Use CHECK_CONS_LIST.
3022
3023 * lisp.h (CHECK_CONS_LIST): New macro (two definitions).
3024
3025 * blockinput.h (UNBLOCK_INPUT_TO): New macro.
3026 (TOTALLY_UNBLOCK_INPUT): Handle a pending signal if any.
3027
3028 2005-03-05 Juri Linkov <juri@jurta.org>
3029
3030 * emacs.c (USAGE1): Replace Info node name "command arguments"
3031 with "emacs invocation".
3032 (USAGE3): Fix usage of `--color=MODE' which actually doesn't
3033 allow arguments `--color' and `MODE' to be separated by space.
3034 Add --no-blinking-cursor, -nbc.
3035 (standard_args): Add -nbc, --no-blinking-cursor.
3036
3037 2005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
3038
3039 * s/vms.h: Define NO_HYPHENS_IN_FILENAMES.
3040 * s/vms4-4.h, s/vms5-5.h: Undefine NO_HYPHENS_IN_FILENAMES.
3041 * fileio.c (Fexpand_file_name) [VMS]:
3042 Use NO_HYPHENS_IN_FILENAMES, not VMS4_4.
3043 * doc.c (munge_doc_file_name) [VMS]: Likewise.
3044 (Fsnarf_documentation): Call munge_doc_file_name.
3045
3046 2005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
3047
3048 * s/vms.h (FILE_SYSTEM_CASE): New macro.
3049 * fileio.c (Fexpand_file_name) [VMS]: Don't upcase the name
3050 "manually"; this is now handled generally via FILE_SYSTEM_CASE.
3051
3052 2005-03-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3053
3054 * emacs.c (main): Change `#ifdef HAVE_CARBON' to `#if
3055 defined (MAC_OSX) && defined (HAVE_CARBON)'.
3056
3057 * image.c [!MAC_OSX && TARGET_API_MAC_CARBON]: Include QuickTime.h.
3058
3059 * mac.c [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
3060 [!MAC_OSX] (select) [TARGET_API_MAC_CARBON]: Use ReceiveNextEvent.
3061 (posix_pathname_to_fsspec, fsspec_to_posix_pathname): New functions.
3062 (mac_clear_font_name_table): Move extern to macterm.h.
3063
3064 * macfns.c (install_window_handler): Move extern to macterm.h.
3065 (Fx_file_dialog): Check STRINGP (default_filename) to see it is
3066 valid. Don't check !NILP (dir) because it is already checked with
3067 CHECK_STRING.
3068 (Fx_file_dialog) [!MAC_OSX]: Use FSSpec instead of FSRef for
3069 specifying the default location and obtaining the selected filename.
3070
3071 * macgui.h [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
3072
3073 * macmenu.c [TARGET_API_MAC_CARBON]: Don't include headers that
3074 are included via Carbon.h.
3075
3076 * macterm.c [TARGET_API_MAC_CARBON && !MAC_OSX]:
3077 Define USE_CARBON_EVENTS to 1.
3078 (qd) [__MRC__ && TARGET_API_MAC_CARBON]: Don't declare.
3079 (x_free_frame_resources): Call remove_window_handler for
3080 non-tooltip windows.
3081 [TARGET_API_MAC_CARBON]: Don't include headers that are included
3082 via Carbon.h.
3083 [TARGET_API_MAC_CARBON] (mac_do_track_dragUPP)
3084 (mac_do_receive_dragUPP): New variables.
3085 (mac_handle_service_event, init_service_handler): Put declarations
3086 and definitions in #ifdef MAC_OSX.
3087 (install_window_handler) [TARGET_API_MAC_CARBON]: Create UPPs for
3088 drag-and-drop handler functions and register them.
3089 (remove_window_handler): New function.
3090 (do_ae_open_documents, mac_do_receive_drag) [!MAC_OSX]:
3091 Use fsspec_to_posix_pathname.
3092 (main): Change #if !TARGET_API_MAC_CARBON to #ifdef MAC_OS8.
3093 (XTread_socket) [!MAC_OSX]: Don't pass keyboard events to TSM.
3094 [MAC_OS8] (make_mac_terminal_frame) [TARGET_API_MAC_CARBON]:
3095 Set default cursors.
3096 (mac_initialize) [USE_CARBON_EVENTS && !MAC_OSX] : Don't call
3097 init_service_handler or init_quit_char_handler.
3098 (mac_initialize) [!MAC_OSX]: Don't call MakeMeTheFrontProcess.
3099
3100 * macterm.h (install_window_handler, remove_window_handler)
3101 (posix_pathname_to_fsspec, fsspec_to_posix_pathname)
3102 (mac_clear_font_name_table): New externs.
3103
3104 2005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
3105
3106 * fileio.c (FILE_SYSTEM_CASE): Define macro if not already defined.
3107 (Ffile_name_directory): Use FILE_SYSTEM_CASE unconditionally.
3108 (Fexpand_file_name): Likewise.
3109
3110 2005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
3111
3112 * emacs.c (Fkill_emacs): Use EXIT_SUCCESS;
3113 no longer special-case VMS. Add bogus return value.
3114
3115 2005-03-02 Kim F. Storm <storm@cua.dk>
3116
3117 * dispextern.h (XASSERTS): Define to 0 if not already defined.
3118 (xassert) [!XASSERTS]: Define dummy version.
3119
3120 2005-03-02 Kim F. Storm <storm@cua.dk>
3121
3122 * xdisp.c (redisplay_window): YABX (yet another bogus xassert).
3123 Reported by David Kastrup.
3124
3125 2005-03-01 Ehud Karni <ehud@unix.mvs.co.il>
3126
3127 * xdisp.c (get_next_display_element): Fix control and escape
3128 glyph from display vector.
3129
3130 2005-03-01 Stefan Monnier <monnier@iro.umontreal.ca>
3131
3132 * keyboard.c (Fposn_at_x_y): Check integerness of X and Y.
3133
3134 2005-02-27 Richard M. Stallman <rms@gnu.org>
3135
3136 * xdisp.c (fast_find_position): Rename END to BEG.
3137 (syms_of_xdisp) <menu-bar-update-hook>: Doc fix.
3138
3139 2005-02-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3140
3141 * gtkutil.c (xg_resize_outer_widget): Remove unneeded call to
3142 gtk_window_resize and x_wm_set_size_hint.
3143
3144 2005-02-25 Kim F. Storm <storm@cua.dk>
3145
3146 * dispextern.h (OVERLAY_STRING_CHUNK_SIZE): Increase from 3 to 16.
3147
3148 * xdisp.c (init_from_display_pos): Don't read past end of
3149 it->overlay_strings array.
3150
3151 2005-02-25 Stephan Stahl <stahl@eos.franken.de> (tiny change)
3152
3153 * buffer.c (syms_of_buffer): Fix typo.
3154
3155 2005-02-23 Lute Kamstra <lute@gnu.org>
3156
3157 * buffer.c (Foverlay_buffer): Doc fix.
3158
3159 2005-02-22 Kim F. Storm <storm@cua.dk>
3160
3161 * minibuf.c (Ftry_completion, Fall_completions): Allow both string
3162 and symbol keys in alists and hash tables.
3163
3164 * xdisp.c (fast_find_position): Fix search for start of overlay.
3165
3166 2005-02-21 Kim F. Storm <storm@cua.dk>
3167
3168 * window.c (window_scroll_pixel_based): When scrolling backwards,
3169 handle partial visible line at end of window even when we hit PT.
3170
3171 2005-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
3172
3173 * keymap.h: Declare Fcurrent_active_maps, used in doc.c.
3174
3175 2005-02-21 Kim F. Storm <storm@cua.dk>
3176
3177 * xdisp.c (move_it_vertically_backward): Eliminate two xasserts.
3178 I think those asserts are bogus if buffer contains invisible text
3179 or images.
3180
3181 2005-02-21 David Kastrup <dak@gnu.org>
3182
3183 * gtkutil.c (xg_create_frame_widgets): UNBLOCK_INPUT on error.
3184
3185 2005-02-20 Kim F. Storm <storm@cua.dk>
3186
3187 * xdisp.c (pos_visible_p): Be sure to move to the specified
3188 position. Always get the full ascent / descent of the
3189 corresponding row, to return reliable rtop and rbot values.
3190 (back_to_previous_visible_line_start): Fix 2005-01-18 change.
3191 Must look one character back, as back_to_previous_line_start
3192 returns position after the newline.
3193 (move_it_vertically_backward): Fix heuristic for when to move further
3194 back in case line_height * 2/3 is larger than window height.
3195 (cursor_row_fully_visible_p): Rename make_cursor_line_fully_visible_p
3196 as it does not do anything anymore. Add arg current_matrix_p to
3197 use current matrix rather than desired matrix when set.
3198 (try_cursor_movement): Don't scroll to make cursor row fully
3199 visible if cursor didn't move. This avoids unexpected recentering
3200 in case of blinking cursor or accepting process output.
3201 Use current matrix to check cursor row visibility.
3202 (redisplay_window): Fix whether to recenter or move to top in case
3203 cursor line is taller than window height.
3204 (find_first_unchanged_at_end_row): Stop search if we reach a row
3205 which not enabled (instead of abort).
3206
3207 2005-02-18 Kim F. Storm <storm@cua.dk>
3208
3209 * xfaces.c (Finternal_set_lisp_face_attribute): Allow :color property
3210 to be nil in a :box attribute value list; customize prints that
3211 as lisp value when no box color is specified.
3212
3213 * .gdbinit (pitx, pit): Pretty print display iterator.
3214 (prowx, prow): Pretty print glyph row.
3215 (pcursorx, pcursor): Pretty print a window cursor.
3216 (pwinx, pwin): Pretty print struct window.
3217
3218 2005-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
3219
3220 * alloc.c (BLOCK_BYTES): Harmless typo.
3221
3222 2005-02-17 Andreas Schwab <schwab@suse.de>
3223
3224 * xfns.c (hack_wm_protocols): Use correct type for last parameter
3225 of XGetWindowProperty to avoid aliasing issues.
3226 (Fx_window_property): Likewise.
3227
3228 * xselect.c (Fx_disown_selection_internal): Use union of struct
3229 input_event and struct selection_input_event to avoid aliasing issues.
3230
3231 * xterm.c (handle_one_xevent): Use union of struct input_event and
3232 struct selection_input_event to avoid aliasing issues.
3233 (SET_SAVED_MENU_EVENT): Adapt reference to inev.
3234
3235 2005-02-17 Kim F. Storm <storm@cua.dk>
3236
3237 * dispextern.h (enum it_method): New enum.
3238 (GET_FROM_*): Its members.
3239 (struct it): Change member method from function pointer to enum.
3240
3241 * xdisp.c (check_it, init_from_display_pos, handle_stop)
3242 (setup_for_ellipsis, handle_single_display_spec)
3243 (handle_composition_prop, next_overlay_string)
3244 (get_overlay_strings, reseat_1, reseat_to_string)
3245 (next_element_from_ellipsis, BUFFER_POS_REACHED_P)
3246 (in_display_vector_p, display_line, get_next_display_element):
3247 Change it->method from function pointer to enum.
3248 (get_next_element): New array to map it->method to function.
3249 (get_next_display_element): Use it.
3250 (set_iterator_to_next): Use switch instead of if/else chain.
3251
3252 2005-02-15 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
3253
3254 * w32select.c: Summary: Thorough rework to implement Unicode
3255 clipboard operations and delayed rendering.
3256
3257 Drop last_clipboard_text and related code, keep track of
3258 ownership via clipboard_owner instead. Drop old #if0 sections.
3259
3260 (DEFAULT_LCID, ANSICP, OEMCP, QUNICODE, QANSICP, QOEMCP)
3261 (clipboard_owner, modifying_clipboard, cfg_coding_system)
3262 (cfg_codepage, cfg_lcid, cfg_clipboard_type, current_text)
3263 (current_coding_system, current_requires_encoding)
3264 (current_num_nls, current_clipboard_type, current_lcid):
3265 New static variables.
3266
3267 (convert_to_handle_as_ascii, convert_to_handle_as_coded)
3268 (render, render_all, run_protected, lisp_error_handler)
3269 (owner_callback, create_owner, setup_config)
3270 (enum_locale_callback, cp_from_locale, coding_from_cp):
3271 New local functions.
3272
3273 (term_w32select, globals_of_w32select): New global functions.
3274
3275 (Fw32_set_clipboard_data): Ignore parameter FRAME, use
3276 clipboard_owner instead. Use delayed rendering and provide
3277 all text formats. Provide CF_LOCALE if necessary.
3278
3279 (Fw32_get_clipboard_data): Handle CF_UNICODETEXT and
3280 CF_LOCALE. Fall back to CF_TEXT, if CF_UNICODETEXT is not
3281 available. Force DOS line-ends for decoding.
3282
3283 (Fx_selection_exists_p): Handle CF_UNICODETEXT.
3284
3285 (syms_of_w32select): Init and register new variables.
3286
3287 * w32.h: Add prototypes for globals_of_w32select and
3288 term_w32select. Make the neighboring K&R declarations into
3289 prototypes, too.
3290
3291 * emacs.c: Include w32.h to get function prototypes.
3292 (main): Call globals_of_w32select.
3293
3294 * w32.c (term_ntproc): Call term_w32select.
3295
3296 * s/ms-w32.h: Guard MSC-specific #pragmas with an #ifdef.
3297
3298 2005-02-16 Kim F. Storm <storm@cua.dk>
3299
3300 * xdisp.c (BUFFER_POS_REACHED_P): Return true if pos reached and
3301 at end of display vector.
3302
3303 2005-02-15 Richard M. Stallman <rms@gnu.org>
3304
3305 * xdisp.c (get_next_display_element): Fix escape-glyph criterion
3306 for mode and header lines.
3307
3308 * lread.c (syms_of_lread) <user-init-file>: Doc fix.
3309
3310 * keymap.h (describe_map_tree): Change decl.
3311
3312 * keyboard.c (command_loop_1): Always use safe_run_hooks
3313 to run Qdeferred_action_function.
3314
3315 * keymap.c (describe_map_tree): New arg MENTION_SHADOW. Calls changed.
3316 (describe_map, describe_vector): Likewise. When it's 1,
3317 don't omit shadowed bindings, instead mark them as shadowed.
3318
3319 * doc.c (Fsubstitute_command_keys): Compute list of shadowing maps
3320 for describe_map_tree. Pass 1 for MENTION_SHADOW.
3321
3322 * data.c (Fsetq_default): Allow no arg case.
3323
3324 2005-02-14 Kenichi Handa <handa@m17n.org>
3325
3326 * coding.c (encode_coding_string): Always return a unibyte string.
3327 If NOCOPY is nonzero and there's no need of encoding, make STR
3328 unibyte directly.
3329
3330 * xselect.c (lisp_data_to_selection_data): If OBJ is a non-ASCII
3331 multibyte string, signal an error instead of aborting.
3332
3333 2005-02-12 Dan Nicolaescu <dann@ics.uci.edu>
3334
3335 * keyboard.c: If HAVE_FCNTL_H include fcntl.h.
3336
3337 2005-02-12 Kim F. Storm <storm@cua.dk>
3338
3339 * xdisp.c (expose_window): Don't fix overlaps for mode lines.
3340
3341 2005-02-10 Kim F. Storm <storm@cua.dk>
3342
3343 * xdisp.c (try_window_id): Set first_unchanged_at_end_row to NULL
3344 if it moves outside window or it doesn't display text.
3345
3346 2005-02-09 Kim F. Storm <storm@cua.dk>
3347
3348 * undo.c (Fprimitive_undo): Check that undo function does not
3349 switch buffer.
3350
3351 2005-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3352
3353 * xselect.c (selection_data_to_lisp_data): For the special case
3354 type == XA_ATOM, data contains array of int, not array of Atom.
3355 (x_property_data_to_lisp, selection_data_to_lisp_data):
3356 Comment update: data must be array of int for format == 32.
3357
3358 2005-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
3359
3360 * undo.c (Fprimitive_undo): Check veracity of delta,start,end.
3361
3362 2005-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3363
3364 * xfns.c (Fx_change_window_property): Use long array when format is 32.
3365 (Fx_window_property): If format is 32 and long is bigger than 32 bits,
3366 convert long array returned from XGetWindowProperty to an int array.
3367 (x_set_tool_bar_lines): Check that width and height is greater than
3368 zero before clearing area.
3369
3370 * xselect.c (x_reply_selection_request): Pass long array to
3371 XChangeProperty so that 64 bit longs are handeled correctly.
3372 (x_get_window_property): If format is 32 and long is bigger than 32
3373 bits convert data from XGetWindowProperty from long array to int array.
3374 (lisp_data_to_selection_data): When the input is a vector and the
3375 format is 32, allocate a long array even if long is bigger than 32 bits.
3376 (x_fill_property_data): Use char, short and long as the man page
3377 for XChangeProperty specifies. This way the data returned is OK for
3378 both 32 and 64 bit machines.
3379 (x_handle_dnd_message): Calculate size correctly even for 64 bit
3380 machines.
3381 (Fx_send_client_event): Undo change from 2005-02-05,
3382 x_fill_property_data now handles that case.
3383
3384 * xfns.c (Fx_backspace_delete_keys_p): Add comment about the
3385 reason for the approach in the code.
3386
3387 2005-02-07 Kim F. Storm <storm@cua.dk>
3388
3389 * undo.c (Fprimitive_undo): Record max one dummmy apply element.
3390
3391 2005-02-06 Richard M. Stallman <rms@gnu.org>
3392
3393 * eval.c (Frun_hook_with_args)
3394 (Frun_hook_with_args_until_success)
3395 (Frun_hook_with_args_until_failure): Doc fixes.
3396
3397 2005-02-05 Andreas Schwab <schwab@suse.de>
3398
3399 * sysdep.c (sys_subshell): Properly terminate execlp argument list.
3400
3401 2005-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3402
3403 * xselect.c (Fx_send_client_event, x_handle_dnd_message): Handle
3404 the longs in a XClientMessageEvent correctly when long is 64 bits.
3405
3406 2005-02-05 Eli Zaretskii <eliz@gnu.org>
3407
3408 * xfaces.c (face_color_supported_p): Use HAVE_WINDOW_SYSTEM
3409 instead of HAVE_X_WINDOWS, for non-X windowed sessions.
3410
3411 2005-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3412
3413 * xmenu.c (menubar_selection_callback): Force out GTK buffered
3414 events so the menu event comes after them. This is to prevent sit-for
3415 from exiting on buffered events directly after a menu selection,
3416 lisp code for Help => About Emacs uses sit-for.
3417
3418 * gtkutil.c (create_menus): Connect selection-done event instead of
3419 the deactivate event to deactivate_cb. This will make the last
3420 leave event come before the call to deactivate_cb, so the leave
3421 event does not make sit-for exit after a menu selection.
3422
3423 2005-02-03 Kim F. Storm <storm@cua.dk>
3424
3425 * dispnew.c (build_frame_matrix_from_leaf_window)
3426 [!GLYPH_DEBUG]: Fix xassert.
3427
3428 * xfaces.c (x_free_gc) [!GLYPH_DEBUG]: Fix xassert.
3429
3430 * xfns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
3431
3432 2005-02-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3433
3434 * mac.c: Use MAC_OS_X_VERSION_MAX_ALLOWED to conditionalize by
3435 the compiling OS version.
3436
3437 * macfns.c (x_create_tip_frame): Likewise.
3438
3439 * macterm.c (mac_draw_string_common, x_make_frame_visible): Likewise.
3440
3441 2005-02-03 Richard M. Stallman <rms@gnu.org>
3442
3443 * xterm.c (x_error_quitter): On GCC 3 and up, specify noinline.
3444
3445 * xdisp.c (echo_area_display): Clear echo_message_buffer.
3446
3447 * buffer.c (Fbury_buffer): Doc fix.
3448
3449 2005-02-02 Steven Tamm <steventamm@mac.com>
3450
3451 * macfns.c (unwind_create_frame): Fix compile error due to
3452 xassert being uncondition, but predicate is.
3453 * dispnew.c (update_window): Fix compile error due to
3454 xassert being uncondition, but predicate is.
3455
3456 2005-02-02 Miles Bader <miles@gnu.org>
3457
3458 * dispextern.h (xassert): Enable unconditionally.
3459
3460 2005-02-02 Kim F. Storm <storm@cua.dk>
3461
3462 * undo.c (Fprimitive_undo): Fix dummy apply undo entry.
3463
3464 2005-02-02 Kenichi Handa <handa@m17n.org>
3465
3466 * casefiddle.c (casify_object): Enable changing characters of
3467 different byte length.
3468 (casify_region): Fix loop condition, args to replace_range_2, and
3469 update opoint_byte.
3470
3471 * insdel.c (replace_range_2): Fix bugs in adjusting markers and point.
3472
3473 2005-02-01 Kim F. Storm <storm@cua.dk>
3474
3475 * xdisp.c (back_to_previous_visible_line_start): Reset iterator
3476 stack before calling handle_display_prop.
3477
3478 2005-01-31 Kim F. Storm <storm@cua.dk>
3479
3480 * undo.c (Qapply): New lisp var.
3481 (syms_of_undo): Intern and staticpro it.
3482 (Fprimitive_undo): Support formats (apply FUNNAME . ARGS) and
3483 (apply DELTA BEG END FUNNAME . ARGS) instead of (FUNNAME . ARGS).
3484
3485 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
3486
3487 2005-01-30 Jesper Harder <harder@phys.au.dk>
3488
3489 * macterm.c (syms_of_macterm) <mac-reverse-ctrl-meta>
3490 <mac-emulate-three-button-mouse>: Fix docstring indentation.
3491
3492 2005-01-29 Luc Teirlinck <teirllm@auburn.edu>
3493
3494 * undo.c (syms_of_undo) <undo-outer-limit>: Doc update.
3495 Increase value to 3 Meg.
3496
3497 2005-01-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3498
3499 * xfns.c (show_hourglass): Use FRAME_X_WINDOW as parent for GTK,
3500 button events are not received otherwise.
3501
3502 2005-01-29 Richard M. Stallman <rms@gnu.org>
3503
3504 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
3505
3506 * undo.c (Fprimitive_undo): Handle (FUNNAME . ARGS) by calling FUNNAME.
3507
3508 2005-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
3509
3510 * keymap.c (access_keymap): YAILOM.
3511
3512 2005-01-27 Kim F. Storm <storm@cua.dk>
3513
3514 * xdisp.c (get_phys_cursor_geometry): New function to calculate
3515 phys cursor position and size for hollow cursor. Position is
3516 aligned with get_glyph_string_clip_rect and ensures that a hollow
3517 cursor is shown, even when the actual glyph is not visible.
3518
3519 * dispextern.h (get_phys_cursor_geometry): Add prototype.
3520
3521 * xterm.c (x_clip_to_row): Ensure y >= 0.
3522 (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
3523
3524 * w32term.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
3525
3526 * macterm.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
3527
3528 2005-01-27 Stefan Monnier <monnier@iro.umontreal.ca>
3529
3530 * xterm.c (x_error_quitter): Add a prototype. Make it static again.
3531
3532 2005-01-27 Kim F. Storm <storm@cua.dk>
3533
3534 * xdisp.c (get_glyph_string_clip_rect): Always show a cursor
3535 glyph, even when row is only partially visible and actual cursor
3536 position is not visible.
3537
3538 2005-01-24 Richard M. Stallman <rms@gnu.org>
3539
3540 * xterm.c (x_error_quitter): No longer static, and moved after
3541 x_error_handler.
3542
3543 2005-01-24 Kim F. Storm <storm@cua.dk>
3544
3545 * xdisp.c (move_it_by_lines): If we move forward after going too
3546 far back, cancel move if end position is same as start position.
3547
3548 2005-01-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3549
3550 * dispextern.h (struct glyph_string): New members clip_head and
3551 clip_tail.
3552
3553 * xdisp.c (get_glyph_string_clip_rect): Restrict horizontal clip
3554 region to the area between clip_head and clip_tail.
3555 (draw_glyphs): Record the area that need to be actually redrawn to
3556 the new variables clip_head and clip_tail when there are
3557 overhangs. Set values of these variables to the corresponding
3558 members in struct glyph_string. Refine x coordinates for
3559 notice_overwritten_cursor using clip_head and clip_tail.
3560
3561 * macgui.h (STORE_XCHARSETSTRUCT): New macro.
3562
3563 * macterm.c (mac_compute_glyph_string_overhangs): Implement with
3564 QDTextBounds.
3565 (x_draw_glyph_string): Don't fill the background of the successor
3566 of a glyph with a right overhang if the successor will draw a cursor.
3567 (XLoadQueryFont): Obtain font metrics using QDTextBounds.
3568 (x_redisplay_interface): Add entry for compute_glyph_string_overhangs.
3569
3570 2005-01-24 Kim F. Storm <storm@cua.dk>
3571
3572 * window.c (window_scroll_pixel_based): Fix scrolling in the wrong
3573 direction if window height was smaller than next-screen-context-lines.
3574 Now always scroll at least one line in the requested direction.
3575 Ensure that we actually do scroll backwards when requested to do so.
3576
3577 * xdisp.c (redisplay_window): Only try to make cursor line fully
3578 visible once (to avoid redisplay loop).
3579
3580 2005-01-23 Kim F. Storm <storm@cua.dk>
3581
3582 * window.c (Fpos_visible_in_window_p): Simplify return value for
3583 partially visible rows.
3584 (window_scroll_pixel_based): Adapt to that change.
3585
3586 * window.c (window_scroll_pixel_based): Force moving to next line
3587 if scrolling doesn't move start point, e.g. if looking at tall image.
3588
3589 * xdisp.c (pos_visible_p): Return 0 if non-interactive.
3590 Clear last_height before calling line_bottom_y to get real height.
3591 Fix calculation of y.
3592
3593 2005-01-22 Steven Tamm <steventamm@mac.com>
3594
3595 * s/darwin.h: Removed PTY_ITERATION from here.
3596 (DARWIN): Define.
3597
3598 * process.c (init_process): Default process-connection-type to
3599 nil on darwin 6 or less, t if it is 7 or higher. This way the
3600 broken pty behavior is still allowed on darwin 6 for interactive
3601 processes for people that know what they are doing.
3602
3603 2005-01-22 Kim F. Storm <storm@cua.dk>
3604
3605 * window.c (auto_window_vscroll_p): New boolean.
3606 (syms_of_window): DEFVAR_BOOL it.
3607 (Fpos_visible_in_window_p): Extend return value to include RTOP
3608 and RBOT values if FULLY is nil.
3609 (window_scroll_pixel_based): Adjust vscroll for partially visible
3610 rows if auto_window_vscroll_p is set.
3611 (Fset_window_vscroll): Do nothing if vscroll is not modified.
3612
3613 * xdisp.c (pos_visible_p): Replace FULLY arg by RTOP and RBOT args
3614 to return number of partially invisible pixels at top and bottom
3615 of the dislay row at POS.
3616
3617 * lisp.h (pos_visible_p): Fix prototype.
3618
3619 2005-01-21 Richard M. Stallman <rms@gnu.org>
3620
3621 * fileio.c (Fcopy_file): Doc fix.
3622
3623 2005-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3624
3625 * gtkutil.c (xg_tool_bar_detach_callback): Remove unused variable bw.
3626 (xg_get_file_name): Move declaration ofx_use_old_gtk_file_dialog to
3627 start of function for older compilers.
3628
3629 2005-01-20 Richard M. Stallman <rms@gnu.org>
3630
3631 * editfns.c (Fmessage): If arg is "", return "" (as before).
3632
3633 * keymap.c (access_keymap): Protect from bad value of meta_prefix_char.
3634
3635 * .gdbinit (xgetptr, xgetint, xgettype): Copy $arg0 into a temp
3636 variable.
3637
3638 2005-01-20 Steven Tamm <steventamm@mac.com>
3639
3640 * editfns.c (Voperating_system_release): Add.
3641 (init_editfns): Assign new variable operating-system-release
3642 based on call to uname if available.
3643 (get_operating_system_release): Add function to
3644 allow c-level access to operating system release.
3645
3646 * config.h: Regenerated.
3647
3648 * s/darwin.h (PTY_ITERATION): Don't allow PTYs on darwin 6 or less.
3649 (MIN_PTY_KERNEL_VERSION): Define minimum kernel version for
3650 using ptys as '7'.
3651
3652 2005-01-20 Kim F. Storm <storm@cua.dk>
3653
3654 * alloc.c (STRING_MARKED_P, VECTOR_MARKED_P): Return boolean.
3655
3656 * xterm.c (x_draw_glyph_string_box): Fix last_x for full width rows.
3657 Thanks to Chong Yidong <cyd@stupidchicken.com> for debugging this.
3658
3659 * macterm.c (x_draw_glyph_string_box): Likewise.
3660
3661 * w32term.c (x_draw_glyph_string_box): Likewise.
3662
3663 * indent.c (Fvertical_motion): Temporarily disable selective display.
3664
3665 2005-01-19 Kim F. Storm <storm@cua.dk>
3666
3667 * xdisp.c (note_mode_line_or_margin_highlight): Fix :pointer
3668 image property.
3669
3670 * fns.c (sweep_weak_table): Advance prev pointer when we keep a pair.
3671
3672 2005-01-18 Kim F. Storm <storm@cua.dk>
3673
3674 * xdisp.c (fast_find_position): Backtrack to find first row if
3675 charpos is inside a display overlay that spans multiple lines.
3676
3677 2005-01-18 Kenichi Handa <handa@m17n.org>
3678
3679 * coding.c (decode_coding_iso2022): Translate invalid codes if
3680 translation-table is specified.
3681
3682 2005-01-18 Kim F. Storm <storm@cua.dk>
3683
3684 * xdisp.c (back_to_previous_visible_line_start): Undo 2004-12-28
3685 change. If handle_display_prop indicates newline is replaced by
3686 image or text, move back to start of relevant overlay or interval
3687 and continue scan from there. Simplify.
3688
3689 2005-01-17 Kim F. Storm <storm@cua.dk>
3690
3691 * dispnew.c (mode_line_string, marginal_area_string):
3692 Fix off-by-one error in search for glyph.
3693
3694 2005-01-16 Kim F. Storm <storm@cua.dk>
3695
3696 * macterm.c (syms_of_macterm) <mac-allow-anti-aliasing>: Doc fix.
3697
3698 2005-01-16 Steven Tamm <steventamm@mac.com>
3699
3700 * macterm.c (mac_to_x_fontname): Remove spurious argument.
3701
3702 2005-01-16 Andreas Schwab <schwab@suse.de>
3703
3704 * macterm.c (mac_draw_string_common): Fix compilation on OSX 10.1.
3705
3706 2005-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3707
3708 * fringe.c (Fdefine_fringe_bitmap, init_fringe): When assigning
3709 fringe_faces, cast result from xmalloc/xrealloc to Lisp_Object *.
3710
3711 2005-01-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3712
3713 * keyboard.c (READABLE_EVENTS_DO_TIMERS_NOW)
3714 (READABLE_EVENTS_FILTER_EVENTS, READABLE_EVENTS_IGNORE_SQUEEZABLES):
3715 New flags for readable_events.
3716 (get_filtered_input_pending, readable_filtered_events): Remove.
3717 (tracking_off): Call readable_events and get_input_pending with
3718 flag READABLE_EVENTS_DO_TIMERS_NOW.
3719 (readable_events): Move code from old readable_filtered_events here,
3720 but check new READABLE_EVENTS_* in argument flags instead of previous
3721 two boolean arguments do_timers_now and filter_events.
3722 If we are doing mouse tracking and the mouse moved, return only if
3723 READABLE_EVENTS_IGNORE_SQUEEZABLES is not set in flags.
3724 (swallow_events): Call get_input_pending with flag
3725 READABLE_EVENTS_DO_TIMERS_NOW.
3726 (get_input_pending): Move code from old get_filtered_input_pending
3727 here. Replace boolean arguments do_timers_now, filter_events with
3728 flags, and pass flags to readable_events. Document new
3729 READABLE_EVENTS_* flags.
3730 (detect_input_pending_ignore_squeezables): New function.
3731 (detect_input_pending_run_timers): Call get_input_pending with flag
3732 READABLE_EVENTS_DO_TIMERS_NOW.
3733 (Finput_pending_p): Call get_input_pending with flags
3734 READABLE_EVENTS_DO_TIMERS_NOW and READABLE_EVENTS_FILTER_EVENTS.
3735
3736 * dispnew.c (update_window, update_frame_1): Replace calls to
3737 detect_input_pending with detect_input_pending_ignore_squeezables
3738 so that redisplay is not paused if the event queue contains only
3739 mouse movements.
3740
3741 * lisp.h: Declare detect_input_pending_ignore_squeezables.
3742
3743 2005-01-15 Steven Tamm <steventamm@mac.com>
3744
3745 * macterm.c (Vmac_use_core_graphics): Declare variable for
3746 mac-allow-anti-aliasing.
3747 (syms_of_macterm): DEFVAR_LISP and initialize it.
3748 (mac_draw_string_common): Use core graphics text rendering if
3749 mac-allow-anti-aliasing is enabled.
3750
3751 * macfns.c (Fx_file_dialog): Save As dialog includes only the
3752 file name in the text box.
3753
3754 2005-01-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3755
3756 * macfns.c (x_set_foreground_color, x_set_background_color):
3757 Sync with xfns.c.
3758 (mac_window, x_create_tip_frame): Use XSetWindowBackground.
3759 * macterm.c (XSetBackground, XSetWindowBackground): New functions.
3760 * macterm.h (XSetBackground, XSetWindowBackground): Add externs.
3761
3762 2005-01-14 Kim F. Storm <storm@cua.dk>
3763
3764 * keyboard.c (Fposn_at_x_y): Add optional arg WHOLE.
3765
3766 2005-01-13 Richard M. Stallman <rms@gnu.org>
3767
3768 * keymap.c (Fcurrent_active_maps): Ignore Voverriding_local_map
3769 if Voverriding_terminal_local_map is non-nil.
3770
3771 * keyboard.c (syms_of_keyboard): Doc fix.
3772
3773 2005-01-13 Kim F. Storm <storm@cua.dk>
3774
3775 * xdisp.c (Fformat_mode_line): Fix last change. Remove NO_PROPS arg
3776 (specify 0 for FACE instead). Reorder arg list. Doc fix.
3777
3778 2005-01-12 Richard M. Stallman <rms@gnu.org>
3779
3780 * xdisp.c (Fformat_mode_line): New arg FACE specifies a default
3781 face property for characters that don't specify one.
3782
3783 * fns.c (Frequire): Record in load-history unconditionally.
3784
3785 2005-01-10 Kim F. Storm <storm@cua.dk>
3786
3787 * dispextern.h (merge_faces): Rename from merge_into_realized_face.
3788
3789 * xfaces.c (merge_faces): Rename from merge_into_realized_face.
3790 Callers changed.
3791 Add support to merge with lisp face id too (if face_name is t).
3792
3793 * xdisp.c (get_next_display_element, next_element_from_display_vector):
3794 Don't lookup lface_id from display table glyphs here; instead use
3795 merge_faces to merge the lisp face id into current face.
3796
3797 2005-01-09 Kim F. Storm <storm@cua.dk>
3798
3799 * dispextern.h (struct it): New member dpvec_face_id.
3800 (merge_into_realized_face): Add prototype.
3801
3802 * xfaces.c (merge_into_realized_face): New function. Used to
3803 merge escape-glyph face or face from display table into current face.
3804
3805 * xdisp.c (Vshow_nonbreak_escape): New lisp var.
3806 (syms_of_xdisp): DEFVAR_LISP it.
3807 (escape_glyph_face): Remove var.
3808 (redisplay_window): Don't initialize it.
3809 (setup_for_ellipsis, get_next_display_element):
3810 Set it->dpvec_face_id to -1.
3811 (get_next_display_element): Test Vshow_nonbreak_escape.
3812 Do not setup escape_glyph_face.
3813 Properly merge escape-glyph face or face from display table with
3814 current face for escape and control characters.
3815 Set it->dpvec_face_id to relevant face id instead of adding it to each
3816 element of display vector.
3817 (next_element_from_display_vector): If it->dpvec_face_id is set,
3818 use that instead of lface_id from glyph itself.
3819
3820 2005-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3821
3822 * xterm.h (struct x_output): New member, toolbar_detached.
3823
3824 * gtkutil.c (xg_create_frame_widgets): Set initial tool bar height to
3825 38.
3826 (xg_tool_bar_detach_callback): Set toolbar_detached to 1.
3827 (xg_tool_bar_attach_callback): Set toolbar_detached to 0.
3828 (xg_create_tool_bar): Initialize toolbar_detached.
3829 (update_frame_tool_bar): Only set FRAME_TOOLBAR_HEIGHT (f) if
3830 toolbar_detached is zero.
3831
3832 2005-01-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3833
3834 * xmenu.c (create_and_show_popup_menu): Pass zero as button to
3835 gtk_menu_popup if not for_click, so callbacks for the menu are called.
3836
3837 * gtkutil.c (xg_gtk_scroll_destroy, xg_create_scroll_bar)
3838 (xg_tool_bar_callback, xg_tool_bar_help_callback)
3839 (update_frame_tool_bar): Cast to EMACS_INT to avoid compiler warning.
3840
3841 * xselect.c (x_get_foreign_selection, x_fill_property_data)
3842 (Fx_get_atom_name, Fx_send_client_event): Replace XFLOAT with
3843 XFLOAT_DATA to get extract number from Lisp object.
3844
3845 2005-01-07 Kim F. Storm <storm@cua.dk>
3846
3847 * xdisp.c (set_iterator_to_next): Fix 2004-12-13 change.
3848 Set stop_charpos to current charpos instead of 0.
3849
3850 2005-01-06 Nick Roberts <nickrob@snap.net.nz>
3851
3852 * xdisp.c (Fformat_mode_line): First arg now required.
3853
3854 2005-01-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3855
3856 * macterm.c (XLoadQueryFont): Correctly handle 0 size
3857 font widths that are returned from some Japanese fonts.
3858
3859 2005-01-06 Kim F. Storm <storm@cua.dk>
3860
3861 * fringe.c (fringe_faces): Change to Lisp_Object pointer.
3862 (draw_fringe_bitmap_1): Lookup user defined fringe faces here.
3863 (destroy_fringe_bitmap): Set fringe_faces element to nil.
3864 (Fdefine_fringe_bitmap, init_fringe): Change allocation of
3865 fringe_faces array and init elements to nil.
3866 (Fset_fringe_bitmap_face): Set fringe_faces to face name instead of
3867 non-persistent face id.
3868 (mark_fringe_data): New function for GC.
3869
3870 * alloc.c (mark_fringe_data): Declare extern.
3871 (Fgarbage_collect): Call mark_fringe_data.
3872
3873 * alloc.c (overrun_check_free): Invalidate freed memory if
3874 XMALLOC_CLEAR_FREE_MEMORY is defined.
3875
3876 2005-01-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3877
3878 * macfns.c: Include sys/param.h.
3879 [TARGET_API_MAC_CARBON] (mac_nav_event_callback): New declaration
3880 and function.
3881 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Use MAXPATHLEN for size
3882 of filename string. Set event callback function when creating
3883 dialog boxes. Add code conversions for filenames. Don't dispose
3884 of apple event descriptor record if failed to create it.
3885
3886 * macterm.c: Include sys/param.h.
3887 [USE_CARBON_EVENTS] (mac_handle_window_event): Add handler for
3888 kEventWindowUpdate.
3889 (install_window_handler) [USE_CARBON_EVENTS]: Register it.
3890 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Get FSRef instead
3891 of FSSpec from apple event descriptor record.
3892 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Use MAXPATHLEN for
3893 size of filename string.
3894 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Likewise.
3895 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Return error when a
3896 file dialog is in action.
3897 [TARGET_API_MAC_CARBON] (mac_do_track_drag): Likewise.
3898 Reject only when there are no filename items. Set background color
3899 before (un)highlighting the window below the dragged items.
3900 (XTread_socket) [USE_CARBON_EVENTS]: Don't call do_window_update.
3901
3902 2005-01-05 Romain Francoise <romain@orebokech.com>
3903
3904 * term.c (encode_terminal_code): Fix buffer size computation.
3905
3906 2005-01-04 Richard M. Stallman <rms@gnu.org>
3907
3908 * xdisp.c (Fformat_mode_line): Doc fix.
3909
3910 2005-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
3911
3912 * alloc.c (refill_memory_reserve): Move.
3913 (emacs_blocked_free, emacs_blocked_malloc, emacs_blocked_realloc)
3914 (reset_malloc_hooks, uninterrupt_malloc) [SYNC_INPUT]: Don't define.
3915
3916 2005-01-03 Richard M. Stallman <rms@gnu.org>
3917
3918 * window.c (window_scroll_pixel_based): Don't correct preserve_y
3919 for CURRENT_HEADER_LINE_HEIGHT when moving backwards.
3920
3921 2005-01-03 Jason Rumney <jasonr@gnu.org>
3922
3923 * w32bdf.c (w32_load_bdf_font): Set fontp->average_width and
3924 fontp->space_width to FONT_WIDTH so they are valid.
3925
3926 * w32fns.c (w32_load_system_font): Set FONT_WIDTH to maximum, not
3927 average width. Set fontp->average_width and fontp->space_width to
3928 their appropriate values.
3929
3930 * w32term.c (x_new_font): Set FRAME_COLUMN_WIDTH to
3931 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
3932 fontp->space_width.
3933
3934 2005-01-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3935
3936 * macterm.c (x_new_font): Set FRAME_SPACE_WIDTH.
3937 (x_font_min_bounds, XLoadQueryFont): Use the correct font width
3938 metrics for max and min bounds.
3939 (x_load_font): Correctly calculate average font width metrics.
3940
3941 2005-01-02 Richard M. Stallman <rms@gnu.org>
3942
3943 * alloc.c (Fgarbage_collect): Don't truncate_undo_list on dead buffers.
3944
3945 2004-12-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3946
3947 * xterm.c (handle_one_xevent): Clear area in expose event for GTK.
3948
3949 2004-12-31 Richard M. Stallman <rms@gnu.org>
3950
3951 * xdisp.c (setup_for_ellipsis, get_next_display_element):
3952 Set it->ellipsis_p to 1 or 0.
3953 (display_line): Record whether row ends in mid-ellipsis.
3954 (set_cursor_from_row): If ends in ellipsis, find start of it.
3955 (cursor_row_p): If PT's at the end of the ellipsis the row
3956 ends within, don't display cursor on this row.
3957
3958 * dispextern.h (struct it): New element ellipsis_p.
3959 (struct glyph_row): New element ends_in_ellipsis_p.
3960
3961 * xdisp.c (BUFFER_POS_REACHED_P): We haven't reached the specified
3962 position if we're reading from something other than the buffer.
3963
3964 * window.c (window_scroll_pixel_based): Only look at
3965 Vscroll_preserve_screen_position if the old PT can't be kept.
3966 (syms_of_window) <scroll-preserve-screen-position>: Doc fix.
3967
3968 2004-12-30 Kim F. Storm <storm@cua.dk>
3969
3970 * xdisp.c (get_line_height_property): New function extracted from
3971 original calc_line_height_property.
3972 (calc_line_height_property): Rework. Handle t and (nil . ratio).
3973 (x_produce_glyphs): Use them to handle line-height and
3974 line-spacing according to new height spec.
3975 (Qtotal): Remove.
3976 (syms_of_xdisp): Remove intern and staticpro for Qtotal.
3977
3978 2004-12-30 Kenichi Handa <handa@m17n.org>
3979
3980 * fileio.c (Finsert_file_contents): Don't use
3981 current_buffer->buffer_file_coding_system even if REPLACE is
3982 non-nil. Call Qafter_insert_file_set_coding with the second arg VISIT.
3983
3984 * fontset.h (struct font_info): New members space_width and
3985 average_width.
3986
3987 * frame.h (struct frame): New member space_width.
3988 (FRAME_SPACE_WIDTH): New macro.
3989
3990 * xterm.h (struct x_display_info): New member Xatom_AVERAGE_WIDTH.
3991
3992 * xterm.c (x_new_font): Set FRAME_COLUMN_WIDTH to
3993 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
3994 fontp->space_width.
3995 (x_load_font): Calculate fontp->space_width and fontp->average_width.
3996 (x_term_init): Initialize dpyinfo->Xatom_AVERAGE_WIDTH.
3997
3998 * xdisp.c (x_produce_glyphs): Calculate tab width by
3999 FRAME_SPACE_WIDTH, not FRAME_COLUMN_WIDTH.
4000
4001 2004-12-29 Sanghyuk Suh <han9kin@mac.com>
4002
4003 * macterm.c (SelectionRange): Add Xcode position apple event struct.
4004 (do_ae_open_documents): Handle Xcode-style file position open events.
4005
4006 2004-12-29 Luc Teirlinck <teirllm@auburn.edu>
4007
4008 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Correct typo.
4009
4010 2004-12-29 Richard M. Stallman <rms@gnu.org>
4011
4012 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Doc fix.
4013
4014 2004-12-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4015
4016 * macfns.c (install_window_handler): Modify extern to return OSErr
4017 value.
4018 (mac_window): Handle return value of install_window_handler.
4019
4020 * macterm.c (reflect_byte): Remove function.
4021 (mac_create_bitmap_from_bitmap_data): Don't call reflect_byte.
4022 Lookup table instead.
4023 (mac_do_font_lists): Simplify calculation of the longest
4024 nonspecial string.
4025 (init_mac_drag_n_drop): Remove function and declaration.
4026 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
4027 init_mac_drag_n_drop.
4028 (mac_do_track_drag): New function and declaration.
4029 (install_window_handler): Return OSErr value.
4030 (install_window_handler) [TARGET_API_MAC_CARBON]:
4031 Register handlers for tracking/receiving drag-and-drop items.
4032 (do_ae_open_documents): Generate unibyte strings for filenames.
4033 (mac_do_receive_drag) [TARGET_API_MAC_CARBON] : Likewise.
4034 Reject only non-filename items. Set event modifiers, and return value.
4035
4036 2004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
4037
4038 * coding.c (decode_coding): Fix previous change.
4039
4040 2004-12-28 Richard M. Stallman <rms@gnu.org>
4041
4042 * xdisp.c (back_to_previous_visible_line_start):
4043 Don't call handle_display_prop.
4044
4045 2004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
4046
4047 * coding.c (decode_coding_XXX, decode_composition_emacs_mule)
4048 (decode_coding_emacs_mule, encode_coding_emacs_mule)
4049 (decode_coding_iso2022, encode_designation_at_bol)
4050 (encode_coding_iso2022, decode_coding_sjis_big5, decode_eol)
4051 (decode_coding): Constify arguments and local vars.
4052
4053 2004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4054
4055 * xmenu.c (popup_get_selection): Only pop down dialogs
4056 on C-g and Escape.
4057 (popup_get_selection): Remove parameter down_on_keypress.
4058 (create_and_show_popup_menu, create_and_show_dialog):
4059 Remove parameter down_on_keypress to popup_get_selection.
4060
4061 2004-12-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4062
4063 * dispextern.h: Change HAVE_CARBON to MAC_OS.
4064 (struct glyph_string): Likewise.
4065
4066 * emacs.c (main) [MAC_OS8]: Call mac_term_init instead of
4067 mac_initialize.
4068
4069 * fileio.c (Fnext_read_file_uses_dialog_p, Fread_file_name):
4070 Change TARGET_API_MAC_CARBON to HAVE_CARBON.
4071
4072 * fns.c (vector): Change MAC_OSX to MAC_OS.
4073
4074 * frame.c (x_set_frame_parameters, x_report_frame_params)
4075 (x_set_fullscreen): Remove #ifndef HAVE_CARBON.
4076 (x_set_border_width, Vdefault_frame_scroll_bars):
4077 Change HAVE_CARBON to MAC_OS.
4078
4079 * image.c [MAC_OS]: Include sys/stat.h.
4080 [MAC_OS && !MAC_OSX]: Include sys/param.h, ImageCompression.h, and
4081 QuickTimeComponents.h.
4082
4083 * mac.c [!MAC_OSX] (mac_wait_next_event): Add extern.
4084 [!MAC_OSX] (select): Use mac_wait_next_event.
4085 [!MAC_OSX] (run_mac_command): Change EXEC_SUFFIXES to Vexec_suffixes.
4086 [!MAC_OSX] (select, run_mac_command): Change `#ifdef
4087 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
4088 (mac_clear_font_name_table): Add extern.
4089 (Fmac_clear_font_name_table): New defun.
4090 (syms_of_mac): Defsubr it.
4091 [MAC_OSX] (SELECT_POLLING_PERIOD_USEC): New define.
4092 [MAC_OSX] (select_and_poll_event): New function.
4093 [MAC_OSX] (sys_select): Use it.
4094 [MAC_OSX && SELECT_USE_CFSOCKET] (socket_callback): New function.
4095 [MAC_OSX && SELECT_USE_CFSOCKET]
4096 (SELECT_TIMEOUT_THRESHOLD_RUNLOOP, EVENT_CLASS_SOCK): New defines.
4097 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]: Use CFSocket and
4098 RunLoop for simultaneously monitoring two kinds of inputs, window
4099 events and process outputs, without periodically polling.
4100
4101 * macfns.c (mac_initialized): Remove extern.
4102 (stricmp): Put in #if 0. All callers changed to use xstricmp in
4103 xfaces.c.
4104 (strnicmp): Decrement `n' at the end of each loop, not the beginning.
4105 (check_mac): Use the term "Mac native windows" instead of "Mac OS".
4106 (check_x_display_info, x_display_info_for_name): Sync with xfns.c.
4107 (mac_get_rdb_resource): New function (from w32reg.c).
4108 (x_get_string_resource): Use it.
4109 (install_window_handler): Add extern.
4110 (mac_window): New function.
4111 (Fx_create_frame): Use it instead of make_mac_frame.
4112 Set parameter for Qfullscreen. Call x_wm_set_size_hint.
4113 (Fx_open_connection, Fx_close_connection): New defuns.
4114 (syms_of_macfns): Defsubr them.
4115 (x_create_tip_frame) [TARGET_API_MAC_CARBON]:
4116 Add kWindowNoUpdatesAttribute to the window attribute.
4117 (x_create_tip_frame) [!TARGET_API_MAC_CARBON]: Use NewCWindow.
4118 (x_create_tip_frame): Don't call ShowWindow.
4119 (Fx_show_tip): Call ShowWindow.
4120 (Fx_file_dialog): Change `#ifdef TARGET_API_MAC_CARBON' to `#if
4121 TARGET_API_MAC_CARBON'.
4122 (mac_frame_parm_handlers): Set handlers for Qfullscreen.
4123 (syms_of_macfns) [MAC_OSX]: Initialize mac_in_use to 0.
4124
4125 * macgui.h [!MAC_OSX]: Don't include Controls.h. Include Windows.h.
4126 (Window): Typedef to WindowPtr and move outside `#if
4127 TARGET_API_MAC_CARBON'.
4128 (XSizeHints): New struct.
4129
4130 * macterm.c (x_update_begin, x_update_end)
4131 [TARGET_API_MAC_CARBON]: Disable screen updates during update of a
4132 frame.
4133 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
4134 [MAC_OS8]: Use XDrawImageString/XDrawImageString16.
4135 (construct_mouse_click): Put in #if 0.
4136 (x_check_fullscreen, x_check_fullscreen_move): Remove decls.
4137 (x_scroll_bar_create, x_scroll_bar_handle_click): Change `#ifdef
4138 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
4139 (activate_scroll_bars, deactivate_scroll_bars)
4140 [!TARGET_API_MAC_CARBON]: Use ActivateControl/DeactivateControl.
4141 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Reposition window
4142 if the position is neither user-specified nor program-specified.
4143 (x_free_frame_resources): Free size_hints.
4144 (x_wm_set_size_hint): Allocate size_hints if needed. Set size_hints.
4145 (mac_clear_font_name_table): New function.
4146 (mac_do_list_fonts): Initialize font_name_table if needed.
4147 (x_list_fonts): Don't initialize font_name_table. Add BLOCK_INPUT
4148 around mac_do_list_fonts.
4149 (mac_unload_font): New function.
4150 (x_load_font): Add BLOCK_INPUT around XLoadQueryFont.
4151 (init_mac_drag_n_drop, mac_do_receive_drag): Enclose declarations
4152 and definitions with #if TARGET_API_MAC_CARBON.
4153 [USE_CARBON_EVENTS] (mac_handle_window_event): Add decl.
4154 (install_window_handler): Add decl.
4155 (do_window_update): Add BeginUpdate/EndUpdate for the tooltip
4156 window. Use UpdateControls. Get the rectangle that should be
4157 updated and restrict the target of expose_frame to it.
4158 (do_grow_window): Set minimum height/width according to size_hints.
4159 (do_grow_window) [TARGET_API_MAC_CARBON]: Use ResizeWindow.
4160 (do_zoom_window): Don't use x_set_window_size.
4161 [USE_CARBON_EVENTS] (mac_handle_window_event): New function.
4162 (install_window_handler): New function.
4163 [!USE_CARBON_EVENTS] (mouse_region): New variable.
4164 [!USE_CARBON_EVENTS] (mac_wait_next_event): New function.
4165 (XTread_socket) [USE_CARBON_EVENTS]: Move call to
4166 GetEventDispatcherTarget inside BLOCK_INPUT.
4167 (XTread_socket) [!USE_CARBON_EVENTS]: Use mac_wait_next_event.
4168 Update mouse_region when mouse is moved.
4169 (make_mac_frame): Remove.
4170 (make_mac_terminal_frame): Put in #ifdef MAC_OS8.
4171 Initialize mouse pointer shapes. Change values of f->left_pos and
4172 f->top_pos. Don't use make_mac_frame. Use NewCWindow.
4173 Don't call ShowWindow.
4174 (mac_initialize_display_info) [MAC_OSX]: Create mac_id_name from
4175 Vinvocation_name and Vsystem_name.
4176 (mac_make_rdb): New function (from w32term.c).
4177 (mac_term_init): Use it. Add BLOCK_INPUT. Error if display has
4178 already been opened. Don't pass argument to
4179 mac_initialize_display_info. Don't set dpyinfo->height/width.
4180 Add entries to x_display_list and x_display_name_list.
4181 (x_delete_display): New function.
4182 (mac_initialize): Don't call mac_initialize_display_info.
4183 (syms_of_macterm) [!MAC_OSX]: Don't call Fprovide.
4184
4185 * macterm.h (check_mac): Add extern.
4186 (struct mac_output): New member size_hints.
4187 (FRAME_SIZE_HINTS): New macro.
4188 (mac_unload_font): Add extern.
4189
4190 * xdisp.c (expose_window, expose_frame): Remove kludges for Mac.
4191
4192 * xfaces.c (clear_font_table) [MAC_OS]: Call mac_unload_font.
4193
4194 2004-12-27 Richard M. Stallman <rms@gnu.org>
4195
4196 * buffer.c (Fbuffer_disable_undo): Delete (move to simple.el).
4197 (syms_of_buffer): Don't defsubr it.
4198
4199 * process.c (list_processes_1): Set undo_list instead
4200 of calling Fbuffer_disable_undo.
4201
4202 * xdisp.c (single_display_spec_string_p): Rename from
4203 single_display_prop_string_p.
4204 (single_display_spec_intangible_p): Rename from
4205 single_display_prop_intangible_p.
4206 (handle_single_display_spec): Rename from handle_single_display_prop.
4207 Rewritten to be easier to understand.
4208
4209 Change in load-history format. Functions now get (defun . NAME),
4210 and variables get just NAME.
4211
4212 * data.c (Fdefalias): Use (defun . FN_NAME) in LOADHIST_ATTACH.
4213
4214 * eval.c (Fdefun, Fdefmacro): Use (defun . FN_NAME) in LOADHIST_ATTACH.
4215 (Fdefvaralias, Fdefvar, Fdefconst): Use just SYM in LOADHIST_ATTACH.
4216 (Qdefvar): Var deleted.
4217 (syms_of_eval): Don't initialze it.
4218
4219 * lread.c (syms_of_lread) <load-history>: Doc fix.
4220
4221 2004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4222
4223 * xmenu.c (popup_get_selection): Pop down on C-g.
4224 (set_frame_menubar): Install translations for Lucid/Motif/Lesstif that
4225 pops down menu on C-g.
4226 (xdialog_show): If dialog popped down and no button in the dialog was
4227 pushed, call Fsignal to quit.
4228 (xmenu_show): In no toolkit version, if menu returns NO_SELECT call
4229 Fsignal to quit.
4230
4231 * xfns.c (Fx_file_dialog): Motif/Lesstif version: Pop down on C-g.
4232
4233 * gtkutil.c (xg_initialize): Install bindings for C-g so that
4234 dialogs and menus pop down.
4235
4236 2004-12-27 Kenichi Handa <handa@m17n.org>
4237
4238 * coding.c (code_convert_region): Fix calculation of `ratio'.
4239
4240 2004-12-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4241
4242 * gtkutil.c (update_frame_tool_bar): Make the value of
4243 tool-bar-button-margin control margins of images in tool bar.
4244
4245 * alloc.c (check_depth): New variable.
4246 (overrun_check_malloc, overrun_check_realloc): Only add
4247 overhead and write check pattern if check_depth is 1 (to handle
4248 recursive calls). Increase/decrease check_depth in entry/exit.
4249 (overrun_check_free): Only check for overhead if check_depth is 1.
4250 Increase/decrease check_depth in entry/exit.
4251
4252 2004-12-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4253
4254 * keyboard.c (input_available_signal): Call SIGNAL_THREAD_CHECK
4255 before touching input_available_clear_time, to avoid accessing it
4256 from multiple threads.
4257
4258 2004-12-23 Jason Rumney <jasonr@gnu.org>
4259
4260 * image.c (__WIN32__) [HAVE_NTGUI]: Define for correct behaviour
4261 of JPEG library.
4262
4263 2004-12-22 Richard M. Stallman <rms@gnu.org>
4264
4265 * emacs.c (main): If batch mode, set Vundo_outer_limit to nil.
4266
4267 * lisp.h (Vundo_outer_limit): Fix decl.
4268
4269 * undo.c (Vundo_outer_limit): Replaces undo_outer_limit.
4270 Uses changed.
4271 (syms_of_undo): Initialize appropriately.
4272 (truncate_undo_list): If it's nil, there's no limit.
4273
4274 2004-12-22 Kenichi Handa <handa@m17n.org>
4275
4276 * xselect.c (Fx_get_cut_buffer_internal): Return a unibyte string.
4277
4278 2004-12-21 Richard M. Stallman <rms@gnu.org>
4279
4280 * eval.c (unwind_to_catch): Clear immediate_quit.
4281
4282 * xdisp.c (get_next_display_element): Display codes 8a0 and 8ad
4283 specially as `\ ' and `\-'.
4284
4285 * keyboard.c (kbd_buffer_store_event_hold):
4286 In the code for while-no-input, handle immediate_quit.
4287
4288 * alloc.c (Fgarbage_collect): Update call to truncate_undo_list.
4289 Call that at the very start.
4290 (undo_limit, undo_strong_limit, undo_outer_limit): Move to undo.c.
4291 (syms_of_alloc): Don't define undo-limit,
4292 undo-strong-limit and undo-outer-limit here.
4293
4294 * undo.c (truncate_undo_list): Return void.
4295 Take just one argument, the buffer.
4296 Make it current, and inhibit recursive GC.
4297 Access and update the undo list directly; return void.
4298 Refer to the undo...limit variables directly.
4299 Test undo_outer_limit only after counting the whole current command.
4300 When it's exceeded, call the function in undo-outer-limit-function.
4301 (undo_limit, undo_strong_limit, undo_outer_limit): From alloc.c.
4302 (Vundo_outer_limit_function): New variable.
4303 (syms_of_undo): Define undo-limit, undo-strong-limit
4304 and undo-outer-limit here, and undo-outer-limit-function.
4305 Doc fixes.
4306
4307 * lisp.h (truncate_undo_list): Update decl.
4308
4309 2004-12-21 Piet van Oostrum <piet@cs.uu.nl>
4310
4311 * fileio.c (Fread_file_name): Delete duplicates in
4312 file-name-history when history_delete_duplicates is true.
4313
4314 2004-12-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4315
4316 * macterm.c (mac_do_list_fonts): Fix memory leak
4317
4318 2004-12-20 Richard M. Stallman <rms@gnu.org>
4319
4320 * regex.c (re_match_2_internal) <symend, wordend>:
4321 Fix calls to UPDATE_SYNTAX_TABLE_FORWARD.
4322
4323 2004-12-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4324
4325 * macterm.c (endif, x_font_name_to_mac_font_name):
4326 Use maccentraleurroman instead of maccentraleuropean
4327 (mac_c_string_match, mac_do_list_fonts): Speed up font search by
4328 quickly finding a specific font without needing regexps.
4329
4330 2004-12-15 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4331
4332 * syssignal.h: Declare main_thread.
4333 (SIGNAL_THREAD_CHECK): New macro.
4334
4335 * keyboard.c (input_available_signal): Move thread checking code
4336 to macro SIGNAL_THREAD_CHECK and call that macro.
4337 (interrupt_signal): Call SIGNAL_THREAD_CHECK.
4338
4339 * alloc.c (uninterrupt_malloc): Move main_thread to emacs.c.
4340
4341 * emacs.c: Define main_thread.
4342 (main): Initialize main_thread.
4343 (handle_USR1_signal, handle_USR2_signal, fatal_error_signal)
4344 (memory_warning_signal): Call SIGNAL_THREAD_CHECK.
4345
4346 * floatfns.c (float_error): Call SIGNAL_THREAD_CHECK.
4347
4348 * dispnew.c (window_change_signal): Call SIGNAL_THREAD_CHECK.
4349
4350 * sysdep.c (select_alarm): Call SIGNAL_THREAD_CHECK.
4351
4352 * process.c (send_process_trap, sigchld_handler):
4353 Call SIGNAL_THREAD_CHECK.
4354
4355 * data.c (arith_error): Call SIGNAL_THREAD_CHECK.
4356
4357 * atimer.c (alarm_signal_handler): Call SIGNAL_THREAD_CHECK.
4358
4359 * xterm.c (xg_scroll_callback): Update XG_LAST_SB_DATA before
4360 returning when xg_ignore_gtk_scrollbar is true.
4361
4362 2004-12-14 Kim F. Storm <storm@cua.dk>
4363
4364 * keyboard.c (read_char): Save and restore echo_string when
4365 handling input method.
4366
4367 2004-12-13 Richard M. Stallman <rms@gnu.org>
4368
4369 * eval.c (syms_of_eval) <quit-flag>: Doc fix.
4370
4371 * keyboard.c (Vthrow_on_input): New variable.
4372 (syms_of_keyboard): Defvar and initialize it.
4373 (kbd_buffer_store_event_hold): Handle Vthrow_on_input.
4374
4375 * lisp.h (QUIT): Check for Vthrow_on_input.
4376 (Vthrow_on_input): Declare it.
4377
4378 2004-12-13 Kim F. Storm <storm@cua.dk>
4379
4380 * xdisp.c (set_iterator_to_next): Reset stop_charpos after display
4381 vector.
4382
4383 2004-12-12 Richard M. Stallman <rms@gnu.org>
4384
4385 * indent.c (Fvertical_motion): Call move_it_by_lines even if LINES = 0.
4386
4387 * minibuf.c (Fall_completions): Add var `zero' and use it in loop.
4388 (Ftry_completion): Really use outer `zero'; eliminate inner one.
4389
4390 2004-12-12 Kenichi Handa <handa@m17n.org>
4391
4392 * term.c (encode_terminal_code): Fix previous change.
4393
4394 2004-12-11 Stefan Monnier <monnier@iro.umontreal.ca>
4395
4396 * keyboard.c (handle_async_input): Remove pthread mutex handling.
4397 (input_available_signal): Move pthread thingy to !SYNC_INPUT branch.
4398
4399 * syntax.c (Fforward_word): Avoid non-idempotent side-effects
4400 in macro arguments.
4401
4402 * minibuf.c (Ftry_completion, Fall_completions): Don't use
4403 XFASTINT blindly.
4404
4405 * emacs.c (main, Fdump_emacs): Don't touch malloc hooks if SYNC_INPUT.
4406
4407 2004-12-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4408
4409 * w32term.c (x_calc_absolute_position): Remove calculation of
4410 difference between inner and outer window. Don't subtract difference
4411 for left and top calculations.
4412
4413 * xterm.c (x_calc_absolute_position): Don't subtract outer_pixel_diff
4414 for left and top calculations. Remove call to x_real_positions.
4415 [Bug report by Drew Adams in November]
4416 (x_check_expected_move): Do not set change_gravity to 1 when calling
4417 x_set_offset.
4418
4419 2004-12-08 Richard M. Stallman <rms@gnu.org>
4420
4421 * xdisp.c (get_next_display_element): Use `escape-glyph' for
4422 control chars and escaped octal codes.
4423 (Qescape_glyph): New variable.
4424 (syms_of_xdisp): Initialize it.
4425 (escape_glyph_face): New variable.
4426 (redisplay_window): Initialize it.
4427
4428 2004-12-07 Paul Eggert <eggert@cs.ucla.edu>
4429
4430 * image.c (our_fill_input_buffer, jpeg_load, CHECK_LIB_AVAILABLE)
4431 (init_image): Use 1 rather than TRUE. TRUE's not always defined.
4432
4433 2004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4434
4435 * emacs.c (Fdump_emacs): Add ! defined (SYSTEM_MALLOC) around
4436 reset_malloc_hooks.
4437
4438 * keyboard.c (handle_async_input, input_available_signal):
4439 Add ! defined (SYSTEM_MALLOC) around thread code.
4440
4441 * alloc.c: Add comment about the reason for (UN)BLOCK_INPUT_ALLOC.
4442
4443 2004-12-07 Stefan Monnier <monnier@iro.umontreal.ca>
4444
4445 * eval.c (init_eval_once): Increase max_specpdl_size to 1000.
4446
4447 * config.in: Regenerate.
4448
4449 2004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4450
4451 * xmenu.c (Fx_popup_menu): Correct documentation about position.
4452 (xmenu_show): Do not call XTranslateCoordinates. Adjust position
4453 if not given by a mouse click to correspond with x-popup-menu
4454 documentation.
4455
4456 * config.in: Regenerate.
4457
4458 * gtkutil.c: Include signal.h and syssignal.h.
4459 (xg_get_file_name): Block and unblock __SIGRTMIN if defined.
4460
4461 * alloc.c: If HAVE_GTK_AND_PTHREAD, include pthread.h,
4462 new variables main_thread and alloc_mutex,
4463 define (UN)BLOCK_INPUT_ALLOC to use alloc_mutex to protect
4464 emacs_blocked_* calls and only do (UN)BLOCK_INPUT in the main thread.
4465 If not HAVE_GTK_AND_PTHREAD, (UN)BLOCK_INPUT_ALLOC is the same as
4466 (UN)BLOCK_INPUT.
4467 (emacs_blocked_free, emacs_blocked_malloc)
4468 (emacs_blocked_realloc): Use (UN)BLOCK_INPUT_ALLOC.
4469 (uninterrupt_malloc): Initialize main_thread and alloc_mutex.
4470 (reset_malloc_hooks): New function.
4471
4472 * lisp.h: Declare reset_malloc_hooks.
4473
4474 * emacs.c (Fdump_emacs): Call reset_malloc_hooks.
4475
4476 * keyboard.c: Conditionally include pthread.h
4477 (handle_async_input, input_available_signalt): If not in the main
4478 thread, block signal, send signal to main thread and return.
4479
4480 * gtkutil.c (xg_get_file_with_chooser): Handle local files only.
4481 Set current folder in file chooser if default_filename is a directory.
4482
4483 2004-12-05 Stefan Monnier <monnier@iro.umontreal.ca>
4484
4485 * regex.c (GET_UNSIGNED_NUMBER): Signal an error when reaching the end.
4486 Remove redundant correctness checks.
4487 (regex_compile): Fix up error codes for \{..\} expressions.
4488
4489 2004-12-05 Richard M. Stallman <rms@gnu.org>
4490
4491 * regex.c (regex_compile): Fix end-of-pattern case for space.
4492
4493 2004-12-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4494
4495 * macterm.h (cfstring_create_with_utf8_cstring): Add prototype.
4496 * mac.c (cfstring_create_with_utf8_cstring): Add to prevent
4497 crashes with invalid characters.
4498 * macmenu.c (add_menu_item): Use it.
4499 * image.c (image_load_quartz2d): Likewise.
4500 * macfns.c (x_set_name, x_set_title): Likewise.
4501 (Fx_file_dialog): Likewise. Use constant CFRefs instead of
4502 creating them each time for labels.
4503
4504 2004-12-02 Richard M. Stallman <rms@gnu.org>
4505
4506 * config.in (RE_TRANSLATE_P): If make_number is not a macro,
4507 don't use it here.
4508
4509 * eval.c (Fcalled_interactively_p): Don't check INTERACTIVE.
4510 (interactive_p): Skip Scalled_interactively_p frames
4511 like Sinteractive_p frames.
4512 (unwind_to_catch): Clear handling_signal.
4513
4514 * data.c (Fmake_variable_buffer_local): Doc fix.
4515 (Fmake_local_variable): Doc fix.
4516
4517 * insdel.c (insert_from_string_before_markers)
4518 (insert_from_string): Don't modify buffer on empty insertion.
4519
4520 * window.c (Fget_lru_window, Fget_largest_window): Doc fixes.
4521
4522 2004-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4523
4524 * macmenu.c (add_menu_item): Fallback on MacRoman if encoding
4525 menu text as UTF8 fails.
4526
4527 2004-12-01 Kim F. Storm <storm@cua.dk>
4528
4529 * alloc.c: Add commentary for last change.
4530 (XMALLOC_PUT_SIZE, XMALLOC_GET_SIZE): New macros to handle
4531 sizeof(size_t) != 4.
4532 (overrun_check_malloc, overrun_check_realloc, overrun_check_free):
4533 Use them. Also clear header and trailer of freed memory.
4534 (GC_STRING_OVERRUN_COOKIE_SIZE): Rename from GC_STRING_EXTRA.
4535 (string_overrun_cookie): Rename from string_overrun_pattern.
4536 (GC_STRING_EXTRA): Define from GC_STRING_OVERRUN_COOKIE_SIZE.
4537
4538 2004-12-01 Andreas Schwab <schwab@suse.de>
4539
4540 * lisp.h: Declare string_to_multibyte.
4541
4542 2004-12-01 Kenichi Handa <handa@m17n.org>
4543
4544 * w32console.c (w32con_write_glyphs): Decide coding here.
4545 Adjusted for the change of encode_terminal_code.
4546
4547 * term.c (encode_terminal_code): Don't make it "static".
4548
4549 2004-11-30 Kenichi Handa <handa@m17n.org>
4550
4551 * term.c (encode_terminal_buf, encode_terminal_bufsize): New variables.
4552 (encode_terminal_code): Argument changed. Encode all
4553 characters at once, and return a pointer to the result of encoding.
4554 (write_glyphs): Decide coding here. Adjusted for the above change.
4555 (insert_glyphs): Likewise.
4556 (term_init): Initialize encode_terminal_bufsize to 0.
4557
4558 * coding.c (Vcode_conversion_workbuf_name): New variable.
4559 (syms_of_coding): Initialize and staticpro it.
4560 (set_conversion_work_buffer): New function.
4561 (run_pre_post_conversion_on_str): Use it.
4562 (run_pre_write_conversin_on_c_str): New function.
4563
4564 * coding.h (run_pre_write_conversin_on_c_str): Extern it.
4565
4566 2004-11-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4567
4568 * keyboard.c: Don't undef SIGIO
4569 * s/darwin.h (NO_SOCK_SIGIO): Define NO_SOCK_SIGIO on carbon
4570 * Makefile.in (mac.o): Depend on blockinput.h and atimer.h.
4571 (macfns.o): Don't depend on ccl.h.
4572 * macfns.c (mac_frame_parm_handlers): Set handlers for
4573 Qleft_fringe and Qright_fringe.
4574 * macterm.c (mac_fill_rectangle_to_pixmap)
4575 (mac_draw_rectangle_to_pixmap, mac_copy_area_to_pixmap)
4576 (mac_copy_area_with_mask_to_pixmap, x_draw_image_foreground_1):
4577 Put in #if 0.
4578 (mac_scroll_area) [TARGET_API_MAC_CARBON]: Use ScrollWindowRect.
4579 (x_flush) [TARGET_API_MAC_CARBON]: Don't traverse frames.
4580 (XFlush) [TARGET_API_MAC_CARBON]: Define to an empty replacement.
4581 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
4582 [!MAC_OS8]: Added ifdef'd out code for os8. Don't use
4583 XDrawImageString. Always draw background and foreground separately.
4584 (x_draw_image_foreground): Use clipping instead of computing the
4585 intersection rectangle.
4586 (x_draw_image_glyph_string): Don't draw an image with mask to a
4587 pixmap.
4588 (x_redisplay_interface): Set flush_display_optional member to 0.
4589 (XTread_socket): Correctly reset the TEConverter
4590 object.
4591
4592 2004-11-30 Kim F. Storm <storm@cua.dk>
4593
4594 * lisp.h: New defines to enable buffer overrun checking.
4595 (GC_CHECK_STRING_OVERRUN, GC_CHECK_STRING_FREE_LIST)
4596 (XMALLOC_OVERRUN_CHECK, GC_CHECK_CONS_LIST): Add.
4597
4598 * alloc.c: Add more checks for buffer overruns.
4599 (XMALLOC_OVERRUN_CHECK_SIZE, xmalloc_overrun_check_header)
4600 xmalloc_overrun_check_trailer, overrun_check_malloc)
4601 overrun_check_realloc, overrun_check_free): Add.
4602 (GC_STRING_EXTRA, string_overrun_pattern): Add.
4603 (check_sblock, allocate_string_data, compact_small_strings):
4604 Set and check string_overrun_pattern if GC_CHECK_STRING_OVERRUN.
4605 (check_cons_list): Condition on GC_CHECK_CONS_LIST.
4606 (check_string_free_list): Add.
4607 (allocate_string, sweep_strings): Call check_string_free_list.
4608
4609 * emacs.c (malloc_initialize_hook): Don't free malloc_state_ptr if
4610 XMALLOC_OVERRUN_CHECK to avoid crash during load.
4611
4612 2004-11-29 Kim F. Storm <storm@cua.dk>
4613
4614 * fns.c (concat): Use SAFE_ALLOCA.
4615
4616 2004-11-29 Stefan Monnier <monnier@iro.umontreal.ca>
4617
4618 * sysdep.c (emacs_write): Don't use QUIT.
4619
4620 2004-11-29 Kenichi Handa <handa@m17n.org>
4621
4622 * buffer.c (init_buffer): Set current_buffer->directory to a
4623 multibyte string made by string_to_multibyte.
4624
4625 * emacs.c (init_cmdargs): Set unibyte strings in Vcommand_line_args.
4626
4627 2004-11-27 Andreas Schwab <schwab@suse.de>
4628
4629 * alloc.c (mark_stack): Call GC_MARK_SECONDARY_STACK if defined.
4630
4631 * s/gnu-linux.h: Enable no-op gcpros on ia64.
4632 (GC_MARK_SECONDARY_STACK) [__ia64__]: Define.
4633
4634 * filelock.c (lock_file_1): Call get_boot_time early.
4635 Increase buffer size.
4636
4637 2004-11-27 Eli Zaretskii <eliz@gnu.org>
4638
4639 * lisp.h (DECL_ALIGN): Define non-trivially only if NO_DECL_ALIGN
4640 is not defined.
4641
4642 2004-11-27 Kim F. Storm <storm@cua.dk>
4643
4644 * search.c (syms_of_search) <search-spaces-regexp>: Move 'doc:'
4645 marker out of doc string.
4646
4647 2004-11-26 Stefan Monnier <monnier@iro.umontreal.ca>
4648
4649 * s/darwin.h (POSIX_SIGNALS): Undo the removal of 2002-08-25,
4650 which was not mentioned in the log.
4651
4652 2004-11-26 Kim F. Storm <storm@cua.dk>
4653
4654 * fringe.c (update_window_fringes): Prefer truncation bitmaps over
4655 angle bitmaps at top/bottom line.
4656
4657 * xdisp.c: Undo recent changes for restoring saved_face_id. Instead,
4658 set it when it->method is set to next_element_from_display_vector.
4659 (setup_for_ellipsis): Add LEN argument. Callers changed.
4660 Set it->saved_face_id.
4661 (get_next_display_element): Use loop instead of recursion.
4662 Set it->saved_face_id. Combine duplicate code for ctr chars.
4663 (next_element_from_display_vector): Do not set it->saved_face_id.
4664 (next_element_from_ellipsis): Use setup_for_ellipsis.
4665
4666 2004-11-26 Eli Zaretskii <eliz@gnu.org>
4667
4668 * eval.c (Fdefvar): Declare pdl from last change as `volatile' to
4669 prevent compiler warnings.
4670
4671 2004-11-25 Stefan Monnier <monnier@iro.umontreal.ca>
4672
4673 * keyboard.c (command_loop_1): Print a message describing the key
4674 the user just pressed when this key has no binding.
4675
4676 * sysdep.c (sys_signal): Don't use SA_RESTART if SYNC_INPUT is set.
4677 (emacs_open, emacs_read, emacs_write): Check QUIT when interrupted.
4678
4679 * lread.c (readchar): Check QUIT when `getc' is interrupted.
4680
4681 2004-11-24 Richard M. Stallman <rms@gnu.org>
4682
4683 * coding.c (run_pre_post_conversion_on_str): Bind Qinhibit_read_only.
4684
4685 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>: Doc fix.
4686
4687 2004-11-24 Kim F. Storm <storm@cua.dk>
4688
4689 * xdisp.c (move_it_in_display_line_to, display_line):
4690 Restore saved_face_id also when truncate-lines or hscrolled.
4691
4692 2004-11-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4693
4694 * gtkutil.c (xg_get_file_name): Rename use-old-gtk-file-dialog to
4695 x-use-old-gtk-file-dialog.
4696
4697 * xfns.c: Define x_use_old_gtk_file_dialog.
4698 (syms_of_xfns): Rename use-old-gtk-file-dialog to x-... Move it
4699 outside ifdef USE_GTK.
4700
4701 2004-11-23 Stefan Monnier <monnier@iro.umontreal.ca>
4702
4703 * coding.h (ENCODE_FILE, DECODE_FILE, ENCODE_SYSTEM, DECODE_SYSTEM):
4704 Don't use XFASTINT blindly.
4705
4706 * config.in (RE_TRANSLATE_P): Don't use XFASTINT blindly.
4707
4708 * indent.c (skip_invisible): Avoid non-idempotent side-effects
4709 in macro arguments.
4710
4711 * keymap.c (Flookup_key): Check INTEGERP before XINT.
4712
4713 * lread.c (oblookup): Don't use XFASTINT blindly.
4714
4715 * window.c (Fset_window_scroll_bars): Don't use XINT if it isn't int.
4716 (decode_next_window_args, window_loop): Don't use XFASTINT blindly.
4717
4718 2004-11-23 Kim F. Storm <storm@cua.dk>
4719
4720 * dispextern.h (MATRIX_ROW_ENDS_IN_MIDDLE_OF_CHAR_P)
4721 (MATRIX_ROW_STARTS_IN_MIDDLE_OF_CHAR_P): Not if dpvec_index is zero.
4722
4723 * xfaces.c (lookup_named_face): Add signal_p arg. Return -1 if
4724 signal_p is zero and face name is unknown.
4725 (Fx_list_fonts): Don't signal error in lookup_named_face.
4726 (Fface_font): Signal error in lookup_named_face.
4727 (ascii_face_of_lisp_face): Likewise.
4728
4729 * dispextern.h (lookup_named_face): Fix prototype.
4730
4731 * xdisp.c (handle_single_display_prop): Don't signal error in
4732 lookup_named_face for unknown fringe face name.
4733 (highlight_trailing_whitespace): Don't signal error in
4734 lookup_named_face if trailing-whitespace face unknown.
4735 (calc_line_height_property): Don't signal error in
4736 lookup_named_face if specified face name is unknown.
4737
4738 * fringe.c (update_window_fringes): Show top row indicator if
4739 window has header-line. Don't show arrow at bob and eob
4740 if the boundary indicators are not used.
4741 (Fset_fringe_bitmap_face): Signal error in lookup_named_face.
4742
4743 * window.c (set_window_buffer): Clear display_error_modiff.
4744
4745 2004-11-22 Kim F. Storm <storm@cua.dk>
4746
4747 * fringe.c (update_window_fringes): Provide sensible fall-back
4748 value for non-nil indicate-buffer-boundaries setting.
4749
4750 2004-11-22 Markus Rost <rost@ias.edu>
4751
4752 * minibuf.c (Fminibuffer_complete_and_exit): Fix previous change.
4753
4754 2004-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
4755
4756 * eval.c (Fdefvar): Warn when var is let-bound but globally void.
4757
4758 2004-11-21 Kim F. Storm <storm@cua.dk>
4759
4760 * xdisp.c (erase_phys_cursor): Clear hollow cursor inside TEXT_AREA.
4761
4762 * xterm.c (x_clip_to_row): Add area arg. Callers changed.
4763 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
4764
4765 * w32term.c (w32_clip_to_row): Add area arg. Callers changed.
4766 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
4767
4768 * macterm.c (x_clip_to_row): Add area arg. Callers changed.
4769 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
4770
4771 * xdisp.c (move_it_in_display_line_to, display_line):
4772 Restore saved_face_id if overflow-newline-into-fringe is enabled and
4773 line is continued before or in middle of element from display vector.
4774
4775 * indent.c (Fvertical_motion): Fix last change. Use another
4776 method to detect if iterator moved too far ahead after reseat.
4777
4778 * xdisp.c (IT_EXPAND_MATRIX_WIDTH): New macro. Do not
4779 expand matrix width for overflow in zero-width area.
4780 (append_glyph, append_composite_glyph, produce_image_glyph)
4781 (append_stretch_glyph): Use it to avoid loop in redisplay.
4782 (note_mode_line_or_margin_highlight): Don't let help-echo from
4783 string override help-echo from image map.
4784
4785 2004-11-20 Luc Teirlinck <teirllm@auburn.edu>
4786
4787 * fns.c (Fyes_or_no_p): Call Fread_from_minibuffer with extra argument.
4788 * callint.c (Fcall_interactively): Ditto.
4789
4790 2004-11-20 Stefan Monnier <monnier@iro.umontreal.ca>
4791
4792 * minibuf.c (Fminibuffer_complete_and_exit):
4793 Fixup the case of the completed value, for case-indep completion.
4794
4795 2004-11-20 Richard M. Stallman <rms@gnu.org>
4796
4797 * lisp.h (Fread_from_minibuffer): Add arg in decl.
4798
4799 * minibuf.c (read_minibuf): New arg KEEP_ALL. Callers changed.
4800 (Fread_from_minibuffer): New arg KEEP_ALL. Callers changed.
4801
4802 * search.c (Vsearch_spaces_regexp):
4803 Rename from Vsearch_whitespace_regexp. All uses changed.
4804
4805 2004-11-20 Thien-Thi Nguyen <ttn@gnu.org>
4806
4807 * eval.c (init_eval_once): Increase `max_specpdl_size' to 650.
4808
4809 2004-11-19 Richard M. Stallman <rms@gnu.org>
4810
4811 * search.c (Vsearch_whitespace_regexp): New variable.
4812 (syms_of_search): Defvar it.
4813 (compile_pattern_1): Call re_set_whitespace_regexp with it.
4814 (search_buffer): No regexp is trivial if Vsearch_whitespace_regexp
4815 is non-nil.
4816 (struct regexp_cache): New element whitespace_regexp.
4817 (syms_of_search): Initialize whitespace_regexp elements.
4818 (compile_pattern): Compare whitespace_regexp elements.
4819 (compile_pattern_1): Set whitespace_regexp elements.
4820
4821 * regex.c (regex_compile): Substitute whitespace_regexp
4822 for spaces, if it is nonzero.
4823 (whitespace_regexp): New variable.
4824 (re_set_whitespace_regexp): New function.
4825
4826 2004-11-19 Kim F. Storm <storm@cua.dk>
4827
4828 * indent.c (Fvertical_motion): Fix last change.
4829
4830 2004-11-18 Kim F. Storm <storm@cua.dk>
4831
4832 * indent.c (Fvertical_motion): Undo 2004-11-16 change.
4833 Instead, move back again if reseating moves too far ahead.
4834
4835 2004-11-17 Luc Teirlinck <teirllm@auburn.edu>
4836
4837 * xdisp.c (message3): Call clear_message.
4838
4839 2004-11-17 Kim F. Storm <storm@cua.dk>
4840
4841 * xdisp.c (erase_phys_cursor): Adjust cursor row visible height.
4842
4843 2004-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4844
4845 * gtkutil.c (xg_get_file_name): Typo in HAVE_GTK_FILE_SELECTION_NEW.
4846
4847 * xmenu.c (x_menu_in_use): Remove.
4848 (x_menu_set_in_use): Also set popup_activated_flag.
4849
4850 * xfns.c (Fx_file_dialog): Call popup_activated instead of
4851 x_menu_in_use. Call x_menu_set_in_use in Motif version also.
4852
4853 * xterm.h (x_menu_in_use): Remove.
4854
4855 2004-11-16 Richard M. Stallman <rms@gnu.org>
4856
4857 * keymap.c (Fmap_keymap): New arg SORT-FIRST.
4858 Use map-keymap-internal to implement that.
4859
4860 * indent.c (Fvertical_motion): In batch mode, use vmotion directly.
4861
4862 2004-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
4863
4864 * xdisp.c (get_glyph_string_clip_rect, init_glyph_string): Check it's
4865 a window before using XWINDOW.
4866
4867 * window.c (make_window, Fselect_window, make_dummy_parent)
4868 (save_window_save):
4869 * frame.c (make_frame):
4870 * fns.c (concat): Avoid side-effects inside XSETFASTINT's arguments.
4871
4872 * lisp.h (NILP): Use EQ rather than XFASTINT.
4873
4874 2004-11-16 Kim F. Storm <storm@cua.dk>
4875
4876 * fringe.c (Fdefine_fringe_bitmap): Always set 'h'. Simplify.
4877
4878 * indent.c (Fvertical_motion): Fix last change. Only reseat when
4879 moving backwards.
4880
4881 2004-11-16 Luc Teirlinck <teirllm@auburn.edu>
4882
4883 * dispextern.h: Extern reseat_at_previous_visible_line_start.
4884
4885 2004-11-16 Kenichi Handa <handa@m17n.org>
4886
4887 * xdisp.c (display_mode_element): Fix previous change (calculate
4888 end position of substring to display correctly).
4889
4890 2004-11-16 Kim F. Storm <storm@cua.dk>
4891
4892 * keyboard.c (Fposn_at_point): Remove extra */ after doc string.
4893 Reported by Andrew M. Scott.
4894
4895 2004-11-15 Kim F. Storm <storm@cua.dk>
4896
4897 * fns.c (Fsafe_plist_get): New defun.
4898 (syms_of_fns): Defsubr it.
4899
4900 * lisp.h (Fsafe_plist_get): Add EXFUN.
4901
4902 * xdisp.c (store_mode_line_string, produce_stretch_glyph):
4903 Use Fsafe_plist_get.
4904 (note_mode_line_or_margin_highlight, note_mouse_highlight):
4905 Fix image map element parsing. Use Fsafe_plist_get.
4906
4907 2004-11-15 Richard M. Stallman <rms@gnu.org>
4908
4909 * xdisp.c (get_next_display_element): Fix previous change.
4910
4911 2004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4912
4913 * window.c (shrink_windows): Handle special case of one window left
4914 when trying to shrink the final reminder. Grow windows if
4915 total_removed is less than total_shrink.
4916
4917 * xmenu.c (pop_down_menu): Remove global variable current_menu,
4918 extract pointer from arg with XSAVE_VALUE.
4919 (create_and_show_popup_menu, create_and_show_dialog, xmenu_show):
4920 Construct arg to record_unwind_protect with make_save_value.
4921
4922 2004-11-13 Richard M. Stallman <rms@gnu.org>
4923
4924 * xdisp.c (reseat_at_previous_visible_line_start): No longer static.
4925 (get_next_display_element): Fix previous change to apply only to \n.
4926
4927 * indent.c (Fvertical_motion): Scan to PT from start of line to
4928 make iterator consistent.
4929
4930 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
4931
4932 2004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4933
4934 * gtkutil.c (pop_down_file_dialog): Add BLOCK_INPUT.
4935
4936 * xfns.c (Fx_file_dialog): Call x_menu_in_use and x_menu_set_in_use.
4937 Record unwind with clean_up_file_dialog.
4938
4939 * xterm.h (x_menu_in_use, x_menu_set_in_use, x_menu_wait_for_event):
4940 Declare.
4941
4942 * xmenu.c (x_menu_in_use, x_menu_set_in_use): New functions.
4943
4944 2004-11-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4945
4946 * gtkutil.c (xg_file_sel_ok, xg_file_sel_cancel)
4947 (xg_file_sel_destroy): Remove.
4948 (xg_file_response_cb, pop_down_file_dialog)
4949 (xg_get_file_name_from_chooser, xg_get_file_name_from_selector):
4950 New functions.
4951 (xg_get_file_with_chooser, xg_get_file_with_selection):
4952 Take new arg func, set it to xg_get_file_name_from_chooser/selector.
4953 Move common code to xg_get_file_name. Return widget created.
4954 (xg_get_file_name): Set name, transient for, modal and destroy
4955 with parent here. Connect response signal to xg_file_response_cb,
4956 connect delete-event to gtk_true. Record pop_down_file_dialog
4957 for unwind. Do event loop and call x_menu_wait_for_event in loop.
4958 (xg_create_widget): Make dialogs modal.
4959
4960 * xmenu.c (unuse_menu_items, pop_down_menu): Arg is of type
4961 Lisp_Object.
4962 (popup_get_selection): Move unwind protect ...
4963 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
4964 Move destroy of widget to pop_down_menu.
4965 (popup_widget_loop): Move unwind protect ...
4966 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
4967 Move destroy of widget to pop_down_menu.
4968 (pop_down_menu): BLOCK_INPUT and destroy widget/window.
4969 (xmenu_show): Record unwind pop_down_menu. Move XMenuDestroy,
4970 x_mouse_leave and grabbed = 0 to pop_down_menu.
4971
4972 2004-11-13 Kim F. Storm <storm@cua.dk>
4973
4974 * xdisp.c (make_cursor_line_fully_visible_p): New variable.
4975 (syms_of_xdisp): DEFVAR_BOOL it.
4976 (make_cursor_line_fully_visible, try_cursor_movement)
4977 (try_window_id): Use it.
4978
4979 2004-11-12 Kim F. Storm <storm@cua.dk>
4980
4981 * dispextern.h (struct glyph_row): New member extra_line_spacing.
4982 (struct it): New member max_extra_line_spacing.
4983 (MR_PARTIALLY_VISIBLE, MR_PARTIALLY_VISIBLE_AT_TOP)
4984 (MR_PARTIALLY_VISIBLE_AT_BOTTOM): New helper macros.
4985 (MATRIX_ROW_PARTIALLY_VISIBLE_P): Fix to return false if invisible
4986 part of last line is only extra line spacing (so the text on the
4987 line is fully visible). Use helper macros.
4988 Add W arg (to use them). All callers changed.
4989 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_TOP_P)
4990 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_BOTTOM_P): Use helper macros.
4991
4992 * window.c (window_scroll_pixel_based, Frecenter):
4993 Use move_it_vertically_backward directly.
4994 (Frecenter): Fix calculation of new start pos for negative arg.
4995 Before, the new start pos was sometimes chosen too far back, so
4996 the last line became only partially visible, and thus would be
4997 either only semi-visible or automatically scrolled to the middle
4998 of the window by redisplay.
4999
5000 * xdisp.c (init_iterator): Clear it.max_extra_line_spacing.
5001 (move_it_vertically_backward): Don't recure to move further back.
5002 (move_it_vertically): Remove superfluous condition.
5003 (move_it_by_lines): Clear last_height when moved 0 lines.
5004 (resize_mini_window): Use it.max_extra_line_spacing.
5005 (display_tool_bar_line): Clear row->extra_line_spacing.
5006 (try_scrolling): Use move_it_vertically_backward directly.
5007 (redisplay_window): Likewise.
5008 (compute_line_metrics): Set row->extra_line_spacing.
5009 (display_line, display_string): Likewise.
5010 (x_produce_glyphs): Update it->max_extra_line_spacing.
5011
5012 * xmenu.c (pop_down_menu): Return nil.
5013
5014 2004-11-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5015
5016 * xmenu.c (x_menu_wait_for_event): New function.
5017 (popup_get_selection, popup_widget_loop): Call x_menu_wait_for_event
5018 to handle timers.
5019 (popup_widget_loop): Add argument do_timers.
5020 (create_and_show_popup_menu, create_and_show_dialog): Pass 1 for
5021 do_timers to popup_widget_loop.
5022 (xmenu_show): Call XMenuActivateSetWaitFunction so that
5023 x_menu_wait_for_event is called by XMenuActivate.
5024 (create_and_show_popup_menu): Pass 1 for do_timers to
5025 popup_get_selection.
5026 (pop_down_menu): New function.
5027 (popup_get_selection, popup_widget_loop): Unwind protect to
5028 pop_down_menu.
5029 (popup_widget_loop): Add argument widget.
5030 (create_and_show_popup_menu, create_and_show_dialog): Pass new
5031 argument widget to popup_widget_loop.
5032
5033 2004-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
5034
5035 * keymap.c (Fkeymap_prompt): Accept symbol keymaps.
5036
5037 2004-11-09 Kim F. Storm <storm@cua.dk>
5038
5039 * xselect.c: Include <sys/types.h> and <unistd.h> (for getpid).
5040 Fix various comments referring to XEvents instead of input events.
5041 (x_queue_event): Fix format strings.
5042 (x_stop_queuing_selection_requests): Likewise.
5043
5044 * xdisp.c (produce_image_glyph): Remove unused variable 'face_ascent'.
5045 (pint2hrstr): Add extra braces to silence compiler.
5046
5047 * print.c (print_object): Fix format string.
5048
5049 * lread.c (read1): Fix next_char matching.
5050
5051 * lisp.h (Fdelete): Add EXFUN.
5052 (replace_range_2): Add prototype.
5053
5054 * keyboard.c (read_avail_input): Remove unused variable 'discard'.
5055
5056 * intervals.h (NULL_INTERVAL_P): Add separate version when
5057 ENABLE_CHECKING is not defined to silence compiler.
5058 (compare_string_intervals): Add prototype.
5059
5060 * fringe.c (destroy_fringe_bitmap): Fix return type.
5061 (Ffringe_bitmaps_at_pos): Remove unused var 'old_buffer'.
5062
5063 * emacs.c (Fdump_emacs): Fix format string.
5064
5065 * doc.c: Include <ctype.h>.
5066 (Fsubstitute_command_keys): Remove unused variable 'firstkey'.
5067
5068 * data.c (store_symval_forwarding): Remove unused variables.
5069
5070 * callint.c (Fcall_interactively): Remove unused variable 'funcar'.
5071
5072 2004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5073
5074 * Makefile.in (stamp-oldxmenu): If HAVE_GTK, don't add dependencies
5075 to ${OLDXMENU}.
5076
5077 2004-11-09 Kim F. Storm <storm@cua.dk>
5078
5079 * process.c (Fmake_network_process): Remove kludge for interrupted
5080 connects on BSD. If connect is interrupted, just close socket and
5081 start over rather than sleeping and retry with same socket.
5082
5083 2004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5084
5085 * .cvsignore: Add buildobj.lst.
5086
5087 * doc.c: New variable Vbuild_files.
5088 (Fsnarf_documentation): If Vbuild_files is nil, populate it with
5089 file names from buildobj.lst. Only attach docstrings from files
5090 that are in Vbuild_files.
5091 (syms_of_doc): Defvar Vbuild_files.
5092
5093 * Makefile.in (SOME_MACHINE_OBJECTS): Add fringe.o, image.o
5094 and w32*.o.
5095 (temacs${EXEEXT}): Generate buildobj.lst when temacs is linked.
5096 (mostlyclean): Rm buildobj.lst
5097
5098 * makefile.w32-in ($(TEMACS)): Generate buildobj.lst when temacs
5099 is linked.
5100
5101 2004-11-09 Kim F. Storm <storm@cua.dk>
5102
5103 * fringe.c (update_window_fringes): Update fringe bitmaps if
5104 cur and row ends_at_zv_p differs. If bitmaps of a row is updated,
5105 also update previous row to get rid of misc. artifacts.
5106
5107 2004-11-08 Kim F. Storm <storm@cua.dk>
5108
5109 * xdisp.c (fast_find_position): Fix start pos if header line present.
5110 (note_mouse_highlight): Clear mouse face if we move out of text area.
5111
5112 2004-11-08 Eli Zaretskii <eliz@gnu.org>
5113
5114 * editfns.c: Move #include "systime.h" before <sys/resource.h>.
5115 Don't include <sys/time.h> explicitly.
5116 Include <stdio.h> unconditionally, not just on MacOS.
5117
5118 2004-11-08 Kenichi Handa <handa@m17n.org>
5119
5120 * fontset.c (fontset_pattern_regexp): Cancel my previous change;
5121 don't pay attention to '\' before '*'.
5122 (fontset_pattern_regexp): Change the meaning of the second arg.
5123 (Fnew_fontset): Call fs_query_fontset, not Fquery_fontset.
5124 (check_fontset_name): Try NAME as literal at first, and if it
5125 failes, try NAME as pattern.
5126
5127 2004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5128
5129 * emacs.c (Fdump_emacs): Only output warning on GNU/Linux.
5130
5131 2004-11-07 Andreas Schwab <schwab@suse.de>
5132
5133 * lisp.h (Fmsdos_downcase_filename): Declare.
5134 * dired.c (Fmsdos_downcase_filename): Don't declare here.
5135 * fileio.c: Likewise.
5136
5137 2004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5138
5139 * dosfns.c (Fdos_memget, Fdos_memput): Use integer variable offs in
5140 comparisons with integers instead of Lisp_Object address.
5141 (Fmsdos_set_keyboard): Declare argument allkeys.
5142
5143 * msdos.c (IT_set_frame_parameters): Use EQ, not ==, for Lisp_Object:s.
5144
5145 * dired.c (Fmsdos_downcase_filename): Declare extern on MSDOS to avoid
5146 int/Lisp_Object mixup.
5147
5148 * fileio.c: Ditto.
5149
5150 2004-11-06 Steven Tamm <steventamm@mac.com>
5151
5152 * editfns.c: Need to include sys/time.h before resource.h on darwin.
5153
5154 2004-11-06 Richard M. Stallman <rms@gnu.org>
5155
5156 * callint.c (Fcall_interactively): Avoid reusing EVENT for other data.
5157
5158 * xfaces.c (merge_named_face): GCPRO the face_name in the
5159 named_merge_point struct that we make.
5160 (merge_face_heights): Eliminate GCPRO arg. All callers changed.
5161
5162 * keyboard.c (command_loop_1): Change Vtransient_mark_mode
5163 before deciding whether to inactivate mark.
5164
5165 2004-11-06 Lars Brinkhoff <lars@nocrew.org>
5166
5167 * config.in: Regenerate (add HAVE_GETRUSAGE).
5168 * editfns.c (Fget_internal_run_time): New function.
5169 (syms_of_data): Defsubr it.
5170 * fns.c (sxhash): As far as possible, merge calculation of
5171 hash code for symbols and strings.
5172
5173 2004-11-06 Eli Zaretskii <eliz@gnu.org>
5174
5175 * frame.c (syms_of_frame): Fix the example in the doc string.
5176
5177 2004-11-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5178
5179 * eval.c (Feval): Remove check for INPUT_BLOCKED_P.
5180
5181 * xmenu.c (popup_get_selection, create_and_show_popup_menu)
5182 (create_and_show_dialog): Revert change from 2004-10-31.
5183
5184 2004-11-05 Luc Teirlinck <teirllm@auburn.edu>
5185
5186 * macros.c (syms_of_macros) <defining-kbd-macro>: Doc fix.
5187
5188 2004-11-05 Kim F. Storm <storm@cua.dk>
5189
5190 * print.c (print_object): Print Lisp_Misc_Save_Value objects.
5191
5192 * fileio.c (Ffile_modes): Doc fix.
5193 (auto_save_1): Check for Ffile_modes nil value.
5194
5195 2004-11-05 Kim F. Storm <storm@cua.dk>
5196
5197 * xselect.c (struct selection_event_queue, selection_queue)
5198 (x_queue_selection_requests, x_queue_event)
5199 (x_start_queuing_selection_requests)
5200 (x_stop_queuing_selection_requests): Add new queue for selection
5201 input events to replace previous XEvent queue in xterm.c.
5202 (queue_selection_requests_unwind): Adapt to new queue.
5203 (x_reply_selection_request): Adapt to new queue.
5204 Unexpect wait_object in case of x errors (memory leak).
5205 (x_handle_selection_request, x_handle_selection_clear): Make static.
5206 (x_handle_selection_event): New function. May queue selection events.
5207 (wait_for_property_change_unwind): Use save_value instead of cons.
5208 Clear property_change_reply_object.
5209 (wait_for_property_change): Abort if already waiting.
5210 Use save_value instead of cons for unwind data.
5211 (x_handle_property_notify): Skip events already arrived, but don't
5212 free them, as "arrived" field is checked by wait_for_property_change,
5213 and it will be freed by unwind or explicit unexpect_property_change.
5214 (x_get_foreign_selection): Add to new queue.
5215 (receive_incremental_selection): Don't unexpect wait_object when done
5216 as it has already been freed by previous wait_for_property_change.
5217
5218 * xterm.h (x_start_queuing_selection_requests)
5219 (x_stop_queuing_selection_requests, x_handle_selection_request)
5220 (x_handle_selection_clear): Remove prototypes.
5221 (x_handle_selection_event): Add prototype.
5222
5223 * xterm.c (handle_one_xevent): Don't queue X selection events
5224 here, it may be too late if we start queuing after we have already
5225 stored some selection events into the kbd buffer.
5226 (struct selection_event_queue, queue, x_queue_selection_requests)
5227 (x_queue_event, x_unqueue_events, x_start_queuing_selection_requests)
5228 (x_stop_queuing_selection_requests): Remove/move to xselect.c.
5229 (x_catch_errors_unwind): Block input around final XSync.
5230
5231 * keyboard.h (kbd_buffer_unget_event): Add prototype.
5232
5233 * keyboard.c (kbd_buffer_store_event_hold): Remove obsolete code.
5234 (kbd_buffer_unget_event): New function.
5235 (kbd_buffer_get_event, swallow_events): Combine SELECTION events
5236 and use x_handle_selection_event.
5237 (mark_kboards): Don't mark x and y of SELECTION_CLEAR_EVENT.
5238
5239 2004-11-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5240
5241 * xselect.c (TRACE3): New debug macro.
5242 (x_reply_selection_request): Use it.
5243 (receive_incremental_selection): In call to TRACE0, the name of
5244 a symbol is in xname.
5245
5246 2004-11-05 Kim F. Storm <storm@cua.dk>
5247
5248 * fontset.c (fontset_pattern_regexp): Use unsigned char.
5249
5250 2004-11-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5251
5252 * fileio.c (Fnext_read_file_uses_dialog_p): New function.
5253
5254 * gtkutil.h (use_old_gtk_file_dialog): Declare.
5255
5256 * gtkutil.c: Make use_old_gtk_file_dialog non-static.
5257 (xg_initialize): Move DEFVAR_BOOL for use_old_gtk_file_dialog ...
5258 * xfns.c (syms_of_xfns): ... to here.
5259
5260 * gtkutil.c (xg_get_file_with_chooser): Expand DEFAULT_FILENAME if
5261 it doesn't start with /.
5262
5263 2004-11-04 Kenichi Handa <handa@m17n.org>
5264
5265 * fontset.c (fontset_pattern_regexp): If '*' is preceded by '\',
5266 treat it as a literal character.
5267
5268 2004-11-03 Kim F. Storm <storm@cua.dk>
5269
5270 * .gdbinit (ppt): New function.
5271
5272 2004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5273
5274 * xterm.c (x_window_to_scroll_bar): Only call
5275 xg_get_scroll_id_for_window if toolkit scroll bars are used.
5276
5277 * gtkutil.c (xg_get_file_with_chooser): Use GTK_STOCK_OK instead
5278 of save.
5279
5280 2004-11-02 Andreas Schwab <schwab@suse.de>
5281
5282 * window.c (Fscroll_right): Fix last change.
5283
5284 2004-11-02 Kim F. Storm <storm@cua.dk>
5285
5286 * Makefile.in (callproc.o): Depend on blockinput.h atimer.h systime.h.
5287
5288 2004-11-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5289
5290 * callproc.c (Fcall_process): Block input around vfork.
5291
5292 2004-11-02 Kim F. Storm <storm@cua.dk>
5293
5294 * eval.c (Fcalled_interactively_p): Rename from Fcall_interactive_p.
5295 (syms_of_eval): Defsubr it.
5296
5297 2004-11-02 Richard M. Stallman <rms@gnu.org>
5298
5299 * insdel.c (replace_range_2): New function.
5300
5301 * casefiddle.c (casify_region): Handle changes in byte-length
5302 using replace_range_2.
5303
5304 * emacs.c (USAGE3): Delete --horizontal-scroll-bars, -hb.
5305
5306 * xdisp.c (back_to_previous_visible_line_start):
5307 Subtract 1 from pos when checking previous newline for invisibility.
5308
5309 * window.c (window_scroll_pixel_based): Update preserve_y
5310 for header line if any.
5311 (Fscroll_left, Fscroll_right): Don't call interactive_p;
5312 use a new second argument instead.
5313
5314 * eval.c (Fcall_interactive_p): New function.
5315 (interactive_p): Don't test INTERACTIVE here.
5316 (Finteractive_p): Doc fix.
5317
5318 * eval.c (Feval): Abort if INPUT_BLOCKED_P.
5319
5320 2004-11-02 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
5321
5322 * w32fns.c (w32_font_match): Use fast_string_match_ignore_case for
5323 comparing font names.
5324
5325 2004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5326
5327 * fileio.c (Fread_file_name): Pass Qt as fifth parameter to
5328 Fx_file_dialog if only directories should be read.
5329
5330 * lisp.h: Fx_file_dialog takes 5 parameters.
5331
5332 * xfns.c (Fx_file_dialog): Both Motif and GTK version:
5333 Add parameter only_dir_p.
5334 In Motif version, don't put DEFAULT_FILENAME in filter part of the
5335 dialog, just text field part. Do not add DEFAULT_FILENAME
5336 to list of files if it isn't there.
5337 In GTK version, pass only_dir_p parameter to xg_get_file_name.
5338
5339 * macfns.c (Fx_file_dialog): Add parameter only_dir_p.
5340 Check only_dir_p instead of comparing prompt to "Dired". When using
5341 a save dialog, add option kNavDontConfirmReplacement, change title
5342 to "Enter name", change text for save button to "Ok".
5343
5344 * w32fns.c (Fx_file_dialog): Add parameter only_dir_p.
5345 Check only_dir_p instead of comparing prompt to "Dired".
5346
5347 * gtkutil.c (xg_get_file_with_chooser)
5348 (xg_get_file_with_selection): New functions, only defined ifdef
5349 HAVE_GTK_FILE_CHOOSER_DIALOG_NEW and HAVE_GTK_FILE_SELECTION_NEW
5350 respectively.
5351 (xg_get_file_name): Add parameter only_dir_p.
5352 Call xg_get_file_with_chooser or xg_get_file_with_selection
5353 depending on HAVE_GTK_FILE* and the value of use_old_gtk_file_dialog.
5354 (xg_initialize): New DEFVAR_BOOL use_old_gtk_file_dialog.
5355
5356 * gtkutil.h (xg_get_file_name): Add parameter only_dir_p.
5357
5358 * config.in: Rebuild (added HAVE_GTK_FILE_*).
5359
5360 2004-11-01 Kim F. Storm <storm@cua.dk>
5361
5362 * process.c (connect_wait_mask, num_pending_connects):
5363 Only declare and use them if NON_BLOCKING_CONNECT is defined.
5364 (init_process): Initialize them if NON_BLOCKING_CONNECT defined.
5365 (IF_NON_BLOCKING_CONNECT): New helper macro.
5366 (wait_reading_process_output): Only declare and use local vars
5367 Connecting and check_connect when NON_BLOCKING_CONNECT is defined.
5368
5369 2004-11-01 Andy Petrusenco <Igrek@star-sw.com> (tiny change)
5370
5371 * w32term.c (x_scroll_run): Delete region objects after use.
5372
5373 2004-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5374
5375 * xmenu.c: Add prototypes for forward function declarations.
5376 (popup_get_selection): Remove parameter do_timers, remove call to
5377 timer_check.
5378 (create_and_show_popup_menu, create_and_show_dialog):
5379 Remove parameter do_timers from call to popup_get_selection.
5380
5381 * xdisp.c (update_tool_bar): Pass a copy of f->tool_bar_items to
5382 tool_bar_items and assign the result to f->tool_bar_items if
5383 not equal. Move BLOCK/UNBLOCK_INPUT from around call to
5384 tool_bar_items to assignment of result.
5385
5386 * atimer.c (alarm_signal_handler): Do not call set_alarm if
5387 pending_atmers is non-zero.
5388
5389 2004-10-31 Kim F. Storm <storm@cua.dk>
5390
5391 * dispnew.c (margin_glyphs_to_reserve): Don't use ncols_scale_factor.
5392
5393 2004-10-28 Will <will@glozer.net>
5394
5395 * macterm.c: Allow user to assign key modifiers to the Mac Option
5396 key via a 'mac-option-modifier' variable.
5397
5398 2004-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
5399
5400 * xselect.c (Vx_lost_selection_functions, Vx_sent_selection_functions):
5401 Rename from Vx_lost_selection_hooks and Vx_sent_selection_hooks.
5402 (x_handle_selection_request, x_handle_selection_clear)
5403 (x_clear_frame_selections, syms_of_xselect): Adjust accordingly.
5404
5405 2004-10-28 Richard M. Stallman <rms@gnu.org>
5406
5407 * w32fns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
5408
5409 * xfns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
5410
5411 2004-10-27 Stefan Monnier <monnier@iro.umontreal.ca>
5412
5413 * syntax.c (scan_sexps_forward): Give precedence to a 2-char
5414 comment-starter over a 1-char one.
5415
5416 2004-10-27 Richard M. Stallman <rms@gnu.org>
5417
5418 * xdisp.c (get_next_display_element): In mode lines,
5419 treat newline and tab like other control characters.
5420
5421 * editfns.c (Fmessage): Doc fix.
5422
5423 * indent.c (vmotion): When moving up, check the newline before.
5424 Make prevline an int, not a Lisp_Object.
5425
5426 2004-10-27 Kim F. Storm <storm@cua.dk>
5427
5428 * editfns.c (Fformat): Allocate discarded table with SAFE_ALLOCA.
5429 Only allocate info and discarded tables once.
5430
5431 * lisp.h (USE_SAFE_ALLOCA): Add and init sa_must_free integer.
5432 (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Increment it when malloc is used.
5433 (SAFE_FREE): Test it to determine if we need to unwind to free.
5434 Remove size arg. All users changed.
5435 (SAFE_FREE_LISP) Remove. All users changed to use SAFE_FREE.
5436
5437 2004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5438
5439 * gtkutil.c: Put empty line between comment and function body.
5440 (xg_destroy_widgets): Rename from remove_from_container.
5441 Just destroy all widgets in list. Argument wcont removed.
5442 (xg_update_menubar, xg_update_submenu): Call xg_destroy_widgets
5443 instead of remove_from_container.
5444 (xg_display_close, xg_create_tool_bar, update_frame_tool_bar)
5445 (free_frame_tool_bar): Add comment.
5446
5447 * xfns.c (xic_create_xfontset): Check that FRAME_XIC_BASE_FONTNAME
5448 is not NULL before strcmp.
5449
5450 2004-10-26 Kim F. Storm <storm@cua.dk>
5451
5452 * callint.c (Fcall_interactively): Add 'U' code to get the
5453 up-event discarded by a previous 'k' or 'K' argument.
5454
5455 2004-10-26 David Kastrup <dak@gnu.org>
5456
5457 * buffer.c (syms_of_buffer): Fix a few typos.
5458
5459 2004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5460
5461 * xsmfns.c: Put empty line between comment and function body.
5462 Use two spaces before comment end.
5463
5464 2004-10-25 Kenichi Handa <handa@m17n.org>
5465
5466 * fontset.c (fontset_pattern_regexp): Optimize for the case that
5467 PATTERN is full XLFD.
5468
5469 2004-10-24 Kenichi Handa <handa@m17n.org>
5470
5471 * regex.h (enum reg_errcode_t): New value REG_ERANGEX.
5472
5473 * regex.c (re_error_msgid): Add an entry for REG_ERANGEX.
5474 (regex_compile): Return REG_ERANGEX if appropriate.
5475
5476 2004-10-22 Kenichi Handa <handa@m17n.org>
5477
5478 * editfns.c (Ftranslate_region_internal): New function.
5479 (syms_of_editfns): Defsubr it.
5480
5481 2004-10-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5482
5483 * xfns.c (xic_create_xfontset): Initialize missing_list to NULL.
5484
5485 2004-10-21 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
5486
5487 * xterm.h (x_output): New member `xic_base_fontname'.
5488 (FRAME_XIC_BASE_FONTNAME): New macro.
5489 (xic_free_xfontset): Declare.
5490
5491 * xfns.c (xic_create_xfontset): Share fontsets between frames
5492 based on base_fontname.
5493 (xic_free_xfontset): New function.
5494 (free_frame_xic): Use it.
5495 (xic_set_xfontset): Ditto.
5496
5497 * xterm.c (xim_destroy_callback): Ditto.
5498
5499
5500 2004-10-20 B. Anyos <banyos@freemail.hu> (tiny change)
5501
5502 * w32term.c (x_draw_glyph_string): Use overline_color for overlines.
5503
5504 2004-10-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5505
5506 * xterm.h (XSync): If USE_GTK, define XSync as process_all and then
5507 XSync.
5508
5509 * emacs.c (my_heap_start, heap_bss_diff, MAX_HEAP_BSS_DIFF):
5510 New variables and constant.
5511 (main): Calculate heap_bss_diff. If we are dumping and the
5512 heap_bss_diff is greater than MAX_HEAP_BSS_DIFF, set PER_LINUX32
5513 and exec ourself again.
5514 (Fdump_emacs): If heap_bss_diff is greater than MAX_HEAP_BSS_DIFF
5515 print a warning.
5516
5517 * lastfile.c: Make my_endbss and my_endbss_static available on all
5518 platforms.
5519
5520 * Makefile.in (RUN_TEMACS): Remove @SETARCH@.
5521 * config.in (HAVE_PERSONALITY_LINUX32): Regenerate.
5522
5523 2004-10-19 Luc Teirlinck <teirllm@auburn.edu>
5524
5525 * data.c (Flocal_variable_if_set_p): Doc fix.
5526
5527 2004-10-19 Jason Rumney <jasonr@gnu.org>
5528
5529 * w32.c (init_environment): Set emacs_dir correctly when running
5530 emacs from the build directory.
5531
5532 2004-10-19 Richard M. Stallman <rms@gnu.org>
5533
5534 * editfns.c (Fdelete_and_extract_region):
5535 If region is empty, return null string.
5536
5537 2004-10-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5538
5539 * gtkutil.h (xg_update_scrollbar_pos): Remove arguments real_left
5540 and canon_width.
5541 (xg_frame_cleared): Remove.
5542
5543 * gtkutil.c (xg_frame_cleared, xg_fixed_handle_expose)
5544 (xg_find_top_left_in_fixed): Remove.
5545 (xg_create_scroll_bar): Put an event box widget between
5546 the scroll bar widget and the edit widget.
5547 (xg_show_scroll_bar): Show the parent widget (the event box).
5548 (xg_remove_scroll_bar): Destroy parent (the event box) also.
5549 (xg_update_scrollbar_pos): Remove arguments real_left and canon_width.
5550 Move the parent (the event box) widget inside the fixed widget.
5551 Move window clear to xterm.c.
5552
5553 * gtkutil.h (xg_frame_cleared): Remove.
5554
5555 * xterm.c (x_clear_frame): Remove call to xg_frame_cleared
5556 (x_scroll_bar_create, XTset_vertical_scroll_bar):
5557 Remove arguments left and width to xg_update_scrollbar_pos.
5558 (XTset_vertical_scroll_bar): Do x_clear_area for USE_GTK also.
5559
5560 2004-10-19 Kenichi Handa <handa@m17n.org>
5561
5562 * xdisp.c (display_mode_element): Fix display of wide chars.
5563
5564 2004-10-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5565
5566 * gtkutil.c (xg_update_scrollbar_pos): Change XClearWindow to
5567 gdk_window_clear and move gdk_window_process_all_updates after
5568 clear so events are sent to the X server in correct order.
5569
5570 2004-10-18 Kenichi Handa <handa@m17n.org>
5571
5572 * fontset.c (fs_load_font): Use fast_string_match_ignore_case for
5573 comparing font names.
5574 (fs_query_fontset): Use fast_string_match for comparing fontset names.
5575 (list_fontsets): Likewise.
5576
5577 * search.c (fast_string_match_ignore_case): New function.
5578
5579 * lisp.h (fast_string_match_ignore_case): Extern it.
5580
5581 2004-10-17 Kim F. Storm <storm@cua.dk>
5582
5583 * xdisp.c (overlay_arrow_at_row): Return overlay string rather
5584 than bitmap if there is not left fringe.
5585 (get_overlay_arrow_glyph_row): Also used on windows system.
5586 (display_line): Display overlay string if no left fringe.
5587
5588 2004-10-16 Jason Rumney <jasonr@gnu.org>
5589
5590 * w32fns.c (w32_font_match): Encode font name being matched.
5591
5592 2004-10-16 Richard M. Stallman <rms@gnu.org>
5593
5594 * window.c (Fspecial_display_p): Doc fix.
5595
5596 2004-10-15 Stefan Monnier <monnier@iro.umontreal.ca>
5597
5598 * doc.c (Fsubstitute_command_keys): Fix remap-handling.
5599 Don't ignore menus, because where-is-internal already does it for us.
5600
5601 2004-10-15 Kim F. Storm <storm@cua.dk>
5602
5603 * xdisp.c (redisplay_window): Only update fringes and vertical
5604 border on window frames.
5605
5606 2004-10-14 Andreas Schwab <schwab@suse.de>
5607
5608 * m/ia64.h (DATA_SEG_BITS): Don't define.
5609
5610 2004-10-14 Kim F. Storm <storm@cua.dk>
5611
5612 * xterm.h: Include Xutil.h after keysym.h to work around bug
5613 in some X versions.
5614
5615 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
5616
5617 * fns.c (map_char_table): Add missing gcpros.
5618
5619 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
5620
5621 * keymap.c (get_keymap): An autoload form is not a keymap.
5622
5623 * textprop.c (syms_of_textprop): Make `syntax-table' nonsticky.
5624
5625 2004-10-13 Kim F. Storm <storm@cua.dk>
5626
5627 * callproc.c (Fcall_process): Simplify handling of display arg.
5628 Resume `display_on_the_fly' once a coding system is determined.
5629
5630 * xdisp.c (redisplay_preserve_echo_area): Fix last change.
5631
5632 2004-10-12 Kim F. Storm <storm@cua.dk>
5633
5634 * xdisp.c (redisplay_preserve_echo_area): Flush display in case
5635 caller, such as call-process, is not going to poll for input.
5636 (calc_line_height_property): Handle case where it->object is nil.
5637
5638 * xterm.c (x_redisplay_interface): Fix flush_display_optional.
5639
5640 2004-10-12 Kenichi Handa <handa@m17n.org>
5641
5642 * xdisp.c (get_next_display_element):
5643 If unibyte_display_via_language_environment is zero, display 8-bit
5644 chars in octal in unibyte buffer.
5645
5646 2004-10-12 Kim F. Storm <storm@cua.dk>
5647
5648 * doc.c (Fsubstitute_command_keys): Ignore remappings unless there
5649 are no ordinary bindings.
5650
5651 2004-10-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5652
5653 * xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also.
5654
5655 2004-10-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5656
5657 * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow.
5658 (x_lower_frame): Add BLOCK_INPUT around SendBehind.
5659 (make_mac_frame): Add BLOCK_INPUT around the making of a
5660 terminal frame.
5661 (mac_initialize): Add BLOCK_INPUT around carbon initialization.
5662 * macgui.h (mktime): Use emacs_mktime.
5663 * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code.
5664 Make a cancel file-open dialog be like C-g.
5665 * mac.c (mktime): Use emacs_mktime.
5666 (Fdo_applescript): Add BLOCK_INPUT around do_applescript.
5667 (Fmac_paste_function): Add better error handling for carbon cut/paste.
5668
5669 2004-10-10 Kim F. Storm <storm@cua.dk>
5670
5671 * keyboard.c (timer_resume_idle): New function to resume idle
5672 timer without resetting timers on the idle list.
5673 (read_char): Use timer_resume_idle. Remove local var last_idle_start.
5674 (timer_start_idle, timer_stop_idle): Declare static.
5675 (read_key_sequence): Use timer_resume_idle instead of timer_start_idle.
5676
5677 * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes.
5678
5679 2004-10-08 Steven Tamm <steventamm@mac.com>
5680
5681 * config.in (HAVE_MALLOC_MALLOC_H): Regenerate.
5682 * macterm.c (mac_check_for_quit_char): Remove warning for using
5683 NULL where 0 should be used.
5684 * unexmacosx.c: Use malloc/malloc.h on Tiger instead of
5685 objc/malloc.h
5686 * mac.c: Include time.h for Tiger compatibility.
5687
5688 2004-10-07 Kim F. Storm <storm@cua.dk>
5689
5690 * xdisp.c (redisplay_window): Fix flicker on vertical line between
5691 windows. Update vertical line after drawing window fringes, but
5692 only if actually drawing any bitmaps--or there is no fringe.
5693
5694 * xterm.c (x_update_window_end): Likewise.
5695 * macterm.c (x_update_window_end): Likewise.
5696 * w32term.c (x_update_window_end): Likewise.
5697
5698 * fringe.c (draw_window_fringes): Return value now indicates if
5699 any fringe bitmaps were redrawn (or there are no fringes).
5700
5701 * dispextern.h (draw_window_fringes): Update prototype.
5702
5703 2004-10-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5704
5705 * macfns.c (mac_get_window_bounds): Add extern.
5706 (x_real_positions): Use mac_get_window_bounds.
5707
5708 * macmenu.c (update_submenu_strings): Apply 2004-09-07 change for
5709 xmenu.c (YAILOM).
5710
5711 * macterm.c [!MAC_OSX]: Include Windows.h.
5712 (front_emacs_window): Rename from mac_front_window. All uses
5713 changed. Return the frontmost non-tooltip emacs window.
5714 (mac_get_window_bounds): New function.
5715 (x_calc_absolute_position): Use the difference of width and height
5716 between the inner and outer window.
5717 (x_set_offset): Specify window position by the coordinae of the
5718 outer window. Adjust the position if the title bar is completely
5719 outside the screen.
5720 (app_is_suspended, app_sleep_time): Remove unused variables.
5721 (do_app_resume, do_app_suspend): Remove their contents because
5722 window-activate/deactivate events will do the job.
5723 (do_zoom_window): Remove unused variables. Make compliant to the
5724 standard way of zooming. Set f->left_pos and f->top_pos.
5725 (XTread_socket): Don't use argument `expected'. Don't use
5726 FrontWindow to determine the clicked window. Exclude unprocessed
5727 mouseUp cases in the early stage. Add parentheses to fix operator
5728 precedence.
5729 (XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area.
5730
5731 2004-10-05 Jan Dj\e,Ad\e(Brv. <jan.h.d@swipnet.se>
5732
5733 * config.in: Regenerate.
5734
5735 * Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of
5736 HAVE_EXECSHIELD.
5737
5738 2004-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5739
5740 * xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for
5741 a row if Alt or Meta has been found for that row. Also stop scanning
5742 for Keysyms for that row.
5743
5744 2004-10-04 Kim F. Storm <storm@cua.dk>
5745
5746 * fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons
5747 to list. Include overlay arrow bitmap in return value.
5748
5749 * xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll
5750 bars with fractional column width. If scroll bar separates two
5751 windows, move it towards the window it belongs to. Only update
5752 the padding area below the scroll bar widget when necessary,
5753 i.e. when scroll bar widget is created, moved, or resized.
5754
5755 * xdisp.c (define_frame_cursor1): Do not change frame cursor
5756 while tracking/dragging mouse.
5757 (x_draw_vertical_border): Do not draw line if frame has scroll bars.
5758
5759 * window.c (coordinates_in_window): Relax check for cursor
5760 on vertial border between mode lines.
5761 (Fset_window_fringes): Do not allow negative widths.
5762 (Fset_window_scroll_bars): Likewise.
5763
5764 * .gdbinit (pp): Shorthand for p ARG + pr.
5765 (ff): New command: flush frame updates (X only).
5766
5767 2004-10-03 Michael Albinus <michael.albinus@gmx.de>
5768
5769 * fileio.c (auto_save_1) Call Ffile_modes for remote files.
5770
5771 2004-09-30 Kenichi Handa <handa@m17n.org>
5772
5773 * process.c (send_process): Free composition data.
5774
5775 * fileio.c (Finsert_file_contents): Free composition data.
5776
5777 * coding.c (code_convert_region): Don't skip ASCIIs if there are
5778 compositions to encode.
5779 (encode_coding_string): Likewise. Free composition data.
5780
5781 2004-09-30 Florian Weimer <fw@deneb.enyo.de>
5782
5783 * coding.c (code_convert_region): Free composition data.
5784
5785 2004-09-29 Kim F. Storm <storm@cua.dk>
5786
5787 * fringe.c: Remove limit on number of bitmaps.
5788 (fringe_bitmaps, fringe_faces): Change to pointers.
5789 (max_fringe_bitmaps): New var.
5790 (Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces.
5791 (init_fringe): Allocate fringe_bitmaps and fringe_faces.
5792
5793 * dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps).
5794 (struct glyph_row): Reorder fringe_bitmap related fields.
5795 (struct it): Likewise.
5796
5797 * w32term.c (fringe_bmp): Change to pointer.
5798 (max_fringe_bmp): New var.
5799 (w32_define_fringe_bitmap): Expand fringe_bmp.
5800 (w32_draw_fringe_bitmap): Check max_fringe_bmp.
5801 (w32_destroy_fringe_bitmap): Likewise.
5802
5803 2004-09-29 Kim F. Storm <storm@cua.dk>
5804
5805 * fringe.c: Simplify last change.
5806 (lookup_fringe_bitmap): New function.
5807 (valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove.
5808 (Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap.
5809 Keep standard bitmaps in Vfringe_bitmaps.
5810 (Fdefine_fringe_bitmap): Use lookup_fringe_bitmap.
5811 (Fset_fringe_bitmap_face): Likewise.
5812
5813 * dispextern.h (lookup_fringe_bitmap): Add prototype.
5814 (valid_fringe_bitmap_p): Remove prototype.
5815
5816 * xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap.
5817
5818 2004-09-29 Kim F. Storm <storm@cua.dk>
5819
5820 * fringe.c (destroy_fringe_bitmap, init_fringe_bitmap)
5821 (w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif).
5822
5823 * dispextern.h (valid_fringe_bitmap_p): Fix prototype.
5824
5825 * fringe.c (Vfringe_bitmaps): New variable.
5826 (syms_of_fringe): DEFVAR_LISP it.
5827 (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p.
5828 Change arg to Lisp_Object and fail if not an integer.
5829 (get_fringe_bitmap_name, resolve_fringe_bitmap)
5830 (destroy_fringe_bitmap): New functions.
5831 (Fdestroy_fringe_bitmap): Change arg to bitmap symbol.
5832 Use destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and
5833 clear its fringe property.
5834 (init_fringe_bitmap): Use destroy_fringe_bitmap instead of
5835 Fdestroy_fringe_bitmap.
5836 (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing
5837 bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps
5838 and set fringe property. Signal error if no free slots.
5839 (Fset_fringe_bitmap_face): Change arg to bitmap symbol.
5840 (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers.
5841
5842 * xdisp.c (handle_single_display_prop): Fringe bitmaps are now
5843 symbols with a fringe property.
5844
5845 2004-09-27 Kim F. Storm <storm@cua.dk>
5846
5847 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>:
5848 Doc fix. Format may now be a symbol or alist, not a cons.
5849
5850 * fringe.c (update_window_fringes): Handle new formats of
5851 indicate-buffer-boundaries (symbol or alist). No longer
5852 allow a simple cons.
5853 (Ffringe_bitmaps_at_pos): Use nil value for no bitmap.
5854
5855 2004-09-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5856
5857 * config.in: Rebuild.
5858
5859 2004-09-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5860
5861 * config.in: Rebuild.
5862
5863 * Makefile.in: Run setarch i386 ./temacs if exec-shield is present.
5864
5865 2004-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
5866
5867 * xterm.c (x_term_init): Work around a bug in some X servers.
5868
5869 2004-09-18 Richard M. Stallman <rms@gnu.org>
5870
5871 * buffer.c (syms_of_buffer) <default-major-mode>: Doc fix.
5872
5873 * xdisp.c (try_window_reusing_current_matrix):
5874 Handle the case where we reach the old displayed text,
5875 out of sync with the old line boundary.
5876
5877 2004-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
5878
5879 * fileio.c (Finsert_file_contents): Fix case of replacement in a
5880 narrowed buffer.
5881
5882 2004-09-14 Kim F. Storm <storm@cua.dk>
5883
5884 * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT.
5885
5886 * xfaces.c (Qface_no_inherit): New var.
5887 (syms_of_xfaces): Intern and staticpro it.
5888 (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute)
5889 (Finternal_copy_lisp_face, update_face_from_frame_parameter):
5890 Don't increment face_change_count when face has non-nil
5891 face-no-inherit property.
5892
5893 2004-09-13 Stefan Monnier <monnier@iro.umontreal.ca>
5894
5895 * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC.
5896 (Fbyte_code): Remove dead code after `wrong_type_argument'.
5897
5898 * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl
5899 before doing the mark_stack_check_gcpros since they're not on the stack.
5900
5901 2004-09-12 Kim F. Storm <storm@cua.dk>
5902
5903 * editfns.c (Fformat): Handle format strings with multiple text
5904 properties. Reverse text property list from the format string,
5905 so the positions are in increasing order.
5906
5907 2004-09-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5908
5909 * xselect.c (x_reply_selection_request): XSync and UNBLOCK before
5910 x_uncatch_errors so that possible protocol errors are delivered.
5911
5912 2004-09-10 Eli Zaretskii <eliz@gnu.org>
5913
5914 * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and
5915 blockinput.h.
5916 (dosfns.o): Depend on blockinput.h, window.h, dispextern.h,
5917 charset.h, and coding.h
5918 (w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h.
5919 (term.o): Depend on window.h and keymap.h.
5920 (abbrev.o): Depend on syntax.h.
5921 (callint.o): Depend on keymap.h.
5922 (casefiddle.o): Depend on charset.h and keymap.h.
5923 (category.o): Depend on keymap.h.
5924 (coding.o): Depend on dispextern.h.
5925 (cmds.o): Depend on keyboard.h and keymap.h.
5926 (dispnew.o): Depend on indent.h and intervals.h.
5927 (doc.o): Depend on keymap.h.
5928 (editfns.o): Depend on frame.h.
5929 (emacs.o): Depend on dispextern.h.
5930 (fileio.o): Don't depend on ccl.h.
5931 (filelock.o): Depend on charset.h and coding.h.
5932 (frame.o): Depend on w32term.h and macterm.h.
5933 (insdel.o): Depend on region-cache.h.
5934 (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h.
5935 (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h.
5936 (search.o): Depend on $(INTERVALS_SRC).
5937 (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC).
5938 (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC),
5939 xterm.h, w32term.h, and macterm.h.
5940 (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h,
5941 w32term.h, and macterm.h.
5942 (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC),
5943 region-cache.h, xterm.h, w32term.h, and macterm.h.
5944 (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h.
5945 (data.o): Depend on frame.h.
5946 (fns.o): Depend on keymap.h, xterm.h, and blockinput.h.
5947 (print.o): Depend on termchar.h and $(INTERVALS_SRC).
5948 (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h.
5949 (intervals.o): Depend on keymap.h.
5950
5951 * msdos.c (msdos_set_cursor_shape, IT_display_cursor):
5952 Add debugging print-out to termscript.
5953
5954 2004-09-09 Richard M. Stallman <rms@gnu.org>
5955
5956 * xdisp.c (decode_mode_spec): Use current buffer for most purposes.
5957
5958 2004-09-08 Richard M. Stallman <rms@gnu.org>
5959
5960 * window.c (Fset_window_buffer): Doc fix.
5961
5962 * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use.
5963
5964 2004-09-08 Dan Nicolaescu <dann@ics.uci.edu>
5965
5966 * minibuf.c (history_delete_duplicates): New variable.
5967 (read_minibuf): Use it.
5968 (syms_of_minibuf): Create the corresponding lisp variable.
5969
5970 2004-09-08 Kim F. Storm <storm@cua.dk>
5971
5972 * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in
5973 overlay just before point.
5974
5975 2004-09-07 Luc Teirlinck <teirllm@auburn.edu>
5976
5977 * buffer.h (struct buffer): Add auto_save_file_format field.
5978 * buffer.c (reset_buffer, init_buffer_once):
5979 Handle auto_save_file_format field.
5980 (syms_of_buffer): Add DEFVAR_PER_BUFFER for
5981 `buffer-auto-save-file-format'.
5982 * fileio.c: Delete declaration for removed Vauto_save_file_format.
5983 (build_annotations): Adapt to replacement of
5984 `auto-save-file-format' with the new buffer-local variable
5985 `buffer-auto-save-file-format'.
5986 (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format.
5987
5988 2004-09-07 Jason Rumney <jasonr@gnu.org>
5989
5990 * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c.
5991
5992 * w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]:
5993 Handle Unicode menu titles.
5994
5995 2004-09-07 Kim F. Storm <storm@cua.dk>
5996
5997 * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor'
5998 property from text property or overlay strings at point.
5999
6000 2004-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
6001
6002 * xmenu.c (update_submenu_strings): YAILOM.
6003 (set_frame_menubar): Make sure last_i is initialized.
6004
6005 2004-09-03 Jason Rumney <jasonr@gnu.org>
6006
6007 * w32menu.c (_widget_value): Add lname and lkey.
6008 (digest_single_submenu): Set lname and lkey in widget_value
6009 instead of name and key.
6010 (update_submenu_strings): New function.
6011 (set_frame_menubar): Remove call to inhibit_garbage_collection,
6012 call update_submenu_strings.
6013
6014 * w32menu.c (globals_of_w32menu): Check for Unicode API.
6015 (digest_single_submenu, w32_menu_show): Encode menu strings as
6016 UTF-8 if Unicode API is available.
6017 (utf8to16): New function.
6018 (add_menu_item): Use it when calling Unicode API.
6019
6020 2004-09-03 Kim F. Storm <storm@cua.dk>
6021
6022 * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
6023 in overlay or text-property strings; set cursor on corresponding
6024 glyph rather than at end of the string.
6025
6026 2004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6027
6028 * macfns.c (x_real_positions): Save the current window port and
6029 set a new one before obtaining the global coordinate.
6030 Use FRAME_MAC_WINDOW.
6031 (x_set_name, x_set_title): Encode title to UTF8.
6032 Use SetWindowTitleWithCFString.
6033 (Fx_server_version): Get correct OS version.
6034
6035 * macmenu.c (add_menu_item): Remove unused variable `i'.
6036 Don't let separator items destroy refence constants of other menu items.
6037
6038 * macterm.c (x_update_end): Move SetPortWindowPort to inside
6039 BLOCK_INPUT.
6040 (x_set_offset): Use FRAME_MAC_WINDOW.
6041
6042 * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
6043 nontext_cursor if it is on a scroll bar.
6044
6045 * s/darwin.h (LIBS_CARBON): New define to specify libraries for
6046 Carbon support.
6047 (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++.
6048 Use LIBS_CARBON.
6049
6050 2004-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6051
6052 * xfns.c (x_set_name_internal): New function. Check if we shall call
6053 xfree before ENCODE_UTF_8.
6054 (x_set_name, x_set_title): Call x_set_name_internal.
6055
6056 2004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change)
6057
6058 * w32fns.c (w32_load_font): If a BDF font is already loaded, do not
6059 reload it.
6060
6061 2004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6062
6063 * macmenu.c (_widget_value): Add lname and lkey.
6064 (single_submenu): Set lname and lkey in widget_value
6065 instead of name and key.
6066 (update_submenu_strings): New function.
6067 (set_frame_menubar): Remove call to inhibit_garbage_collection,
6068 call update_submenu_strings.
6069
6070 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
6071 instead of name and key.
6072 (update_submenu_strings): New function.
6073 (set_frame_menubar): Remove call to inhibit_garbage_collection,
6074 call update_submenu_strings.
6075
6076 * gtkutil.h (_widget_value): Added lname and lkey.
6077
6078 2004-08-30 Steven Tamm <steventamm@mac.com>
6079
6080 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
6081 by using different names for inner loop variables.
6082
6083 2004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6084
6085 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
6086 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
6087
6088 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
6089 tool bar items is 0.
6090
6091 2004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6092
6093 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
6094 strings in menu items.
6095 (single_submenu): Use ENCODE_MENU_STRING
6096 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
6097 button release isn't passed to event loop
6098 (add_menu_item): Use SetMenuItemWithCFString
6099
6100 2004-08-26 Steven Tamm <steventamm@mac.com>
6101
6102 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
6103 tool-bar/menu click.
6104 * macfns.c (Fx_file_dialog): Implement using NavServices.
6105
6106 2004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6107
6108 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
6109
6110 * xfns.c (x_window_to_frame, x_any_window_to_frame)
6111 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
6112 (x_top_window_to_frame): Return 0 if wdesc is None.
6113
6114 2004-08-22 Richard M. Stallman <rms@gnu.org>
6115
6116 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
6117 HAVE_TERMIOS]: If there's no char for this signal, drop through
6118 and use system calls.
6119
6120 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
6121
6122 2004-08-20 Kim F. Storm <storm@cua.dk>
6123
6124 * process.c (wait_reading_process_output): Rename from
6125 wait_reading_process_input. All uses changed.
6126 (wait_reading_process_output_1): Rename from
6127 wait_reading_process_input_1. All uses changed.
6128
6129 * dispnew.c (Fsleep_for): Remove obsolete code.
6130
6131 2004-08-20 Kenichi Handa <handa@m17n.org>
6132
6133 * syntax.c (skip_chars): Fix for unibyte case.
6134
6135 2004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
6136
6137 * syntax.c (char_quoted): Mixup byte/char pos.
6138 (back_comment): Fixup globals in all cases.
6139
6140 2004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6141
6142 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
6143 passing it to gtk_window_set_title.
6144
6145 2004-08-19 Kim F. Storm <storm@cua.dk>
6146
6147 * process.c (wait_reading_process_input): Clean up.
6148 Add wait_for_cell, wait_proc, and just_wait_proc args
6149 to avoid overloading `read_kbd' and `do_display' args.
6150 Change read_kbd arg to int. All callers changed.
6151
6152 * process.c (process_send_signal): Use CDISABLE.
6153
6154 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
6155
6156 2004-08-18 Kim F. Storm <storm@cua.dk>
6157
6158 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
6159 forward to wait_reading_process_input via DO_DISPLAY arg.
6160 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
6161 object, only process output from that process; also inhibit
6162 running timers if DO_DISPLAY==-2.
6163
6164 2004-08-17 Kim F. Storm <storm@cua.dk>
6165
6166 * process.c (process_send_signal): Fix last change--use
6167 _POSIX_VDISABLE instead of CVDISABLE when available.
6168
6169 2004-08-16 Richard M. Stallman <rms@gnu.org>
6170
6171 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
6172 Set VQUIT and VINTR chars to the standard ones if they are unset.
6173 [AIX]: Don't do that here. And don't force VINTR to standard
6174 when SIGNALS_VIA_CHARACTERS.
6175
6176 * process.c (process_send_signal)
6177 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
6178 Do nothing if the character is CVDISABLE.
6179
6180 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
6181
6182 * intervals.c (move_if_not_intangible):
6183 Force POSITION to be between BEGV and ZV.
6184
6185 2004-08-14 John Paul Wallington <jpw@gnu.org>
6186
6187 * buffer.c (Frestore_buffer_modified_p): Doc fix.
6188
6189 * fileio.c (Fread_file_name): Doc fix.
6190
6191 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
6192
6193 2004-08-09 Luc Teirlinck <teirllm@auburn.edu>
6194
6195 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
6196
6197 2004-08-08 Luc Teirlinck <teirllm@auburn.edu>
6198
6199 * keyboard.c: Declare Qdisabled_command_function instead of
6200 Qdisabled_command_hook.
6201 (Fcommand_execute): Use Qdisabled_command_function instead of
6202 Qdisabled_command_hook.
6203 (syms_of_keyboard): Ditto.
6204
6205 2004-08-07 Luc Teirlinck <teirllm@auburn.edu>
6206
6207 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
6208 (syms_of_keymap) <key-translation-map>: Doc fixes.
6209
6210 2004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
6211
6212 * window.c (window_list_1): YAILOM.
6213
6214 * fileio.c (make_temp_name): Handle multibyte prefixes.
6215
6216 2004-08-06 Luc Teirlinck <teirllm@auburn.edu>
6217
6218 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
6219 Doc fix.
6220
6221 2004-08-03 Kenichi Handa <handa@m17n.org>
6222
6223 * coding.c (decode_coding_string): Adjust coding->consumed, and
6224 etc. with shrinked_bytes.
6225
6226 2004-08-03 Kim F. Storm <storm@cua.dk>
6227
6228 * indent.c (compute_motion): Fix check for full width window
6229 in non-window case. Do not count left truncation glyph on
6230 window systems.
6231
6232 2004-08-02 Luc Teirlinck <teirllm@auburn.edu>
6233
6234 * data.c (Finteractive_form): Doc fix.
6235
6236 2004-08-02 Kim F. Storm <storm@cua.dk>
6237
6238 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
6239 properly accounting for continuation glyph on non-window systems.
6240 (Fcompute_motion): Use actual window width if WIDTH is nil, and
6241 actual window width/height if TOPOS is nil, properly accounting for
6242 continuation glyphs on non-window systems, and optional header lines.
6243 (vmotion): Let compute_motion calculate actual window width.
6244
6245 * window.c (window_scroll_line_based): Let compute_motion
6246 calculate actual window width.
6247
6248 2004-08-02 Kim F. Storm <storm@cua.dk>
6249
6250 * process.c (read_process_output): Use whole read buffer.
6251 Don't trigger adaptive read buffering on errors.
6252
6253 2004-07-31 Luc Teirlinck <teirllm@auburn.edu>
6254
6255 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
6256
6257 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
6258
6259 * callint.c (Fcall_interactively): Doc fix.
6260
6261 2004-07-30 Richard M. Stallman <rms@gnu.org>
6262
6263 * abbrev.c (Fexpand_abbrev): Undo previous change.
6264
6265 2004-07-30 Kim F. Storm <storm@cua.dk>
6266
6267 * editfns.c (Fformat): Allocate extra (dummy) element in info.
6268
6269 2004-07-28 Luc Teirlinck <teirllm@auburn.edu>
6270
6271 * eval.c (Fdefvar, Fdefconst): Doc fixes.
6272
6273 2004-07-27 Kim F. Storm <storm@cua.dk>
6274
6275 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
6276 we have ensured that the glyph fits on the current line (or returned
6277 MOVE_LINE_CONTINUED otherwise).
6278
6279 2004-07-26 Kim F. Storm <storm@cua.dk>
6280
6281 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
6282 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
6283 if target position is at end of display line but char is not a newline.
6284
6285 2004-07-25 Richard M. Stallman <rms@gnu.org>
6286
6287 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
6288 instead of ON_VERTICAL_BORDER, when on scroll bar.
6289 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
6290
6291 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
6292
6293 * window.c (Fcoordinates_in_window_p):
6294 Take account of FRAME_INTERNAL_BORDER_WIDTH.
6295
6296 * alloc.c (check_cons_list): New function (contents commented out).
6297
6298 2004-07-24 Luc Teirlinck <teirllm@auburn.edu>
6299
6300 * xfaces.c (Fcolor_supported_p): Doc fix.
6301
6302 * frame.c (Fselect_frame, Fset_frame_selected_window)
6303 (Fframe_visible_p, Fraise_frame): Doc fixes.
6304
6305 2004-07-24 Richard M. Stallman <rms@gnu.org>
6306
6307 * keyboard.h (not_single_kboard_state): Declare.
6308
6309 * fileio.c (Fwrite_region): Doc fix.
6310
6311 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
6312
6313 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
6314 only when a real abbrev is present.
6315
6316 * xfns.c (x_icon_verify): New function.
6317 (Fx_create_frame): Use it.
6318
6319 2004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
6320
6321 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
6322
6323 2004-07-21 Kim F. Storm <storm@cua.dk>
6324
6325 * window.h (struct glyph_matrix): New members nrows_scale_factor
6326 and ncols_scale_factor.
6327
6328 * window.c (make_window): Initialize nrows_scale_factor and
6329 ncols_scale_factor members.
6330
6331 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
6332 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
6333 (required_matrix_height): Apply nrows_scale_factor.
6334 (required_matrix_width): Apply ncols_scale_factor.
6335
6336 * xdisp.c (display_line): Increment nrows_scale_factor and set
6337 fonts_changed_p if past last allocated row.
6338 (append_glyph, append_composite_glyph, produce_image_glyph)
6339 (append_stretch_glyph): Increment ncols_scale_factor and set
6340 fonts_changed_p if current area is full.
6341
6342 2004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6343
6344 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
6345
6346 2004-07-19 Luc Teirlinck <teirllm@auburn.edu>
6347
6348 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
6349 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
6350 (Fset_window_start, Fscroll_up, Fscroll_down)
6351 (Fother_window_for_scrolling, Fscroll_other_window)
6352 (Fsave_window_excursion, Fset_window_vscroll)
6353 (syms_of_window) <window-size-fixed>: Doc fixes.
6354
6355 2004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
6356
6357 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
6358 ENCODE_SYSTEM for filenames.
6359
6360 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6361
6362 * mac.c (sys_select): Block input around call to
6363 ReceiveNextEvent to prevent breakage. Correctly handle
6364 blocking on event queue only by calling ReceiveNextEvent
6365 instead of select (since GUI events aren't on an fd).
6366 (sys_read): Remove function
6367 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
6368
6369 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6370
6371 * mac.c (sys_select): Redo sys_select to use alarm-based
6372 polling instead of 1 sec timeouts (like solaris).
6373
6374 * macterm.c (x_make_frame_visible): Comment in polling on
6375 frame creation.
6376
6377 * keyboard.c: Undef SIGIO on Carbon
6378
6379 * atimer.c (alarm_signal_handler): Call alarm handlers after
6380 scheduling.
6381
6382 * eval.c (Feval): Remove quit_char test
6383
6384 * process.c (wait_reading_process_input): Remove clearing
6385 stdin for select call on process input.
6386
6387 2004-07-18 Luc Teirlinck <teirllm@auburn.edu>
6388
6389 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
6390 capitalization error in docstring.
6391
6392 2004-07-17 Juanma Barranquero <lektu@terra.es>
6393
6394 * keyboard.c (not_single_kboard_state): Do nothing unless
6395 MULTI_KBOARD is defined.
6396
6397 2004-07-17 Richard M. Stallman <rms@gnu.org>
6398
6399 * window.c (coordinates_in_window): Inside the window but outside
6400 its box to the L or R, return ON_VERTICAL_BORDER.
6401 (window_list_1): Rotate the list to start with WINDOW.
6402
6403 * print.c (print_preprocess): Test for print_depth at limit
6404 before entering in being_printed.
6405
6406 * keyboard.c (not_single_kboard_state): New function.
6407 (stuff_buffered_input): Now no-op only if no SIGTSTP.
6408
6409 * frame.c (Fdelete_frame): If we're in single_bboard_state on
6410 this kboard, and we delete its last frame, go to any_kboard_state.
6411
6412 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
6413
6414 2004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
6415
6416 * w32fns.c (Fx_file_dialog): Encode strings in system coding
6417 system before passing them to OS functions for display.
6418
6419 2004-07-15 David Kastrup <dak@gnu.org>
6420
6421 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
6422 Apparently fixes an abort condition.
6423
6424 2004-07-14 Luc Teirlinck <teirllm@auburn.edu>
6425
6426 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
6427 instead of a cons.
6428
6429 2004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
6430
6431 * keyboard.c (echo_dash): Do nothing if there already is a dash
6432 at the end of the echo string.
6433
6434 2004-07-12 Kim F. Storm <storm@cua.dk>
6435
6436 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
6437 if GC_MARK_STACK.
6438
6439 2004-07-10 Luc Teirlinck <teirllm@auburn.edu>
6440
6441 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
6442
6443 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
6444 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
6445 (Freplace_buffer_in_windows, Fset_window_buffer)
6446 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
6447 (syms_of_window): Expand docstring of `display-buffer-function'.
6448
6449 2004-07-09 Luc Teirlinck <teirllm@auburn.edu>
6450
6451 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
6452 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
6453 that time values of the type (HIGH . LOW) are considered obsolete.
6454
6455 2004-07-06 Luc Teirlinck <teirllm@auburn.edu>
6456
6457 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
6458 docstring.
6459
6460 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
6461
6462 2004-07-06 John Paul Wallington <jpw@gnu.org>
6463
6464 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
6465
6466 * fns.c (Fclear_string): Signal an error if STRING is not a string.
6467
6468 2004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6469
6470 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
6471 instead of CGMainDisplayID (only in OSX 10.2 and later).
6472
6473 2004-07-04 John Paul Wallington <jpw@gnu.org>
6474
6475 * fileio.c (read_file_name_completion_ignore_case): New variable.
6476 (syms_of_fileio): Declare and initialise it.
6477 (Fread_file_name): Bind `completion-ignore-case' to respect it.
6478
6479 2004-07-03 Eli Zaretskii <eliz@gnu.org>
6480
6481 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
6482 for event.x and event.y.
6483
6484 2004-07-01 Kenichi Handa <handa@m17n.org>
6485
6486 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
6487 after getting a new string by pre-write-conversion.
6488
6489 2004-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
6490
6491 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
6492 (x_calc_absolute_position): Remove unused var `child'.
6493
6494 * xfaces.c (x_supports_face_attributes_p)
6495 (Fdisplay_supports_face_attributes_p): YAILOM.
6496 (tty_supports_face_attributes_p): Remove unused var `i'.
6497
6498 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
6499 back_unibyte_ok.
6500
6501 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
6502
6503 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
6504
6505 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
6506
6507 2004-06-30 Andreas Schwab <schwab@suse.de>
6508
6509 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
6510 (Finit_image_library): Pass LIBRARIES through to
6511 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
6512 (lookup_image_type): Pass Qnil as second argument to
6513 Finit_image_library.
6514
6515 * lisp.h (Finit_image_library): Declare.
6516
6517 2004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6518
6519 * macterm.c (do_window_activate, do_window_deactivate): Remove.
6520 (XTread_socket): Send mouse button events to the toolbox
6521 dispatcher even when the mouse is grabbed. Don't process window
6522 activate events for non-Emacs windows. Replace function calls to
6523 do_window_activate and do_window_deactivate with their contents.
6524 Reset mouse grabbing status when a window is deactivated.
6525
6526 2004-06-29 Steven Tamm <steventamm@mac.com>
6527
6528 * macterm.c (mac_get_emulated_btn)
6529 (mac_event_to_emacs_modifiers): Fix emulated mouse button
6530 support to correctly mask out modifiers.
6531
6532 2004-06-29 David Kastrup <dak@gnu.org>
6533
6534 * search.c (Fset_match_data): Allow buffer before end of list
6535 which can happen if set-match-data is using a pre-consed list.
6536
6537 2004-06-28 Steven Tamm <steventamm@mac.com>
6538
6539 * macterm.c (XTread_socket): Correctly set the frame position
6540 after the window is moved.
6541
6542 2004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6543
6544 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
6545 gpix and gmask just before return to avoid memory leak.
6546 (xg_get_image_for_pixmap): Add workaround for monochrome displays
6547 so insensitive and activated icons look ok.
6548
6549 2004-06-27 Jason Rumney <jasonr@gnu.org>
6550
6551 * w32fns.c (file_dialog_callback): Disable edit control if set
6552 to directories only on CDN_INITDONE message.
6553 (Fx_file_dialog): Default to directories only when prompt starts
6554 with "Dired".
6555
6556 2004-06-25 Kim F. Storm <storm@cua.dk>
6557
6558 * alloc.c (allocate_misc): Update total_free_markers.
6559 (free_misc): New function.
6560 (safe_alloca_unwind, free_marker): Use it.
6561
6562 * lisp.h (free_misc): Add prototype.
6563
6564 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
6565
6566 2004-06-24 Richard M. Stallman <rms@gnu.org>
6567
6568 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
6569 (syms_of_emacs): Lisp variables deleted.
6570
6571 2004-06-23 David Kastrup <dak@gnu.org>
6572
6573 * search.c (Freplace_match): Adjust the match-data more thoroughly
6574 when replacing strings in the buffer.
6575 (Fmatch_data): When INTEGERS is non-nil and the last match was in
6576 a buffer, add the buffer as last element to the match data.
6577 (Fset_match_data): If an additional element of the match-data is a
6578 buffer, restore it to last_thing_searched.
6579 (save_search_regs): Save last_thing_searched as part of the match data.
6580 (restore_match_data): Restore it again.
6581
6582 2004-06-23 Luc Teirlinck <teirllm@auburn.edu>
6583
6584 * keymap.c (Ftext_char_description): Doc fix.
6585 * doc.c (Fsnarf_documentation): Doc fix.
6586
6587 2004-06-22 Kim F. Storm <storm@cua.dk>
6588
6589 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
6590
6591 * lisp.h (struct Lisp_Save_Value): New member dogc.
6592 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
6593 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
6594 (SAFE_FREE_LISP): New macro.
6595
6596 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
6597 (make_save_value): Init new dogc member.
6598 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
6599
6600 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
6601 SAFE_FREE_LISP macros.
6602
6603 2004-06-22 Kim F. Storm <storm@cua.dk>
6604
6605 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
6606 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
6607 in that memory area are unknown to GC. Add comments.
6608
6609 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
6610
6611 2004-06-21 Kim F. Storm <storm@cua.dk>
6612
6613 * lisp.h (MAX_ALLOCA): Define here.
6614 (safe_alloca_unwind): Add prototype.
6615 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
6616
6617 * alloc.c (safe_alloca_unwind): New function.
6618
6619 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
6620
6621 * charset.c (Fstring): Use SAFE_ALLOCA.
6622
6623 * coding.c (MAX_ALLOCA): Remove define.
6624
6625 * data.c (MAX_ALLOCA): Remove define.
6626 (Faset): Use SAFE_ALLOCA.
6627
6628 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
6629
6630 * fns.c (string_make_multibyte, string_to_multibyte)
6631 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
6632 (MAX_ALLOCA): Remove define.
6633 (Fbase64_encode_region, Fbase64_encode_string)
6634 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
6635 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
6636 memory leak if encoding fails.
6637
6638 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
6639
6640 2004-06-21 Eli Zaretskii <eliz@gnu.org>
6641
6642 * print.c (Fwith_output_to_temp_buffer): Doc fix.
6643
6644 2004-06-20 Richard M. Stallman <rms@gnu.org>
6645
6646 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
6647
6648 * search.c (match_limit): Cleaner err msg when no match data available.
6649
6650 * window.c (syms_of_window): Doc fix.
6651
6652 * keyboard.c (command_loop_1): Handle values `only' and `identity'
6653 for Vtransient_mark_mode.
6654
6655 * buffer.c (syms_of_buffer): Doc fix.
6656
6657 2004-06-21 David Kastrup <dak@gnu.org>
6658
6659 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
6660 and unbinding of `case-fold-search' according to
6661 `completion-ignore-case' around calls of string-match and
6662 predicates, respectively. Should give satisfactory performance
6663 in all relevant cases.
6664
6665 2004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6666
6667 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
6668 clip_x/y_origin.
6669
6670 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
6671
6672 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
6673
6674 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
6675 on Mac OSX.
6676
6677 2004-06-16 Luc Teirlinck <teirllm@auburn.edu>
6678
6679 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
6680
6681 2004-06-16 Kim F. Storm <storm@cua.dk>
6682
6683 * dispextern.h (Vimage_types): Remove extern.
6684
6685 2004-06-16 Miles Bader <miles@gnu.org>
6686
6687 * image.c (lookup_image_type): Initialize image type if necessary.
6688
6689 2004-06-15 Kim F. Storm <storm@cua.dk>
6690
6691 * xdisp.c (try_cursor_movement): Exclude header line from scroll
6692 margin at top of window.
6693 (try_window_reusing_current_matrix): Calculate proper cursor position
6694 after scrolling up with non-zero scroll margin, as the old cursor
6695 position corresponds to value of PT before executing this command.
6696 (try_window_id): Consider scroll margin at bottom of window too;
6697 otherwise we fail to scroll when hl-line-mode is enabled.
6698
6699 * syntax.c (skip_chars): Only recognize [:class:] when it has the
6700 proper format and class is a lower-case word.
6701
6702 2004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6703
6704 * gtkutil.c (xg_get_image_for_pixmap): New function.
6705 (xg_get_gdk_pixmap_and_mask): Remove.
6706 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
6707 xg_get_gdk_pixmap_and_mask.
6708
6709 * xterm.h (struct x_display_info): Typo in comment fixed.
6710
6711 2004-06-14 Juanma Barranquero <lektu@terra.es>
6712
6713 * dispextern.h (Vimage_types): Make it conditional on
6714 HAVE_WINDOW_SYSTEM.
6715
6716 * image.c (Vimage_types): Move from xdisp.c.
6717 (Vimage_type_cache): New variable.
6718 (define_image_type): New argument indicating whether an image
6719 library was loaded; cache loaded status and return t on success,
6720 nil otherwise.
6721 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
6722 (w32_delayed_load): New function to load an image library from a
6723 list of possible filenames.
6724 (init_xpm_functions, init_png_functions, init_jpeg_functions)
6725 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
6726 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
6727 (Finit_image_library): New function, extracted from `init_image'.
6728 Try to initialize an image library on demand and cache whether we
6729 were successful or not.
6730 (syms_of_image): Initialize `Vimage_types' and
6731 `Vimage_type_cache'. Add recognized image types to Vimage_types.
6732 Export `init-image-library'.
6733 (init_image): Remove initialization of all image types, except xbm
6734 and pbm.
6735
6736 * xdisp.c (Vimage_types): Delete (moved to image.c).
6737
6738 2004-06-14 Andreas Schwab <schwab@suse.de>
6739
6740 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
6741 Avoid calling specbind when completion-regexp-list is empty.
6742
6743 2004-06-13 Richard M. Stallman <rms@gnu.org>
6744
6745 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
6746 (re_wctype, re_iswctype, re_wctype_to_bit):
6747 Non-function definitions moved here from regex.c.
6748
6749 * regex.c (re_wctype, re_iswctype): Function defs longer static.
6750 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
6751 (re_wctype, re_iswctype, re_wctype_to_bit):
6752 Non-function definitions moved to regex.h.
6753
6754 * window.c (Fselect_window): Doc fix.
6755
6756 * syntax.c: Include regex.h.
6757 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
6758 If requested, make a list of classes, then check the scanned
6759 chars for membership in them.
6760 (in_classes): New function.
6761 Doc fix.
6762
6763 * keyboard.c (cmd_error): Don't call any_kboard_state
6764 if inside a recursive edit level.
6765
6766 2004-06-13 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
6767
6768 * keyboard.c (command_loop): Call any_kboard_state before
6769 command_loop_2 when at top level.
6770
6771 2004-06-13 Andreas Schwab <schwab@suse.de>
6772
6773 * print.c (print_object): Always use %ld for printing EMACS_INT.
6774
6775 * keyboard.c (cancel_hourglass_unwind): Return a value.
6776 (modify_event_symbol): Always use %ld for printing EMACS_INT.
6777 (Fexecute_extended_command): Likewise.
6778
6779 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
6780 avoid clashes.
6781 (SYNTAX): Likewise.
6782 (SYNTAX_WITH_FLAGS): Likewise.
6783 (SYNTAX_MATCH): Likewise.
6784
6785 * syntax.c (char_quoted): Avoid warning about undefined operation.
6786 (find_defun_start): Likewise.
6787 (scan_lists): Likewise.
6788 (INC_FROM): Likewise.
6789 (scan_sexps_forward): Likewise.
6790
6791 * image.c: Include <ctype.h>.
6792
6793 * xfaces.c (face_attr_equal_p): Declare parameters.
6794
6795 2004-06-13 Kenichi Handa <handa@m17n.org>
6796
6797 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
6798
6799 2004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
6800
6801 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
6802
6803 2004-06-12 Kenichi Handa <handa@m17n.org>
6804
6805 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
6806 ccl_prog_stack_struct and update it.
6807 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
6808 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
6809 ccl->eof_ic on EOF.
6810 (ccl_debug_hook): New function.
6811 (struct ccl_prog_stack): New member eof_ic.
6812 (ccl_driver): Handle EOF in subrountine call correctly.
6813
6814 2004-06-11 Kenichi Handa <handa@m17n.org>
6815
6816 * coding.c (encode_coding_string): Check CODING_FINISH_INTERRUPT.
6817
6818 2004-06-11 Kim F. Storm <storm@cua.dk>
6819
6820 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
6821
6822 2004-06-11 Juanma Barranquero <lektu@terra.es>
6823
6824 * keyboard.c (Fposn_at_point): Doc fix.
6825
6826 2004-06-11 David Kastrup <dak@gnu.org>
6827
6828 * search.c (match_limit): Don't flag an error if match-data
6829 exceeding the allocated search_regs.num_regs gets requested, just
6830 return Qnil.
6831
6832 2004-06-08 Miles Bader <miles@gnu.org>
6833
6834 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
6835
6836 2004-06-07 Juanma Barranquero <lektu@terra.es>
6837
6838 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
6839 (Fcurrent_time_string, Fcurrent_time_zone)
6840 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
6841
6842 2004-06-07 Miles Bader <miles@gnu.org>
6843
6844 * xfaces.c (struct named_merge_point): New type.
6845 (push_named_merge_point): New function.
6846 (merge_named_face): New function.
6847 (merge_face_ref, face_at_buffer_position, face_at_string_position):
6848 Use `merge_named_face'.
6849 (merge_face_inheritance): Function removed.
6850 (merge_face_ref): Rename from `merge_face_vector_with_property'.
6851 Add new `err_msgs' and `named_merge_points' args. Return error
6852 status. Only print error messages if ERR_MSGS is true. Don't try to
6853 do :inherit attribute validation.
6854 (merge_face_heights): Handle `unspecified' in both directions.
6855 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
6856 Call `merge_face_ref' instead of `merge_face_inheritance'.
6857 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
6858 (compute_char_face, face_at_buffer_position)
6859 (face_at_string_position): Call `merge_face_ref' instead of
6860 `merge_face_vector_with_property'.
6861
6862 2004-06-07 Kenichi Handa <handa@m17n.org>
6863
6864 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
6865 the necessary places.
6866
6867 2004-06-07 Kim F. Storm <storm@cua.dk>
6868
6869 * process.c (Fdelete_process): Undo 2004-05-28 change.
6870 Instead, call status_notify also for network process.
6871 (status_message): Use process instead of status as arg.
6872 Give messages "deleted" or "connection broken by remote peer" for
6873 an exited network process.
6874 (status_notify): Change call to status_message.
6875 (read_process_output): Increase readmax to 4096. Do not increase
6876 buffer size for datagram channels (default is now large enough).
6877
6878 2004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
6879
6880 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
6881 problem due to newly defined variable.
6882
6883 2004-06-06 Miles Bader <miles@gnu.org>
6884
6885 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
6886 immediately if non-interactive or not initialized.
6887
6888 2004-06-05 Richard M. Stallman <rms@gnu.org>
6889
6890 * minibuf.c (Fcompleting_read): Doc fix.
6891
6892 2004-06-05 Andreas Schwab <schwab@suse.de>
6893
6894 * macfns.c (x_create_tip_frame): Fix declaration after statement.
6895
6896 2004-06-05 Juanma Barranquero <lektu@terra.es>
6897
6898 * keymap.c (Fdescribe_vector): Fix docstring.
6899 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
6900
6901 2004-06-05 Miles Bader <miles@gnu.org>
6902
6903 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
6904 attributes have different values than the default face.
6905
6906 2004-06-04 Eli Zaretskii <eliz@gnu.org>
6907
6908 * xfaces.c (x_supports_face_attributes_p): Make this function
6909 conditional on HAVE_WINDOW_SYSTEM.
6910 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
6911 Don't call x_supports_face_attributes_p if it was not compiled in.
6912
6913 2004-06-04 Miles Bader <miles@gnu.org>
6914
6915 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
6916 from Ftty_supports_face_attributes_p.
6917 (x_supports_face_attributes_p): New function.
6918 (Ftty_supports_face_attributes_p): Function deleted.
6919 (Fdisplay_supports_face_attributes_p): New function.
6920 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
6921 (face_attr_equal_p): New function.
6922 (lface_equal_p): Use it.
6923
6924 2004-06-03 Juanma Barranquero <lektu@terra.es>
6925
6926 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
6927 (Vw32_color_map): Fix typo in docstring.
6928 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
6929 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
6930 Make argument names match their use in docstring.
6931
6932 2004-06-02 Juanma Barranquero <lektu@terra.es>
6933
6934 Work around bugs/problems with MinGW builds of graphics libraries
6935 called from MSVC builds of Emacs.
6936
6937 * image.c (lookup_image): Make pointer to img static.
6938 (png_read_from_memory): Disable "global" optimization.
6939
6940 2004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
6941
6942 * eval.c (Fcondition_case): Fix usage. Simplify.
6943
6944 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
6945
6946 2004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6947
6948 * macfns.c: Don't include ccl.h.
6949 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
6950 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
6951 TextUtils.h.
6952 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
6953 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
6954 display height/width.
6955 (compute_tip_xy, Vx_max_tooltip_size): Declare.
6956 (unwind_create_tip_frame, compute_tip_xy): New functions.
6957 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
6958 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
6959 and last_show_tip_args.
6960
6961 * macgui.h [!MAC_OSX]: Include Gestalt.h.
6962 (Cursor, No_Cursor): New defines.
6963 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
6964 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
6965
6966 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
6967
6968 * macterm.c: Don't include Gestalt.h.
6969 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
6970 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
6971 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
6972 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
6973 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
6974 (construct_mouse_click, XTmouse_position)
6975 (x_scroll_bar_report_motion, x_calc_absolute_position)
6976 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
6977 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
6978 (note_mouse_movement): Clear the mouse face and reset the pointer
6979 shape when the pointer goes outside the frame without grabbing.
6980 (mac_front_window): New function.
6981 (mac_window_to_frame): New macro.
6982 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
6983 (do_window_activate, do_window_deactivate, do_app_resume)
6984 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
6985 (do_zoom_window, mac_do_receive_drag, XTread_socket)
6986 (mac_check_for_quit_char): Use mac_front_window and/or
6987 mac_window_to_frame.
6988 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
6989 scroll-bar click event.
6990 (mac_define_frame_cursor): Change the pointer shape.
6991 (x_free_frame_resources): Reset tip_window to NULL when it is
6992 disposed of.
6993 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
6994 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
6995 (do_window_update): Don't do anything if the updated window is the
6996 tooltip window.
6997 (do_mouse_moved): Handle mouse movement events here (previously in
6998 XTread_socket). Clear the mouse face if
6999 dpyinfo->mouse_face_hidden is set.
7000 (do_os_event, do_events): Remove (now in XTread_socket).
7001 (XTread_socket): Immediately return if interrupt_input_blocked.
7002 Loop until all the events in the queue are processed.
7003 Rearrange codes for mouse grabbing. Add tooltip support. Include the
7004 contents of do_os_event and do_events. Remove mouse movement
7005 handling (now in do_mouse_moved). Add the case where
7006 Vmouse_highlight has an integer value.
7007 (NewMacWindow): Remove.
7008 (make_mac_frame): Do what NewMacWindow previously did. Don't do
7009 excess initializations.
7010 (make_mac_terminal_frame): Previous initializations in
7011 make_mac_frame are moved here.
7012 (mac_initialize_display_info):
7013 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
7014
7015 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
7016 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
7017
7018 2004-05-29 Richard M. Stallman <rms@gnu.org>
7019
7020 * lisp.h (truncate_undo_list): Update decl.
7021
7022 * alloc.c (undo_outer_limit): New variable.
7023 (syms_of_alloc): Defvar it.
7024 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
7025
7026 * undo.c (truncate_undo_list): New arg LIMITSIZE.
7027
7028 * alloc.c (lisp_align_malloc): Check for base == 0
7029 regardless of HAVE_POSIX_MEMALIGN.
7030 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
7031
7032 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
7033
7034 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
7035 (marker_blocks_pending_free): Remove.
7036 (Fgarbage_collect): Sweep after cleaning up undo-lists.
7037 Mark the undo lists after claning them up.
7038 Don't free block in marker_blocks_pending_free.
7039 (mark_buffer): Don't mark undo_list.
7040 (gc_sweep): Sweep hash-tables and strings first.
7041 Do free marker blocks that are empty.
7042
7043 2004-05-28 Jim Blandy <jimb@redhat.com>
7044
7045 * regex.c (print_partial_compiled_pattern): Add missing 'break'
7046 after 'case wordend'. For symbeg and symend, print to stderr,
7047 like the other cases.
7048
7049 2004-05-28 Noah Friedman <friedman@splode.com>
7050
7051 * process.c (Fdelete_process): Do not call remove_process.
7052
7053 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
7054
7055 * alloc.c (struct backtrace): Remove.
7056 (Fgarbage_collect): Use the new mark_backtrace.
7057
7058 * eval.c (mark_backtrace): New function.
7059
7060 * minibuf.c (run_exit_minibuf_hook): New function.
7061 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
7062 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
7063
7064 2004-05-27 Kim F. Storm <storm@cua.dk>
7065
7066 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
7067 over display properties, e.g. images, that replace buffer text.
7068
7069 2004-05-25 Kim F. Storm <storm@cua.dk>
7070
7071 * alloc.c (marker_blocks_pending_free): New var.
7072 (gc_sweep): Store free marker blocks on that list.
7073 (Fgarbage_collect): Free them after undo-list cleanup.
7074
7075 * process.c (wait_reading_process_input): Check connect_wait_mask
7076 before actually accepting connection in case it has already been
7077 accepted due to recursion.
7078
7079 2004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
7080
7081 * coding.c (Fset_safe_terminal_coding_system_internal):
7082 Set suppress_error in safe_terminal_coding, not terminal_coding.
7083
7084 2004-05-22 Richard M. Stallman <rms@gnu.org>
7085
7086 * alloc.c (Fmake_string): Doc fix.
7087
7088 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
7089 and the alist pairs too.
7090
7091 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
7092
7093 * emacs.c (main): Update copyright year.
7094
7095 * fileio.c (Fread_file_name): Expand DIR if not absolute.
7096
7097 * insdel.c (del_range_2, replace_range): Don't write an anchor
7098 if the gap is empty.
7099
7100 * xdisp.c (try_scrolling): If scroll-up-aggressively or
7101 scroll-down-aggressively is small but positive, put point
7102 near the screen edge.
7103
7104 2004-05-22 Juanma Barranquero <lektu@terra.es>
7105
7106 * keymap.c (Fdefine_key): Doc fix.
7107
7108 2004-05-22 Kim F. Storm <storm@cua.dk>
7109
7110 * alloc.c (struct backtrace): Add debug_on_exit member.
7111 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
7112 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
7113 the removed cons cells.
7114 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
7115 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
7116 any cons cells pointing to unallocated stings.
7117 Do not lisp_free any marker blocks, as there may still be pointers
7118 to them from buffer undo lists at this stage of GC.
7119
7120 * keyboard.c (struct backtrace): Add debug_on_exit member.
7121 (Fcommand_execute): Clear it.
7122
7123 2004-05-20 Luc Teirlinck <teirllm@auburn.edu>
7124
7125 * intervals.c (lookup_char_property): Do not prematurely return nil.
7126
7127 2004-05-19 Jim Blandy <jimb@redhat.com>
7128
7129 Add support for new '\_<' and '\_>' regexp operators, matching the
7130 beginning and end of symbols.
7131
7132 * regex.c (enum syntaxcode): Add Ssymbol.
7133 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
7134 (re_opcode_t): New opcodes `symbeg' and `symend'.
7135 (print_partial_compiled_pattern): Print the new opcodes properly.
7136 (regex_compile): Parse the new operators.
7137 (analyse_first): Skip sym(beg|end) (they match only the empty string).
7138 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
7139 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
7140 (re_match_2_internal): Match symbeg and symend.
7141
7142 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
7143
7144 2004-05-19 Kim F. Storm <storm@cua.dk>
7145
7146 * .gdbinit (xsymbol): Fix last change.
7147
7148 2004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
7149
7150 * .gdbinit (xprintstr): New fun.
7151 (xstring, xprintsym): Use it.
7152
7153 * w32proc.c (create_child): Use INTMASK.
7154
7155 * alloc.c (Fgarbage_collect): Do all the marking before flushing
7156 unmarked elements of the undo list.
7157
7158 2004-05-18 David Ponce <david@dponce.com>
7159
7160 * print.c (print): Reset print_depth before to call print_object.
7161
7162 2004-05-18 Jason Rumney <jasonr@gnu.org>
7163
7164 * w32console.c: Prefix RIF functions with w32con_ to avoid
7165 namespace clash with functions in term.c and w32term.c.
7166
7167 * w32menu.c (add_menu_item, w32_menu_display_help)
7168 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
7169
7170 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
7171
7172 2004-05-18 Eli Zaretskii <eliz@gnu.org>
7173
7174 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
7175
7176 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
7177 with make_number.
7178 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
7179 with XINT.
7180
7181 2004-05-18 Kim F. Storm <storm@cua.dk>
7182
7183 * blockinput.h (INPUT_BLOCKED_P): New macros.
7184
7185 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
7186 (Ftop_level): Unblock input if blocked.
7187
7188 * buffer.h (GET_OVERLAYS_AT): New macro.
7189 * msdos.c (IT_note_mouse_highlight): Use it.
7190 * textprop.c (get_char_property_and_overlay): Use it.
7191 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
7192 * xfaces.c (face_at_buffer_position): Use it.
7193
7194 * print.c (print_object): Increase buf size.
7195
7196 2004-05-17 Jason Rumney <jasonr@gnu.org>
7197
7198 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
7199 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
7200 Lisp_Object using i member.
7201 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
7202 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
7203 consistently.
7204
7205 * w32proc.c (create_child): Use make_number instead of masking pid.
7206
7207 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
7208 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
7209 Use EQ to compare Lisp_Objects.
7210 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
7211
7212 * w32term.c (w32_num_mouse_buttons): Rename from
7213 Vw32_num_mouse_buttons and make it an int.
7214
7215 * w32.c (init_environment): Use it.
7216
7217 * w32fns.c (w32_wnd_proc): Likewise.
7218
7219 * w32proc.c (w32_pipe_read_delay): Rename from
7220 Vw32_pipe_read_delay and make it an int.
7221
7222 * w32.c (_sys_read_ahead): Use it.
7223
7224 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
7225
7226 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
7227
7228 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
7229 (key_event): Don't mix Lisp_Object and int.
7230
7231 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
7232
7233 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
7234 modifiers in language change event.
7235
7236 2004-05-17 Kim F. Storm <storm@cua.dk>
7237
7238 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
7239 Such objects may be freed markers which still exist on an undo list.
7240
7241 2004-05-16 Juanma Barranquero <lektu@terra.es>
7242
7243 * data.c (Fset_default): Make argument names match their use in
7244 docstring.
7245
7246 2004-05-15 Andreas Schwab <schwab@suse.de>
7247
7248 * emacs.c (gdb_array_mark_flag): Define.
7249 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
7250
7251 2004-05-15 Eli Zaretskii <eliz@gnu.org>
7252
7253 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
7254 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
7255 defined for the MS-DOS build.
7256
7257 2004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
7258
7259 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
7260
7261 2004-05-14 Kenichi Handa <handa@m17n.org>
7262
7263 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
7264
7265 2004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7266
7267 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
7268 section to frame.c section.
7269 (Fxw_display_color_p, Fx_file_dialog): Declare if
7270 HAVE_WINDOW_SYSTEM defined.
7271
7272 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
7273
7274 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
7275
7276 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
7277 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
7278 (XTread_socket): Fix int/Lisp_Object mixup.
7279 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
7280
7281 * macterm.h (struct frame, struct face, struct image)
7282 (display_x_get_resource, Fx_display_color_p)
7283 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
7284 Add prototypes.
7285
7286 2004-05-14 Kim F. Storm <storm@cua.dk>
7287
7288 * process.c (wait_reading_process_input): Make reentrant.
7289 Make Available and Connecting non-static. Save and restore value
7290 of waiting_for_user_input_p.
7291
7292 2004-05-13 Kim F. Storm <storm@cua.dk>
7293
7294 * keyboard.c (mark_kboards): Don't mark x and y members
7295 that are overloaded in selection request events.
7296
7297 2004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
7298
7299 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
7300
7301 2004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
7302
7303 * window.c (Fdisplay_buffer, Fsplit_window)
7304 (split-height-threshold): Doc fix.
7305
7306 2004-05-13 Juanma Barranquero <lektu@terra.es>
7307
7308 * xfaces.c (Ftty_supports_face_attributes_p)
7309 (Finternal_copy_lisp_face): Fix typo in docstring.
7310 (Finternal_get_lisp_face_attribute): Fix docstring.
7311
7312 2004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7313
7314 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
7315
7316 2004-05-11 Steven Tamm <steventamm@mac.com>
7317
7318 * macfns.c (Fx_create_frame): Default to using tool-bar by
7319 setting tool-bar-lines to 1 in default-frame-alist.
7320
7321 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7322
7323 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
7324 (xpm_get_color_table_v, xpm_make_color_table_h)
7325 (xpm_put_color_table_h, xpm_get_color_table_h)
7326 (xpm_str_to_color_key, xpm_load_image, xpm_load)
7327 (syms_of_image): Support XPM on Carbon Emacs. Does not
7328 depend on libXpm, but only supports XPM version 3 without extensions.
7329
7330 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7331
7332 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
7333 instead of FRAME_X_P
7334
7335 2004-05-11 Kim F. Storm <storm@cua.dk>
7336
7337 * process.c (read_process_output): Grow decoding_buf when needed;
7338 this could cause a crash in allocate_string and compact_small_strings.
7339
7340 2004-04-29 Jim Blandy <jimb@redhat.com>
7341
7342 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
7343 against proper opcode.
7344
7345 2004-05-10 Juanma Barranquero <lektu@terra.es>
7346
7347 * process.c (Fstart_process): Fix docstring.
7348
7349 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
7350 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
7351 (Fsplit_char, Fchar_charset): Make argument names match their use
7352 in docstring.
7353
7354 2004-05-10 Richard M. Stallman <rms@gnu.org>
7355
7356 * print.c (print_preprocess): Use being_printed, loop_count and
7357 halftail to detect overdeep nesting and cyclic cdr chains.
7358
7359 2004-05-10 Andreas Schwab <schwab@suse.de>
7360
7361 * lisp.h (Fmake_symbolic_link): Declare.
7362
7363 * fileio.c (Frename_file): Remove extra argument in call to
7364 Fmake_symbolic_link.
7365
7366 2004-05-10 Kim F. Storm <storm@cua.dk>
7367
7368 * xdisp.c (calc_line_height_property): Use string position when
7369 object is a string.
7370
7371 2004-05-10 Kenichi Handa <handa@m17n.org>
7372
7373 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
7374 inhibit-modification-hooks to t temporarily before calling
7375 Ferase_buffer.
7376
7377 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
7378 inhibit-modification-hooks to t temporarily before calling
7379 Ferase_buffer.
7380
7381 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
7382 inhibit-modification-hooks to t temporarily before calling
7383 Ferase_buffer.
7384
7385 * fns.c (count_combining): Delete it.
7386 (concat): Don't check combining bytes.
7387
7388 2004-05-09 Jason Rumney <jasonr@gnu.org>
7389
7390 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
7391 (globals_of_w32fns): Set it.
7392
7393 2004-05-09 Piet van Oostrum <piet@cs.uu.nl>
7394
7395 * data.c (Fquo): Simplify.
7396
7397 2004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
7398
7399 * data.c (Fquo): If any argument is float, do the computation in
7400 floating point.
7401
7402 2004-05-08 Juanma Barranquero <lektu@terra.es>
7403
7404 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
7405 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
7406 Fix spelling of Emacs on docstring.
7407 (Fset_process_coding_system, Fprocess_coding_system)
7408 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
7409 Make argument names match their use in docstring.
7410 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
7411 Fix docstring.
7412
7413 * editfns.c (Finsert_buffer_substring): Make argument names match their
7414 use in docstring.
7415
7416 * syntax.c (Fmodify_syntax_entry): Fix docstring.
7417
7418 2004-05-07 Steven Tamm <steventamm@mac.com>
7419
7420 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
7421 around call to ReceiveEvent to avoid certain crashes.
7422
7423 2004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7424
7425 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
7426 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
7427 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
7428 Save/restore the current graphics port and device handle when
7429 drawing into an offscreen graphics world.
7430
7431 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
7432 (gif_load): Likewise.
7433
7434 2004-05-07 Juanma Barranquero <lektu@terra.es>
7435
7436 * window.c (Fset_window_buffer): Fix docstring.
7437
7438 2004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
7439
7440 * emacs.c (main) [VMS]: Fix var ref.
7441
7442 2004-05-06 Romain Francoise <romain@orebokech.com>
7443
7444 * data.c (Fsetq_default): Fix docstring.
7445
7446 2004-05-06 Jason Rumney <jasonr@gnu.org>
7447
7448 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
7449 to avoid name clash.
7450
7451 2004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7452
7453 * fileio.c (barf_or_query_if_file_exists): Use lstat.
7454 (Frename_file): Handle renaming of symlinks across file systems.
7455 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
7456
7457 2004-05-04 Kim F. Storm <storm@cua.dk>
7458
7459 * xdisp.c (Qtotal): New var.
7460 (syms_of_xdisp): Intern and staticpro it.
7461 (calc_line_height_property): New arg total. Set it if
7462 line-spacing property has format (total . VALUE).
7463 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
7464 Handle total line-spacing property.
7465
7466 2004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7467
7468 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
7469 "under" scroll bar when size/position changes.
7470
7471 2004-05-03 Jason Rumney <jasonr@gnu.org>
7472
7473 * makefile.nt: Remove.
7474
7475 2004-05-02 Eli Zaretskii <eliz@gnu.org>
7476
7477 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
7478 Avoid compiler warnings.
7479
7480 * Makefile.in (region-cache.o): Depend on config.h.
7481
7482 2004-05-02 Romain Francoise <romain@orebokech.com>
7483
7484 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
7485 with continuation lines, too.
7486
7487 2004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
7488
7489 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
7490
7491 2004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
7492
7493 * xdisp.c (calc_line_height_property): YAILOM (yet another
7494 int/Lisp_Object mixup).
7495
7496 2004-05-01 Eli Zaretskii <eliz@gnu.org>
7497
7498 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
7499 undo bad effect of pack(4) in some versions of system headers.
7500
7501 2004-05-01 Jason Rumney <jasonr@gnu.org>
7502
7503 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
7504
7505 2004-04-30 Kim F. Storm <storm@cua.dk>
7506
7507 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
7508 (syms_of_buffer) <cursor-type>: Doc fix.
7509
7510 * dispextern.h (struct it): Remove member use_default_face.
7511 Add members override_ascent, override_descent, override_boff.
7512
7513 * xdisp.c (init_iterator): Handle line-spacing float value.
7514 Initialize override_ascent member.
7515 (append_space_for_newline): Reset override_ascent.
7516 Remove use_default_face.
7517 (calc_line_height_property): New function to calculate value of
7518 line-height and line-spacing properties. Look at overlays, too.
7519 Set override_ascent, override_descent, override_boff members when
7520 using another face than the current face. Float values are now
7521 relative to the frame default font, by default; accept a cons
7522 of ratio and face name to specify value relative to a specific face.
7523 (x_produce_glyphs): Use calc_line_height_property.
7524 Use override_ascent etc. when set to handle different face heights.
7525 A negative line-spacing property value is interpreted as a total
7526 line height, rather than inter-line spacing.
7527 (note_mouse_highlight): Allocate room for 40 overlays initially.
7528
7529 2004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
7530
7531 * data.c (Fsubr_name): New fun.
7532 (syms_of_data): Defsubr it.
7533
7534 2004-04-29 Kim F. Storm <storm@cua.dk>
7535
7536 * xdisp.c (null_glyph_slice): New var.
7537 (append_glyph, append_composite_glyph, append_stretch_glyph):
7538 Use it to initialize glyph slice.
7539
7540 2004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
7541
7542 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
7543 (on_hot_spot_p): Make sure we always return a value.
7544 (Flookup_image_map): Remove unused var ix and iy.
7545 (note_mode_line_or_margin_highlight): Remove unused var `image'.
7546
7547 2004-04-27 Eli Zaretskii <eliz@gnu.org>
7548
7549 * msdos.c (init_environment): If one of the TMP... environment
7550 variables is set to a drive letter without a trailing slash,
7551 append a slash.
7552
7553 2004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
7554
7555 * editfns.c (lisp_time_argument): Provide externally.
7556
7557 * fileio.c (Fset_file_times): New function.
7558 (syms_of_fileio): Intern and staticpro it.
7559
7560 2004-04-27 Kim F. Storm <storm@cua.dk>
7561
7562 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
7563 header line strings.
7564
7565 * dispextern.h (struct it): New member use_default_face.
7566
7567 * xdisp.c (Qline_height): New variable.
7568 (syms_of_xdisp): Intern and staticpro it.
7569 (append_space_for_newline): Partially undo 2004-04-25 change;
7570 add default_face_p arg, and restore callers.
7571 Clear it->use_default_face after use.
7572 (x_produce_glyphs): Set default font for ascii char if
7573 it->use_default_font is set. Change line-spacing property to set
7574 just extra line spacing. Handle new line-height property.
7575
7576 2004-04-26 Andreas Schwab <schwab@suse.de>
7577
7578 * print.c (print_object): Print non-ascii characters in bool
7579 vector representation as octal escapes.
7580
7581 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
7582 * print.c (print_object): Use it instead of BITS_PER_CHAR for
7583 bool vectors.
7584 * lread.c (read1): Likewise.
7585 * alloc.c (Fmake_bool_vector): Likewise.
7586 * data.c (Faref, Faset): Likewise.
7587 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
7588 (mapcar1): Likewise.
7589
7590 2004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
7591
7592 * lread.c (init_lread): Fix typo in HAVE_CARBON test logic.
7593
7594 2004-04-26 Miles Bader <miles@gnu.org>
7595
7596 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
7597
7598 2004-04-26 Juanma Barranquero <lektu@terra.es>
7599
7600 * buffer.c (Fpop_to_buffer): Fix docstring.
7601
7602 2004-04-26 Steven Tamm <steventamm@mac.com>
7603
7604 * lread.c (init_lread): Don't display missing lisp directory
7605 warnings with Carbon Emacs because self-contained bundled Emacs
7606 may be built without correct installation path.
7607
7608 2004-04-25 Kim F. Storm <storm@cua.dk>
7609
7610 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
7611
7612 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
7613
7614 * xdisp.c (append_space_for_newline): Rename from append_space.
7615 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
7616 (x_produce_glyphs): Handle line-spacing property on newline char.
7617 If value is t, adjust ascent and descent to fit current row height.
7618 If value is an integer or float, set extra_line_spacing to integer
7619 value, or to float value x current line height.
7620
7621 2004-04-23 Kenichi Handa <handa@m17n.org>
7622
7623 * fontset.c (Finternal_char_font): If POSITION is nil, return
7624 font for displaying CH with the default face.
7625
7626 2004-04-23 Juanma Barranquero <lektu@terra.es>
7627
7628 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
7629
7630 2004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
7631
7632 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
7633 Don't make assumptions about the relative place of i and val.
7634 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
7635
7636 2004-04-21 Kim F. Storm <storm@cua.dk>
7637
7638 * dispextern.h (struct glyph_slice): New struct.
7639 (struct glyph): New member slice.
7640 (GLYPH_SLICE_EQUAL_P): New macro.
7641 (GLYPH_EQUAL_P): Use it.
7642 (struct glyph_string): New member slice.
7643 (struct it_slice): New struct.
7644 (struct it): New member slice, add member to stack too.
7645 New member constrain_row_ascent_descent_p.
7646 (image_ascent): Add prototype.
7647
7648 * dispnew.c (buffer_posn_from_coords): Return full image width
7649 and height even for image slices (posn is relative to full image).
7650 (marginal_area_string): Adjust x0,y0 for image slice.
7651
7652 * image.c (image_ascent): Add slice arg; calculate ascent for
7653 image slice (or full image).
7654
7655 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
7656 (syms_of_keyboard): Defsubr them.
7657
7658 * lisp.h (pos_visible_p): Fix prototype.
7659
7660 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
7661 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
7662 (x_draw_image_foreground, x_draw_image_relief)
7663 (x_draw_image_foreground_1, x_draw_image_glyph_string):
7664 Draw sliced images.
7665
7666 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
7667 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
7668 (x_draw_image_foreground, x_draw_image_relief)
7669 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
7670 Draw sliced images.
7671
7672 * w32term.h (image_ascent): Remove prototype.
7673
7674 * window.c (Fpos_visible_in_window_p): Return pixel position if
7675 PARTIALLY arg is non-nil. Simplify. Doc fix.
7676 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
7677 to return/set vscroll in pixels.
7678
7679 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
7680
7681 * xdisp.c (Qslice): New variable.
7682 (syms_of_xdisp): Intern and staticpro it.
7683 (pos_visible_p): Return pixel position in new x and y args.
7684 (init_iterator): Reset it->slice info.
7685 (handle_display_prop): Parse (slice ...) property.
7686 (push_it, pop_it): Save/restore slice info.
7687 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
7688 force repositioning of tall row if window is vscrolled, as that
7689 would reset vscroll.
7690 (append_space): Set it->constrain_row_ascent_descent_p to avoid
7691 increasing row height if row is non-empty.
7692 (fill_image_glyph_string): Copy slice info.
7693 (take_vertical_position_into_account): Simplify.
7694 (produce_image_glyph): Handle iterator slice info, setup glyph
7695 slice info. Do not force minimum line height.
7696 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
7697 do not increase height (ascent/descent) of non-empty row when
7698 adding normal character glyph; instead reduce glyph ascent/descent
7699 appropriately; if row is higher than current glyph, adjust glyph
7700 descent/ascent to reposition glyph within the existing row.
7701 Likewise, when char is newline, only set ascent/descent if row is
7702 currently empty.
7703 (note_mouse_highlight): Handle hotspots with sliced image.
7704
7705 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
7706 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
7707 (x_draw_image_foreground, x_draw_image_relief)
7708 (x_draw_image_foreground_1, x_draw_image_glyph_string):
7709 Draw sliced images.
7710
7711 * xterm.h (image_ascent): Remove prototype.
7712
7713 2004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
7714
7715 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
7716
7717 2004-04-20 John Paul Wallington <jpw@gnu.org>
7718
7719 * fns.c (Fassoc, Feql): Fix indentation.
7720
7721 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
7722
7723 2004-04-19 John Paul Wallington <jpw@gnu.org>
7724
7725 * fns.c (Feql): New function.
7726 (syms_of_fns): Defsubr it.
7727
7728 2004-04-18 Jason Rumney <jasonr@gnu.org>
7729
7730 * w32select.c (Fw32_set_clipboard_data): Get sequence number
7731 after closing the clipboard.
7732
7733 2004-04-16 Luc Teirlinck <teirllm@auburn.edu>
7734
7735 * buffer.c (Fbuffer_base_buffer): Doc fix.
7736
7737 2004-04-17 Kim F. Storm <storm@cua.dk>
7738
7739 * keymap.c (Fkey_description): Add optional PREFIX arg.
7740 Combine prefix with KEYS to make up the full key sequence to describe.
7741 Correlate meta_prefix_char and following (simple) key to describe
7742 as meta modifier. All callers changed.
7743 (describe_map): Rename arg `keys' to `prefix'. Remove local
7744 `elt_prefix' var. Use Fkey_description with prefix instead of
7745 elt_prefix combined with Fsingle_key_description.
7746 (describe_vector): Declare static. Replace arg `elt_prefix' with
7747 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
7748 if !KEYMAP_P. Use Fkey_description with prefix instead of
7749 Fsingle_key_description.
7750
7751 * keymap.h (Fkey_description): Fix prototype.
7752 (describe_vector): Remove prototype.
7753
7754 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
7755
7756 * image.c (PNG_BG_COLOR_SHIFT): Remove.
7757 (png_load): Fix calculation of transparent background color on X
7758 and W32 platforms.
7759
7760 2004-04-16 Juanma Barranquero <lektu@terra.es>
7761
7762 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
7763 not too large before computing how much to scroll.
7764
7765 2004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
7766
7767 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
7768
7769 2004-04-14 Luc Teirlinck <teirllm@auburn.edu>
7770
7771 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
7772 Add hyperlink to Elisp manual to the docstring.
7773
7774 2004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
7775
7776 * callint.c (fix_command): Use XDCR.
7777
7778 2004-04-14 Nick Roberts <nick@nick.uklinux.net>
7779
7780 * window.c (Fget_lru_window): Doc fix.
7781
7782 2004-04-14 Kim F. Storm <storm@cua.dk>
7783
7784 * editfns.c (Fformat): Fix allocation size of precision array.
7785
7786 * dispnew.c (update_window): Only set changed_p if
7787 scrolling_window actually did scroll.
7788 (scrolling_window): Only return 1 if we actually did scroll.
7789
7790 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
7791 height to glyph height when cursor row is not fully visible.
7792 (make_cursor_line_fully_visible): Add FORCE_P arg to return
7793 failure in case row is higher than window. Callers changed.
7794 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
7795 Try to scroll partially visible, higher-than-window cursor row.
7796 (redisplay_window): Always try to scroll partially visible,
7797 higher-than-window cursor row - both initially and again with
7798 centering_position = 0.
7799 Clear desired matrix before retrying with centering_position = 0.
7800
7801 2004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
7802
7803 * syntax.c (scan_lists): Simplify backward string scan.
7804 Fix off-by-one boundary check for string and comment fences.
7805
7806 2004-04-13 Joe Buehler <jbuehler@hekimian.com>
7807
7808 * sheap.c, unexcw.c: New files.
7809
7810 2004-04-12 Luc Teirlinck <teirllm@auburn.edu>
7811
7812 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
7813 base buffer has been killed. Correct the error message if the
7814 base buffer does not exist.
7815
7816 2004-04-12 Joe Buehler <jbuehler@hekimian.com>
7817
7818 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
7819 Cygwin itself. Add support for Xaw3d scrollbars.
7820
7821 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
7822
7823 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
7824
7825 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
7826 before Cygwin unexec.
7827
7828 * Makefile.in: Link changes for Cygwin unexec() support.
7829
7830 2004-04-12 Andreas Schwab <schwab@suse.de>
7831
7832 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
7833
7834 2004-04-11 Luc Teirlinck <teirllm@auburn.edu>
7835
7836 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
7837 IGNORE argument equals NAME. Doc fix.
7838
7839 2004-04-11 Masatake YAMATO <jet@gyve.org>
7840
7841 * buffer.c (fix_start_end_in_overlays): Make overlays
7842 empty if they are backwards.
7843
7844 2004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
7845
7846 * xfaces.c (face_color_supported_p): Fix compilation without X11.
7847
7848 2004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
7849
7850 * doc.c (Fsnarf_documentation): Ignore new file name entries.
7851
7852 2004-04-06 Kim F. Storm <storm@cua.dk>
7853
7854 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
7855 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
7856
7857 * w32term.c (w32_read_socket): Set mouse_face_hidden after
7858 clearing highlight.
7859
7860 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
7861
7862 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
7863 clearing highlight.
7864
7865 * indent.c (vmotion): Do not reserve one column for continuation
7866 marks on window frames.
7867
7868 2004-04-04 Eli Zaretskii <eliz@gnu.org>
7869
7870 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
7871 from GCC.
7872
7873 2004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
7874
7875 * .gdbinit-union: Remove.
7876
7877 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
7878 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
7879 ($nonvalbits): Remove.
7880 ($valmask): Set it by calling xreload to avoid redundancy.
7881
7882 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
7883 (gdb_emacs_intbits): Remove.
7884
7885 2004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7886
7887 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
7888
7889 2004-03-30 Kenichi Handa <handa@m17n.org>
7890
7891 * editfns.c (Fformat): Fix initialization of the array info.
7892
7893 2004-03-30 Kim F. Storm <storm@cua.dk>
7894
7895 * xterm.c (x_mouse_click_focus_ignore_position): New var.
7896 (syms_of_xterm): DEFVAR_BOOL it.
7897 (ignore_next_mouse_click_timeout): New var.
7898 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
7899 Use it to filter mouse clicks following focus event.
7900
7901 2004-03-29 David Ponce <david@dponce.com>
7902
7903 * callint.c (Fcall_interactively): Fix last change.
7904
7905 2004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
7906
7907 * eval.c (Fcommandp): Simplify.
7908
7909 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
7910 Extend to handle all kinds of functions.
7911
7912 * lisp.h (Finteractive_form): Declare.
7913
7914 * callint.c (Fcall_interactively): Use it.
7915
7916 2004-03-26 Kim F. Storm <storm@cua.dk>
7917
7918 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
7919 to catch errors in calc_pixel_width_or_height during redisplay.
7920
7921 2004-03-26 Masatake YAMATO <jet@gyve.org>
7922
7923 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
7924
7925 * lisp.h (fix_start_end_in_overlays): Likewise.
7926
7927 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
7928
7929 * editfns.c (Ftranspose_regions): Likewise.
7930
7931 2004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7932
7933 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
7934
7935 2004-03-19 Richard M. Stallman <rms@gnu.org>
7936
7937 * s/sol2-6.h: Delete previous change.
7938
7939 2004-03-19 Kim F. Storm <storm@cua.dk>
7940
7941 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
7942 to_charpos corresponds to newline in right fringe. Use local
7943 BUFFER_POS_REACHED_P macro.
7944
7945 2004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7946
7947 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
7948 to compile on non-window system.
7949
7950 2004-03-19 Kim F. Storm <storm@cua.dk>
7951
7952 * dispextern.h (calc_pixel_width_or_height): Add prototype.
7953
7954 * image.c (Qcenter): Move to xdisp.c.
7955
7956 * xdisp.c (Qcenter): Declare here.
7957 (syms_of_xdisp): Intern and staticpro it.
7958 (handle_single_display_prop): Allow space display property on all
7959 platforms.
7960 (display_mode_line): Set mode_line_p before displaying line.
7961 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
7962 handling. Remove complex cases for fringes and scroll-bars.
7963 Add left, right, and center alignment positions. Add text (area)
7964 width/height. Return width or height for image specs.
7965 (produce_stretch_glyph): Improve handling of :align-to. Is now
7966 relative to left of text area by default, but other base offsets
7967 can be specified -- also for text lines.
7968
7969 * term.c (produce_glyphs): Handle IT_STRETCH.
7970 (produce_stretch_glyph): New function to handle space width and
7971 align-to display properties on non-window systems.
7972
7973 2004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
7974
7975 * fileio.c (Fread_file_name): Set completion-ignore-case for
7976 case-insensitive systems.
7977
7978 2004-03-14 Masatake YAMATO <jet@gyve.org>
7979
7980 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
7981 when keymap and cursor are setup.
7982
7983 2004-03-14 Steven Tamm <steventamm@mac.com>
7984
7985 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
7986
7987 2004-03-14 Kim F. Storm <storm@cua.dk>
7988
7989 * dispextern.h (x_find_image_file): Add prototype.
7990
7991 * image.c (x_find_image_file): Make extern.
7992
7993 * xfns.c (x_find_image_file): Remove prototype.
7994
7995 2004-03-13 Eli Zaretskii <eliz@gnu.org>
7996
7997 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
7998
7999 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
8000
8001 2004-03-12 Richard M. Stallman <rms@gnu.org>
8002
8003 * fns.c (internal_equal): New arg PROPS controls comparing
8004 text properties. All callers changed.
8005 (Fequal_including_properties): New function.
8006 (syms_of_fns): defsubr it.
8007
8008 2004-03-12 Kim F. Storm <storm@cua.dk>
8009
8010 Fix image support on MAC. From YAMAMOTO Mitsuharu.
8011
8012 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
8013 (image_background, image_background_transparent): Fix prototypes.
8014
8015 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
8016
8017 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
8018 (x_query_font, x_find_ccl_program, x_set_window_size)
8019 (x_make_frame_visible, mac_initialize, XCreatePixmap)
8020 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
8021 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
8022
8023 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
8024 (x_query_font, x_find_ccl_program, x_set_window_size)
8025 (x_make_frame_visible, mac_initialize, XCreatePixmap)
8026 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
8027 (mac_draw_line_to_pixmap): Add prototypes.
8028
8029 2004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8030
8031 * macterm.c (XTread_socket): Fix mouse click on tool bar.
8032
8033 2004-03-11 Kim F. Storm <storm@cua.dk>
8034
8035 * dispextern.h: Move image related prototypes from xfns.c section
8036 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
8037 HAVE_X_WINDOWS.
8038
8039 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
8040 Move gtkutil.o to new GTK_OBJ list.
8041 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
8042 (GTK_OBJ) [USE_GTK]: New declaration.
8043 (obj): Add $(GTK_OBJ) to list.
8044
8045 2004-03-11 Steven Tamm <steventamm@mac.com>
8046
8047 * image.c [MAC_OSX]: Include sys/stat.h.
8048
8049 * macfns.c (syms_of_macfns): Remove definitions of things now
8050 defined in image.c.
8051
8052 2004-03-11 Kim F. Storm <storm@cua.dk>
8053
8054 The following changes consolidates the identical/similar image
8055 support code previously found in xfns.c, w32fns.c, and macfns.c
8056 into a new file image.c.
8057
8058 * makefile.w32-in (OBJ1): Add image.o.
8059 ($(BLD)/image.$(O)): Add dependencies.
8060
8061 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
8062 (image.o): Add dependencies.
8063
8064 * image.c: New file with consolidated image support code.
8065 (COLOR_TABLE_SUPPORT): New define to control whether
8066 color table support is available (X only).
8067 (Bitmap_Record): Common name for x_bitmap_record,
8068 w32_bitmap_record, and mac_bitmap_record.
8069 (XImagePtr): Common name for pointer to XImage or equivalent.
8070 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
8071 to XImagePtr on X+MAC, and to HDC on W32.
8072 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
8073 (NO_PIXMAP): Common name for "None" or equivalent.
8074 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
8075 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
8076 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
8077 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
8078 Define with suitable equivalents on W32 and MAC for code sharing.
8079 (XDrawLine): Define on MAC for code sharing.
8080 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
8081 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
8082 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
8083 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8084 (x_reference_bitmap, x_create_bitmap_from_data)
8085 (x_create_bitmap_from_file, x_destroy_bitmap)
8086 (x_destroy_all_bitmaps, x_create_bitmap_mask)
8087 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
8088 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
8089 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
8090 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
8091 (define_image_type, lookup_image_type, valid_image_p)
8092 (image_error, enum image_value_type, struct image_keyword)
8093 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
8094 (make_image, free_image, prepare_image_for_display, image_ascent)
8095 (four_corners_best, image_background, image_background_transparent)
8096 (x_clear_image_1, x_clear_image, x_alloc_image_color)
8097 (make_image_cache, free_image_cache, clear_image_cache)
8098 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
8099 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
8100 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
8101 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
8102 (init_image_func_pointer, image_load_quartz2d)
8103 (struct ct_color, init_color_table, free_color_table)
8104 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
8105 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
8106 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
8107 (x_disable_image, x_build_heuristic_mask)
8108 (XBM support, XPM support, PBM support, PNG support, JPEG support)
8109 (TIFF support, GIF support, Ghostscript support): Consolidate image
8110 code from xfns.c, w32fns.c, and macfns.c.
8111 (syms_of_image): Consolidate image related symbol setup here.
8112 (init_image): Consolidate image related initializations here.
8113
8114 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
8115 and init_image. Remove call to init_xfns.
8116
8117 * macterm.h (struct mac_bitmap_record): Add file member.
8118 Not currently used, but simplifies code sharing.
8119
8120 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
8121 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8122 (x_reference_bitmap, x_create_bitmap_from_data)
8123 (x_create_bitmap_from_file, x_destroy_bitmap)
8124 (x_destroy_all_bitmaps, x_create_bitmap_mask)
8125 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
8126 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
8127 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
8128 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
8129 (define_image_type, lookup_image_type, valid_image_p)
8130 (image_error, enum image_value_type, struct image_keyword)
8131 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
8132 (make_image, free_image, prepare_image_for_display, image_ascent)
8133 (four_corners_best, image_background, image_background_transparent)
8134 (x_clear_image_1, x_clear_image, x_alloc_image_color)
8135 (make_image_cache, free_image_cache, clear_image_cache)
8136 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
8137 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
8138 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
8139 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
8140 (init_image_func_pointer, image_load_quartz2d)
8141 (struct ct_color, init_color_table, free_color_table)
8142 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
8143 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
8144 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
8145 (x_disable_image, x_build_heuristic_mask)
8146 (XBM support, XPM support, PBM support, PNG support, JPEG support)
8147 (TIFF support, GIF support, Ghostscript support): Merge with image
8148 code from xfns.c and macfns.c into image.c.
8149 (syms_of_xfns): Move image related symbols to image.c.
8150 (init_external_image_libraries, init_xfns): Remove; initialization
8151 moved to init_image in image.c.
8152
8153 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
8154 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8155 (x_reference_bitmap, x_create_bitmap_from_data)
8156 (x_create_bitmap_from_file, x_destroy_bitmap)
8157 (x_destroy_all_bitmaps, x_create_bitmap_mask)
8158 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
8159 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
8160 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
8161 (define_image_type, lookup_image_type, valid_image_p)
8162 (image_error, enum image_value_type, struct image_keyword)
8163 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
8164 (make_image, free_image, prepare_image_for_display, image_ascent)
8165 (four_corners_best, image_background, image_background_transparent)
8166 (x_clear_image_1, x_clear_image, x_alloc_image_color)
8167 (make_image_cache, free_image_cache, clear_image_cache)
8168 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
8169 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
8170 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
8171 (struct ct_color, init_color_table, free_color_table)
8172 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
8173 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
8174 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
8175 (x_disable_image, x_build_heuristic_mask)
8176 (XBM support, XPM support, PBM support, PNG support, JPEG support)
8177 (TIFF support, GIF support, Ghostscript support): Merge with image
8178 code from xfns.c and macfns.c into image.c.
8179 (syms_of_xfns): Move image related symbols to image.c.
8180 (init_external_image_libraries, init_xfns): Remove; initialization
8181 moved to init_image in image.c.
8182
8183 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
8184 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8185 (x_reference_bitmap, x_create_bitmap_from_data)
8186 (x_create_bitmap_from_file, x_destroy_bitmap)
8187 (x_destroy_all_bitmaps, x_create_bitmap_mask)
8188 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
8189 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
8190 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
8191 (define_image_type, lookup_image_type, valid_image_p)
8192 (image_error, enum image_value_type, struct image_keyword)
8193 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
8194 (make_image, free_image, prepare_image_for_display, image_ascent)
8195 (four_corners_best, image_background, image_background_transparent)
8196 (x_clear_image_1, x_clear_image, x_alloc_image_color)
8197 (make_image_cache, free_image_cache, clear_image_cache)
8198 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
8199 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
8200 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
8201 (struct ct_color, init_color_table, free_color_table)
8202 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
8203 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
8204 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
8205 (x_disable_image, x_build_heuristic_mask)
8206 (XBM support, XPM support, PBM support, PNG support, JPEG support)
8207 (TIFF support, GIF support, Ghostscript support): Merge with
8208 w32fns.c and macfns.c image code into image.c.
8209 (syms_of_xfns): Move image related symbols to image.c.
8210 (init_xfns): Remove; initialization moved to init_image in image.c.
8211
8212 * lisp.h (syms_of_image, init_image): Add protoypes.
8213 (init_xfns): Remove prototype.
8214
8215 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8216 (x_reference_bitmap, x_create_bitmap_from_data)
8217 (x_create_bitmap_from_file, x_destroy_bitmap)
8218 (x_create_bitmap_mask): Move prototypes from dispextern.h.
8219 (gamma_correct) [MAC_OS]: Add prototype.
8220
8221 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8222 (x_reference_bitmap, x_create_bitmap_from_data)
8223 (x_create_bitmap_from_file, x_destroy_bitmap)
8224 (x_create_bitmap_mask): Move prototypes to dispextern.h.
8225
8226 2004-03-09 Kenichi Handa <handa@etlken2>
8227
8228 * coding.c (decode_coding_emacs_mule): Handle insufficent source
8229 correctly.
8230
8231 2004-03-04 Richard M. Stallman <rms@gnu.org>
8232
8233 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
8234
8235 * window.c (Fdisplay_buffer): Doc fix.
8236
8237 * buffer.c (Fpop_to_buffer): Doc fix.
8238
8239 2004-03-03 Kim F. Storm <storm@cua.dk>
8240
8241 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
8242
8243 2004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
8244
8245 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
8246
8247 2004-03-02 Richard M. Stallman <rms@gnu.org>
8248
8249 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
8250
8251 2004-03-02 Kenichi Handa <handa@m17n.org>
8252
8253 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
8254
8255 2004-03-02 Kim F. Storm <storm@cua.dk>
8256
8257 * window.h (struct window): New member overlay_arrow_bitmap.
8258
8259 * window.c (make_window): Initialize overlay_arrow_bitmap.
8260
8261 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
8262 implement and integrate multiple overlay arrows with redisplay.
8263 (syms_of_xdisp): DEFVAR_LISP and initialize it.
8264 (last_arrow_position, last_arrow_string): Replace by properties.
8265 (Qlast_arrow_position, Qlast_arrow_string)
8266 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
8267 (syms_of_xdisp): Intern and staticpro them.
8268 (overlay_arrow_string_or_property, update_overlay_arrows)
8269 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
8270 (overlay_arrow_at_row): New functions for multiple overlay arrows.
8271 (redisplay_internal): Use them instead of directly accessing
8272 Voverlay_arrow_position etc. for multiple overlay arrows.
8273 (mark_window_display_accurate): Use update_overlay_arrows.
8274 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
8275 (try_window_id): Use overlay_arrows_changed_p.
8276 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
8277 (display_line): Use overlay_arrow_at_row to check multiple
8278 overlay arrows, and get relevant overlay-arrow-string and
8279 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
8280 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
8281 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
8282
8283 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
8284 (update_window_fringes): Remove unused code.
8285
8286 2004-03-01 Jason Rumney <jasonr@gnu.org>
8287
8288 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
8289
8290 2004-03-01 Juanma Barranquero <lektu@terra.es>
8291
8292 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
8293
8294 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
8295
8296 2004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8297
8298 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
8299 how many colors can be displayed.
8300
8301 2004-03-01 Kenichi Handa <handa@m17n.org>
8302
8303 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
8304 correctly.
8305
8306 2004-02-28 Kim F. Storm <storm@cua.dk>
8307
8308 * dispnew.c (update_window): Update header line also if there are
8309 no other changes in window (move code after set_cursor label).
8310
8311 * lisp.h (mark_window_display_accurate): Remove prototype.
8312
8313 * window.c (window_loop, Fforce_window_update): Force mode line
8314 updates by setting prevent_redisplay_optimizations_p and
8315 update_mode_lines.
8316
8317 2004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8318
8319 * xfns.c (x_window): Fix indentation.
8320
8321 * xterm.c (x_calc_absolute_position): Call x_real_positions
8322 to get WM window sizes and use those to calculate position.
8323 (x_set_offset): Remove code commented out.
8324
8325 2004-02-28 Miles Bader <miles@gnu.org>
8326
8327 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
8328
8329 2004-02-28 Kim F. Storm <storm@cua.dk>
8330
8331 * keyboard.c (kbd_buffer_store_event_hold): New function to store
8332 an event into kbd fifo, but with special handling of quit event;
8333 a quit event is saved for later, and further events are discarded
8334 until the saved quit event has been processed.
8335 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
8336 (gen_help_event): Store help event in kbd fifo.
8337 (NREAD_INPUT_EVENTS): Remove.
8338 (read_avail_input): Adapt to new read_socket_hook interface.
8339 Remove allocation and initialization of local input_event buffer,
8340 as read_socket_hook stores events directly in fifo. Allocate and
8341 initialize local hold_quit event to handle postponed quit event
8342 (and store it if set by kbd_buffer_store_event_hold).
8343
8344 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
8345 (gen_help_event): Fix prototype.
8346
8347 * macterm.c (XTread_socket): Remove bufp_r and
8348 numcharsp args. Add hold_quit arg.
8349 Rework to use just one, local, inev input_event. Store inev
8350 directly in fifo using kbd_buffer_store_event_hold.
8351
8352 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
8353 (read_input_waiting): Adapt to new read_socket_hook interface.
8354 Remove allocation and initialization of local input_event buffer,
8355 as read_socket_hook stores events directly in fifo. Allocate and
8356 initialize local hold_quit event to handle postponed quit event
8357 (and store it if set by kbd_buffer_store_event_hold).
8358
8359 * term.c (read_socket_hook): Fix arg list.
8360
8361 * termhooks.h (read_socket_hook): Fix prototype.
8362
8363 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
8364 numcharsp args. Add hold_quit arg.
8365 Rework to use just one, local, inev input_event. Store inev
8366 directly in fifo using kbd_buffer_store_event_hold.
8367
8368 * w32inevt.h (w32_console_mouse_position): Fix prototype.
8369
8370 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
8371 Add hold_quit arg. Rework to use just one, local, inev
8372 input_event. Store inev directly in fifo using
8373 kbd_buffer_store_event_hold. Update count in one place.
8374 Postpone call to gen_help_event until inev is stored; use new
8375 local do_help for this.
8376 Remove local emacs_event in handing of ButtonPress event; just use
8377 inev instead (so no reason to copy it later).
8378
8379 * xsmfns.c (x_session_check_input): Remove numchars arg.
8380
8381 * xterm.c (x_focus_changed, x_detect_focus_change):
8382 Remove numchars arg. Always store event into bufp arg.
8383 Return nothing. Callers changed accordingly.
8384 (glyph_rect): Simplify.
8385 (STORE_KEYSYM_FOR_DEBUG): New macro.
8386 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
8387 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
8388 (current_hold_quit) [USE_GTK]: Add.
8389 (event_handler_gdk): Adapt to new handle_one_xevent.
8390 (handle_one_xevent): Remove bufp_r and numcharsp args.
8391 Add hold_quit arg. Rework to use just one, local, inev
8392 input_event. Store inev directly in fifo using
8393 kbd_buffer_store_event_hold. Update count in one place.
8394 Postpone call to gen_help_event until inev is stored; use new
8395 local do_help for this.
8396 Simplify handling of keysyms (consolidate common code). Fix bug
8397 where count was updated with nchars instead of nbytes.
8398 Remove local emacs_event in handing of ButtonPress event; just use
8399 inev instead (so no reason to copy it later).
8400 Remove `out' label. Rename label `ret' to `done'; add various
8401 `goto done' to clarify code flow in deeply nested blocks.
8402 (x_dispatch_event): Simplify as handle_one_xevent now calls
8403 kbd_buffer_store_event itself.
8404 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
8405 arg. Call handle_one_xevent with new arglist. Store event from
8406 x_session_check_input in fifo.
8407 [USE_GTK]: Setup current_hold_quit.
8408 Decrement handling_signal before unblocking input.
8409 (x_initialize) [USE_GTK]: Initialize current_count.
8410
8411 * xterm.h (x_session_check_input): Fix prototype.
8412
8413 2004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8414
8415 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
8416
8417 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
8418 macgui.h).
8419
8420 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
8421
8422 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
8423 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
8424 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
8425 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
8426 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
8427 (Bitmap): Remove typedef.
8428 (Pixmap): Change int to GWorldPtr.
8429
8430 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
8431
8432 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
8433 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
8434 New #define to extract 16-bit depth color components from unsigned
8435 long representation.
8436 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
8437 colors used for masks.
8438 (struct mac_display_info): Add color_p. Remove n_cbits.
8439
8440 * macfns.c: Include sys/types.h and sys/stat.h.
8441 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
8442 Include QuickTime/QuickTime.h.
8443 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
8444 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
8445 functions defined in macterm.c.
8446 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
8447 (ZPixmap): New #define for compatibility with xfns.c.
8448 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
8449 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
8450 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
8451 New functions.
8452 (four_corners_best, x_create_x_image_and_pixmap)
8453 (x_destroy_x_image, unwind_create_frame, x_disable_image)
8454 (x_edge_detection, init_color_table, colors_in_color_table)
8455 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
8456 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
8457 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
8458 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
8459 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
8460 long mixup.
8461 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
8462 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
8463 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
8464 (x_set_cursor_type, Fxw_color_values, valid_image_p)
8465 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
8466 (x_alloc_image_color, clear_image_cache, lookup_image)
8467 (x_find_image_file, xbm_read_bitmap_file_data)
8468 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
8469 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
8470 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
8471 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
8472 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
8473 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
8474 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
8475 #if 0.
8476 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
8477 #if 0. Free white_relief.gc and black_relief.gc.
8478 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
8479 New functions (from xfns.c).
8480 (Fx_create_frame): Record unwind_create_frame.
8481 (Fxw_display_color_p): Use dpyinfo->color_p.
8482 (Fx_display_grayscale_p, Fx_display_planes): Don't use
8483 dpyinfo->n_cbits.
8484 (Fx_display_color_cells): Use dpyinfo->n_planes;
8485 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
8486 (Qheuristic, cross_disabled_images, emboss_matrix)
8487 (laplace_matrix): New variables (from xfns.c).
8488 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
8489 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
8490 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
8491 (image_background_transparent): New function (from xfns.c).
8492 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
8493 (image_load_quicktime): Add declaration.
8494 [MAC_OSX] (image_load_quartz2d): Likewise.
8495 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
8496 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
8497 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
8498 (xbm_load_image_from_file, x_laplace_read_row)
8499 (x_laplace_write_row, pbm_read_file): Remove functions.
8500 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
8501 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
8502 (colors_in_color_table): Sync with xfns.c (although not used).
8503 (lookup_rgb_color): Don't lookup color table. Just do gamma
8504 correction.
8505 (COLOR_INTENSITY): New #define (from xfns.c).
8506 (x_disable_image): New function (from xfns.c).
8507 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
8508 (x_build_heuristic_mask): Sync with xfns.c.
8509 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
8510 (HAVE_PBM): Remove #ifdef.
8511 (pbm_load): Sync with xfns.c. Set img->width and img->height
8512 before IMAGE_BACKGROUND.
8513 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
8514 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
8515 Don't enclose with #if HAVE_PNG.
8516 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
8517 symbol _CGImageCreateWithPNGDataProvider is defined.
8518 Otherwise use image_load_quicktime.
8519 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
8520 [HAVE_PNG] (png_load): Sync with xfns.c.
8521 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
8522 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
8523 HAVE_JPEG.
8524 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
8525 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
8526 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
8527 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
8528 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
8529 (tiff_image_p, tiff_load): Don't enclose declarations with #if
8530 HAVE_TIFF.
8531 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
8532 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
8533 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
8534 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
8535 New functions (from xfns.c).
8536 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
8537 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
8538 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
8539 Don't enclose with #if HAVE_GIF.
8540 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
8541 animated gif. Otherwise use image_load_quicktime.
8542 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
8543 gif_DrawText to avoid conflict with QuickdrawText.h.
8544 [HAVE_GIF] (gif_load): Sync with xfns.c.
8545 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
8546 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
8547 Ghostscript is not supported yet).
8548 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
8549 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
8550 cross_disabled_images (from xfns.c). Remove #if 0 for supported
8551 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
8552 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
8553 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
8554 HAVE_PNG. Call EnterMovies to support animated gifs.
8555 Call init_image_func_pointer to bind a symbol
8556 _CGImageCreateWithPNGDataProvider if it is defined.
8557
8558 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
8559 (x_draw_bar_cursor): Sync declaration with xterm.c.
8560 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
8561 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
8562 graphics).
8563 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
8564 (mac_draw_line_to_pixmap, XCreatePixmap)
8565 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
8566 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
8567 New functions.
8568 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
8569 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
8570 Cast bits to char *.
8571 (reflect_byte): New function (from w32fns.c).
8572 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
8573 due to byte alignment.
8574 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
8575 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
8576 (XSetForeground): Remove static (now used in macfns.c).
8577 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
8578 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
8579 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
8580 (x_draw_glyph_string_box, x_draw_image_foreground)
8581 (x_draw_image_foreground_1, x_draw_image_glyph_string)
8582 (x_draw_stretch_glyph_string, x_draw_glyph_string)
8583 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
8584 Sync with xterm.c.
8585 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
8586 than the xterm.c version when a strictly horizontal or vertical
8587 line is drawn.
8588 (XTset_terminal_window): Add static.
8589 (x_make_frame_visible): Add UNBLOCK_INPUT.
8590 (x_free_frame_resources): New funcion (from xterm.c).
8591 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
8592 occurs in tool bar area.
8593 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
8594 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
8595 Initialize image cache.
8596 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
8597 Enclose unused functions with #if 0.
8598 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
8599 (decode_mac_font_name): New function to apply code conversions
8600 from a mac font name to an XLFD font name according to its script code.
8601 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
8602 font name to a mac font name according to REGISTRY and ENCODING fields.
8603 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
8604 whose name starts with `.'.
8605 (init_font_name_table): Use decode_mac_font_name. Add both
8606 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
8607 of a font is smJapanese.
8608 (mac_do_list_fonts): New function to list fonts that match a given
8609 pattern.
8610 (x_list_fonts, XLoadQueryFont): Use it.
8611 (XLoadQueryFont): Set rbearing field for each variable width
8612 character to avoid needless redraw.
8613 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
8614
8615 2004-02-26 Kim F. Storm <storm@cua.dk>
8616
8617 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
8618 as read_socket_hook handler on X aborts if buffer is too small
8619 and W32 handler doesn't always check buffer limit.
8620
8621 * xdisp.c (handle_single_display_prop): Handle left-fringe and
8622 right-fringe similar to a display margin image. Specifically,
8623 the characters having the fringe prop are no longer shown, and
8624 we use IT_IMAGE/next_element_from_image with image_id = -1 to
8625 do this. Set fringe bitmap face_id in it->face_id.
8626 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
8627 still realize it->face (i.e. the fringe bitmap face).
8628
8629 2004-02-25 Miles Bader <miles@gnu.org>
8630
8631 * xdisp.c (check_it): Check string/string_pos consistency.
8632 (init_iterator): Initialize string-related fields properly.
8633
8634 2004-02-11 Miles Bader <miles@gnu.org>
8635
8636 * xdisp.c (produce_image_glyph): Force negative descents to zero.
8637
8638 2004-02-10 Miles Bader <miles@gnu.org>
8639
8640 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
8641 BLOCK_INPUT can be nested, so it doesn't make much sense.
8642
8643 2004-02-24 Michael Mauger <mmaug@yahoo.com>
8644
8645 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
8646 (xbm_read_bitmap_data): Use unsigned char for image data.
8647
8648 2004-02-23 Luc Teirlinck <teirllm@auburn.edu>
8649
8650 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
8651
8652 2004-02-22 Jason Rumney <jasonr@gnu.org>
8653
8654 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
8655 correctly over other bitmaps.
8656
8657 2004-02-21 Eli Zaretskii <eliz@gnu.org>
8658
8659 * emacs.c (USAGE1): Split into two halves.
8660 (USAGE2): Second half of the old USAGE1.
8661 (USAGE3): Rename from USAGE2.
8662 (USAGE4): Rename from USAGE3.
8663
8664 2004-02-21 Juri Linkov <juri@jurta.org>
8665
8666 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
8667 Fix --multibyte. Move --help, --version to USAGE2. Add alias
8668 --file. Fix -f, -l. Sort options. Untabify.
8669 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
8670
8671 2004-02-19 Luc Teirlinck <teirllm@auburn.edu>
8672
8673 * category.c (Fdefine_category, Fcategory_docstring)
8674 (Fget_unused_category, Fset_category_table)
8675 (Fcategory_set_mnemonics): Doc fixes.
8676
8677 2004-02-20 Kim F. Storm <storm@cua.dk>
8678
8679 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
8680 The following changes are relative to the 2004-01-21 revision.
8681 (NREAD_INPUT_EVENTS): Define as max number of input events to read
8682 in one call to read_socket_hook. Value is 8.
8683 (read_avail_input): Separate and rework handling of read_socket_hook
8684 and non-read_socket_hook cases. Use smaller input_event buffer
8685 in read_socket_hook case, and repeat if full buffer is read.
8686 Use new local variable 'discard' to skip input after C-g.
8687 In non-read_socket_hook case, just use a single input_event, and
8688 call kbd_buffer_store_event on the fly for each character.
8689
8690 2004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
8691
8692 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
8693 Remove unused `gu' alternative.
8694
8695 2004-02-19 Andreas Schwab <schwab@suse.de>
8696
8697 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
8698 warning.
8699
8700 2004-02-18 Kim F. Storm <storm@cua.dk>
8701
8702 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
8703 Fix last change.
8704
8705 2004-02-17 Kim F. Storm <storm@cua.dk>
8706
8707 * xdisp.c (fast_find_position): Fix return value of new version;
8708 it was inverted compared to the 21.1 version.
8709 (get_window_cursor_type): Don't look at glyph if NULL.
8710 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
8711
8712 * keyboard.c: Rework previous change; it didn't consider that the
8713 buf array was allocated on the stack.
8714 (prev_read): Remove variable.
8715 (read_avail_input_buf): New static event buffer array.
8716 (in_read_avail_input): New static variable to handle re-entrancy.
8717 (read_avail_input): Change buf to pinter to read_avail_input_buf.
8718 Use in_read_avail_input to handle re-entrance; when re-entered,
8719 fully initialize and use tmp_buf array instead of read_avail_input_buf.
8720 Do not initialize read_avail_input_buf in full here; instead assume it
8721 is always cleared on entry. To ensure that, we clear (just) the
8722 entries that were used before we return.
8723 (init_keyboard): Initialize read_avail_input_buf here.
8724
8725 2004-02-16 Jesper Harder <harder@ifa.au.dk>
8726
8727 * cmds.c (Fend_of_line): Doc fix.
8728
8729 2004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
8730
8731 * keyboard.c (prev_read): New static variable.
8732 (read_avail_input): Use it to zero out only those slots in buf[]
8733 that were used last time we were called.
8734
8735 2004-02-16 Eli Zaretskii <eliz@gnu.org>
8736
8737 * Makefile.in (obj): Move fringe.o from here...
8738 (XOBJ, MAC_OBJ): ...to here.
8739
8740 2004-02-16 Stephen Eglen <stephen@gnu.org>
8741
8742 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
8743
8744 2004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
8745
8746 * data.c (Fbyteorder):
8747 * fringe.c (Fdefine_fringe_bitmap):
8748 * xdisp.c (handle_single_display_prop):
8749 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
8750
8751 2004-02-16 Jason Rumney <jasonr@gnu.org>
8752
8753 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
8754
8755 2004-02-15 Steven Tamm <steventamm@mac.com>
8756
8757 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
8758 controlling emulation of a three button mouse with option and
8759 command keys.
8760 (Qreverse, mac_get_enumlated_btn): Handle the emulation.
8761 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
8762
8763 2004-02-15 Kim F. Storm <storm@cua.dk>
8764
8765 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
8766
8767 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
8768 Perform byte-swapping.
8769
8770 2004-02-14 Kim F. Storm <storm@cua.dk>
8771
8772 * dispextern.h (struct draw_fringe_bitmap_params): Change member
8773 bits from char to short to facilitate wider bitmaps.
8774 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
8775 member.
8776
8777 * fringe.c (struct fringe_bitmap): Change member bits from char to
8778 short to facilitate 16 bits wide bitmaps. Modify all standard
8779 bitmaps accordingly.
8780 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
8781 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
8782 (draw_fringe_bitmap): Ditto.
8783 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
8784 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
8785 handle up to 16 bits wide bitmaps.
8786 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
8787 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
8788
8789 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
8790 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
8791 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
8792
8793 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
8794 so it is no longer necessary to expand them here.
8795
8796 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
8797
8798 2004-02-12 Kim F. Storm <storm@cua.dk>
8799
8800 * window.c (Fwindow_fringes): Doc fix.
8801
8802 2004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8803
8804 * xselect.c (x_get_foreign_selection): Add new optional parameter
8805 time_stamp.
8806 (Fx_get_selection_internal): Ditto, pass time_stamp to
8807 x_get_foreign_selection.
8808
8809 * data.c (Fbyteorder): New function.
8810
8811 2004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8812
8813 * atimer.c: Move include stdio.h to same place as in other files.
8814
8815 * region-cache.c: Ditto.
8816
8817 * sysdep.c: Ditto.
8818
8819 * xfaces.c: Ditto.
8820
8821 2004-02-09 Sam Steingold <sds@gnu.org>
8822
8823 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
8824
8825 2004-02-09 Kim F. Storm <storm@cua.dk>
8826
8827 * fringe.c: New file. Move original fringe related declarations
8828 and code from dispextern.h and xdisp.c here.
8829 Rework code to support user defined fringe bitmaps, redefining
8830 standard bitmaps, ability to overlay user defined bitmap with
8831 overlay arrow bitmap, and add faces to bitmaps.
8832 (Voverflow_newline_into_fringe): Declare here.
8833 (enum fringe_bitmap_align): New enum.
8834 (..._bits): All bitmaps are now defined without bitswapping; that
8835 is now done in init_fringe_once (if necessary).
8836 (standard_bitmaps): New array with specifications for the
8837 standard fringe bitmaps.
8838 (fringe_faces): New array.
8839 (valid_fringe_bitmap_id_p): New function.
8840 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
8841 (draw_fringe_bitmap): New function which draws fringe bitmap,
8842 possibly overlaying bitmap with cursor in right fringe or the
8843 overlay arrow in the left fringe.
8844 (update_window_fringes): Do not handle overlay arrow here.
8845 Compare and copy fringe bitmap faces.
8846 (init_fringe_bitmap): New function.
8847 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
8848 define and destroy user defined fringe bitmaps.
8849 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
8850 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
8851 (syms_of_fringe): New function. Defsubr new DEFUNs.
8852 DEFVAR_LISP Voverflow_newline_into_fringe.
8853 (init_fringe_once, init_fringe): New functions.
8854 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
8855
8856 * Makefile.in (obj): Add fringe.o.
8857 (fringe.o): New dependencies.
8858
8859 * dispextern.h (FRINGE_ID_BITS): New definition for number of
8860 bits allocated to hold a fringe number. Increase number of bits
8861 from 4 to 8 to allow user defined fringe bitmaps.
8862 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
8863 left_user_fringe_face_id, right_user_fringe_bitmap,
8864 right_user_fringe_face_id.
8865 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
8866 Move to new file fringe.c.
8867 (MAX_FRINGE_BITMAPS): Define here.
8868 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
8869 and overlay_p. Change member which to int.
8870 (struct redisplay_interface): New members define_fringe_bitmap
8871 and destroy_fringe_bitmap.
8872 (valid_fringe_bitmap_id_p): Add prototype.
8873 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
8874
8875 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
8876 arrows.
8877 (update_frame): Do flush_display if force_flush_display_p to
8878 ensure display (specifically fringes) are updated in a timely
8879 manner when resizing the frame by dragging the mouse.
8880 (update_window_line): Update row if overlay arrow changed.
8881 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
8882 or overlay arrow changed.
8883
8884 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
8885 syms_of_fringe, and init_fringe.
8886
8887 * frame.h (struct frame): New member force_flush_display_p.
8888
8889 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
8890 Add prototypes.
8891
8892 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
8893 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
8894 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
8895 Use cursor color for displaying cursor in fringe.
8896 (x_redisplay_interface): Add null handlers for
8897 define_fringe_bitmap and destroy_fringe_bitmap functions.
8898
8899 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
8900 xterm.c to handle overlayed fringe bitmaps and to use cursor color
8901 for displaying cursor in fringe.
8902 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
8903 specific functions to define and destroy fringe bitmaps in fringe_bmp.
8904 (w32_redisplay_interface): Add them to redisplay_interface.
8905 (w32_term_init): Call w32_init_fringe instead of explicitly
8906 defining fringe bitmaps in fringe_bmp array.
8907 (x_delete_display): Call w32_reset_fringes instead of explicitly
8908 destroying fringe bitmaps in fringe_bmp array.
8909
8910 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
8911 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
8912 (continued_bits, continuation_bits, ov_bits, first_line_bits)
8913 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
8914 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
8915 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
8916 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
8917 Move fringe handling vars and code to new file fringe.c.
8918 (handle_display_prop): Handle left-fringe and right-fringe
8919 display properties; store user fringe bitmaps in iterator.
8920 (move_it_in_display_line_to): Handle cursor in fringe at eob.
8921 (clear_garbaged_frames): Set force_flush_display_p if resized.
8922 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
8923 (display_line): Handle cursor in fringe at eob.
8924 (display_line): Set row user fringe bitmaps from iterator.
8925
8926 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
8927 Use cursor color for displaying cursor in fringe.
8928 (x_redisplay_interface): Add null handlers for
8929 define_fringe_bitmap and destroy_fringe_bitmap functions.
8930
8931 2004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8932
8933 * macfns.c (Fx_change_window_property): Make doc string and
8934 parameters same as for X version.
8935
8936 * w32fns.c (Fx_change_window_property): Ditto.
8937
8938 2004-02-07 Kim F. Storm <storm@cua.dk>
8939
8940 * xdisp.c (hscroll_window_tree): Position cursor near to right
8941 margin in hscrolled window when jumping to end of line (rather
8942 than centering cursor).
8943
8944 * process.c (wait_reading_process_input): Don't do adaptive read
8945 buffering if waiting for a specific process.
8946
8947 2004-02-05 Luc Teirlinck <teirllm@auburn.edu>
8948
8949 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
8950 (Fread_minibuffer, Feval_minibuffer)
8951 (Fread_string, Fread_no_blanks_input)
8952 (Fcompleting_read): Doc fixes.
8953 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
8954 completion-regexp-list. Define Qcase_fold_search and staticpro it.
8955 (read_minibuf): Fix initial comment.
8956 (Ftry_completion, Fall_completions, Ftest_completion): Bind
8957 case-fold-search to the value of completion-ignore-case when
8958 checking completion-regexp-list.
8959 (Fdisplay_completion_list): Make it handle arguments that are
8960 symbols. Doc fix.
8961
8962 2004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8963
8964 * xterm.h: Add declaration of free_frame_menubar.
8965
8966 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
8967 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
8968 (Fx_change_window_property): Add declaration of parameters type and
8969 format. Remove unused variable cons.
8970
8971 * xselect.c: Include stdio,h.
8972
8973 2004-02-05 Kenichi Handa <handa@m17n.org>
8974
8975 * fns.c (Fset_char_table_range): Fix previous change.
8976
8977 * buffer.c (Fset_buffer_multibyte): Fix docstring.
8978
8979 2004-02-04 Luc Teirlinck <teirllm@auburn.edu>
8980
8981 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
8982
8983 2004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
8984
8985 * keymap.c (Vmouse_events): Rename from Vmenu_events.
8986 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
8987
8988 2004-02-04 Kenichi Handa <handa@m17n.org>
8989
8990 * fns.c (Fset_char_table_range): Handle charsets ascii,
8991 eight-bit-control, and eight-bit-graphic correctly.
8992
8993 2004-02-03 Jason Rumney <jasonr@gnu.org>
8994
8995 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
8996
8997 * w32fns.c (x_to_w32_font): Likewise.
8998
8999 2004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9000
9001 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
9002 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
9003
9004 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
9005 ClientMessages.
9006
9007 * xselect.c: Include termhooks.h and X11/Xproto.h
9008 (x_check_property_data, x_fill_property_data)
9009 (x_property_data_to_lisp, mouse_position_for_drop)
9010 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
9011 (Fx_send_client_event): Move here from xfns.c.
9012 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
9013
9014 * xfns.c (x-send-client-message): Move to xselect.c
9015 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
9016 OUTER_P.
9017 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
9018 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
9019 if vector_ret_p is true.
9020 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
9021
9022 2004-02-02 Eli Zaretskii <eliz@gnu.org>
9023
9024 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
9025 basename of FILE relative to it, not FILE itself.
9026
9027 2004-02-02 Kenichi Handa <handa@m17n.org>
9028
9029 * coding.c (coding_restore_composition): Check invalid
9030 composition data more rigidly.
9031
9032 2004-01-30 Luc Teirlinck <teirllm@auburn.edu>
9033
9034 * fileio.c (Fread_file_name_internal): Correctly handle the case
9035 where insert-default-directory is nil.
9036 (Fread_file_name): Always return an empty string if the user exits
9037 with an empty minibuffer. Adapt the docstring accordingly.
9038 (syms_of_fileio): Adapt the docstring of insert-default-directory
9039 to the change in Fread_file_name.
9040
9041 2004-01-29 Eli Zaretskii <eliz@gnu.org>
9042
9043 * alloca.c [!alloca]: Fix the prototype for xfree.
9044
9045 2004-01-29 Kenichi Handa <handa@m17n.org>
9046
9047 * fns.c (string_char_to_byte): Optimize for ASCII only string.
9048 (string_byte_to_char): Likewise.
9049
9050 2004-01-28 Peter Runestig <peter@runestig.com>
9051
9052 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
9053
9054 2004-01-27 Steven Tamm <steventamm@mac.com>
9055
9056 * unexmacosx.c (unexec_copy): Do not copy more than was
9057 requested to prevent overwriting during unexec.
9058
9059 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9060
9061 * process.c (sigchld_handler): Add comment about not calling malloc.
9062
9063 * process.h: Add extern to synch_process_termsig.
9064
9065 2004-01-27 Steven Tamm <steventamm@mac.com>
9066
9067 * macterm.c (make_mac_frame, make_mac_terminal_frame):
9068 Move setting of scroll bars from make_mac_frame to
9069 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
9070
9071 2004-01-26 Richard M. Stallman <rms@gnu.org>
9072
9073 * search.c (Freplace_match): Handle nonexistent
9074 back-references properly.
9075
9076 2004-01-03 Richard M. Stallman <rms@gnu.org>
9077
9078 * window.c (decode_any_window): New function.
9079 (Fwindow_height, Fwindow_width, Fwindow_edges)
9080 (Fwindow_pixel_edges, Fwindow_inside_edges)
9081 (Fwindow_inside_pixel_edges): Use decode_any_window.
9082
9083 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9084
9085 * process.h: synch_process_termsig new variable.
9086
9087 * callproc.c: Define synch_process_termsig.
9088 (Fcall_process): Initiate synch_process_termsig to zero and
9089 check if non-zero and get signal name after subprocess has ended.
9090
9091 * process.c (sigchld_handler): Set synch_process_termsig
9092 if terminated by a signal. synch_process_death setting removed.
9093
9094 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
9095
9096 2004-01-26 Andreas Schwab <schwab@suse.de>
9097
9098 * print.c (print_preprocess): Declare size as EMACS_INT to not
9099 lose bits.
9100 (print_object): Likewise.
9101 * alloc.c (Fpurecopy): Likewise.
9102
9103 2004-01-25 Luc Teirlinck <teirllm@auburn.edu>
9104
9105 * window.c (Fwindow_minibuffer_p): Doc fix.
9106
9107 2004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
9108
9109 * editfns.c (Fformat): Make both passes accept the same set of flags.
9110
9111 2004-01-23 Kenichi Handa <handa@m17n.org>
9112
9113 * fns.c (Fmd5): If OBJECT is a buffer different from the current
9114 one, set buffer to OBJECT temporarily.
9115
9116 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
9117
9118 * keyboard.c (kbd_buffer_gcpro): Remove.
9119 (kbd_buffer_store_event, clear_event, Fdiscard_input)
9120 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
9121 Don't initialize and/or maintain the variable any more. It was made
9122 redundant by my commit of 2003-06-15.
9123
9124 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
9125
9126 2004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9127
9128 * lisp.h: Add undef DECL_ALIGN.
9129
9130 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
9131
9132 * process.c (wait_reading_process_input) [SYNC_INPUT]:
9133 Check interrupt_input_pending explicitly.
9134
9135 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
9136
9137 * keyboard.c (handle_async_input): New fun,
9138 extracted from input_available_signal.
9139 (input_available_signal, reinvoke_input_signal): Use it.
9140
9141 2004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
9142
9143 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
9144
9145 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
9146 manipulation macros for when tags are in the lower bits.
9147 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
9148 (DECL_ALIGN): New macro.
9149 (DEFUN): Use it.
9150
9151 * lisp.h [ENABLE_CHECKING]: Don't force union type.
9152
9153 * s/darwin.h (__attribute__): Remove outdated workaround.
9154
9155 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
9156
9157 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
9158 Don't check range of malloc address.
9159 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
9160
9161 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
9162
9163 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
9164
9165 2004-01-19 Kenichi Handa <handa@m17n.org>
9166
9167 * fontset.c (fontset_font_pattern): Fix previous change.
9168
9169 2004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
9170
9171 * xdisp.c (Voverflow_newline_into_fringe)
9172 (move_it_in_display_line_to, redisplay_internal)
9173 (update_window_fringes, redisplay_window, display_line, window):
9174 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
9175 that it compiles without a window-system.
9176 * dispnew.c (direct_output_for_insert, update_window): Likewise.
9177
9178 2004-01-16 Kim F. Storm <storm@cua.dk>
9179
9180 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
9181
9182 * buffer.c (init_buffer_once): Set buffer_defaults and
9183 buffer_local_flags for indicate_buffer_boundaries.
9184 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
9185 default- variable for it.
9186
9187 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
9188 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
9189 New members exact_window_width_line_p and cursor_in_fringe_p for
9190 overflowing newlines into right fringe.
9191 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
9192 and indicate_bottom_line_p for buffer boundaries and scrolling.
9193 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
9194 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
9195 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
9196 and HOLLOW_SQUARE_BITMAP.
9197 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
9198 Add prototypes.
9199
9200 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
9201 instead of related indicator fields.
9202 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
9203 (direct_output_for_insert): Handle exact width lines like
9204 contined lines. Call update_window_fringes.
9205 (update_window): Call update_window_fringes.
9206 (scrolling_window): Don't skip desired rows with changed bitmaps.
9207 Check if fringe bitmaps changes when assigning scrolled rows.
9208
9209 * xdisp.c (Voverflow_newline_into_fringe): New variable.
9210 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
9211 (move_it_in_display_line_to): Overflow newline into fringe for
9212 rows that are exactly as wide as the window.
9213 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
9214 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
9215 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
9216 (fringe_bitmaps): Add new bitmaps.
9217 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
9218 Select proper bitmap for cursor in fringe when appropriate.
9219 Handle alignment of bitmap to top or bottom of row.
9220 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
9221 done by update_window_fringes.
9222 (update_window_fringes, draw_window_fringes): New functions.
9223 (redisplay_internal): Call update_window_fringes in case only
9224 cursor row is updated.
9225 (redisplay_window): Call update_window_fringes.
9226 Explicitly call draw_window_fringes if redisplay was done using
9227 the current matrix or the overlay arrow is in the window.
9228 (try_window_reusing_current_matrix): Mark scrolled rows for
9229 fringe update (to update buffer-boundaries / scrolling icons).
9230 (find_last_unchanged_at_beg_row): Handle exact width lines line
9231 continued lines.
9232 (display_line): Overflow newline into fringe for rows that are
9233 exactly as wide as the window. Don't append space for newline
9234 in this case.
9235 (notice_overwritten_cursor): Explicitly clear cursor bitmap
9236 in fringe as if it had been overwritten.
9237 (erase_phys_cursor): Erase cursor bitmap in fringe.
9238 (syms_of_xdisp): Mark show-trailing-whitespace and
9239 void-text-area-pointer as user options.
9240 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
9241
9242 * xterm.c (x_update_window_end): Call draw_window_fringes.
9243 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
9244 in row instead of actually drawing fringe bitmaps.
9245 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
9246 (x_draw_window_cursor): Draw cursor in fringe.
9247
9248 * w32term.c (x_update_window_end): Call draw_window_fringes.
9249 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
9250 in row instead of actually drawing fringe bitmaps.
9251 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
9252 (w32_draw_window_cursor): Draw cursor in fringe.
9253
9254 * macterm.c (x_update_window_end): Call draw_window_fringes.
9255 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
9256 in row instead of actually drawing fringe bitmaps.
9257 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
9258 (mac_draw_window_cursor): Draw cursor in fringe.
9259
9260 2004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9261
9262 * xterm.c (handle_one_xevent): Don't handle characters that are part
9263 of an old style (XLookupString) compose sequence.
9264
9265 2004-01-15 Kenichi Handa <handa@m17n.org>
9266
9267 * search.c (Freplace_match): Use make_multibyte_string or
9268 make_unibyte_string according to the buffer multibyteness.
9269
9270 2004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
9271
9272 * alloc.c (struct interval_block, struct string_block)
9273 (struct symbol_block, struct marker_block, live_string_p)
9274 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
9275 Better preserve alignment for objects in blocks.
9276 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
9277
9278 * lread.c (defvar_per_buffer): Remove dead declaration.
9279
9280 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
9281 space size.
9282
9283 2004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9284
9285 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
9286 if a key press should pop down. Only pop down if a key is pressed
9287 outside the menu/dialog.
9288 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
9289 popup_get_selection.
9290 (create_and_show_dialog): Pass 1 for down_on_keypress to
9291 popup_get_selection.
9292
9293 2004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9294
9295 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
9296 BLOCK/UNBLOCK_INPUT.
9297
9298 2004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9299
9300 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
9301 specified.
9302
9303 2004-01-08 Kenichi Handa <handa@m17n.org>
9304
9305 * editfns.c (Fformat): Fix '&' to '&&'.
9306
9307 2004-01-08 Andreas Schwab <schwab@suse.de>
9308
9309 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
9310 size if PSEUDOVECTOR_FLAG is set.
9311
9312 2004-01-07 Kenichi Handa <handa@m17n.org>
9313
9314 * charset.c (Fdeclare_equiv_charset): Fix docstring.
9315
9316 * fontset.c (fontset_ref_via_base): Fix previous change.
9317
9318 2004-01-07 Kim F. Storm <storm@cua.dk>
9319
9320 * process.c (read_process_output): Only activate adaptive
9321 buffering if we read less than 256 bytes at a time.
9322
9323 2004-01-06 Kim F. Storm <storm@cua.dk>
9324
9325 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
9326 object and image object. Return glyph width and height.
9327 (mode_line_string, marginal_area_string): Ditto.
9328
9329 * dispextern.h (buffer_posn_from_coords, mode_line_string)
9330 (marginal_area_string): Fix prototypes.
9331
9332 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
9333 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
9334 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
9335
9336 * keyboard.c (make_lispy_position): Use modified mode_line_string,
9337 buffer_posn_from_coords, and marginal_area_string functions to
9338 include both string object and image object in the lispy position.
9339 Also add actual glyph width and height to position.
9340 (read_key_sequence): Use real buffer position from mouse
9341 event to find keymap property even when click is in marginal area.
9342
9343 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
9344 mode_line_string and marginal_area_string functions to handle
9345 both string object and image object properties.
9346
9347 2004-01-06 Andreas Schwab <schwab@suse.de>
9348
9349 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
9350 character.
9351
9352 2004-01-02 Andreas Schwab <schwab@suse.de>
9353
9354 * macterm.c (emacs_options, x_initialized, same_x_server):
9355 Remove unused (and duplicated) definitions.
9356
9357 2004-01-02 Kim F. Storm <storm@cua.dk>
9358
9359 * process.h (struct Lisp_Process): New members for adaptive read
9360 buffering: adaptive_read_buffering, read_output_delay, and
9361 read_output_skip.
9362
9363 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
9364 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
9365 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
9366 (process_output_delay_count, process_output_skip): New vars.
9367 (Vprocess_adaptive_read_buffering): New variable.
9368 (make_process): Initialize adaptive read buffering members.
9369 (Fstart_process): Set adaptive_read_buffering member.
9370 (deactivate_process): Cleanup adaptive read buffering.
9371 (wait_reading_process_input): Temporarily omit delayed
9372 subprocesses from the set of file descriptors to read from;
9373 adjust the select timeout if we skipped any subprocesses.
9374 (read_process_output): Increase adaptive read buffering delay if
9375 we read less than a full buffer; reduce delay when we read a
9376 full buffer.
9377 (send_process): Simplify using local Lisp_Process var.
9378 Reset adaptive read buffering delay after write.
9379 (init_process): Initialize process_output_delay_count and
9380 process_output_skip.
9381 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
9382
9383 2004-01-01 Jason Rumney <jasonr@gnu.org>
9384
9385 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
9386
9387 2003-12-30 Luc Teirlinck <teirllm@auburn.edu>
9388
9389 * print.c (Ferror_message_string): Add hyperlink in the docstring
9390 to the definition of `signal' in the Elisp manual.
9391 * eval.c (Fsignal): Ditto.
9392
9393 2003-12-29 James Clark <jjc@jclark.com>
9394
9395 * fns.c (internal_equal): Return t for two NaN arguments.
9396
9397 2003-12-29 Richard M. Stallman <rms@gnu.org>
9398
9399 * data.c (store_symval_forwarding): Handle setting
9400 default-fill-column, etc., by changing the value in
9401 buffers that use the default.
9402
9403 * minibuf.c (Fset_minibuffer_window): Doc fix.
9404
9405 * fileio.c (choose_write_coding_system): Ignore auto_saving
9406 if using the visited file for auto saves.
9407 (Fwrite_region): Don't update SAVE_MODIFF
9408 if auto-saving in visited file.
9409
9410 2003-12-29 Kenichi Handa <handa@m17n.org>
9411
9412 * dispextern.h (face_font_available_p): Extern it.
9413
9414 * fontset.c (Voverriding_fontspec_alist): New variable.
9415 (lookup_overriding_fontspec): New function.
9416 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
9417 (fontset_font_pattern): Likewise.
9418 (regulalize_fontname): New function.
9419 (Fset_fontset_font): Call regulalize_fontname.
9420 (Fset_overriding_fontspec_internal): New function.
9421 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
9422 Defsubr Sset_overriding_fontspec_internal.
9423
9424 * xfaces.c (face_font_available_p): New function.
9425
9426 2003-12-28 Richard M. Stallman <rms@gnu.org>
9427
9428 * buffer.c (Fother_buffer): Don't crash if BUF is nil
9429 or if its name is nil.
9430
9431 * buffer.c (Fkill_buffer): Don't delete auto-save file
9432 if it's the same as the visited file.
9433
9434 2003-12-28 Luc Teirlinck <teirllm@auburn.edu>
9435
9436 * coding.c (Fcheck_coding_system): Doc fix.
9437
9438 2003-12-28 Kim F. Storm <storm@cua.dk>
9439
9440 * Makefile.in (eval.o): Depend on dispextern.h.
9441
9442 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
9443 image glyph using image's ascent.
9444 (mode_line_string): Return image glyph as object clicked on.
9445 Adjust y0 for image glyph using image's ascent.
9446
9447 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
9448 (struct glyph): New members, ascent and descent. Used to save
9449 this glyph's ascent and descent, instead of having.
9450 (struct glyph): Declare member face_id using FACE_ID_BITS.
9451 (find_hot_spot): Add prototype.
9452
9453 * keyboard.c (Qimage): Remove extern (now in lisp.h).
9454 (QCmap): Declare extern.
9455 (make_lispy_position): When position is inside image hot-spot,
9456 use hot-spot element's id as posn element.
9457
9458 * lisp.h (IMAGEP): New macro to test for image object type.
9459 (Qimage): Declare extern.
9460
9461 * macfns.c (Qimage): Remove extern (now in lisp.h).
9462 (valid_image_p, parse_image_spec): Use IMAGEP macro.
9463
9464 * macterm.c (Qface, Qmouse_face): Remove unused externs.
9465
9466 * w32fns.c (Qimage): Remove extern (now in lisp.h).
9467 (valid_image_p, parse_image_spec): Use IMAGEP macro.
9468
9469 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
9470
9471 * w32term.c (Qface, Qmouse_face): Remove unused externs.
9472
9473 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
9474 pointer types.
9475 (Qrelative_width, Qalign_to): Remove unused variables.
9476 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
9477 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
9478 image maps.
9479 (x_y_to_hpos_vpos): Return glyph relative coordinates through
9480 new dx and dy args.
9481 Remove buffer_only_p arg (always 0). Simplify code accordingly.
9482 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
9483 than row's ascent and height, to get sensible height on tall rows.
9484 (build_desired_tool_bar_string): Remove Qimage extern.
9485 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
9486 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
9487 image glyph is alone on the last line.
9488 (append_glyph, append_composite_glyph, produce_image_glyph)
9489 (append_stretch_glyph): Set glyph's ascent and descent.
9490 (on_hot_spot_p): New function to check if position is inside an
9491 rectangular, circular, or polygon-shaped image hot-spot,
9492 (find_hot_spot): New function to search for image hot-spot.
9493 (Flookup_image_map): New defun to search for image hot-spot.
9494 (define_frame_cursor1): New aux function to determine frame pointer.
9495 (note_mode_line_or_margin_highlight, note_mouse_highlight):
9496 Handle `pointer' text property and :pointer image property to
9497 control frame pointer shape. Detect image hot-spots for pointer
9498 and help_echo properties. Use define_frame_cursor1.
9499 (note_mouse_highlight): Use Vvoid_text_area_pointer.
9500 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
9501 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
9502
9503 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
9504
9505 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
9506 (Qimage): Remove extern (now in lisp.h).
9507 (valid_image_p, parse_image_spec): Use IMAGEP macro.
9508
9509 * xmenu.c (show_help_event): Remove unused code.
9510
9511 * xterm.c (Qface, Qmouse_face): Remove unused externs.
9512 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
9513 row's ascent and descent, to get a sensible height on tall rows.
9514
9515 2003-12-25 Luc Teirlinck <teirllm@auburn.edu>
9516
9517 * minibuf.c (Fcompleting_read): Undo previous change.
9518
9519 2003-12-25 Lars Hansen <larsh@math.ku.dk>
9520
9521 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
9522 Arguments GCPRO'ed in call to file name handler.
9523
9524 2003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
9525
9526 * termcap.c (tgetst1): Scan for "%pN"; if all
9527 N are continuous in [1,9], remove all "%pN".
9528
9529 2003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9530
9531 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
9532
9533 * xfaces.c (lface_fully_specified_p): Take into account that
9534 MAC OS always have unspecified stipple.
9535
9536 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
9537
9538 * tparam.c (tparam1): Add handling for `%pN', which
9539 means use param N for the next substitution.
9540
9541 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
9542
9543 * xfaces.c (Fcolor_gray_p): Fix omission bug:
9544 In case `frame' is nil, consult the selected frame.
9545 (Fcolor_supported_p): Likewise.
9546
9547 2003-12-23 Luc Teirlinck <teirllm@auburn.edu>
9548
9549 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
9550 Doc fixes.
9551
9552 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
9553 and an integer. Adapt the introductory comment accordingly.
9554 (Fread_from_minibuffer): Delete code moved into read_minibuf.
9555 Doc fix.
9556 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
9557 read_minibuf.
9558 (Fcompleting_read): Delete code moved into read_minibuf.
9559 (Ftest_completion): Make it handle obarrays and hash tables correctly.
9560
9561 2003-12-03 Kenichi Handa <handa@m17n.org>
9562
9563 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
9564 encoding sequence.
9565
9566 2003-12-01 Kenichi Handa <handa@m17n.org>
9567
9568 * composite.c (syms_of_composite): Don't make the compostion hash
9569 table week.
9570
9571 2003-11-30 Luc Teirlinck <teirllm@auburn.edu>
9572
9573 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
9574 * textprop.c (Fget_char_property_and_overlay): New function.
9575 (syms_of_textprop): Defsubr it.
9576
9577 2003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9578
9579 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
9580 to compile on terminal configuration.
9581
9582 * fileio.c (Fread_file_name): Check use_file_dialog also before
9583 calling Fx_file_dialog.
9584
9585 * fns.c (use_file_dialog): New variable.
9586 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
9587
9588 2003-11-29 Kim F. Storm <storm@cua.dk>
9589
9590 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
9591 (syms_of_msdos): Don't intern and staticpro them.
9592
9593 2003-11-27 Kim F. Storm <storm@cua.dk>
9594
9595 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
9596 coordinates relative to glyph at posn. If glyph is an image,
9597 return that as object at posn. Callers changed.
9598 (mode_line_string, marginal_area_string): Calculate and return
9599 pixel coordinates relative to glyph. Callers changed.
9600
9601 * dispextern.h (buffer_posn_from_coords, mode_line_string)
9602 (marginal_area_string): Fix prototypes.
9603 (window_box_left_offset, window_box_right_offset): Add prototypes.
9604
9605 * frame.h (get_specified_cursor_type, get_window_cursor_type):
9606 Remove prototypes.
9607
9608 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
9609
9610 * keyboard.c (make_lispy_position): Add x and y coordinates
9611 relative to the current glyph as 7th element of position.
9612 If glyph is an image, return it in the object element.
9613 (read_key_sequence): Skip checks for keymap property in cases
9614 where POSN_STRING is not a string (e.g. an image).
9615
9616 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
9617 (Vshow_text_cursor_in_void): New variable.
9618 (glyph_to_pixel_coords): Don't use negative hpos.
9619 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
9620 (append_stretch_glyph): Change ascent arg to be actual value
9621 in pixels rather than ratio to height. Callers changed.
9622 (calc_pixel_width_or_height): New aux function, implementing
9623 pixel based artihmetic for glyph widths and heights.
9624 (produce_stretch_glyph): Use calc_pixel_width_or_height for
9625 :width, :height, :align-to, and :ascent, thus allowing these to
9626 be specified in pixels as well as multiples of characters.
9627 Don't produce stretch glyphs with zero width or height.
9628 (get_specified_cursor_type): Declare static.
9629 (get_window_cursor_type): Declare static. Add glyph arg to be
9630 able to know when cursor is on an image; always substitute
9631 hollow-box cursor for filled-box cursor on images, to avoid
9632 negative images and flicker when blinking the cursor.
9633 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
9634 (note_mode_line_or_margin_highlight): Use non-text cursor rather
9635 than vertical scroll-bar cursor in display margins.
9636 (note_mouse_highlight): Use non-text cursor rather than text
9637 cursor in fringes and over images in the text area.
9638 Use non-text cursor when mouse pointer is outside editable text,
9639 i.e. in the void after end-of-line or end-of-buffer; this was
9640 already done for W32, but is now standard for all systems --
9641 user can toggle show-text-cursor-in-void to get old behaviour.
9642 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
9643 Vdisplay_pixels_per_inch.
9644
9645 2003-11-25 Andreas Schwab <schwab@suse.de>
9646
9647 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
9648 EMACS_INT to not lose bits.
9649 (Ffillarray): Don't set bits beyond the size of a bool vector.
9650
9651 2003-11-25 Kim F. Storm <storm@cua.dk>
9652
9653 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
9654 define this defun on systems that cannot use stderr as lvalue.
9655
9656 2003-11-24 Gerd Moellmann <gerd@gnu.org>
9657
9658 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
9659 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
9660 ld's default is incompatible with unexec.
9661
9662 2003-11-23 Kim F. Storm <storm@cua.dk>
9663
9664 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
9665 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
9666 (Fforce_window_update): New defun.
9667 (syms_of_window): Defsubr it.
9668 (Fset_window_margins, Fset_window_fringes): Doc fix.
9669
9670 * print.c (Fredirect_debugging_output): New defun.
9671 (syms_of_print): Defsubr it.
9672
9673 2003-11-22 Luc Teirlinck <teirllm@auburn.edu>
9674
9675 * fns.c (Fset_char_table_parent): Doc fix.
9676
9677 2003-11-22 Kim F. Storm <storm@cua.dk>
9678
9679 * dispnew.c (buffer_posn_from_coords): Return actual row/column
9680 for glyph clicked on, rather than (unused) pixel positions.
9681 (mode_line_string, marginal_area_string): Change X and Y args to
9682 pointers for returning actual row/column for glyph clicked on.
9683 Simplify and optimize loops.
9684
9685 * dispextern.h (mode_line_string, marginal_area_string):
9686 Update prototypes.
9687
9688 * keyboard.c (make_lispy_position): New function for generating
9689 mouse click positions from frame and pixel coordinates.
9690 Enhanced to return buffer position and actual row/column for
9691 events outside the text area using updated mode_line_string and
9692 marginal_area_string functions.
9693 Return left-fringe and right-fringe clicks as such, rather than
9694 clicks in text area.
9695 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
9696 pixel_to_glyph_coords, as we never use the results.
9697 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
9698 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
9699 Eliminate unused code in WHEEL_EVENT handling.
9700 (make_lispy_movement): Use make_lispy_position.
9701
9702 * window.c (coordinates_in_window): Remove redundant tests.
9703 Fix returned X pixel value for left-margin.
9704
9705 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
9706 mode_line_string and marginal_area_string parameters.
9707
9708 2003-11-22 Lars Hansen <larsh@math.ku.dk>
9709
9710 * w32.c (struct the_group, getgrgid): Add.
9711 * mac.c (struct my_group, getgrgid): Add.
9712
9713 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
9714
9715 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
9716
9717 2003-11-21 Lars Hansen <larsh@math.ku.dk>
9718
9719 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
9720 include in call to file name handler. Optionally translate numeric
9721 UID and GID to strings. Update docstring.
9722 (directory_files_internal): Add parameter ID-FORMAT.
9723 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
9724 include in call to file name handler and call to
9725 directory_files_internal. Update Docstring.
9726 (Fdirectory_files): Add dummy parameter in call to
9727 directory_files_internal.
9728 * lisp.h (Qinteger): Add.
9729 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
9730 (Ffile_attributes): Add parameter.
9731 * data.c (Qinteger): Export.
9732
9733 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
9734
9735 * fns.c (Freverse, Fnreverse): Doc fixes.
9736
9737 2003-11-19 Kim F. Storm <storm@cua.dk>
9738
9739 * xdisp.c (init_iterator): Initialize it->start to position
9740 before reseating (in case start position is invisible).
9741 (init_to_row_start): Set it->start to row-start.
9742 (redisplay_window): Accept optional_new_start if start position
9743 is invisible (in which case IT_CHARPOS overshoots PT).
9744 (display_line): Setup row->start from it->start (rather than
9745 it->current which is wrong if first char on line is invisible).
9746 When done, reseat it->start to it->current (= start of next row).
9747 (expose_area): Fix exposure of text area when first char (e.g. TAB)
9748 is only partially visible.
9749
9750 * dispextern.h (struct it): New member start.
9751
9752 2003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
9753
9754 * alloc.c (make_float, Fcons): Clear the markbit at init time.
9755 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
9756 of block_index outside of the macro call.
9757 (Fgarbage_collect): Remove null code.
9758
9759 * m/amdx86-64.h: Don't redefine XPNTR.
9760
9761 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
9762 of VALMASK.
9763
9764 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
9765 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
9766 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
9767
9768 * lisp.h (VALMASK): Only define for non-union type.
9769 (MARKBIT): Remove.
9770 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
9771 (XTYPE): Define unconditionally.
9772 (XSETTYPE): Remove one more remnant.
9773 (EQ): Define differently for the union and non-union cases.
9774 (INTMASK): New bit mask.
9775 (struct Lisp_Marker): Move down to prepare for upcoming patch.
9776 (GC_EQ): Delegate to EQ.
9777
9778 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
9779
9780 2003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9781
9782 * xterm.c (x_window_to_scroll_bar): Move check of display to
9783 where window_id is compared.
9784
9785 2003-11-17 Kim F. Storm <storm@cua.dk>
9786
9787 * dispextern.h (struct it): New member first_vpos.
9788
9789 * xdisp.c (start_display): Set it->first_vpos.
9790 (try_window_id): Use first_vpos to start display in first _text_
9791 line if no reusable lines at start of window with header line.
9792
9793 2003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9794
9795 * w32fns.c (XPutPixel):
9796 * w32bdf.c (w32_init_bdf_font):
9797 * sunfns.c (sel_read):
9798 * process.c (Fmake_network_process):
9799 * frame.c (store_frame_param):
9800 * fontset.c (Fset_fontset_font):
9801 * emacs.c (shut_down_emacs):
9802 * ccl.c (ccl_driver): Remove period at end of error message.
9803
9804 * config.in: Regenerate.
9805
9806 * xfns.c (x_window_to_frame, x_any_window_to_frame)
9807 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
9808 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
9809 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
9810 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
9811
9812 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
9813
9814 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
9815 (XTmouse_position, handle_one_xevent): Pass Display* to
9816 x_window_to_scroll_bar.
9817 (x_window_to_scroll_bar): Take a Display* argument.
9818 Check that display for frame is equal to Display* argument.
9819 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
9820 x_display_info_for_display instead. Use Display in xev instead
9821 of GDK_DISPLAY.
9822 (x_dispatch_event): Call x_display_info_for_display.
9823 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
9824 (x_connection_closed): Call xg_display_close for GTK.
9825 (x_term_init): Call xg_display_open for additional displays.
9826 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
9827 for GTK.
9828
9829 * xmenu.c (single_menu_item, mouse_position_for_popup)
9830 (x_activate_menubar): Formatting adjustments.
9831
9832 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
9833 adjustments.
9834
9835 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
9836 (xg_display_close, xg_create_default_cursor)
9837 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
9838 handling.
9839 (xg_left_ptr_cursor): Remove.
9840 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
9841 cursor here.
9842 (xg_win_to_widget): Take Display* argument, call
9843 gdk_xid_table_lookup_for_display.
9844 (xg_create_frame_widgets, xg_get_file_name, create_menus)
9845 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
9846 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
9847 in FRAME_X_DISPLAY_INFO.
9848 (xg_get_scroll_id_for_window): Take Display* argument.
9849 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
9850 (xg_initialize): Remove xg_left_ptr_cursor.
9851
9852 * gtkutil.h (xg_get_scroll_id_for_window, xg_win_to_widget): Add
9853 Display* argument.
9854 (xg_display_open, xg_display_close, xg_create_default_cursor): Declare.
9855
9856 2003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9857
9858 * xterm.c (x_detect_focus_change): Do not change focus frame for
9859 Enter/LeaveNotify if the current focus frame has explicit focus.
9860
9861 2003-11-14 Kim F. Storm <storm@cua.dk>
9862
9863 * dispnew.c (update_text_area): Fix redisplay error when hscroll
9864 is active and first glyph is only partially visible.
9865
9866 2003-11-13 Kenichi Handa <handa@m17n.org>
9867
9868 * xdisp.c (select_frame_for_redisplay): New function.
9869 (redisplay_internal): Record also selected_frame for
9870 unwind_redisplay. Call select_frame_for_redisplay before
9871 redrawing each frame.
9872 (unwind_redisplay): Argument changed to a cons.
9873
9874 2003-11-12 Luc Teirlinck <teirllm@auburn.edu>
9875
9876 * fns.c (Fstring_to_multibyte): Doc fix.
9877
9878 2003-11-11 Kenichi Handa <handa@m17n.org>
9879
9880 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
9881
9882 2003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9883
9884 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
9885 program specified positions.
9886
9887 2003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9888
9889 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
9890
9891 2003-11-08 Kenichi Handa <handa@m17n.org>
9892
9893 * Makefile.in (lisp): Add kannada.el.
9894 (shortlisp): Likewise.
9895
9896 2003-11-07 Kenichi Handa <handa@m17n.org>
9897
9898 * coding.c (coding_allocate_composition_data):
9899 Reset coding->composing to COMPOSITION_NO.
9900 (coding_restore_composition): Detect invalid composition data.
9901 Give Fstring and Fvector a Lispy integer, not C int.
9902
9903 2003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
9904
9905 * floatfns.c (Flogb): Don't use VALMASK.
9906
9907 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
9908 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
9909
9910 * lisp.h (XINT): Move the cast to clarify what is going on.
9911 (GCTYPEMASK, XSETTYPE): Remove.
9912 (XGCTYPE): Make it an alias of XTYPE.
9913
9914 2003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9915
9916 * xterm.c (x_term_init): Fix formatting.
9917
9918 2003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9919
9920 * gtkutil.h (xg_have_tear_offs): Declare.
9921 (xg_keep_popup, xg_did_tearoff): Remove.
9922
9923 * gtkutil.c: Remove variable xg_did_tearoff.
9924 (xg_have_tear_offs): New function.
9925 (tearoff_remove): Just decrease xg_detached_menus.
9926 (tearoff_activate): Increase xg_detached_menus and call
9927 tearoff_remove when tearoff is removed.
9928 (xg_keep_popup): Remove function.
9929 (create_menus): Give add_tearoff_p as argument to recursive
9930 call to create_menus.
9931 (xg_create_widget): Use variables instead of multiple
9932 strcmp. Tell create_menus to create tear off only for
9933 menu bar menus.
9934 (xg_update_menubar): Change title for a detached menu also.
9935 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
9936 of deep_p.
9937 (xg_initialize): Initialize xg_detached_menus, remove
9938 initialization of xg_did_tearoff.
9939
9940 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
9941 xg_have_tear_offs returns non-zero.
9942 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
9943 call to xg_keep_popup.
9944
9945 2003-11-01 Andrew Choi <akochoi@shaw.ca>
9946
9947 * macterm.c (XTread_socket): Handle menubar selection and grow
9948 window only for mouseDown events.
9949
9950 2003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9951
9952 * xterm.c (x_term_init): For GTK part, increase x_initialized
9953 to check for more than one display. Use error instead of return 0.
9954
9955 2003-10-31 Andrew Choi <akochoi@shaw.ca>
9956
9957 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
9958 (copy_dysymtab): Call it.
9959
9960 2003-10-31 Luc Teirlinck <teirllm@auburn.edu>
9961
9962 * eval.c (Fdefvaralias): Doc fix.
9963
9964 2003-10-26 Luc Teirlinck <teirllm@auburn.edu>
9965
9966 * data.c (Fsetplist): Doc fix.
9967
9968 2003-10-14 Lute Kamstra <lute@gnu.org>
9969
9970 * window.c (Fset_window_fringes): Clarify docstring.
9971
9972 2003-10-14 Kim F. Storm <storm@cua.dk>
9973
9974 * window.c (Fset_window_margins): Simplify arg checking.
9975
9976 2003-10-13 Richard M. Stallman <rms@gnu.org>
9977
9978 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
9979 (print_partial_compiled_pattern): Replace assert with a printout.
9980 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
9981
9982 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
9983
9984 * window.c (Fset_window_margins): Allow only integers as args.
9985 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
9986 Doc fixes.
9987
9988 2003-10-13 Lute Kamstra <lute@gnu.org>
9989
9990 * window.c (Fset_window_fringes): Elaborate docstring.
9991
9992 2003-10-12 Andrew Choi <akochoi@shaw.ca>
9993
9994 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
9995
9996 * s/darwin.h (GC_MARK_STACK): Define.
9997
9998 2003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9999
10000 * window.c (shrink_windows): New function.
10001 (size_window): Call shrink_windows to calculate window sizes when
10002 shrinking frame with more than one window.
10003
10004 2003-10-12 Kim F. Storm <storm@cua.dk>
10005
10006 * xdisp.c (compute_fringe_widths): Doc fix.
10007
10008 2003-10-08 Kenichi Handa <handa@m17n.org>
10009
10010 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
10011
10012 2003-10-07 Kenichi Handa <handa@m17n.org>
10013
10014 * coding.c (Qcoding_system_define_form): New variable.
10015 (syms_of_coding): Intern and staticpro it.
10016 (Fcheck_coding_system): Try to autoload the definition of
10017 CODING-SYSTEM.
10018
10019 2003-10-05 Luc Teirlinck <teirllm@auburn.edu>
10020
10021 * fns.c (Frequire): Doc fix.
10022
10023 2003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10024
10025 * xfns.c (Fx_send_client_event): New function as a base for
10026 manipulating extended window manager hints.
10027 (Fx_send_client_event): Remove unused variable s.
10028
10029 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
10030 that function is removed.
10031
10032 * xterm.c (x_set_offset): Use move_offset_left/top instead of
10033 x/y_pixels_outer_diff.
10034 (x_check_expected_move): Calculate move_offset_left/top.
10035
10036 * xterm.h (struct x_output): New members: move_offset_top/left.
10037
10038 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
10039 call x_set_offset directly.
10040
10041 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
10042
10043 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
10044
10045 * xterm.c (x_delete_display): Free font names and font_encoder
10046 in dpyinfo->font_table.
10047
10048 * xfns.c (Fx_close_connection): Only call XFreeFont here.
10049 Move xfree of font names to x_delete_display.
10050
10051 * xterm.h (struct x_display_info): New member, wm_type.
10052 (struct x_output): New members, expected_top/left and
10053 check_expected_move.
10054
10055 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
10056 is received.
10057 (handle_one_xevent): Rename x_check_expected_move from
10058 x_check_fullscreen_move.
10059 (x_set_offset): Only add WM decoration sizes to modified_top/left
10060 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
10061 (x_check_expected_move): Rename from x_check_fullscreen_move.
10062 Removed fullscreen specific code. Use check_expected_move,
10063 expected_left/top instead. Also, set wm_type.
10064 (x_term_init): Initialize wm_type to unknown.
10065
10066 * frame.c (x_fullscreen_move): Remove addition of WM decoration
10067 sizes to move_x/y.
10068
10069 2003-10-03 Kenichi Handa <handa@m17n.org>
10070
10071 * macterm.c (x_load_font): Clear all members of FONTP before start
10072 filling them.
10073
10074 2003-10-02 Kenichi Handa <handa@m17n.org>
10075
10076 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
10077 before calling find_ccl_program_func. Call find_ccl_program_func
10078 only when fontp->font_encoder is not NULL.
10079
10080 * xterm.c (x_load_font): Clear all members of FONTP before start
10081 filling them.
10082
10083 2003-10-03 John Paul Wallington <jpw@gnu.org>
10084
10085 * keymap.c (map_keymap): Don't abort when binding is a vector.
10086
10087 2003-10-02 Jason Rumney <jasonr@gnu.org>
10088
10089 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
10090 Sync dependencies with Makefile.in.
10091 (alloca.o): Remove.
10092
10093 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
10094 filling them.
10095
10096 * w32bdf.c (w32_load_bdf_font): Likewise.
10097
10098 2003-09-30 Richard M. Stallman <rms@gnu.org>
10099
10100 * term.c (set_tty_color_mode): Calculate current_mode_spec
10101 regardless of value of VAL.
10102
10103 * intervals.c (graft_intervals_into_buffer):
10104 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
10105 Handle over_used when splitting UNDER.
10106
10107 2003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10108
10109 * regex.c (regex_compile): Free the stack when returning from function.
10110
10111 2003-09-28 Kenichi Handa <handa@m17n.org>
10112
10113 * fontset.c (Finternal_char_font): Change return value to
10114 cons (FONT-NAME . GLYPH-CODE).
10115
10116 2003-09-28 Eli Zaretskii <eliz@gnu.org>
10117
10118 * term.c (tty_setup_colors): Treat any negative argument as -1.
10119
10120 2003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
10121
10122 * process.c (send_process): Delete unused temp_buf.
10123
10124 2003-09-26 Dave Love <fx@gnu.org>
10125
10126 * xterm.c (x_bitmap_mask): Declare.
10127
10128 2003-09-25 Dave Love <fx@gnu.org>
10129
10130 * Makefile.in (fns.o): Depend on md5.h.
10131
10132 2003-09-25 Kim F. Storm <storm@cua.dk>
10133
10134 * window.c (set_window_buffer): Fix redisplay problems when
10135 switching between buffers with different display margin widths.
10136
10137 2003-09-23 Kim F. Storm <storm@cua.dk>
10138
10139 * process.c (set_socket_option): Fix :bindtodevice option.
10140 (Fset_network_process_option): Update process contact list when
10141 setting option succeeds.
10142 (Fmake_network_process): Doc fix.
10143
10144 2003-09-23 Dave Love <fx@gnu.org>
10145
10146 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
10147
10148 2003-09-22 Eli Zaretskii <eliz@gnu.org>
10149
10150 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
10151 color mode is an integer number (it could be -1).
10152
10153 2003-09-22 Richard M. Stallman <rms@gnu.org>
10154
10155 * intervals.c (graft_intervals_into_buffer): Correct the main loop
10156 in the case where OVER is longer than UNDER.
10157
10158 2003-09-22 Masatake YAMATO <jet@gyve.org>
10159
10160 * window.c (Fset_window_scroll_bars): Validate the value of
10161 `vertical_type'.
10162
10163 2003-09-21 Kim F. Storm <storm@cua.dk>
10164
10165 * frame.c (Vdefault_frame_scroll_bars): New variable.
10166 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
10167 (syms_of_frame): DEFVAR_LISP it, and initialize according to
10168 window-system default scroll bar position.
10169
10170 * window.c (Fwindow_scroll_bars): Doc fix.
10171
10172 2003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10173
10174 * xterm.c (x_set_offset): Take window manager decorations into account.
10175
10176 2003-09-19 Richard M. Stallman <rms@gnu.org>
10177
10178 * atimer.h: Don't include lisp.h.
10179 (P_): Define it here (as well as elsewhere).
10180
10181 * print.c (Fprin1_to_string): Move the PRINTPREPARE
10182 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
10183
10184 * data.c (Fvariable_binding_locus): New function.
10185 (syms_of_data): defsubr it.
10186 (Flocal_variable_p): Delete duplicate call to indirect_variable.
10187
10188 2003-09-18 Dave Love <fx@gnu.org>
10189
10190 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
10191
10192 * process.c (Fnetwork_interface_info): Fix type error.
10193 (Fnetwork_interface_list): Doc fix.
10194 (read_process_output, read_process_output): Delete unused var.
10195
10196 2003-09-17 Kim F. Storm <storm@cua.dk>
10197
10198 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
10199 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
10200 (Fnetwork_interface_info): Check that ifreq struct has required
10201 fields before accessing them; this requires that those fields are
10202 defined as macros, which may be too restrictive on some platforms,
10203 but it is better than failing on other platforms.
10204 (syms_of_process): Only defsubr above fns when included.
10205
10206 2003-09-17 Dave Love <fx@gnu.org>
10207
10208 * unexalpha.c: Don't include varargs.h.
10209
10210 2003-09-17 Kim F. Storm <storm@cua.dk>
10211
10212 * process.c (Fset_process_sentinel): Add sentinel to childp plist
10213 for network process.
10214 (socket_options): Add `:' prefix to option names. Add optbit field.
10215 (set_socket_option): Remove no_error arg and special handling of s < 0.
10216 Return 1<<optbit for known option, 0 for unknown.
10217 Do not interpret 0 as false for boolean option (only nil).
10218 Pass failed option and value to report_file_error.
10219 (Fset_network_process_options): Replace by Fset_network_process_option.
10220 (Fset_network_process_option): New function to set just one option.
10221 (Fmake_network_process): Allow :coding arg to be a cons.
10222 Allow :server arg to be an integer specifying backlog size.
10223 Remove :options arg, and allow options to be specified directly
10224 as :KEY, VALUE pairs. Parse these options before binding socket.
10225 As before, :reuseaddr t is default for a server process, but this
10226 can now be disabled by specifying :reuseaddr nil.
10227 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
10228 (init_process): Availability of network options is now checked with
10229 simpler syntax (featurep 'make-network-process :OPTION); use loop to
10230 setup features.
10231 (syms_of_process): Fix defsubr's for the replaced functions.
10232
10233 2003-09-16 Dave Love <fx@gnu.org>
10234
10235 * Makefile.in: Depend on coding.h.
10236
10237 2003-09-14 Kim F. Storm <storm@cua.dk>
10238
10239 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
10240 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
10241 (syms_of_process): Defsubr them.
10242
10243 * config.in: Regenerate.
10244
10245 2003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
10246
10247 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
10248 * m/news-r6.h (XUNMARK): Remove.
10249 * m/mips.h (XUNMARK): Remove.
10250 * m/mips-siemens.h (XUNMARK): Remove.
10251 * m/iris4d.h (XUNMARK): Remove.
10252 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
10253
10254 2003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
10255
10256 * lisp.h (VALBITS): Don't remove 1 for the markbit.
10257 (union Lisp_Object): Use unsigned int for types. Remove markbit.
10258 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
10259 (XTYPE): Use unsigned right-shift.
10260 (XMARKBIT, XMARK, XUNMARK): Remove.
10261
10262 * alloc.c (init_intervals, init_symbol, init_marker):
10263 Don't preallocate anything.
10264 (Fgarbage_collect, mark_object): Ignore the markbit.
10265
10266 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
10267
10268 2003-09-08 Lute Kamstra <lute@gnu.org>
10269
10270 * xdisp.c (pint2hrstr): New function.
10271 (decode_mode_spec): Add `%i' and `%I' specs.
10272 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
10273 for `mode-line-format'.
10274
10275 2003-09-07 Andreas Schwab <schwab@suse.de>
10276
10277 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
10278 avoid warning.
10279
10280 2003-09-07 Eli Zaretskii <eliz@gnu.org>
10281
10282 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
10283
10284 2003-09-03 Kim F. Storm <storm@cua.dk>
10285
10286 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
10287 change (superseded by 2002-08-30 change); the default blink-off
10288 cursor is now again "no cursor".
10289
10290 2003-09-01 Jason Rumney <jasonr@gnu.org>
10291
10292 * makefile.w32-in (alloca.o): Remove.
10293 (coding.o): Depend on intervals.h
10294 (emacs.o, bytecode.o): Depend on window.h
10295
10296 2003-09-01 Dave Love <fx@gnu.org>
10297
10298 * Makefile.in (alloca.o): Remove commands.
10299 (coding.o): Depend on intervals.h composite.h window.h.
10300 (emacs.o): Depend on window.h keyboard.h keymap.h.
10301 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
10302 (bytecode.o): Depend on window.h.
10303
10304 2003-08-31 Jason Rumney <jasonr@gnu.org>
10305
10306 * w32term.c (w32_per_char_metric): Allow cached metrics to be
10307 returned even when font_type is unknown.
10308
10309 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
10310
10311 2003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10312
10313 * xterm.c (x_term_init): Initialize new fields in x_display_info.
10314
10315 * xterm.h (struct x_display_info): Add red/green/blue_bits and
10316 *_offset.
10317
10318 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
10319 calculate pixel value.
10320
10321 2003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
10322
10323 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
10324 Don't tell redisplay display is accurate when it's actually been
10325 paused for pending input.
10326
10327 2003-08-29 Richard M. Stallman <rms@gnu.org>
10328
10329 * dispnew.c (adjust_glyph_matrix): Call window_box
10330 whenever W is nonzero.
10331
10332 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
10333 (Fkill_local_variable, Fmake_variable_frame_local)
10334 (Flocal_variable_p, Flocal_variable_if_set_p):
10335 Use indirect_variable to trace thru variable aliases.
10336
10337 * config.in: Updated.
10338
10339 * callint.c (Fcall_interactively): Save and restore
10340 Vthis_command, Vthis_original_command, real_this_command,
10341 and current_kboard->Vlast_command.
10342
10343 * abbrev.c (Fexpand_abbrev): Insert before deleting.
10344
10345 2003-08-29 Gerd Moellmann <gerd@gnu.org>
10346
10347 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
10348
10349 2003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
10350
10351 * coding.c (decode_coding_iso2022): Initialize local variable c2.
10352 (decode_coding_sjis_big5): Likewise.
10353
10354 2003-08-27 Jason Rumney <jasonr@gnu.org>
10355
10356 * w32.c (sys_pipe): Protect against file descriptor overflow.
10357
10358 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
10359
10360 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
10361
10362 2003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
10363
10364 * xfns.c (Vgtk_version_string): New variable.
10365 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
10366
10367 2003-08-24 Eli Zaretskii <eliz@gnu.org>
10368
10369 * term.c (term_init): Remove `const' from buffer_size's declaration.
10370
10371 * Makefile.in (msdos.o): Depend on intervals.h.
10372
10373 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
10374
10375 2003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10376
10377 * xterm.h (struct x_display_info): New fields: client_leader_window
10378 and Xatom_wm_client_leader.
10379
10380 * xterm.c (x_initialize): Move call to x_session_initialize to ...
10381 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
10382
10383 * xsmfns.c (create_client_leader_window): New function.
10384 (x_session_initialize): Call create_client_leader_window, take
10385 dpyinfo as argument.
10386
10387 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
10388
10389 * Makefile.in (xsmfns.o): Add more depenedencies.
10390
10391 2003-08-21 Dave Love <fx@gnu.org>
10392
10393 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
10394
10395 2003-08-21 Kenichi Handa <handa@m17n.org>
10396
10397 * term.c (term_init): Fix previous change; don't rely on the
10398 length of `buffer' if TERMINFO is defined.
10399
10400 2003-08-20 Dave Love <fx@gnu.org>
10401
10402 * atimer.h: Include lisp.h.
10403
10404 * lisp.h (EMACS_LISP_H): New.
10405 (popup_activated_flag): Don't declare.
10406
10407 * alloca.c: Some merging with gnulib. Change logic and doc
10408 concerning (x)malloc/(x)free -- no longer Emacs-specific.
10409 [DO_BLOCK_INPUT]: Don't include lisp.h.
10410 (xmalloc, xfree): Declare.
10411 (malloc): Don't declare.
10412
10413 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
10414 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
10415 atimer.h, blockinput.h.
10416
10417 * alloc.c (lisp_align_malloc): Change type of `aligned'.
10418
10419 * alloca.s: Remove.
10420
10421 2003-08-19 Gerd Moellmann <gerd@gnu.org>
10422
10423 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
10424 use -lncurses.
10425
10426 * term.c (term_init): Use a buffer of size 4096 for tgetent since
10427 FreeBSD returns something longer than 2044. Abort if the end of
10428 the buffer is overwritten.
10429
10430 2003-08-19 Miles Bader <miles@gnu.org>
10431
10432 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
10433
10434 2003-08-19 Gerd Moellmann <gerd@gnu.org>
10435
10436 * alloc.c (lisp_align_malloc): Check for memory full when
10437 allocating ablocks, which also avoids freeing a pointer into an
10438 ablocks structure.
10439
10440 * puresize.h (BASE_PURESIZE): Increase to 1100000.
10441
10442 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
10443
10444 2003-08-16 Richard M. Stallman <rms@gnu.org>
10445
10446 * editfns.c (Fencode_time): Doc fix.
10447
10448 2003-08-16 David Ponce <david@dponce.com>
10449
10450 * fileio.c (Fwrite_region): Fix conditional expression to issue
10451 the right message.
10452
10453 2003-08-16 Juri Linkov <juri@jurta.org>
10454
10455 * syntax.c (Fforward_word): Argument changed to optional.
10456 Set default value to 1.
10457
10458 2003-08-15 Kenichi Handa <handa@m17n.org>
10459
10460 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
10461 what autoscaled.
10462 (best_matching_font): Once we find a better scalable font, set
10463 non_scalable_has_exact_height_p to 1.
10464 (try_font_list): Call try_alternative_families to try any family
10465 with the given registry.
10466
10467 2003-08-09 Andreas Schwab <schwab@suse.de>
10468
10469 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
10470
10471 * print.c (print_string): Fix printing of multibyte string with
10472 nontrivial printcharfun.
10473
10474 2003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10475
10476 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
10477
10478 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
10479
10480 2003-07-31 Kenichi Handa <handa@m17n.org>
10481
10482 * process.c (read_process_output): Return the actually read bytes
10483 instead of the result of decoding.
10484
10485 2003-07-31 Kenichi Handa <handa@m17n.org>
10486
10487 * xterm.h (struct x_bitmap_record): New member have_mask.
10488
10489 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
10490 to 0.
10491 (x_create_bitmap_from_file): Likewise.
10492 (x_destroy_bitmap): Check have_mask member before freeing a mask.
10493 (x_destroy_all_bitmaps): Likewise.
10494 (x_create_bitmap_mask): Set have_mask member to 1.
10495
10496 2003-07-30 Richard M. Stallman <rms@gnu.org>
10497
10498 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
10499
10500 2003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10501
10502 * gtkutil.c (xg_mark_data): Update calls to mark_object.
10503
10504 2003-07-29 Richard M. Stallman <rms@gnu.org>
10505
10506 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
10507 Conditionalize XIM code on HAVE_XIM.
10508
10509 * fns.c (Fclear_string): New function.
10510 (syms_of_fns): defsubr it.
10511
10512 2003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
10513
10514 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
10515
10516 2003-07-22 Stefan Monnier <monnier@cs.yale.edu>
10517
10518 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
10519
10520 * buffer.c (delete_all_overlays): New function.
10521 * buffer.h (delete_all_overlays): Declare.
10522 * coding.c (run_pre_post_conversion_on_str):
10523 * print.c (temp_output_buffer_setup):
10524 * fileio.c (Finsert_file_contents):
10525 * minibuf.c (get_minibuffer): Use it.
10526
10527 2003-07-22 Andrew Choi <akochoi@shaw.ca>
10528
10529 * unexmacosx.c (unexec_regions_sort_compare):
10530 (unexec_regions_merge): New functions. Sort and merge unexec
10531 regions before dumping them.
10532
10533 2003-07-22 Dave Love <fx@gnu.org>
10534
10535 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
10536
10537 2003-07-21 Stefan Monnier <monnier@cs.yale.edu>
10538
10539 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
10540 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
10541 MARKBIT as the gcmarkbit for strings.
10542
10543 2003-07-21 Richard M. Stallman <rms@gnu.org>
10544
10545 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
10546
10547 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
10548 (syms_of_fns): Corresponding change.
10549
10550 * alloc.c (syms_of_alloc): Doc fixes.
10551
10552 2003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
10553
10554 * s/netbsd.h: Use -Wl syntax.
10555
10556 2003-07-17 Richard M. Stallman <rms@gnu.org>
10557
10558 * xterm.c (xim_initialize): Redo 6/24 change.
10559
10560 2003-07-15 Stefan Monnier <monnier@cs.yale.edu>
10561
10562 * buffer.c (copy_overlays): Use EMACS_INT for positions.
10563 (Fswitch_to_buffer): Don't signal an error when switching to the same
10564 buffer in a dedicated window.
10565
10566 * alloc.c: Use bitmaps for cons, as was done for floats.
10567 (init_float, init_cons): Let the normal code allocate the first block.
10568 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
10569 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
10570 New macros.
10571 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
10572 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
10573 (live_cons_p): Check the pointer is not past the `conses' array.
10574 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
10575 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
10576 (survives_gc_p): Use CONS_MARKED_P and simplify.
10577 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
10578
10579 2003-07-13 Paul Eggert <eggert@twinsun.com>
10580
10581 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
10582 puts it into BSS instead, at least on Solaris 8 and 9.
10583 This is a valid optimization, and it may occur on other platforms,
10584 so Emacs should not assume that initializing a static variable to
10585 zero puts it into data.
10586 * alloc.c (pure, staticvec):
10587 Initialize these arrays to nonzero, so that they're not
10588 put into BSS by that optimization.
10589
10590 2003-07-13 Stefan Monnier <monnier@cs.yale.edu>
10591
10592 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
10593 (lisp_align_malloc): Use posix_memalign is available.
10594 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
10595 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
10596 for consistency. Update users.
10597
10598 2003-07-13 Richard M. Stallman <rms@gnu.org>
10599
10600 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
10601
10602 2003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
10603
10604 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
10605 and use the Gtk+ function gtk_window_icon_from_file if available.
10606
10607 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
10608 handle mask of bitmaps.
10609 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
10610 mask property.
10611 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
10612
10613 * xterm.h (xg_set_icon): New function.
10614
10615 2003-07-12 Paul Eggert <eggert@twinsun.com>
10616
10617 * unexelf.c (unexec): Consider a section to precede the .bss
10618 section if its addresses overlap that of .bss.
10619
10620 2003-07-12 Richard M. Stallman <rms@gnu.org>
10621
10622 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
10623
10624 * config.in (HAVE_CRTIN): Add #undef.
10625 (INLINE): Really inline only if OPTIMIZE is defined.
10626
10627 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
10628 END_FILES_1.
10629 (START_FILES_1, END_FILES_1): New macros (conditional).
10630 (LD_SWITCH_SYSTEM_TEMACS): Define.
10631
10632 * s/openbsd.h: Don't include bsd4-3.h.
10633 (TERMINFO): Define.
10634 (LIBS_TERMCAP): Define.
10635 (LD_SWITCH_SYSTEM): Define (two definitions).
10636
10637 * xfns.c: Include libpng/png.h instead of png.h.
10638
10639 2003-07-11 Andreas Schwab <schwab@suse.de>
10640
10641 * buffer.c (modify_overlay): Update prototype.
10642 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
10643 Likewise.
10644
10645 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
10646
10647 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
10648 (struct interval): Move to intervals.h.
10649 (struct Lisp_Marker): Use EMACS_INT for position info.
10650 (forward_point): Remove prototype of defunct function.
10651 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
10652 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
10653 (syms_of_textprop, set_text_properties): Remove prototypes that are
10654 already in intervals.h.
10655
10656 * intervals.h (struct interval): Move from lisp.h.
10657 Use EMACS_INT for position and size info.
10658
10659 * coding.c: Include intervals.h for Fset_text_properties.
10660
10661 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
10662 position and length information.
10663
10664 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
10665
10666 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
10667 position and length information.
10668
10669 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
10670
10671 Change overlays_after and overlays_before so the overlays themselves
10672 are linked into lists, rather than using cons cells. After all each
10673 Lisp_Misc already occupies 5 words, so we can add a `next' field to
10674 Lisp_Overlay for free and save up one cons cell per overlay (not
10675 to mention one indirection when traversing the list of overlay).
10676
10677 * lisp.h (struct Lisp_Overlay): New field `next'.
10678
10679 * buffer.h (struct buffer): Change overlays_before and overlays_after
10680 from Lisp lists of overlays to pointers to overlays.
10681
10682 * buffer.c (overlay_strings, recenter_overlay_lists):
10683 Fix typo in eassert in last commit.
10684 (unchain_overlay): New function.
10685 (add_overlay_mod_hooklist): Use AREF.
10686 (copy_overlays, reset_buffer, overlays_at, overlays_in)
10687 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
10688 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
10689 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
10690 (report_overlay_modification, evaporate_overlays, init_buffer_once):
10691 Adjust to new type of overlays_(before|after).
10692
10693 * alloc.c (mark_object): Mark the new `next' field of overlays.
10694 (mark_buffer): Manually mark the overlays_(after|before) fields.
10695
10696 * coding.c (run_pre_post_conversion_on_str):
10697 * editfns.c (overlays_around):
10698 * xdisp.c (load_overlay_strings):
10699 * fileio.c (Finsert_file_contents):
10700 * indent.c (current_column):
10701 * insdel.c (signal_before_change, signal_after_change):
10702 * intervals.c (set_point_both):
10703 * print.c (temp_output_buffer_setup): Use new type for
10704 overlays_(before|after).
10705
10706 2003-07-08 Stefan Monnier <monnier@cs.yale.edu>
10707
10708 * buffer.c (report_overlay_modification): Don't run hooks while
10709 traversing the list of overlays.
10710
10711 * buffer.h (struct buffer): Use an int for overlay_center.
10712 (overlays_at, evaporate_overlays, recenter_overlay_lists)
10713 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
10714
10715 * buffer.c (reset_buffer, recenter_overlay_lists)
10716 (adjust_overlays_for_insert, adjust_overlays_for_delete)
10717 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
10718 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
10719 (overlays_at, evaporate_overlays, recenter_overlay_lists)
10720 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
10721
10722 * xdisp.c (fast_find_position): Remove unused var.
10723
10724 * cmds.c (Qexpand_abbrev): New sym.
10725 (syms_of_cmds): Initialize it.
10726 (internal_self_insert): Use it to call expand-abbrev.
10727
10728 2003-07-09 Kim F. Storm <storm@cua.dk>
10729
10730 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
10731 was configured with --without-xim.
10732 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
10733
10734 2003-07-07 Richard M. Stallman <rms@gnu.org>
10735
10736 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
10737
10738 * alloc.c (Fgarbage_collect): Doc fix.
10739
10740 2003-07-07 Nozomu Ando <nand@mac.com>
10741
10742 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
10743
10744 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
10745
10746 * minibuf.c (read_minibuf): UNGCPRO before returning.
10747 (Ftry_completion, Fall_completions): Doc fix.
10748
10749 * alloc.c (live_float_p): Check that p is not past the `floats' array,
10750 now that `floats' is not the last element of the struct any more.
10751
10752 2003-07-06 Jason Rumney <jasonr@gnu.org>
10753
10754 * w32term.h (ClipboardSequence_Proc): New type.
10755
10756 * w32fns.c (clipboard_sequence_fn): New variable.
10757 (globals_of_w32fns): Initialize it.
10758
10759 * w32select.c (last_clipboard_sequence_number): New variable.
10760 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
10761 number if possible.
10762
10763 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
10764
10765 * m/amdx86-64.h (MARKBIT):
10766 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
10767 MARKBIT and ARRAY_MARK_FLAG any more.
10768
10769 * m/hp800.h (XSETMARKBIT):
10770 * m/sr2k.h (XSETMARKBIT):
10771 * lisp.h (XSETMARKBIT): Remove unused macro.
10772
10773 * lisp.h (mark_object): Change prototype.
10774
10775 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
10776 (last_marked): Change accordingly.
10777 (mark_interval, mark_maybe_object, mark_maybe_pointer)
10778 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
10779 (mark_buffer): Update calls to mark_object.
10780
10781 * bytecode.c (mark_byte_stack):
10782 * fns.c (sweep_weak_table):
10783 * keyboard.c (mark_kboards): Update calls to mark_object.
10784
10785 2003-07-06 Jason Rumney <jasonr@gnu.org>
10786
10787 * alloc.c (struct ablock): Only include padding when there is some.
10788
10789 2003-07-04 Stefan Monnier <monnier@cs.yale.edu>
10790
10791 * alloc.c (ALIGN): Add casts to simplify usage.
10792 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
10793 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
10794 (struct ablock, struct ablocks): New types.
10795 (free_ablock): New global var.
10796 (lisp_align_malloc, lisp_align_free): New functions.
10797 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
10798 (struct float_block): Reorder and add gcmarkbits.
10799 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
10800 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
10801 (init_float, make_float): Use lisp_align_malloc.
10802 (free_float, live_float_p): Don't use `type' any more.
10803 (make_float): Use FLOAT_UNMARK to access to mark bit.
10804 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
10805 Use FLOAT_MARKED_P to access the mark bit.
10806 (pure_alloc): Simplify use of ALIGN.
10807 (mark_object): Use FLOAT_MARK to access the mark bit.
10808 (gc_sweep): Use new macros to access the float's mark bit.
10809 (init_alloc_once): Init free_ablock.
10810
10811 * lisp.h (struct Lisp_Float): Remove unused field `type'.
10812
10813 2003-06-27 Stefan Monnier <monnier@cs.yale.edu>
10814
10815 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
10816 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
10817 (allocate_buffer): Move.
10818 (string_bytes): Don't mask markbit of `size_byte'.
10819 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
10820 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
10821 Use the `size' field of buffers (rather than the `name' field) for
10822 the mark bit, as is done for all other vectorlike objects.
10823 Use the new macros to access the mark bit of vectorlike objects.
10824
10825 2003-06-26 Richard M. Stallman <rms@gnu.org>
10826
10827 * puresize.h (BASE_PURESIZE): Increment base size.
10828
10829 * xdisp.c (fast_find_position): Enable Gerd's new definition.
10830
10831 * xterm.c (xim_initialize): Undo previous change.
10832
10833 2003-06-26 Stefan Monnier <monnier@cs.yale.edu>
10834
10835 * alloc.c (survives_gc_p): Simplify.
10836
10837 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
10838
10839 * window.c (Fset_window_dedicated_p): Simplify.
10840 (display_buffer_1): Don't raise the win from which minibuf was entered.
10841 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
10842 (Fminibuffer_selected_window): Simplify.
10843
10844 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
10845
10846 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
10847 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
10848
10849 * insdel.c (check_markers, adjust_markers_for_delete)
10850 (adjust_markers_for_insert, adjust_markers_for_replace)
10851 (prepare_to_modify_buffer, RESTORE_VALUE):
10852 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
10853 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
10854 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
10855 * alloc.c (Fmake_marker, free_marker, gc_sweep):
10856 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
10857 * editfns.c (save_excursion_restore, transpose_markers):
10858 * window.c (delete_window):
10859 * xdisp.c (message_dolog): Update for new types.
10860
10861 2003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10862
10863 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
10864 (realize_default_face): Use default_face_done_p for the force_p
10865 argument to set_lface_from_font_name. Set default_face_done_p to one.
10866
10867 * frame.c (make_frame): Initialize default_face_done_p.
10868
10869 * frame.h (struct frame): Add default_face_done_p.
10870
10871 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
10872 will be defined.
10873
10874 2003-06-25 Stefan Monnier <monnier@cs.yale.edu>
10875
10876 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
10877 Initialize the new field `gcmarkbit'.
10878 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
10879 (mark_interval_tree): Don't mark the tree separately from the nodes.
10880 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
10881 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
10882 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
10883
10884 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
10885 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
10886 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
10887 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
10888 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
10889
10890 2003-06-24 Dave Love <fx@gnu.org>
10891
10892 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
10893
10894 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
10895 from gnulib.
10896
10897 2003-06-21 Richard M. Stallman <rms@gnu.org>
10898
10899 * fileio.c (Fwrite_region): Alternate messages
10900 for append and partial write.
10901
10902 * keyboard.c (read_key_sequence): When converting upcase fn key to
10903 downcase, update fkey and keytran so `backspace' gets translated.
10904
10905 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
10906
10907 * process.c (wait_reading_process_input): Don't signal SIGIO
10908 in batch mode.
10909
10910 2003-06-17 Kenichi Handa <handa@m17n.org>
10911
10912 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
10913 composite.h.
10914
10915 * xselect.c: Don't include charset.h, coding.h, composite.h.
10916 (Qforeign_selection): New variable.
10917 (syms_of_xselect): Intern and static it.
10918 (selection_data_to_lisp_data): Return a unibyte string made from
10919 data with `foreign-selection' text property.
10920
10921 2003-06-15 Stefan Monnier <monnier@cs.yale.edu>
10922
10923 * termhooks.h (EVENT_INIT): New macro.
10924
10925 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
10926
10927 * alloc.c (mark_kboards): Move to keyboard.c.
10928
10929 * keyboard.c (record_asynch_buffer_change, read_avail_input):
10930 * xterm.c (x_dispatch_event):
10931 * xmenu.c (find_and_call_menu_selection):
10932 * xdisp.c (handle_tool_bar_click):
10933 * w32menu.c (menubar_selection_callback):
10934 * sysdep.c (kbd_input_ast, read_input_waiting):
10935 * msdos.c (dos_rawgetc):
10936 * macterm.c (mac_check_for_quit_char):
10937 * macmenu.c (menubar_selection_callback):
10938 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
10939 data to kbd_buffer_store_event.
10940
10941 2003-06-15 Kim F. Storm <storm@cua.dk>
10942
10943 * xdisp.c (x_fix_overlapping_area): Always use area relative X
10944 to fix redisplay problem with tall characters (such as \e,AC\e(B).
10945
10946 2003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
10947
10948 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
10949
10950 2003-06-12 Kenichi Handa <handa@m17n.org>
10951
10952 * fileio.c (Fwrite_region): Save and restore restriction.
10953
10954 2003-06-12 Dave Love <fx@gnu.org>
10955
10956 * alloca.c (alloca): Declare arg as size_t.
10957
10958 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
10959 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
10960
10961 2003-06-11 Dave Love <fx@gnu.org>
10962
10963 * search.c (shrink_regexp_cache): Use xrealloc.
10964 (syms_of_search): Use xmalloc.
10965
10966 2003-06-10 Kim F. Storm <storm@cua.dk>
10967
10968 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
10969 Adjust phys_cursor.x to be relative to window box, rather than
10970 text area before checking -- to ensure cursor is redrawn when
10971 exposing window.
10972 Note: This also fixes a similar (older) bug if display margins
10973 are present.
10974
10975 2003-06-06 Kenichi Handa <handa@m17n.org>
10976
10977 * coding.c (encoding_buffer_size): If coding->type is
10978 coding_type_ccl, double magnification on CRLF encoding.
10979
10980 2003-06-06 Jason Rumney <jasonr@gnu.org>
10981
10982 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
10983 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
10984
10985 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
10986 Mac too.
10987
10988 2003-06-05 Dave Love <fx@gnu.org>
10989
10990 * strftime.c: Merge changes from gnulib.
10991
10992 * mktime.c (__mktime_internal): Merge changes from gnulib
10993 involving year 69 and dst2.
10994
10995 Changes to merge with gnulib version and be consistent with the
10996 autoconf test:
10997
10998 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
10999 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
11000 [HAVE_LOCALE_H]: Include locale.h.
11001 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
11002
11003 2003-06-05 Kim F. Storm <storm@cua.dk>
11004
11005 * window.c (coordinates_in_window): Convert X and Y to window
11006 relative coordinates inside mode-line and header-line parts.
11007 Convert X and Y to margin area relative coordinates inside left
11008 and right display margin parts.
11009
11010 2003-06-05 Jason Rumney <jasonr@gnu.org>
11011
11012 * w32fns.c (add_system_logical_colors_to_map): New function.
11013 (Fx_open_connection): Use it.
11014
11015 2003-06-04 Stefan Monnier <monnier@cs.yale.edu>
11016
11017 * process.c (allocate_pty): Revert part of the previous patch.
11018 (Faccept_process_output): Simplify.
11019
11020 2003-06-04 Jason Rumney <jasonr@gnu.org>
11021
11022 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
11023
11024 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
11025 (lispy_mouse_wheel_names): Remove.
11026 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
11027 Always define drag_and_drop_syms.
11028
11029 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
11030 WHEEL_EVENT events.
11031
11032 2003-06-03 Stefan Monnier <monnier@cs.yale.edu>
11033
11034 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
11035
11036 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
11037
11038 2003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11039
11040 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
11041 menu item label.
11042
11043 2003-06-03 Richard M. Stallman <rms@gnu.org>
11044
11045 * window.c (Fwindow_edges): Doc fix.
11046 (Fwindow_pixel_edges, Fwindow_inside_edges)
11047 (Fwindow_inside_pixel_edges): New functions.
11048 (syms_of_window): defsubr them.
11049
11050 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
11051 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
11052
11053 2003-06-02 Stefan Monnier <monnier@cs.yale.edu>
11054
11055 * dispnew.c (Fsit_for): Don't lie about the number of args.
11056
11057 2003-06-02 Dave Love <fx@gnu.org>
11058
11059 * callproc.c: Use HAVE_FCNTL_H, not USG5.
11060 (syms_of_callproc) <process-environment>: Doc fix.
11061
11062 * doc.c: Use HAVE_FCNTL_H, not USG5.
11063
11064 * xfaces.c (font_rescale_ratio): Fix for K&R.
11065
11066 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
11067
11068 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
11069
11070 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
11071
11072 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
11073 (xg_create_frame_widgets): Use ENCODE_UTF_8.
11074
11075 * xterm.c (Qutf_8): Move to coding.c
11076
11077 * xmenu.c (ENCODE_MENU_STRING): New.
11078 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
11079 Use it.
11080
11081 * coding.h (ENCODE_UTF_8): New.
11082 (Qutf_8): Declare.
11083
11084 * coding.c (Qutf_8): New.
11085 (syms_of_coding): Intern it.
11086
11087 * fns.c: Doc fixes.
11088
11089 2003-06-02 Kenichi Handa <handa@m17n.org>
11090
11091 * buffer.c (Fset_buffer_multibyte): Fix previous change.
11092
11093 2003-06-01 Stefan Monnier <monnier@cs.yale.edu>
11094
11095 * lread.c (openp): Make sure STR is a string.
11096
11097 2003-06-01 David Ponce <david@dponce.com>
11098
11099 * termhooks.h (enum event_kind): Add new WHEEL_EVENT event.
11100 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
11101
11102 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
11103 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
11104 (discard_mouse_events): Discard WHEEL_EVENT events too.
11105 (lispy_wheel_names, wheel_syms): New.
11106 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
11107 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX defined.
11108 (make_lispy_event): Add WHEEL_EVENT handler.
11109
11110 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
11111 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
11112 WHEEL_EVENT events.
11113
11114 2003-05-31 John Paul Wallington <jpw@gnu.org>
11115
11116 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
11117 timer are in lisp/emacs-lisp.
11118
11119 2003-05-31 Kenichi Handa <handa@m17n.org>
11120
11121 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
11122 region when a buffer is changed to unibyte.
11123
11124 * charset.h (VALID_LEADING_CODE_P): New macro.
11125 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
11126
11127 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
11128 is nonzero, accept multibyte form of eight-bit-control chars.
11129 (decode_composition_emacs_mule): Likewise.
11130 (decode_coding_emacs_mule): Likewise.
11131 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
11132 multibyte form of eight-bit-control chars.
11133
11134 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
11135 (Finsert_file_contents): If coding-system-for-read is bound to
11136 Qauto_save_coding, use the coding system emacs-mule with special
11137 setting for recovering a file.
11138 (choose_write_coding_system): On auto saving, use the coding
11139 system emacs-mule with special setting for auto saving.
11140 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
11141
11142 2003-05-30 Kenichi Handa <handa@m17n.org>
11143
11144 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
11145 properly before calling ccl_driver.
11146
11147 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
11148
11149 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is nonzero.
11150 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
11151 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
11152
11153 2003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
11154
11155 * xfaces.c (realize_default_face): Do not abort if lface is
11156 non-existent - reverts change from 2003-05-19.
11157
11158 2003-05-29 Kenichi Handa <handa@m17n.org>
11159
11160 * coding.c (decode_coding_iso2022): Pay attention to the byte
11161 sequence of CTEXT extended segment, and retain those bytes as is.
11162
11163 2003-05-28 Kenichi Handa <handa@m17n.org>
11164
11165 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjust for the name change
11166 of CODING_REPLACEMENT_CHARACTER.
11167 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
11168 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
11169 check this flag on encoding.
11170 (encode_coding_sjis_big5):
11171 Check CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
11172 (Fset_terminal_coding_system_internal):
11173 Set CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
11174 instead of setting CODING_FLAG_ISO_SAFE flag in terminal_coding.flags.
11175
11176 * coding.h (CODING_REPLACEMENT_CHARACTER): Rename from
11177 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
11178 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
11179
11180 2003-05-28 Richard M. Stallman <rms@gnu.org>
11181
11182 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
11183
11184 * eval.c (unbind_to): Move init of this_binding to separate statement.
11185
11186 2003-05-28 Kim F. Storm <storm@cua.dk>
11187
11188 * xdisp.c (expose_window): Fix error in calculation of
11189 window relative coordinates of area to redisplay.
11190
11191 2003-05-27 Jason Rumney <jasonr@gnu.org>
11192
11193 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
11194
11195 2003-05-27 David Ponce <david@dponce.com>
11196
11197 Handle W32 mouse wheel events as mouse click events, like in X.
11198
11199 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
11200 MOUSE_WHEEL_EVENT anymore.
11201
11202 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
11203 Scrolling down/up the mouse wheel is respectively mapped to mouse
11204 button 4 and 5.
11205 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
11206 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
11207 WM_MOUSEWHEEL events.
11208
11209 2003-05-27 Andreas Schwab <schwab@suse.de>
11210
11211 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
11212
11213 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
11214 partially visible line.
11215
11216 * alloc.c (Fgarbage_collect): Fix last change.
11217
11218 2003-05-26 John Paul Wallington <jpw@gnu.org>
11219
11220 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
11221
11222 2003-05-25 Stefan Monnier <monnier@cs.yale.edu>
11223
11224 * window.c (Fset_window_buffer): Add type of `keep_margins'.
11225 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
11226
11227 * window.h (window_box_text_cols): Declare.
11228
11229 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
11230 (x_draw_vertical_border): Remove unused var `f'.
11231
11232 * xfaces.c (build_scalable_font_name): Remove `unused var
11233 pixel_size' warning.
11234
11235 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
11236
11237 * unexelf.c (unexec): Remove `unused var n' warning.
11238
11239 * strftime.c (my_strftime_localtime_r): Remove `defined but
11240 unused' warning.
11241
11242 * process.c (allocate_pty): Remove `unused var stb' and
11243 `cp might be used uninitialized' warnings.
11244
11245 * dispnew.c (mode_line_string): Remove unused var `f'.
11246
11247 * coding.c (find_safe_codings): Remove unused var `i'.
11248
11249 * bytecode.c (Fbyte_code): Remove `unused val' warning.
11250
11251 * buffer.c (Fkill_buffer): Remove unused var `list'.
11252
11253 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
11254
11255 2003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11256
11257 * frame.c (make_frame): Condition want_fullscreen with
11258 HAVE_WINDOW_SYSTEM.
11259
11260 2003-05-25 Juanma Barranquero <lektu@terra.es>
11261
11262 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
11263 (Fwindow_scroll_bars): Fix typo in docstring.
11264
11265 2003-05-24 Kim F. Storm <storm@cua.dk>
11266
11267 The following changes serve several purposes:
11268
11269 1) Swap the position of fringes and display margins in windows, i.e.
11270 the fringes are now displayed between the margins and the text area
11271 (by default).
11272
11273 2) Allow fringe and scroll bar parameters to be set per-buffer and
11274 per-window (like display margins). Such settings are now stored
11275 in window configurations, preserved when frames are resized, and
11276 copied when windows are split vertically or horizontally.
11277 Several bugs related to display margins have been fixed.
11278
11279 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
11280
11281 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
11282 rather than FRAME_WIDTH (FRAME_FONT (f)).
11283
11284 5) Introduce a consistent naming of variables, members and macros
11285 depending on whether their value is measured in pixels or in
11286 canonical columns/lines. Pixel dimensions are named *_width and
11287 *_height, while canonical columns/lines are named *_cols and
11288 *_lines. Pixel positions are named *_x and *_y, while column/line
11289 positions are named *_col and *_line.
11290
11291 6) Consolidate more of the X, W32, and MAC gui code by moving
11292 common data into struct frame, and generalize it for the non-gui
11293 case by using suitable defaults.
11294
11295 7) Cleanup and consolidate the macros controlling frame and window
11296 layout into frame.h and window.h, and generalize the use of the
11297 various window_box_* functions (enhanced to handle the new fringe
11298 position and the per-window fringe and scroll bar settings).
11299
11300 * frame.h (struct frame): Rename members height to text_lines,
11301 width to text_cols, window_height to total_lines, window_width to
11302 total_cols, new_height to new_text_lines, new_width to
11303 new_text_cols. All uses changed.
11304 (struct frame): New members which consolidate common members of
11305 x_output, w32_output, and mac_output structures: left_pos,
11306 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
11307 win_gravity, size_hint_flags, border_width, internal_border_width,
11308 line_height, fringe_cols, left_fringe_width, right_fringe_width,
11309 want_fullscreen. All uses changed.
11310 (struct frame): New member column_width contaning the canonical
11311 column width, analogue to line_height. All uses changed.
11312 (struct frame): Rename members scroll_bar_pixel_width to
11313 config_scroll_bar_width, and scroll_bar_cols to
11314 config_scroll_bar_cols. All uses changed.
11315 (struct frame): New member scroll_bar_actual_width which
11316 consolidates and renames the vertical_scroll_bar_extra member of
11317 x_output, w32_output, and mac_output structures. All uses changed.
11318 (FRAME_PIXEL_HEIGHT): Rename from PIXEL_HEIGHT and moved
11319 from x/w32/macterm.h files. All uses changed. Also change code
11320 which referred to f->output_data...->pixel_height.
11321 (FRAME_PIXEL_WIDTH): Rename from PIXEL_WIDTH and moved
11322 from x/w32/macterm.h files. All uses changed. Also change code
11323 which referred to f->output_data...->pixel_width.
11324 (FRAME_LINES): Rename from FRAME_HEIGHT. All uses changed.
11325 Also change code which referred to f->height.
11326 (FRAME_COLS): Rename from FRAME_WIDTH. All uses changed.
11327 Also change code which referred to f->width.
11328 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
11329 to update new_text_lines and new_text_cols members directly.
11330 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Rename from
11331 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
11332 (FRAME_CONFIG_SCROLL_BAR_COLS): Rename from
11333 FRAME_SCROLL_BAR_COLS. All uses changed.
11334 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
11335 Rename from FRAME_LEFT_SCROLL_BAR_WIDTH and
11336 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
11337 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
11338 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
11339 (FRAME_TOTAL_COLS): Rename from FRAME_WINDOW_WIDTH.
11340 (SET_FRAME_COLS): Rename from SET_FRAME_WIDTH.
11341 (FRAME_TOTAL_COLS_ARG): Rename from FRAME_WINDOW_WIDTH_ARG.
11342 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
11343 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
11344 (FRAME_LINE_HEIGHT): Rename from CANON_Y_UNIT.
11345 Unconditionally return line_height member (it now has proper value
11346 also for non-window frames).
11347 (FRAME_COLUMN_WIDTH): Rename from CANON_X_UNIT. Unconditionally
11348 return new column_width member (rather than the default font width).
11349 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
11350 (FRAME_RIGHT_FRINGE_WIDTH): Rename from FRAME_X_... and moved
11351 from x/w32/macterm.h files. Unconditionally return corresponding
11352 member of frame structure (they now have proper values also for
11353 non-window frames).
11354 (FRAME_TOTAL_FRINGE_WIDTH): Rename from FRAME_FRINGE_WIDTH.
11355 Calculate return value from left and right widths.
11356 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
11357 internal_border_width member (has proper value for non-window frame).
11358 (FRAME_PIXEL_X_FROM_CANON_X): Rename from PIXEL_X_FROM_CANON_X.
11359 (FRAME_PIXEL_Y_FROM_CANON_Y): Rename from PIXEL_Y_FROM_CANON_Y.
11360 (FRAME_CANON_X_FROM_PIXEL_X): Rename from CANON_X_FROM_PIXEL_X.
11361 (FRAME_CANON_Y_FROM_PIXEL_Y): Rename from CANON_Y_FROM_PIXEL_Y.
11362 (FRAME_LINE_TO_PIXEL_Y): Rename from CHAR_TO_PIXEL_ROW,
11363 consolidated from xterm.h, macterm.h, and w32term.h.
11364 (FRAME_COL_TO_PIXEL_X): Rename from CHAR_TO_PIXEL_COL,
11365 consolidated from xterm.h, macterm.h, and w32term.h.
11366 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Rename from
11367 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
11368 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Rename from
11369 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
11370 (FRAME_PIXEL_Y_TO_LINE): Rename from PIXEL_TO_CHAR_ROW
11371 consolidated from x/mac/w32term.h.
11372 (FRAME_PIXEL_X_TO_COL): Rename from PIXEL_TO_CHAR_COL
11373 consolidated from x/mac/w32term.h.
11374 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Rename from
11375 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
11376 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Rename from
11377 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
11378
11379 * window.h (struct window): Rename members left to left_col,
11380 top to top_line, height to total_lines, width to total_cols,
11381 left_margin_width to left_margin_cols, right_margin_width to
11382 right_margin_cols, orig_height to orig_total_lines, orig_top to
11383 orig_top_line. All uses changed.
11384 (struct window): New members left_fringe_width, right_fringe_width,
11385 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
11386 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
11387 New macros primarily used to simplify other macros.
11388 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
11389 referred to XINT (w->width).
11390 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
11391 referred to XINT (w->height).
11392 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
11393 referred to XINT (w->width) * canon_x_unit.
11394 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
11395 referred to XINT (w->height) * canon_y_unit.
11396 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
11397 referred to XINT (w->left).
11398 (WINDOW_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_EDGE. Change
11399 all uses and code that referred to XINT (w->left) + XINT (w->width).
11400 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
11401 referred to XINT (w->top).
11402 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
11403 referred to XINT (w->top) + XINT (w->height).
11404 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
11405 referred to XINT (w->left) * canon_x_unit.
11406 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
11407 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
11408 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
11409 referred to XINT (w->top) * canon_y_unit.
11410 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
11411 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
11412 (WINDOW_LEFTMOST_P): New macro.
11413 (WINDOW_BOX_LEFT_EDGE_COL): Rename from WINDOW_LEFT_MARGIN.
11414 All uses changed.
11415 (WINDOW_BOX_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_MARGIN.
11416 All uses changed.
11417 (WINDOW_BOX_LEFT_EDGE_X): Rename from
11418 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
11419 Do not exclude left fringe width.
11420 (WINDOW_BOX_RIGHT_EDGE_X): Rename from
11421 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
11422 Do not exclude fringe widths.
11423 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
11424 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
11425 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
11426 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
11427 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
11428 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
11429 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
11430 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
11431 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
11432 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
11433 New macros. Change code which referenced corresponding
11434 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
11435 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
11436 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
11437 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
11438 allow per-window scroll-bar settings.
11439 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
11440 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
11441 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
11442 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
11443 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
11444 FRAME_SCROLL_BAR_WIDTH.
11445 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
11446 (WINDOW_SCROLL_BAR_AREA_X): New macros.
11447 (WINDOW_HEADER_LINE_HEIGHT): Rename from
11448 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
11449 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Rename from
11450 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
11451 (WINDOW_BOX_TEXT_HEIGHT): Rename from
11452 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
11453 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
11454 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
11455 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Move here from dispextern.h.
11456 (WINDOW_LEFT_MARGIN_WIDTH): Rename from
11457 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
11458 (WINDOW_RIGHT_MARGIN_WIDTH): Rename from
11459 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
11460 (window_from_coordinates): Update prototype.
11461 (Fset_window_buffer): Update EXFUN.
11462 (set_window_buffer): Update prototype.
11463
11464 * dispextern.h (struct glyph_matrix): Rename members window_left_x
11465 to window_left_col, window_top_y to window_top_line. All uses
11466 changed.
11467 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
11468 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
11469 internal_border_width is now set to 0 for non-window frames.
11470 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
11471 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
11472 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
11473 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
11474 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
11475 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
11476 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
11477 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
11478 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
11479 Move to window.h and renamed [see window.h changes].
11480 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
11481 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
11482 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
11483 Use WINDOW_TOTAL_LINES.
11484 (frame_update_line_height): Remove prototype.
11485
11486 * buffer.h (struct buffer): Rename members measured in columns:
11487 left_margin_width to left_margin_cols, right_margin_width to
11488 right_margin_cols. All uses changed.
11489 New members left_fringe_width, right_fringe_width,
11490 fringes_outside_margins for per-buffer fringe settings.
11491 New members scroll_bar_width and vertical_scroll_bar_type for
11492 per-buffer scroll bar settings.
11493
11494 * buffer.c (init_buffer_once): Set buffer_defaults and
11495 buffer_local_flags for new buffer-local variables
11496 left_fringe_width, right_fringe_width, fringes_outside_margins,
11497 scroll_bar_width, and vertical_scroll_bar_type.
11498 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
11499 default-* variables for them.
11500
11501 * dispnew.c: Make (many) trivial substitutions for renamed and
11502 new macros in dispextern.h, frame.h and window.h.
11503 (mode_line_string): No need to adjust width for mode lines, as it
11504 is already adjusted by the caller.
11505 (marginal_area_string): Handle fringes inside/outside margins.
11506
11507 * frame.c: Make (many) trivial substitutions for renamed and
11508 new macros in dispextern.h, frame.h and window.h.
11509 (make_frame): Initialize left_fringe_width, right_fringe_width,
11510 fringe_cols, scroll_bar_actual_width, border_width,
11511 internal_border_width, column_width, line_height, x_pixels_diff,
11512 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
11513 members with values suitable for a non-window frames.
11514
11515 * gtkutil.c: Make (many) trivial substitutions for renamed and
11516 new macros in dispextern.h, frame.h and window.h.
11517
11518 * indent.c: Make (few) trivial substitutions for renamed and
11519 new macros in dispextern.h, frame.h and window.h.
11520
11521 * keyboard.c: Make (many) trivial substitutions for renamed and
11522 new macros in dispextern.h, frame.h and window.h.
11523 (make_lispy_event): Use window positions returned from
11524 window_from_coordinates when constructing the lisp event for
11525 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
11526 (incorrect) values locally.
11527 (make_lispy_movement): Use window positions returned from
11528 window_from_coordinates when constructing the lisp event, rather
11529 than calculating (incorrect) values locally.
11530
11531 * scroll.c: Make (some) trivial substitutions for renamed and
11532 new macros in dispextern.h, frame.h and window.h.
11533
11534 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
11535 scroll-bars.
11536
11537 * sysdep.c: Make (few) trivial substitutions for renamed and
11538 new macros in dispextern.h, frame.h and window.h.
11539
11540 * term.c: Make (some) trivial substitutions for renamed and
11541 new macros in dispextern.h, frame.h and window.h.
11542
11543 * widget.c: Make (few) trivial substitutions for renamed and
11544 new macros in dispextern.h, frame.h and window.h.
11545
11546 * window.c: Make (many) trivial substitutions for renamed and
11547 new macros in dispextern.h, frame.h and window.h.
11548 (make_window): Initialize new members
11549 left_margin_cols, right_margin_cols, left_fringe_width,
11550 right_fringe_width, fringes_outside_margins, scroll_bar_width,
11551 and vertical_scroll_bar_type.
11552 (coordinates_in_window): Adapt to new fringe/margin positions
11553 and per-window fringes and scroll-bars.
11554 Fix bug related to incorrectly adjusting coordinates by
11555 frame's internal_border_width (the effect normally negible since
11556 the internal_border_width is typically 0 or 1 pixel, but very
11557 noticeable for an internal_border_width of e.g. 25 pixels).
11558 Upon successful return (other than ON_NOTHING), the coordinates
11559 are now always properly converted to window relative for the
11560 given display element.
11561 (window_from_coordinates): Add new parameters wx and wy to
11562 return the window relative x and y position in the returned
11563 window and part. A null arg means, don't return the position.
11564 All callers changed.
11565 (adjust_window_margins): New function which may reduce the width
11566 of the display margins if a window's text area is too small after
11567 resizing or splitting windows.
11568 (size_window): Fix bug that did not account for display margin
11569 widths when checking the minimum width of a window; use
11570 adjust_window_margins.
11571 (set_window_buffer): Call Fset_window_fringes and
11572 Fset_window_scroll_bars to setup per-window elements.
11573 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
11574 existing display margin, fringe widths, and scroll bar settings
11575 (e.g. after splitting a window or resizing the frame).
11576 All callers changed.
11577 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
11578 (Fsplit_window): Duplicate original window's display margin,
11579 fringe, and scroll-bar settings; then call Fset_window_buffer with
11580 KEEP_MARGINS non-nil. This fixes a bug which caused a split
11581 window to only preserve the display margins in one of the windows.
11582 When splitting horizontally, call adjust_window_margins on both
11583 windows to ensure that the text area of the new windows is non too
11584 narrow. This fixes a bug which could cause Emacs to trap if the
11585 width of the split window was less than the width of the display
11586 margins.
11587 (window_box_text_cols): Rename from window_internal_width.
11588 All uses changed. Adapt to per-window fringes and scroll bars.
11589 Fix bug that caused vertical separator to be subtracted also on
11590 window frames. Fix another bug that did not reduce the returned
11591 value by the columns used for display margins.
11592 (window_scroll_line_based): Fix bug related to scrolling too much
11593 when display margins are present (implicitly fixed by the fix to
11594 window_box_text_cols).
11595 (scroll_left, scroll_right): Fix bug related to scrolling too far
11596 by default when display margins are present (implicitly fixed by
11597 the fix to window_box_text_cols).
11598 (struct saved_window): Rename members left to left_col, top to
11599 top_line, width to total_cols, height to total_lines, orig_top to
11600 orig_top_line, orig_height to orig_total_lines. All uses changed.
11601 New members left_margin_cols, right_margin_cols,
11602 left_fringe_width, right_fringe_width, fringes_outside_margins,
11603 scroll_bar_width, and vertical_scroll_bar_type for saving
11604 per-window display elements.
11605 (Fset_window_configuration): Restore display margins, fringes,
11606 and scroll bar settings. This fixes a bug which caused display
11607 margins to be discarded when saving and restoring a window
11608 configuration.
11609 (save_window_save): Save display margins, fringes, and scroll bar
11610 settings. This fixes a bug which caused display margins to be
11611 discarded when saving and restoring a window configuration.
11612 (Fset_window_margins): Do nothing if display margins are not
11613 really changed. Otherwise, call adjust_window_margins to ensure
11614 the text area doesn't get too narrow. This fixes a bug which
11615 could cause Emacs to trap if setting display margins wider than
11616 the width of the window.
11617 (Fset_window_fringes): New defun to allow user to specifically set
11618 this window's fringe widths and position vs. display margins.
11619 (Fwindow_fringes): New defun to return window's actual fringe settings.
11620 (Fset_window_scroll_bars): New defun to allow user to specifically
11621 set this window's scroll bar width and position.
11622 (Fwindow_scroll_bars): New defun to return window's actual scroll
11623 bar settings.
11624 (compare_window_configurations): Also compare display margins,
11625 fringes, and scroll bar settings.
11626 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
11627
11628 * xdisp.c: Make (many) trivial substitutions for renamed and
11629 new macros in dispextern.h, frame.h and window.h.
11630 (window_box_width): Adapt to per-window fringes and scroll bars,
11631 and new fringe vs. display margin position. Note that returned
11632 value is no longer guaranteed to be a whole multiple of the frame
11633 column width, since per-window fringes may now be any width.
11634 (window_box_left_offset): New function like window_box_left, but
11635 value is relative to left border of window (rather than frame).
11636 (window_box_right_offset): New function like window_box_right,
11637 but value is relative to left border of window.
11638 (window_box_left): Adapt to per-window fringes and scroll bars,
11639 and new fringe vs. display margin position. Simplify by using
11640 WINDOW_LEFT_EDGE_X and window_box_left_offset.
11641 (window_box): Allow null args for unnecessary return values;
11642 change/simplify relevant callers.
11643 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
11644 and new fringe vs. display margin position.
11645 Use window_box_left_offset and window_box_right_offset
11646 (get_glyph_string_clip_rect): Adapt to per-window fringes and
11647 scroll bars, and new fringe vs. display margin position.
11648 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
11649 (draw_fringe_bitmap): Rework to handle per-window fringes and new
11650 fringe vs. display margin position.
11651 (hscroll_window_tree): Use window_box_width instead of window_box.
11652 (redisplay_window): Adapt to per-window scroll bars.
11653 (draw_glyphs): Rework to handle per-window fringes and scroll
11654 bars, and new fringe vs. display margin position.
11655 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
11656 (x_clear_end_of_line): Adapt to per-window fringes and scroll
11657 bars, and new fringe vs. display margin position. Fix bug which
11658 increased total width of full_width rows by width of scroll bars
11659 although window's total width already includes that.
11660 (x_fix_overlapping_area): Simplify using window_box_left_offset.
11661 (expose_area): Simplify using window_box_left_offset.
11662 (x_draw_vertical_border): Handle per-window scroll bar settings,
11663 mixing windows with left, right and no scroll bars.
11664
11665 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
11666 where it's used in x_list_fonts (for clarity).
11667 (frame_update_line_height): Remove unused function; functionality
11668 is now done directly when setting the default font in x_set_font.
11669
11670 * xfns.c: Make (many) trivial substitutions for renamed and
11671 new macros in dispextern.h, frame.h and window.h.
11672
11673 * xmenu.c: Make (some) trivial substitutions for renamed and
11674 new macros in dispextern.h, frame.h and window.h.
11675
11676 * xterm.h (struct x_output): Move members left_pos, top_pos,
11677 border_width, pixel_height, pixel_width, line_height,
11678 internal_border_width, vertical_scroll_bar_extra,
11679 left_fringe_width, right_fringe_width, fringe_cols,
11680 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
11681 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
11682 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
11683 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
11684 (PIXEL_WIDTH, PIXEL_HEIGHT)
11685 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
11686 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
11687 frame.h and renamed [see frame.h changes].
11688 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
11689 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
11690 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
11691 and renamed [see frame.h changes].
11692
11693 * xterm.c: Make (several) trivial substitutions for renamed and
11694 new macros in dispextern.h, frame.h and window.h.
11695 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
11696 (scroll_run): Adapt to new fringe position.
11697 (glyph_rect): Use window coordinates returned from
11698 window_from_coordinates rather than frame_to_window_pixel_xy.
11699 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
11700 scroll-bars.
11701 (handle_one_xevent): Simplify a USE_GTK conditional.
11702 (x_clip_to_row): Remove superfluous whole_line_p arg and code
11703 (fringes are now inside margins, i.e. always in the clipping area).
11704 All callers changed.
11705 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
11706 directly, then call compute_fringe_widths. Don't call
11707 frame_update_line_height.
11708
11709 * w32term.h (struct w32_output): Move members left_pos, top_pos,
11710 border_width, pixel_height, pixel_width, line_height,
11711 internal_border_width, vertical_scroll_bar_extra,
11712 left_fringe_width, right_fringe_width, fringe_cols,
11713 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
11714 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
11715 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
11716 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
11717 (PIXEL_WIDTH, PIXEL_HEIGHT)
11718 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
11719 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
11720 frame.h and renamed [see frame.h changes].
11721 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
11722 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
11723 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
11724 and renamed [see frame.h changes].
11725
11726 * w32term.c: Make (several) trivial substitutions for renamed and
11727 new macros in dispextern.h, frame.h and window.h.
11728 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
11729 (glyph_rect): Use window coordinates returned from
11730 window_from_coordinates rather than frame_to_window_pixel_xy.
11731 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
11732 scroll-bars.
11733 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
11734 (fringes are now inside margins, i.e. always in the clipping area).
11735 All callers changed.
11736 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
11737 directly, then call compute_fringe_widths. Don't call
11738 frame_update_line_height.
11739
11740 * w32console.c: Make (few) trivial substitutions for renamed and
11741 new macros in dispextern.h, frame.h and window.h.
11742
11743 * w32fns.c: Make (many) trivial substitutions for renamed and
11744 new macros in dispextern.h, frame.h and window.h.
11745
11746 * w32menu.c: Make (few) trivial substitutions for renamed and
11747 new macros in dispextern.h, frame.h and window.h.
11748
11749 * macterm.h (struct mac_output): Move members left_pos, top_pos,
11750 border_width, pixel_height, pixel_width, line_height,
11751 internal_border_width, vertical_scroll_bar_extra,
11752 left_fringe_width, right_fringe_width, fringe_cols,
11753 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
11754 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
11755 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
11756 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
11757 (PIXEL_WIDTH, PIXEL_HEIGHT)
11758 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
11759 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
11760 frame.h and renamed [see frame.h changes].
11761 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
11762 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
11763 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
11764 and renamed [see frame.h changes].
11765
11766 * macterm.c: Make (several) trivial substitutions for renamed and
11767 new macros in dispextern.h, frame.h and window.h.
11768 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
11769 (glyph_rect): Use window coordinates returned from
11770 window_from_coordinates rather than frame_to_window_pixel_xy.
11771 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
11772 scroll-bars.
11773 (x_clip_to_row): Remove superfluous whole_line_p arg and code
11774 (fringes are now inside margins, i.e. always in the clipping area).
11775 All callers changed.
11776 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
11777 directly, then call compute_fringe_widths. Don't call
11778 frame_update_line_height.
11779
11780 * macfns.c: Make (several) trivial substitutions for renamed and
11781 new macros in dispextern.h, frame.h and window.h.
11782 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
11783
11784 * macmenu.c: Make (few) trivial substitutions for renamed and
11785 new macros in dispextern.h, frame.h and window.h.
11786
11787 * msdos.h (struct x_output): Remove members left_pos, top_pos,
11788 and line_height, and use corresponding new members in struct
11789 frame. All uses changed.
11790 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
11791 superseeded by corresponding macros in frame.h.
11792
11793 * msdos.c: Make (several) trivial substitutions for renamed and
11794 new macros in dispextern.h, frame.h and window.h.
11795 (IT_note_mouse_highlight): Use updated window coordinates returned
11796 by window_from_coordinates, rather than adjusting them locally.
11797 (internal_terminal_init): No need to initialize line_height here;
11798 it now defaults to 1.
11799
11800 2003-05-24 Stefan Monnier <monnier@cs.yale.edu>
11801
11802 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
11803 dropping `down' events.
11804
11805 2003-05-24 Andreas Schwab <schwab@suse.de>
11806
11807 * coding.c (find_safe_codings): Fix last change.
11808
11809 2003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
11810
11811 * xfns.c (x_window): Fix typo from 2003-05-21 change.
11812
11813 2003-05-23 Stefan Monnier <monnier@cs.yale.edu>
11814
11815 * xdisp.c (display_mode_element): Increase max depth.
11816 Simplify the error handling code. Use a different error string
11817 for the case where we hit the depth limit.
11818
11819 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
11820
11821 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
11822
11823 2003-05-21 Stefan Monnier <monnier@cs.yale.edu>
11824
11825 * intervals.c (get_local_map): Don't get char-property of previous
11826 point any more: get_pos_property already does it and better.
11827
11828 2003-05-21 Dave Love <fx@gnu.org>
11829
11830 [Merged from unicode branch.]
11831
11832 * xfns.c (x_window, x_window): Use use_xim.
11833
11834 * xterm.c (use_xim): Initialize.
11835 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
11836 (x_term_init): Maybe set use_xim.
11837
11838 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
11839
11840 2003-05-21 Jason Rumney <jasonr@gnu.org>
11841
11842 * unexw32.c (_start): Remove _fmode initialization.
11843
11844 * emacs.c (main) [WINDOWSNT]: Move it here.
11845
11846 2003-05-20 Dave Love <fx@gnu.org>
11847
11848 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
11849
11850 2003-05-19 Richard M. Stallman <rms@gnu.org>
11851
11852 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
11853 as value for QCfont attribute.
11854 (realize_default_face): lface should already exist; crash if not.
11855 Specify 0 for FORCE_P when calling set_lface_from_font_name.
11856
11857 * frame.c (Fignore_event): Doc fix.
11858
11859 2003-05-19 Kenichi Handa <handa@m17n.org>
11860
11861 * coding.c (decode_coding_string): Handle post-read-conversion
11862 even if the coding doesn't require decoding.
11863
11864 2003-05-18 Richard M. Stallman <rms@gnu.org>
11865
11866 * callproc.c (Fcall_process_region): Doc fix.
11867
11868 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
11869
11870 * lread.c (Fload): Print a message if package is obsolete.
11871
11872 * window.c (Fselect_window): Add optional `norecord' arg.
11873 (select_window_1): Fold into Fselect_window.
11874 (select_window_norecord): New function.
11875 (temp_output_buffer_show): Use it. Preserve current buffer.
11876
11877 * window.h (Fselect_window): Update declaration.
11878
11879 * window.c (delete_window, Fother_window, Fset_window_configuration):
11880 * minibuf.c (read_minibuf):
11881 * macterm.c (x_new_focus_frame):
11882 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
11883 * callint.c (Fcall_interactively):
11884 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
11885
11886 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
11887
11888 2003-05-17 David Kastrup <dak@gnu.org>
11889
11890 * process.c (read_process_output): Back out change from 2003-03-09.
11891
11892 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
11893
11894 * editfns.c (get_pos_property): Don't assume that `object' = nil.
11895
11896 * textprop.c (text_property_stickiness): New arg `buffer'.
11897
11898 * intervals.h (text_property_stickiness): New arg `buffer'.
11899 (get_pos_property): Declare.
11900
11901 * intervals.c (get_local_map): Use get_pos_property, to obey
11902 stickiness and empty overlays.
11903 (create_root_interval, graft_intervals_into_buffer): Use BEG.
11904 (merge_properties, intervals_equal, merge_properties_sticky):
11905 Use XCAR, XCDR.
11906 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
11907
11908 2003-05-17 Richard M. Stallman <rms@gnu.org>
11909
11910 * minibuf.c (read_minibuf): If buffer is empty, record the default
11911 in the history.
11912 (Fminibuffer_complete_word): When deleting the overlap, take account
11913 of its real position.
11914
11915 * fns.c (map_char_table): Fix previous change.
11916
11917 * syntax.c (find_defun_start):
11918 When open_paren_in_column_0_is_defun_start,
11919 return beginning of buffer.
11920
11921 * lisp.h (map_char_table): Declare added arg.
11922
11923 * fns.c (map_char_table): New arg TABLE gets the master table.
11924 All calls changed.
11925 Process default and inheritance, resorting to Faref if necessary.
11926
11927 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
11928 (Faccessible_keymaps): Pass new arg to map_char_table.
11929
11930 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
11931
11932 * casetab.c (set_case_table): Pass new arg to map_char_table.
11933
11934 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
11935
11936 * lisp.h (specbinding_func): New typedef.
11937 (struct specbinding): Use specbinding_func, to put the `volatile'
11938 in the right place.
11939
11940 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
11941 to avoid GCC warning.
11942
11943 2003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org>
11944
11945 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
11946
11947 2003-05-15 Stefan Monnier <monnier@cs.yale.edu>
11948
11949 * keyboard.c (apply_modifiers): Don't fill the other cache.
11950
11951 2003-05-14 Stefan Monnier <monnier@cs.yale.edu>
11952
11953 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
11954
11955 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
11956 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
11957 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
11958 (Fset_window_configuration, Fcurrent_window_configuration)
11959 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
11960 (Fpos_visible_in_window_p, mark_window_cursors_off)
11961 (window_internal_height, window_internal_width, Frecenter)
11962 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
11963 (replace_buffer_in_all_windows, init_window_once, init_window)
11964 (syms_of_window, keys_of_window): Move from lisp.h.
11965 * lisp.h: Move window.c declarations to window.h.
11966
11967 * bytecode.c: Include window.h.
11968 * emacs.c: Include window.h.
11969
11970 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
11971 (keyremap): Add `parent' field.
11972 (keyremap_step): Use it. Remove `parent' argument.
11973 (read_key_sequence): Setup and use the new `parent' field.
11974
11975 2003-05-11 Stefan Monnier <monnier@cs.yale.edu>
11976
11977 * keyboard.c (adjust_point_for_property): Ensure termination.
11978
11979 2003-05-10 Stefan Monnier <monnier@cs.yale.edu>
11980
11981 * keyboard.c (follow_key): Remove dead variable `did_meta'.
11982 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
11983 duplicated handling of function-key-map and key-translation-map
11984 in read_key_sequence.
11985 (read_key_sequence): Use them.
11986
11987 * keyboard.c (adjust_point_for_property): Try harder to move point
11988 to the non-sticky end of an invisible property.
11989
11990 * xdisp.c (single_display_prop_intangible_p): Make `space' display
11991 property intangible as well.
11992
11993 2003-05-10 Andreas Schwab <schwab@suse.de>
11994
11995 * xmenu.c (single_menu_item): Change last parameter to void* to
11996 avoid warning.
11997
11998 2003-05-09 Richard M. Stallman <rms@gnu.org>
11999
12000 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
12001 Bind Qinhibit_modification_hooks to t so there will be no GC.
12002 Rename local `tem' to `save_deactivate_mark'.
12003
12004 * eval.c (specpdl_ptr): Declare volatile.
12005 (unbind_to): Copy the whole binding and decrement specpdl_ptr
12006 before doing the work of unbinding it.
12007
12008 * lisp.h (struct specbinding): Declare elements volatile.
12009 (specpdl_ptr): Declare volatile.
12010
12011 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
12012
12013 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
12014 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
12015
12016 2003-05-08 Dave Love <fx@gnu.org>
12017
12018 * coding.c (Vlast_coding_system_used): Doc fix.
12019
12020 2003-05-07 Jason Rumney <jasonr@gnu.org>
12021
12022 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
12023 when system does not support them.
12024
12025 2003-05-05 Stefan Monnier <monnier@cs.yale.edu>
12026
12027 * fileio.c (Qwrite_region_annotate_functions): New var.
12028 (build_annotations): Use it to process the global part of the hook.
12029 (syms_of_fileio): Init and staticpro it.
12030
12031 * keyboard.c (safe_run_hooks_error): Display a message instead of
12032 silently ignoring the error.
12033
12034 2003-05-03 Stefan Monnier <monnier@cs.yale.edu>
12035
12036 * keyboard.c (input_available_signal): Mark static.
12037 (menu_bar_items): Use map_keymap.
12038 (menu_bar_one_keymap): Remove.
12039 (menu_bar_item): Adjust arglist (for use in map_keymap).
12040 Properly hide a second binding when not both are keymaps.
12041
12042 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
12043 (single_keymap_panes): Use it and map_keymap.
12044 (single_menu_item): Use skp as well.
12045
12046 * keymap.h (map_keymap_function_t): New type.
12047 (map_keymap): Declare.
12048
12049 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
12050 (map_keymap_call, Fmap_keymap): New functions.
12051 (syms_of_keymap): Defsubr map-keymap.
12052
12053 2003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12054
12055 * gtkutil.c (create_dialog, make_widget_for_menu_item)
12056 (make_menu_item, create_menus, xg_update_menu_item): Don't call
12057 ..._with_mnemonic functions for menu items.
12058
12059 2003-05-01 Kenichi Handa <handa@m17n.org>
12060
12061 * coding.c (coding_system_accept_latin_extra_p): Delete this
12062 function.
12063 (find_safe_codings): Pay attention to
12064 the property tranlsation-table-for-encode of each codings.
12065 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
12066
12067 2003-05-01 Stefan Monnier <monnier@cs.yale.edu>
12068
12069 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
12070
12071 2003-04-30 Stefan Monnier <monnier@cs.yale.edu>
12072
12073 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
12074
12075 * lisp.h (CHECK): Wrap args in parenthesis.
12076 (specbind): Fix doc: symbol = Qnil is not supported any more.
12077
12078 * bytecode.c (Fbyte_code) <unwind-protect>:
12079 Use Fprogn rather than 0 and Qnil.
12080
12081 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
12082 `double', and `triple' modifiers as well.
12083
12084 2003-04-30 Richard M. Stallman <rms@gnu.org>
12085
12086 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
12087
12088 * alloc.c (abort_on_gc): New variable.
12089 (Fgarbage_collect): Abort if abort_on_gc is set.
12090
12091 * lisp.h (abort_on_gc): Add decl.
12092
12093 * eval.c (Fsignal): Clear abort_on_gc.
12094
12095 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
12096 Reinit FORMAT_START and END before second scan.
12097
12098 * xdisp.c (move_it_vertically_backward): Do the final big else
12099 even if nlines is 0.
12100
12101 * xdisp.c (redisplay_internal): Finish the per-frame loop
12102 even if redisplay is suspended by input.
12103
12104 2003-04-24 Andrew Choi <akochoi@shaw.ca>
12105
12106 * macterm.c (x_list_fonts): Return all fonts that match if
12107 maxnames = -1.
12108
12109 2003-04-25 Kenichi Handa <handa@m17n.org>
12110
12111 * syntax.c (skip_chars): Fix previous change.
12112
12113 2003-04-24 Kenichi Handa <handa@m17n.org>
12114
12115 * syntax.c (skip_chars): Make the code faster by using the common
12116 technique of *p, *stop, and *endp.
12117
12118 2003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12119
12120 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
12121 tool_bar_items so GTK tool bar expose callback does not access items
12122 being updated.
12123
12124 2003-04-19 Stefan Monnier <monnier@cs.yale.edu>
12125
12126 * eval.c (Fapply): Undo last change and add a comment about why.
12127
12128 2003-04-18 Miles Bader <miles@gnu.org>
12129
12130 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
12131 pickier PARSE_MULTIBYTE_SEQ.
12132
12133 2003-04-17 Stefan Monnier <monnier@cs.yale.edu>
12134
12135 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
12136 Use XCDR, XCAR, CONSP.
12137 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
12138 (Fapply): Remove unnecessary GCPRO.
12139
12140 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
12141
12142 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
12143
12144 * buffer.h: Don't hardcode BEG==1.
12145
12146 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
12147
12148 2003-04-16 Richard M. Stallman <rms@gnu.org>
12149
12150 * xdisp.c (try_window, try_window_reusing_current_matrix):
12151 When at end of window, set window_end_pos to Z-ZV.
12152
12153 * buffer.c (Foverlay_recenter): Doc fix.
12154
12155 2003-04-14 Stefan Monnier <monnier@cs.yale.edu>
12156
12157 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
12158
12159 2003-04-14 Andrew Choi <akochoi@shaw.ca>
12160
12161 * macterm.c (mac_check_for_quit_char): Don't check more often than
12162 once a second.
12163
12164 2003-04-11 Stefan Monnier <monnier@cs.yale.edu>
12165
12166 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
12167 specially, so that they can't hide an implicit switch-frame event.
12168 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
12169 (head_table): Use switch-frame as event_kind for select-window.
12170 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
12171
12172 * editfns.c (Fformat): Lisp_Object/int mixup.
12173 (format2): Remove unused var numargs.
12174
12175 2003-04-11 Kenichi Handa <handa@m17n.org>
12176
12177 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
12178 (Qafter_insert_file_set_coding): New variable.
12179 (syms_of_fileio): Initialize and staticpro it. Delete declaration
12180 for after-insert-file-adjust-coding-function.
12181 (Finsert_file_contents): Call Qafter_insert_file_set_coding
12182 instead of Vafter_insert_file_adjust_coding_function.
12183
12184 2003-04-11 Kenichi Handa <handa@m17n.org>
12185
12186 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
12187
12188 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
12189 string. Callers changed.
12190
12191 2003-04-10 Kenichi Handa <handa@m17n.org>
12192
12193 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
12194 (syms_of_fileio): Declare it as a lisp variable.
12195 (Finsert_file_contents):
12196 Call Vafter_insert_file_adjust_coding_function before calling
12197 decode-format.
12198
12199 2003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12200
12201 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
12202 get GtkAdjustment as widget now is a GtkRange.
12203
12204 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
12205 GtkRange to avoid memory leak.
12206
12207 2003-04-09 Kenichi Handa <handa@m17n.org>
12208
12209 * xfaces.c (Vface_font_rescale_alist): New variable.
12210 (struct font_name): New member rescale_ratio.
12211 (font_rescale_ratio): New function.
12212 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
12213 (better_font_p): On comparing point sized, pay attention to
12214 recale_ratio member of fonts.
12215 (build_scalable_font_name): Reflect font->rescale_ratio in the
12216 font name.
12217 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
12218
12219 * lread.c (read1): Before calling index, check if the 2nd
12220 arguemnt is in ASCII range.
12221
12222 2003-04-08 Richard M. Stallman <rms@gnu.org>
12223
12224 * fileio.c (Ffile_symlink_p): Doc fix.
12225
12226 * editfns.c (Fformat): Translate positions of text properties
12227 in the format string to apply them to the result.
12228
12229 * fileio.c (Finsert_file_contents): Doc fix.
12230 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
12231
12232 2003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
12233
12234 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
12235
12236 2003-04-08 Steven Tamm <steventamm@mac.com>
12237
12238 * mac.c (init_mac_osx_environment): Switch libexec and bin so
12239 that self-contained application finds libexec files.
12240
12241 2003-04-08 Kenichi Handa <handa@m17n.org>
12242
12243 * coding.c (code_convert_region_unwind):
12244 Set Vlast_coding_system_used to the argument.
12245 (code_convert_region): If post-read-conversion function changed
12246 the value of last-coding-sytem, keep the new value in
12247 coding->symbol so that it won't be overridden.
12248 (run_pre_post_conversion_on_str): Likewise.
12249 (coding_system_accept_latin_extra_p): New function.
12250 (find_safe_codings): Pay attention to characters registered in
12251 latin-extra-code-table.
12252
12253 2003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
12254
12255 * Makefile.in (md5.o): Add missing dependency info.
12256
12257 2003-04-06 Richard M. Stallman <rms@gnu.org>
12258
12259 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
12260
12261 * marker.c (verify_bytepos): New function.
12262
12263 * intervals.c (set_intervals_multibyte_1): When becoming
12264 multibyte, adjust right and left child sizes to a whole set of
12265 characters. If an interval gets zero total-length, delete it.
12266 If an interval consists of just its children, delete one of them.
12267
12268 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
12269 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
12270
12271 * alloc.c (VALIDATE_LISP_STORAGE): Macro deleted.
12272 All calls deleted.
12273 (lisp_malloc): Do the work here directly.
12274
12275 2003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
12276
12277 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
12278 char tables.
12279
12280 2003-04-04 Kenichi Handa <handa@m17n.org>
12281
12282 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
12283 destructively change "%S" to "%s".
12284
12285 2003-04-03 Miles Bader <miles@gnu.org>
12286
12287 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
12288 always set.
12289
12290 2003-04-01 Dave Love <fx@gnu.org>
12291
12292 * xfns.c (xpm_lookup_color): Grok "opaque".
12293
12294 2003-03-31 Andrew Choi <akochoi@shaw.ca>
12295
12296 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
12297 parent window ID.
12298
12299 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
12300
12301 * macterm.h (struct mac_output): Define x_pixels_diff and
12302 y_pixels_diff.
12303
12304 2003-03-31 Juanma Barranquero <lektu@terra.es>
12305
12306 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
12307 blockinput.h and files included from it.
12308
12309 2003-03-31 Kim F. Storm <storm@cua.dk>
12310
12311 The following changes consolidates the common code related to
12312 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
12313 files into frame.c.
12314
12315 * frame.c: Include blockinput.h.
12316 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
12317 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
12318 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
12319 related vars here.
12320 (struct frame_parm_table, frame_parms): New table for describing
12321 frame parameters and their associated Q-variable.
12322 The order of the parameters corresponds to the sequence of the
12323 frame_parm_handlers table in redisplay_interface.
12324 (x_fullscreen_move, x_set_frame_parameters)
12325 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
12326 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
12327 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
12328 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
12329 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
12330 Generic functions for processing of frame parameters.
12331 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
12332 (display_x_get_resource, x_get_resource_string): Functions for
12333 generic access to X resources.
12334 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
12335 (x_default_parameter, Fx_parse_geometry): Functions for generic
12336 access to frame parameters.
12337 (x_figure_window_size): Generic calculation of frame size.
12338 Fixed to add space needed for tool bar. Also setup size_hint_flags.
12339 (syms_of_frame): Intern and staticpro frame parameter variables.
12340 Defvar_lisp Vx_resource_class and Vx_resource_name here.
12341 Defsubr Sx_get_resource and Sx_parse_geometry.
12342
12343 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
12344 parameter related vars defined in frame.c.
12345 (EMACS_CLASS): Define here.
12346 (enum FULLSCREEN_*): Define here.
12347 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
12348 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
12349 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
12350 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
12351 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
12352 (x_set_visibility, x_set_autoraise, x_set_autolower)
12353 (x_set_unsplittable, x_set_vertical_scroll_bars)
12354 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
12355 (x_figure_window_size): Add prototypes.
12356
12357 * dispextern.h (frame_parm_handler): New typedef.
12358 (struct redisplay_interface): New member frame_parm_handlers.
12359 (enum resource_types): Move declaration here.
12360 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
12361 (x_default_parameter): Add prototypes.
12362
12363 * window.c: Remove extern decl for frame parameter vars.
12364 (change_window_heights): New generic function;
12365 replaces x_change_window_heights. All users changed.
12366
12367 * window.h (change_window_heights): Add prototype.
12368
12369 * xfaces.c: Remove extern decl for frame parameter vars.
12370
12371 * xterm.h (EMACS_CLASS): Remove. Use generic define.
12372 (struct w32_display_info): Fix type of xrdb member.
12373 (enum FULLSCREEN_*): Remove.
12374 Remove prototypes for generic functions (in frame.h).
12375
12376 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
12377 parameters now defined in frame.h and frame.c.
12378 (Vx_resource_name): Remove. Use generic var.
12379 (enum x_frame_parms): Remove (bogus, unused enum).
12380 (check_x_display_info): Make non-static (for frame.c).
12381 (struct x_frame_parm_table, x_frame_parms): Remove.
12382 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
12383 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
12384 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
12385 (x_change_window_heights, x_set_autoraise, x_set_autolower)
12386 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
12387 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
12388 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
12389 Remove. Use generic functions instead.
12390 (enum resource_types): Remove.
12391 (x_set_scroll_bar_default_width): New global function (for frame.c).
12392 (Fx_create_frame): Depend on x_figure_window_size to add space for
12393 toolbar and setup size_hint_flags.
12394 (x_frame_parm_handlers): New table for redisplay_interface.
12395 (syms_of_xfns): Don't intern/staticpro removed vars.
12396
12397 * xterm.c: Remove unnecessary extern declarations.
12398 (x_fullscreen_adjust): Remove. Use generic instead.
12399 (x_redisplay_interface): Add x_frame_parm_handlers member.
12400
12401 * w32gui.h (XrmDatabase): New (dummy) typedef.
12402
12403 * w32term.h (EMACS_CLASS): Remove. Use generic define.
12404 (struct w32_display_info): Fix type of xrdb member.
12405 (enum FULLSCREEN_*): Remove.
12406 (x_fullscreen_adjust): Remove prototype.
12407
12408 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
12409 parameters now defined in frame.h and frame.c.
12410 (Vx_resource_name): Remove. Use generic var.
12411 (enum x_frame_parms): Remove (bogus, unused enum).
12412 (check_x_display_info): Make non-static (for frame.c).
12413 (struct x_frame_parm_table, x_frame_parms): Remove.
12414 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
12415 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
12416 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
12417 (x_change_window_heights, x_set_autoraise, x_set_autolower)
12418 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
12419 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
12420 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
12421 Remove. Use generic functions instead.
12422 (enum resource_types): Remove.
12423 (x_set_scroll_bar_default_width): New global function (for frame.c).
12424 (Fx_create_frame): Depend on x_figure_window_size to add space for
12425 toolbar and setup size_hint_flags.
12426 (w32_frame_parm_handlers): New table for redisplay_interface.
12427 (syms_of_w32fns): Don't intern/staticpro removed vars.
12428
12429 * w32term.c: Remove unnecessary extern declarations.
12430 (x_fullscreen_adjust): Remove. Use generic instead.
12431 (x_redisplay_interface): Add w32_frame_parm_handlers member.
12432
12433 * w32reg.c (x_get_string_resource): Use XrmDatabase.
12434
12435 * macgui.h (XrmDatabase): New (dummy) typedef.
12436
12437 * macterm.h (EMACS_CLASS): Remove.
12438 (struct mac_display_info): Add xrdb member.
12439 (struct mac_output): Add want_fullscreen member.
12440
12441 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
12442 parameters now defined in frame.h and frame.c.
12443 (Vx_resource_name): Remove. Use generic var.
12444 (check_x_display_info): Make non-static (for frame.c).
12445 (struct x_frame_parm_table, x_frame_parms): Remove.
12446 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
12447 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
12448 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
12449 (x_change_window_heights, x_set_autoraise, x_set_autolower)
12450 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
12451 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
12452 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
12453 Remove. Use generic functions instead.
12454 (enum resource_types): Remove.
12455 (x_set_scroll_bar_default_width): New global function (for frame.c).
12456 (mac_frame_parm_handlers): New table for redisplay_interface.
12457 (syms_of_macfns): Don't intern/staticpro removed vars.
12458
12459 * macterm.c: Remove unnecessary extern declarations.
12460 (x_redisplay_interface): Add mac_frame_parm_handlers member.
12461
12462 * Makefile.in (frame.o): Add dependency on blockinput.h and files
12463 included from it (atimer.h and systime.h).
12464
12465 2003-03-30 Andreas Schwab <schwab@suse.de>
12466
12467 * xdisp.c (x_insert_glyphs): Fix swapped width and height
12468 parameters for shift_glyphs_for_insert.
12469
12470 * macterm.c (x_redisplay_interface): Add missing entry for
12471 draw_vertical_window_border.
12472
12473 2003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
12474
12475 * fileio.c (Fexpand_file_name): In the no-handler case, after
12476 expanding, look again for a handler and invoke it. This is needed
12477 for filenames like "/foo/../user@host:/bar/../baz" -- the first
12478 expansion produces "/user@host:/bar/../baz" which needs to be
12479 expanded again for the finame result "/user@host:/baz".
12480
12481 2003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12482
12483 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
12484 of area to be redrawn for better performance.
12485
12486 2003-03-28 Stefan Monnier <monnier@cs.yale.edu>
12487
12488 * xterm.c (take_vertical_position_into_account): Remove.
12489 (xt_action_hook): Call set_vertical_scroll_bar if needed.
12490 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
12491 (xm_scroll_callback, x_create_toolkit_scroll_bar)
12492 (x_set_toolkit_scroll_bar_thumb): Simplify.
12493 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
12494 (XTread_socket): Remove unused var.
12495 (x_make_frame_invisible): Replace goto with else.
12496
12497 * xdisp.c (set_vertical_scroll_bar): New fun.
12498 (redisplay_window): Use it.
12499
12500 2003-03-26 Richard M. Stallman <rms@gnu.org>
12501
12502 * xdisp.c (update_tool_bar): Recompute tool bar if
12503 update_mode_lines is set. Set w->update_mode_line
12504 only if the tool bar contents actually change.
12505 (update_menu_bar): Undo previous change.
12506
12507 2003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12508
12509 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
12510 (xg_frame_set_char_size): Calculate scroll bar width before frame
12511 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
12512 (xg_separator_p): Check for all documented separator types.
12513 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
12514 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
12515
12516 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
12517 so tool bar gets updated.
12518
12519 2003-03-26 Stefan Monnier <monnier@cs.yale.edu>
12520
12521 * data.c (store_symval_forwarding): Re-instate part of the code
12522 that was deleted with too much enthusiasm.
12523
12524 2003-03-25 Stefan Monnier <monnier@cs.yale.edu>
12525
12526 * data.c (store_symval_forwarding): Delete special read-only
12527 hack for type == -1, since we now use ->constant instead.
12528 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
12529
12530 * buffer.c (overlays_in): Declare static.
12531 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
12532 `constant' field rather than the variable's `type' field.
12533
12534 2003-03-24 Andrew Choi <akochoi@shaw.ca>
12535
12536 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
12537
12538 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
12539
12540 * fns.c [MAC_OSX]: Do not redefine vector.
12541
12542 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
12543
12544 * macgui.h: Remove definition of No_Cursor.
12545
12546 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
12547
12548 * xdisp.c: Define No_Cursor.
12549 (x_write_glyphs, notice_overwritten_cursor)
12550 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
12551 (note_mouse_highlight): Remove Mac-specific code.
12552 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
12553
12554 2003-03-24 John Paul Wallington <jpw@gnu.org>
12555
12556 * xdisp.c (redisplay_window): If mini window's buffer is not
12557 empty, then redisplay it like other windows.
12558
12559 2003-03-23 Kim F. Storm <storm@cua.dk>
12560
12561 * w32term.c (w32_draw_window_cursor): Fix last change.
12562
12563 2003-03-23 Kenichi Handa <handa@m17n.org>
12564
12565 * alloc.c (make_string_from_bytes, make_specified_string):
12566 Add `const' for the arg CONTENTS.
12567
12568 * lisp.h (make_string_from_bytes, make_specified_string):
12569 Prototypes adjusted.
12570
12571 2003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12572
12573 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
12574
12575 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
12576 (XG_SB_RANGE): New define.
12577
12578 * gtkutil.c (xg_fixed_handle_expose): New function.
12579 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
12580 expose events.
12581 (xg_update_scrollbar_pos): Take two more arguments, left and width
12582 of scroll bar including borders.
12583 Clear left and right part outside scroll bar separately as some
12584 themes have bars that are not an even number of pixels.
12585 Don't set reallocate_redraws, don't call
12586 gdk_window_process_all_updates.
12587 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
12588 so no need to change it. Calculate size and value with XG_SB_RANGE.
12589
12590 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
12591 Pass left and width of scroll bar including borders to
12592 xg_update_scrollbar_pos.
12593
12594 2003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
12595
12596 * Makefile.in: Make sure space precedes end-of-line backslashes.
12597
12598 2003-03-22 Kim F. Storm <storm@cua.dk>
12599
12600 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
12601 Add generic versions here. Remove system specific versions
12602 defined elsewhere.
12603
12604 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
12605 Add prototypes.
12606
12607 * xterm.h (STORE_NATIVE_RECT): New macro.
12608
12609 2003-03-21 Kim F. Storm <storm@cua.dk>
12610
12611 * xdisp.c (get_glyph_string_clip_rect):
12612 Use FRAME_INTERNAL_BORDER_WIDTH.
12613
12614 * dispextern.h (struct redisplay_interface): Add active_p
12615 argument to draw_window_cursor member. All uses changed.
12616
12617 2003-03-21 Kim F. Storm <storm@cua.dk>
12618
12619 The following changes consolidate code related to writing and
12620 inserting glyphs, exposing frame, the tool bar, the mouse face,
12621 the output cursor, and help echo from xterm.c, w32term.c and
12622 macterm.c into xdisp.c. It also generalizes the use of the
12623 window_part enum instead of using numeric values throughout.
12624
12625 * xdisp.c: Consolidate gui-independent code here.
12626 Include keymap.h.
12627 (Qhelp_echo): Import.
12628 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
12629 (help_echo_string, help_echo_window, help_echo_object)
12630 (previous_help_echo_string, help_echo_pos): Declare here.
12631 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
12632 (estimate_mode_line_height): Define here. Handle windowing
12633 systems directly (without using estimate_mode_line_height_hook).
12634 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
12635 (update_window_cursor, update_cursor_in_window_tree)
12636 (fast_find_position, fast_find_string_pos)
12637 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
12638 (expose_area, expose_line, expose_overlaps, expose_window)
12639 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
12640 declared static as they are only used locally in xdisp.c.
12641 (draw_glyphs): Rename from x_draw_glyphs and make static.
12642 (tool_bar_item_info, notice_overwritten_cursor): Make static.
12643 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
12644 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
12645 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
12646 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
12647 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
12648 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
12649 (note_mouse_highlight, x_clear_window_mouse_face)
12650 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
12651 (x_intersect_rectangles): New generic functions for use by xdisp.c
12652 and GUI front-ends.
12653 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
12654 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
12655
12656 * dispextern.h (Display_Info): Generic typedef for *_display_info.
12657 (NativeRectangle): Generic typedef for rectangle type.
12658 (enum window_part): Move here from window.c.
12659 (struct redisplay_interface): New members flush_display_optional,
12660 define_frame_cursor, clear_frame_area, draw_window_cursor,
12661 draw_vertical_window_border, shift_glyphs_for_insert.
12662 Rename member clear_mouse_face to clear_window_mouse_face.
12663 (estimate_mode_line_height_hook): Remove hook.
12664 (auto_raise_tool_bar_buttons_p): Don't declare extern.
12665 (tool_bar_item_info): Remove prototype.
12666 (help_echo_string, help_echo_window, help_echo_object)
12667 (previous_help_echo_string, help_echo_pos)
12668 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
12669 (x_stretch_cursor_p, output_cursor): Declare extern.
12670 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
12671 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
12672 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
12673 (display_and_set_cursor, set_output_cursor, x_cursor_to)
12674 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
12675 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
12676 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
12677 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
12678 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
12679 Add prototypes.
12680 (mode_line_string, marginal_area_string): Fix prototypes.
12681
12682 * window.c (enum window_part): Move to dispextern.h.
12683 (coordinates_in_window): Use enum window_part member names
12684 instead of numbers to describe return value.
12685 (struct check_window_data): Change part member to window_part.
12686 (check_window_containing): Return window_part unaltered.
12687 (window_from_coordinates): Change part arg from int to enum
12688 window_part. Allow part arg to be null. All users changed.
12689
12690 * window.h (window_from_coordinates): Fix prototype.
12691
12692 * term.c (estimate_mode_line_height): Move to xdisp.c.
12693
12694 * keyboard.c (make_lispy_event): Use enum window_part.
12695
12696 * dispnew.c (mode_line_string, marginal_area_string): Use enum
12697 window_part instead of int in arg list. Users changed.
12698
12699 * xterm.h (No_Cursor): Declare as None for X.
12700 (struct mac_output): Replace member cross_cursor by hand_cursor.
12701
12702 * xterm.c: Remove consolidated defines and code.
12703 (BETWEEN): Remove unused macro.
12704 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
12705 (x_define_frame_cursor, x_clear_frame_area)
12706 (x_draw_window_cursor): New X-specific functions for RIF.
12707 (x_redisplay_interface): Add new members.
12708
12709 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
12710
12711 * w32term.h (struct w32_output): Remove cross_cursor member.
12712
12713 * w32term.c: Remove consolidated defines and code.
12714 (BETWEEN): Remove unused macro.
12715 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
12716 (w32_define_frame_cursor, w32_clear_frame_area)
12717 (w32_draw_window_cursor): New W32-specific functions for RIF.
12718 (w32_redisplay_interface): Add new members.
12719
12720 * w32gui.h (No_Cursor): Define as 0 for W32.
12721 (XRectangle): Add X compatible rectangle type.
12722 (NativeRectangle): Declare as RECT for W32.
12723 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
12724
12725 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
12726
12727 * w32console.c: Remove consolidated defines and code.
12728
12729 * msdos.h (Display_Info): Add generic typedef.
12730
12731 * msdos.c: Remove consolidated defines and code.
12732 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
12733
12734 * macterm.h (struct mac_output): Replace member cross_cursor by
12735 hand_cursor.
12736 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
12737
12738 * macterm.c: Remove consolidated defines and code.
12739 (BETWEEN): Remove unused macro.
12740 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
12741 (mac_define_frame_cursor, mac_clear_frame_area)
12742 (mac_draw_window_cursor): New Mac-specific functions for RIF.
12743 (x_redisplay_interface): Add new members.
12744
12745 * macgui.h (No_Cursor): Define as 0 for Mac.
12746 (XRectangle): Add X compatible rectangle type.
12747 (NativeRectangle): Declare as Rect for Mac.
12748 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
12749
12750 * macfns.c (x_set_mouse_color): Setup hand_cursor.
12751 (x_set_cursor_color): Use x_display_and_set_cursor.
12752
12753 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
12754 included from it. Add dependency on keymap.h.
12755
12756 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
12757
12758 2003-03-21 Kenichi Handa <handa@m17n.org>
12759
12760 * fileio.c (Fexpand_file_name): Fix previous change.
12761
12762 2003-03-19 Kenichi Handa <handa@m17n.org>
12763
12764 * fileio.c (Ffile_name_directory): Reconstruct file name by
12765 make_specified_string.
12766 (Ffile_name_nondirectory, Ffile_name_as_directory)
12767 (Fdirectory_file_name, Fexpand_file_name)
12768 (Fsubstitute_in_file_name): Likewise.
12769 (Fread_file_name): Compare decoded homedir with DIR and
12770 DEFAULT_FILENAME.
12771
12772 * alloc.c (make_specified_string): If NCHARS is negative, count
12773 the number of characters.
12774
12775 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12776
12777 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
12778 all widgets.
12779
12780 * gtkutil.h: Removed xg_ignore_next_thumb.
12781
12782 2003-03-18 Kenichi Handa <handa@m17n.org>
12783
12784 * coding.c (Vchar_coding_system_table): Remove this variable.
12785 (Vcoding_system_safe_chars): New variable.
12786 (intersection): Remove this function.
12787 (find_safe_codings): Don't use Vchar_coding_system_table, but try
12788 all codings in SAFE_CODINGS.
12789 (Ffind_coding_systems_region_internal): Adjust for the change of
12790 find_safe_codings. Get generic coding systems from
12791 Vcoding_system_safe_chars.
12792 (Fdefine_coding_system_internal): New function.
12793 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
12794 Initialize and staticpro Vcoding_system_safe_chars.
12795
12796 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12797
12798 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
12799 equal old values before updating.
12800
12801 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
12802
12803 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
12804
12805 2003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12806
12807 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
12808 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
12809 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
12810 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
12811 (xg_create_scroll_bar): Pass bar to button event callback.
12812 (xg_find_top_left_in_fixed): New function.
12813 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
12814 whole scroll bar area. Get old position with
12815 xg_find_top_left_in_fixed, calculate and only clear needed areas.
12816 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
12817 dragging is in progress. Calculate whole as for Motif.
12818 Remove code that saved last values. Call gtk_range functions to
12819 set scroll bar sizes.
12820
12821 * gtkutil.h: Removed xg_ignore_next_thumb.
12822
12823 2003-03-17 Juanma Barranquero <lektu@terra.es>
12824
12825 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
12826 and files included from it.
12827
12828 2003-03-18 Stefan Monnier <monnier@cs.yale.edu>
12829
12830 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
12831 multiple occurrences of the same keymap under different prefixes.
12832 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
12833
12834 2003-03-16 Jason Rumney <jasonr@gnu.org>
12835
12836 * w32gui.h: Use HDC for Display.
12837
12838 * w32term.c (w32_encode_char): Prevent double-byte chars from
12839 crashing Emacs.
12840
12841 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
12842 as binary.
12843
12844 2003-03-16 Juanma Barranquero <lektu@terra.es>
12845
12846 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
12847
12848 2003-03-16 Kim F. Storm <storm@cua.dk>
12849
12850 The following changes consolidate some of the gui-independent
12851 parts of the processing and drawing of "glyph strings" from
12852 xterm.c, w32term.c, and macterm.c into xdisp.c.
12853
12854 * dispextern.h (struct glyph): Reduce face_id member from 22 to
12855 21 bits (this reduces number of faces from 4M to 2M).
12856 Replace W32 specific w32_font_type member (2 bits) by generic
12857 font_type member (3 bits) for portability.
12858 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
12859 (enum draw_glyphs_face): Define here.
12860 (struct glyph_string): Define here. Merge W32 and X versions.
12861 (struct redisplay_interface): New members per_char_metric,
12862 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
12863 (VCENTER_BASELINE_OFFSET): Define here.
12864 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
12865 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
12866
12867 * xdisp.c: Consolidate gui-independent "glyph string" code here.
12868 (dump_glyph_string): Moved here.
12869 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
12870 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
12871 (fill_composite_glyph_string, fill_glyph_string)
12872 (fill_image_glyph_string, fill_stretch_glyph_string)
12873 (left_overwritten, left_overwriting, right_overwritten)
12874 (right_overwriting, get_char_face_and_encoding)
12875 (set_glyph_string_background_width, compute_overhangs_and_x)
12876 (append_glyph, append_composite_glyph, produce_image_glyph)
12877 (take_vertical_position_into_account, append_stretch_glyph)
12878 (produce_stretch_glyph): New generic functions (based on X version).
12879 Call platform specific functions through rif.
12880 (INIT_GLYPH_STRING): New macro, hides W32 details.
12881 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
12882 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
12883 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
12884 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
12885 (notice_overwritten_cursor):
12886 Generic functions exported to platform modules. Users changed.
12887
12888 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
12889 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
12890 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
12891 New macros for consolidated code.
12892
12893 * xterm.c: Remove consolidated defines and code.
12894 (x_per_char_metric, x_encode_char)
12895 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
12896 (x_redisplay_interface): Add new members.
12897
12898 * w32gui.h (Display): Add dummy typedef for consolidation.
12899 (XChar2b): Define alias for wchar_t for consolidation.
12900 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
12901
12902 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
12903 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
12904 New macros for consolidation.
12905
12906 * w32term.c: Remove consolidated defines and code.
12907 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
12908 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
12909 (w32_per_char_metric): Change font_type arg to int for RIF.
12910 (w32_encode_char): Return int according to RIF requirements.
12911 (w32_compute_glyph_string_overhangs): Adapt to RIF.
12912 (w32_get_glyph_overhangs): New function for RIF. Uses generic
12913 x_get_glyph_overhangs.
12914 (w32_redisplay_interface): Add new members.
12915
12916 * macgui.h (XChar2b): Move typedef here for consolidation.
12917 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
12918
12919 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
12920 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
12921 consolidation.
12922
12923 * macterm.c: Remove consolidated defines and code.
12924 (mac_per_char_metric): New function for RIF.
12925 (mac_encode_char): Adapt to new RIF requirements.
12926 (mac_compute_glyph_string_overhangs): Adapt for RIF.
12927 (x_redisplay_interface): Add new members.
12928
12929 2003-03-15 Stefan Monnier <monnier@cs.yale.edu>
12930
12931 * keymap.c (Vmenu_events): New var.
12932 (syms_of_keymap): Initialize it.
12933 (where_is_internal): Check more carefully what is a menu event.
12934
12935 2003-03-14 Richard M. Stallman <rms@gnu.org>
12936
12937 * lread.c (read1): After #!, exit loop on eof.
12938
12939 2003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12940
12941 * gtkutil.h: Add declaration for xg_frame_cleared.
12942
12943 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
12944
12945 * gtkutil.c (struct xg_last_sb_pos): New structure.
12946 (handle_fixed_child): New function.
12947 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
12948 and force a redraw on them.
12949 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
12950 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
12951 so we can avoid unneeded redraws.
12952 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
12953 and force a redraw on the scroll bar.
12954 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
12955 if xg_last_sb_pos shows the positions are up to date.
12956 (xg_frame_cleared): New function.
12957
12958 2003-03-13 Kenichi Handa <handa@m17n.org>
12959
12960 * coding.c (Fdetect_coding_region): Fix docstring.
12961 (Fdetect_coding_string): Fix docstring.
12962
12963 2003-03-13 Andreas Schwab <schwab@suse.de>
12964
12965 * gtkutil.c: Add prototype for create_menus.
12966
12967 * data.c (long_to_cons): Fix type of top.
12968
12969 * xselect.c (selection_data_to_lisp_data): Use int instead of
12970 long for an integer of size 4.
12971
12972 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
12973 (xg_tool_bar_help_callback): Likewise.
12974
12975 2003-03-12 Andreas Schwab <schwab@suse.de>
12976
12977 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
12978
12979 2003-03-12 Kim F. Storm <storm@cua.dk>
12980
12981 The following changes consolidate the fringe handling from
12982 xterm.c, w32term.c, and macterm.c into xdisp.c.
12983
12984 * xdisp.c: Consolidate fringe handling code here.
12985 (left_bits, right_bits, continued_bits, continuation_bits)
12986 (ov_bits, zv_bits): Define fringe bitmaps.
12987 (fringe_bitmaps): New array holding fringe bitmaps.
12988 (draw_fringe_bitmap): Draw a specific bitmap; call display
12989 specific drawing routine via rif->draw_fringe_bitmap.
12990 (draw_row_fringe_bitmaps): Generic replacement for
12991 x_draw_row_fringe_bitmaps; all callers changed.
12992 (compute_fringe_widths): Generic replacement for
12993 x_compute_fringe_widths; all callers changed.
12994
12995 * dispextern.h (enum fringe_bitmap_type): Define here.
12996 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
12997 (fringe_bitmaps): Declare extern.
12998 (struct redisplay_interface): New member draw_fringe_bitmap.
12999 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
13000
13001 * xterm.c: Remove generic fringe code.
13002 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
13003 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
13004
13005 * w32term.c: Remove generic fringe code.
13006 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
13007 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
13008
13009 * macterm.c: Remove generic fringe code.
13010 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
13011 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
13012
13013 2003-03-11 Stefan Monnier <monnier@cs.yale.edu>
13014
13015 * print.c (Fprin1_to_string): Return unibyte string if possible.
13016
13017 2003-03-09 David Kastrup <dak@gnu.org>
13018
13019 * process.c (read_process_output): We have allocated enough space
13020 for readmax and carryover, so actually use the alloted space.
13021
13022 2003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13023
13024 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
13025 toolkit scrollbar click.
13026
13027 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
13028 for USE_GTK.
13029 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
13030 also.
13031 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
13032 scrollbar and control is pressed, call x_scroll_bar_handle_click.
13033
13034 * gtkutil.h (xg_get_scroll_id_for_window): Declare.
13035
13036 * gtkutil.c (xg_get_scroll_id_for_window): New function.
13037 (xg_tool_bar_item_expose_callback): New function.
13038 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
13039 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
13040 on the tool bar widget.
13041 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
13042 to expose on the tool bar item widgets.
13043
13044 2003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13045
13046 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
13047 struct image* when deciding to update (struct image* may have been
13048 deleted from the image cache).
13049
13050 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
13051 the event isn't for a frame (i.e. for dialogs).
13052
13053 2003-03-07 Kenichi Handa <handa@m17n.org>
13054
13055 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
13056 composition components reaches the limit, terminate composing.
13057 (COMPOSITION_OK): New macro.
13058 (detect_coding_iso2022): Use it if an escape sequence for
13059 composition is found.
13060 (coding_restore_composition): Adjust the number of composition
13061 components if it is not sane.
13062
13063 2003-03-06 Juanma Barranquero <lektu@terra.es>
13064
13065 * w32term.h (struct w32_display_info): Add xrdb member to support
13066 passing resources via -xrm on Windows.
13067
13068 * w32term.c (w32_make_rdb): New function.
13069 (w32_term_init): Use it to initialize xrdb member of w32_display_info
13070 struct. Delete leftover code.
13071
13072 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
13073 for resources passed on the command line.
13074
13075 * w32reg.c (w32_get_rdb_resource): New function.
13076 (x_get_string_resource): Use it, so resources passed with -xrm
13077 supercede the ones in the registry.
13078
13079 2003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13080
13081 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
13082 instead of x_top_window_to_frame.
13083
13084 2003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13085
13086 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
13087 when restarting Emacs.
13088
13089 2003-03-03 Richard M. Stallman <rms@gnu.org>
13090
13091 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
13092 to run kill-buffer-query-functions.
13093 (Qkill_buffer_query_functions): New var.
13094 (syms_of_buffer): Init and staticpro it.
13095
13096 2003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13097
13098 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
13099
13100 2003-02-25 Kim F. Storm <storm@cua.dk>
13101
13102 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
13103 If centering point failed to make whole line visible and vscroll
13104 is non-zero, disable vscroll and try centering point again.
13105
13106 * lread.c (read1): Accept `single space' syntax like (? x).
13107
13108 2003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13109
13110 * keyboard.c (cancel_hourglass_unwind): Surround with
13111 #ifdef HAVE_X_WINDOWS
13112
13113 2003-02-25 Kenichi Handa <handa@m17n.org>
13114
13115 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
13116 process only when "subprocesses" is defined.
13117
13118 2003-02-24 Stefan Monnier <monnier@cs.yale.edu>
13119
13120 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
13121
13122 2003-02-24 Juanma Barranquero <lektu@terra.es>
13123
13124 * callint.c (fix_command): Declare as static void and move before
13125 Fcall_interactively.
13126
13127 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
13128 (syms_of_xdisp): Don't initialize Qwhen.
13129
13130 2003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13131
13132 * keyboard.c (cancel_hourglass_unwind): New function.
13133 (command_loop_1): Cancel hourglass with unwind-protect.
13134
13135 2003-02-23 Richard M. Stallman <rms@gnu.org>
13136
13137 * callint.c (fix_command): New subroutine, from Fcall_interactively.
13138 Detect (when ... (region-beginning)) etc.
13139 (Fcall_interactively): Call fix_command.
13140 (Qif, Qwhen): New variables.
13141 (syms_of_callint): Init and staticpro them.
13142
13143 * regex.c (print_partial_compiled_pattern): Output to stderr.
13144
13145 2003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
13146
13147 * dired.c (directory_files_internal): Don't expand directory.
13148 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
13149 instead. From Lars Hansen <larsh@math.ku.dk>.
13150
13151 2003-02-22 Stefan Monnier <monnier@cs.yale.edu>
13152
13153 * fns.c (string_to_multibyte): Remove unused var i.
13154 (Flanginfo): Fix int/Lisp_Object mixup.
13155 (void_call2): New fun.
13156 (Fmap_char_table): Use it in place of call2.
13157
13158 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
13159
13160 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
13161
13162 * keymap.c (copy_keymap_1): Make it static.
13163
13164 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
13165
13166 2003-02-22 David Ponce <david@dponce.com>
13167
13168 * lread.c (Fload): Don't check STRING_MULTIBYTE.
13169
13170 2003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13171
13172 * process.h: Removed subtty field from struct Lisp_Process.
13173
13174 * process.c (create_process): Remove setting of subtty.
13175 (emacs_get_tty_pgrp): New function.
13176 (Fprocess_running_child_p, process_send_signal):
13177 Call emacs_get_tty_pgrp instead of ioctl.
13178 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
13179
13180 2003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
13181
13182 * keymap.c (Fdefine_key): Doc fix.
13183
13184 2003-02-21 Juanma Barranquero <lektu@terra.es>
13185
13186 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
13187
13188 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
13189 POLLING_PROBLEM_IN_SELECT.
13190
13191 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
13192 Delete #undef of POLLING_PROBLEM_IN_SELECT.
13193
13194 * s/hpux10-20.h: New file.
13195
13196 * process.c (wait_reading_process_input):
13197 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
13198
13199 2003-02-20 Kenichi Handa <handa@m17n.org>
13200
13201 * fontset.c (check_fontset_name): If NAME is nil, return the
13202 default fontset.
13203 (override_font_info): New function.
13204 (Fset_fontset_font): Document that NAME nil means the default fontset.
13205 (Ffontset_info): If FONTSET is not the default fontset, merge
13206 FONTSET onto the copy of the default fontset, and work on that
13207 copy. Document that NAME nil means the default fontset.
13208 (Ffontset_font): Document that NAME nil means the default fontset.
13209
13210 * process.c (setup_process_coding_systems): If the process's
13211 in/out descriptor is -1, do nothing.
13212
13213 2003-02-19 Andreas Schwab <schwab@suse.de>
13214
13215 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
13216 Add prototypes.
13217
13218 2003-02-19 Kenichi Handa <handa@m17n.org>
13219
13220 * xfaces.c (try_alternative_families): Try all scalable fonts if
13221 Vscalable_fonts_allowed is not Qt.
13222
13223 2003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13224
13225 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
13226
13227 2003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13228
13229 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
13230 names.
13231
13232 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
13233 (sorted_font_list): Move allocation of struct font_name to
13234 x_face_list_fonts.
13235 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
13236 (Fx_list_fonts): Set maxnames to -1 to get all font names.
13237
13238 2003-02-18 Kim F. Storm <storm@cua.dk>
13239
13240 * lread.c (read1): Fix last change.
13241 "`" is not always special. Allow "?" after a character constant.
13242
13243 2003-02-18 Andrew Choi <akochoi@shaw.ca>
13244
13245 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
13246
13247 2003-02-18 Andreas Schwab <schwab@suse.de>
13248
13249 * window.c (window_scroll_pixel_based): Move outside a
13250 multi-glyph character before setting new window start.
13251
13252 * xdisp.c (in_display_vector_p): New function.
13253 * dispextern.h (in_display_vector_p): Declare.
13254
13255 2003-02-18 Kim F. Storm <storm@cua.dk>
13256
13257 * lread.c (read1): Fix and relax read syntax.
13258 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
13259 Only recognize "," after dotted-pair dot if inside backquote.
13260 Never include "`" or "," (inside backquote) in a symbol.
13261 Allow dotted-pair dot after a character constant.
13262 Allow "`" and "," (inside backquote) after a character constant.
13263
13264 2003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13265
13266 * gtkutil.c (xg_tool_bar_expose_callback): New function.
13267 (xg_create_tool_bar): Force style of tool bar to be horizontal with
13268 icons. Set name of tool bar to emacs-toolbar.
13269 (update_frame_tool_bar): Connect expose event to
13270 xg_tool_bar_expose_callback.
13271
13272 2003-02-17 Richard M. Stallman <rms@gnu.org>
13273
13274 * keyboard.c (this_command_key_count_reset): New variable.
13275 Initiatize to 0 where this_command_key_count is set.
13276 (read_char): Save and restore this_command_key_count_reset
13277 around input method code.
13278 (read_char): If this_command_key_count_reset, echo reread commands.
13279 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
13280
13281 2003-02-17 Kenichi Handa <handa@m17n.org>
13282
13283 * fns.c (string_to_multibyte): Always return a multibyte string.
13284
13285 2003-02-16 Jason Rumney <jasonr@gnu.org>
13286
13287 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
13288 Negative max_fonts parameter means list all.
13289
13290 2003-02-14 Dave Love <fx@gnu.org>
13291
13292 * fns.c (Flanginfo): Doc fix.
13293
13294 2003-02-13 Kim F. Storm <storm@cua.dk>
13295
13296 * lread.c (read_escape): Interpret \s as a SPACE character, except
13297 for \s-X in a character constant which still is the super modifier.
13298 (read1): Signal an `invalid read syntax' error if a character
13299 constant is immediately followed by a digit or symbol character.
13300
13301 * search.c (Fmatch_data): Doc fix. Explicitly state that
13302 match-data is undefined if last search failed.
13303
13304 * keymap.c (Fcommand_remapping): Rename from Fremap_command.
13305 All uses changed.
13306
13307 2003-02-12 Juanma Barranquero <lektu@terra.es>
13308
13309 * eval.c (Fdefmacro): Fix typo.
13310
13311 2003-02-12 Kim F. Storm <storm@cua.dk>
13312
13313 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
13314 macro is a string, convert meta modifiers in string when copying
13315 the string into a vector.
13316
13317 2003-02-11 Kim F. Storm <storm@cua.dk>
13318
13319 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
13320
13321 2003-02-11 Kenichi Handa <handa@m17n.org>
13322
13323 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
13324
13325 2003-02-10 Kim F. Storm <storm@cua.dk>
13326
13327 * process.c: Doc fixes.
13328 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
13329
13330 2003-02-10 Kenichi Handa <handa@m17n.org>
13331
13332 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
13333
13334 * process.c (QCfilter_multibyte): New variable.
13335 (setup_process_coding_systems): New function.
13336 (Fset_process_buffer, Fset_process_filter):
13337 Call setup_process_coding_systems.
13338 (Fstart_process): Initialize the member `filter_multibyte' of
13339 struct Lisp_Process.
13340 (create_process): Call setup_process_coding_systems.
13341 (Fmake_network_process): New keyward `:filter-multibyte'.
13342 Initialize the member `filter_multibyte' of struct Lisp_Process.
13343 Call setup_process_coding_systems.
13344 (server_accept_connection): Call setup_process_coding_systems.
13345 (read_process_output): If the process has a filter, decide the
13346 multibyteness of a string to given to the filter by
13347 `filter_multibyte' member of the process. If the process doesn't
13348 have a filter and the result of conversion is unibyte, use
13349 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
13350 multibyte form.
13351 (Fset_process_coding_system): Call setup_process_coding_systems.
13352 (Fset_process_filter_multibyte): New function.
13353 (Fprocess_filter_multibyte_p): New function.
13354 (syms_of_process): Intern and staticpro QCfilter_multibyte.
13355 Defsubr Sset_process_filter_multibyte and
13356 Sprocess_filter_multibyte_p.
13357
13358 * process.h (struct Lisp_Process): New member filter_multibyte.
13359
13360 * lisp.h (setup_process_coding_systems): Add prototype.
13361
13362 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
13363 process, update coding systems for the process.
13364
13365 2003-02-09 Kenichi Handa <handa@m17n.org>
13366
13367 * fns.c (string_to_multibyte): New function.
13368 (Fstring_to_multibyte): New function.
13369 (syms_of_fns): Defsubr it.
13370
13371 2003-02-08 Andreas Schwab <schwab@suse.de>
13372
13373 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
13374 instead of the substitution.
13375
13376 2003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13377
13378 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
13379
13380 * xmenu.c (menu_position_func): Adjust menu popup position so that
13381 the menu is fully visible.
13382
13383 2003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13384
13385 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
13386 (x_make_frame_invisible, x_wm_set_icon_position):
13387 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
13388
13389 * xfns.c (x_set_name, x_set_title): Ditto.
13390
13391 2003-02-04 Richard M. Stallman <rms@gnu.org>
13392
13393 * keyboard.c (echo_now): Update before_command_echo_length.
13394 (Freset_this_command_lengths): Reset this_command_key_count etc.
13395 immediately rather than arranging to do it later.
13396 (before_command_key_count_1, before_command_echo_length_1)
13397 (before_command_restore_flag): Vars deleted.
13398 (add_command_key): Don't handle before_command_restore_flag.
13399 (read_char, record_menu_key): Don't update before_command_key_count or
13400 before_command_echo_length.
13401 (read_char): Don't handle before_command_restore_flag.
13402
13403 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
13404 in direct-output clauses if it wouldn't be called in the ordinary case.
13405
13406 2003-02-04 Kim F. Storm <storm@cua.dk>
13407
13408 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
13409
13410 2003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13411
13412 * gtkutil.c (remove_from_container): Copying list is not needed.
13413 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
13414 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
13415 on list returned from gtk_container_get_children to avoid memory leak.
13416
13417 2003-02-01 Jason Rumney <jasonr@gnu.org>
13418
13419 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
13420 local malloc.
13421 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
13422 definitions in xpm.h.
13423 (init_xpm_functions): New function.
13424 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
13425 (init_external_image_libraries): Try to load libXpm.dll.
13426
13427 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
13428 timestamp.
13429
13430 2003-01-31 Dave Love <fx@gnu.org>
13431
13432 * syntax.c (Fskip_chars_forward)
13433 (open-paren-in-column-0-is-defun-start): Doc fix.
13434
13435 2003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
13436
13437 * fileio.c: Support // at start of name for Cygwin (just added proper
13438 preprocessor tests).
13439
13440 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
13441
13442 * Makefile.in: Use @EXEEXT@ for Cygwin.
13443
13444 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
13445
13446 * s/cygwin.h: Added for Cygwin port.
13447
13448 2003-01-31 Juanma Barranquero <lektu@terra.es>
13449
13450 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
13451 when including gif_lib.h.
13452 (init_gif_functions, init_tiff_functions): New functions.
13453 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
13454 Windows. Disable color table lookups. Call library functions
13455 through pointers determined at runtime.
13456 (init_external_image_libraries): Try to load libungif.dll and
13457 libtiff.dll.
13458
13459 2003-01-31 Kenichi Handa <handa@m17n.org>
13460
13461 * xdisp.c (SKIP_GLYPHS): New macro.
13462 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
13463
13464 2003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13465
13466 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
13467
13468 2003-01-30 Dave Love <fx@gnu.org>
13469
13470 * alloc.c (Vgc_elapsed, gcs_done): New variables.
13471 (Fgarbage_collect): Use them.
13472 (init_alloc, syms_of_alloc): Set them up.
13473
13474 2003-01-30 Juanma Barranquero <lektu@terra.es>
13475
13476 * w32fns.c (init_external_image_libraries): Add missing operator.
13477
13478 2003-01-29 Jason Rumney <jasonr@gnu.org>
13479
13480 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
13481 an alternative name for jpeg.dll.
13482
13483 2003-01-29 Kenichi Handa <handa@m17n.org>
13484
13485 * xdisp.c (set_cursor_from_row): Pay attention to string display
13486 properties.
13487
13488 2003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
13489
13490 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
13491 <escape>.
13492 (keycode_to_xkeysym_table): Reformat and add more comments.
13493 (XTread_socket): Drop special case for backspace.
13494
13495 2003-01-28 Andrew Choi <akochoi@shaw.ca>
13496
13497 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
13498 values in old-style RGB specs.
13499
13500 2003-01-27 Juanma Barranquero <lektu@terra.es>
13501
13502 * w32fns.c (init_external_image_libraries): Try alternate names for the
13503 jpeg dll.
13504
13505 2003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13506
13507 * gtkutil.c (create_dialog, xg_separator_p)
13508 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
13509 before calling strcmp or strlen.
13510
13511 2003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13512
13513 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
13514 and handle image load failure.
13515
13516 2003-01-26 Jason Rumney <jasonr@gnu.org>
13517
13518 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
13519 New functions.
13520 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
13521 Disable color table lookups. Call jpeg library functions
13522 through pointers determined at runtime.
13523 (init_external_image_libraries): Try to load jpeg.dll.
13524
13525 2003-01-25 Richard M. Stallman <rms@gnu.org>
13526
13527 * lisp.h: Declare format2 instead of format1.
13528
13529 * fileio.c (barf_or_query_if_file_exists):
13530 Call format2 instead of format1.
13531
13532 * editfns.c (format2): New function, replaces format1
13533 but takes exactly two Lisp Objects as format args.
13534
13535 * buffer.c (Fkill_buffer): Call format2 instead of format1.
13536
13537 2003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13538
13539 * xterm.h: Change to return value of x_dispatch_event to int.
13540
13541 * xterm.c (x_filter_event): New function.
13542 (event_handler_gdk, XTread_socket): Call x_filter_event.
13543 (x_dispatch_event): Change to return value of finish.
13544 (event_handler_gdk): Use return value from x_dispatch_event.
13545
13546 * xfns.c (x_window): Call create_frame_xic for GTK version to
13547 initialize input methods.
13548
13549 * gtkutil.h: Add (void) prototypes.
13550
13551 * gtkutil.c (create_menus): Remove code that puts the help menu to
13552 the right.
13553
13554 2003-01-25 Jason Rumney <jasonr@gnu.org>
13555
13556 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
13557 [HAVE_PNG]: Sync with xfns.c version.
13558 (png_load): Adjust colors for Windows. Use Windows
13559 bitmaps. Disable color table lookups.
13560 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
13561 (init_png_functions): New function.
13562 (png_read_from_memory, png_load): Call png library functions
13563 through pointers determined at runtime.
13564 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
13565 (init_external_image_libraries): New function.
13566 (init_xfns): Call it.
13567
13568 2003-01-24 Andreas Schwab <schwab@suse.de>
13569
13570 * minibuf.c (Fminibuffer_message): Verify type of parameter.
13571
13572 2003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13573
13574 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
13575 of static initializer.
13576
13577 2003-01-24 Dave Love <fx@gnu.org>
13578
13579 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
13580 architectures.
13581
13582 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
13583 Use __alignof__.
13584
13585 2003-01-24 Kenichi Handa <handa@m17n.org>
13586
13587 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
13588 It it is nonzero, don't pretend that an invisible area doesn't exist.
13589 (command_loop_1): Call adjust_point_for_property with proper
13590 second arg.
13591
13592 2003-01-22 Jason Rumney <jasonr@gnu.org>
13593
13594 Sync changes with xterm.c and xfns.c.
13595
13596 * w32term.c (x_draw_glyph_string_foreground)
13597 (x_draw_composite_glyph_string_foreground): Implement overstriking.
13598
13599 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
13600 phys_cursor's hpos is overwritten. This is still not completely
13601 correct, as it doesn't really make sense to use hpos at all to
13602 get the cursor glyph (as that is relative to the width of the
13603 characters on the line, which may have changed during the update).
13604
13605 * w32term.c (notice_overwritten_cursor): Handle the special case
13606 of the cursor being in the first blank non-text line at the
13607 end of a window.
13608
13609 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
13610 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
13611 Compute from the x position returned by x_draw_glyphs.
13612
13613 (x_display_and_set_cursor): Don't set phys_cursor_width here,
13614 except for NO_CURSOR and system caret, to make phys_cursor_width
13615 contain what its name suggests.
13616 (notice_overwritten_cursor): Consider the cursor image erased if
13617 the output area intersects the cursor image in y-direction.
13618
13619 * w32term.c (note_mode_line_or_margin_highlight): Rename from
13620 note_mode_line_highlight and extend.
13621
13622 * w32term.c (last_window): New variable.
13623 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
13624 (note_mouse_movement): Remove reimplemented code in #if 0.
13625
13626 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
13627 not update_mode_lines, and always set it to 1.
13628
13629 2003-01-21 Jason Rumney <jasonr@gnu.org>
13630
13631 * w32fns.c (IDC_HAND): Define it if system headers don't.
13632
13633 2003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
13634
13635 * w32term.h (struct w32_output): New member hand_cursor.
13636 (WM_EMACS_SETCURSOR): New message definition.
13637
13638 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
13639 function w32_define_cursor.
13640 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
13641 position, change member name output_data.x to output_data.w32 and
13642 add function w32_define_cursor.
13643 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
13644 and change member name output_data.x to output_data.w32.
13645 (w32_initialize_display_info):
13646 Setup dpyinfo->vertical_scroll_bar_cursor.
13647
13648 * w32fns.c (Vx_hand_shape): New variable.
13649 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
13650 WM_EMACS_SETCURSOR.
13651 (x-create-frame): Setup Cursor types.
13652
13653 2003-01-21 David Ponce <david@dponce.com>
13654
13655 * w32term.c (w32_encode_char): For DIM=1 charset, set
13656 ccl->reg[2] to -1 before calling ccl_driver.
13657 (Sync. with xterm.c x_encode_char change by Kenichi Handa
13658 <handa@m17n.org> on 2002-09-30.)
13659 (w32_draw_relief_rect): Declare all args.
13660 (w32_define_cursor): New.
13661
13662 * w32fns.c (w32_load_cursor): New function.
13663 (w32_init_class): Use it.
13664 (x_put_x_image): Declare all args.
13665
13666 2003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk>
13667
13668 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
13669
13670 2003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13671
13672 * gtkutil.c: Must include stdio.h before termhooks.h
13673
13674 2003-01-21 Dave Love <fx@gnu.org>
13675
13676 * alloc.c (Fgc_status): Print zombie list.
13677 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
13678 Fix assignment of zombies.
13679 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
13680 Don't take car of non-cons.
13681
13682 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
13683
13684 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
13685
13686 2003-01-20 David Ponce <david@dponce.com>
13687
13688 * w32menu.c (digest_single_submenu): Declare all args.
13689
13690 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
13691 changes in xmenu.c:
13692
13693 (parse_single_submenu): Use individual keymap's prompt
13694 string as pane name, if there is one.
13695 (set_frame_menubar): Save menu_items_n_panes from each call to
13696 parse_single_submenu and use it when calling digest_single_submenu.
13697
13698 2003-01-20 Steven Tamm <steventamm@mac.com>
13699
13700 * macterm.c (XTread_socket): Check for valid, visible window
13701 before sending a scroll-wheel event.
13702
13703 2003-01-20 Richard M. Stallman <rms@gnu.org>
13704
13705 * xdisp.c (redisplay_window): If mini window's buffer is not
13706 a minibuffer, then redisplay it like other windows.
13707
13708 2003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13709
13710 * gtkutil.c (xg_create_frame_widgets): Check if there is an
13711 external tool bar before setting tool bar height.
13712
13713 2003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13714
13715 * xterm.c (handle_one_xevent): Surround popup_activated
13716 with #ifdef:s for non-toolkit version.
13717
13718 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
13719 (gtkutil.o): New file.
13720 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
13721 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
13722
13723 * gtkutil.c: New file for GTK version.
13724
13725 * gtkutil.h: New file for GTK version.
13726
13727 * xterm.h: Add xt_or_gtk_widget.
13728 Include gtk files for USE_GTK.
13729 (struct x_output): Add toolbar_height.
13730 (struct x_output): Add GTK widgets and Gdk size_hints.
13731 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
13732 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
13733 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
13734
13735 * xterm.c: Include gtkutil.h for USE_GTK.
13736 (free_frame_menubar): Declare extern void for USE_GTK.
13737 (note_mouse_highlight): Check popup_activated for USE_GTK.
13738 (xt_action_hook): Don't compile if USE_GTK.
13739 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
13740 (xg_scroll_callback): New function.
13741 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
13742 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
13743 for USE_GTK.
13744 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
13745 xg_show_scroll_bar for USE_GTK.
13746 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
13747 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
13748 (event_handler_gdk): New function for USE_GTK.
13749 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
13750 (handle_one_xevent): Make sure widget is mapped before
13751 calling x_real_positions for USE_GTK.
13752 (XTread_socket): Add GTK event loop for USE_GTK.
13753 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
13754 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
13755 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
13756 (x_iconify_frame): Add code for USE_GTK.
13757 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
13758 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
13759 is in gtkutil.c.
13760 (x_term_init): Add initialization for GTK.
13761 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
13762
13763 * xmenu.c: Include gtkutil.h for USE_GTK.
13764 (Fx_popup_menu): Use current position if x and y is NIL.
13765 (single_menu_item, single_menu_item, Fx_popup_dialog):
13766 Check for USE_GTK.
13767 (popup_widget_loop): New function for USE_GTK.
13768 (x_activate_menubar): Add code for USE_GTK.
13769 (popup_activate_callback, popup_deactivate_callback)
13770 (menu_highlight_callback, menubar_selection_callback):
13771 Add USE_GTK versions.
13772 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
13773 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
13774 (free_frame_menubar): Only compile if not USE_GTK. GTK version
13775 is in gtkutil.c.
13776 (popup_selection_callback): New version for USE_GTK.
13777 (create_and_show_popup_menu): New fuction, one USE_GTK version and
13778 one USE_X_TOOLKIT version.
13779 (xmenu_show): Call create_and_show_popup_menu.
13780 (dialog_selection_callback): New version for USE_GTK.
13781 (create_and_show_dialog): New fuction, one USE_GTK version and
13782 one USE_X_TOOLKIT version.
13783 (xdialog_show): Call create_and_show_dialog.
13784
13785 * xfns.c: Include gtkutil for USE_GTK.
13786 (x_window_to_frame, x_any_window_to_frame)
13787 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
13788 (x_top_window_to_frame): Add code for USE_GTK.
13789 (x_set_background_color): Call xg_set_background_color for GTK.
13790 (x_set_menu_bar_lines): Check for USE_GTK.
13791 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
13792 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
13793 (x_window): Call xg_create_frame_widgets for USE_GTK.
13794 (Fx_create_frame): Check for USE_GTK
13795 (Fx_file_dialog): New implementation for USE_GTK.
13796
13797 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
13798 (update_menu_bar): Add check for USE_GTK.
13799 (update_tool_bar): Add check for USE_GTK and external tool bar.
13800 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
13801 (redisplay_internal): Add check for USE_GTK and popup_activated.
13802 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
13803 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
13804 (display_menu_bar): Add check for USE_GTK
13805
13806 * lisp.h (Vx_resource_name): Declare extern.
13807
13808 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
13809 for USE_GTK.
13810 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
13811
13812 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
13813 (FRAME_EXTERNAL_TOOL_BAR): New macro.
13814 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
13815
13816 * fileio.c (Fread_file_name): Add check for USE_GTK.
13817
13818 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
13819 Add check for USE_GTK.
13820
13821 * config.in: Added HAVE_GTK
13822
13823 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
13824
13825 2003-01-18 Stefan Monnier <monnier@cs.yale.edu>
13826
13827 * charset.h (Funibyte_char_to_multibyte): Export.
13828
13829 2003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13830
13831 * xmenu.c (mouse_position_for_popup): New function.
13832 (Fx_popup_menu): Call mouse_position_for_popup for X and
13833 mouse_position_hook for others.
13834
13835 2003-01-17 Kim F. Storm <storm@cua.dk>
13836
13837 * editfns.c (Finsert): Mention `string-make-multibyte' and
13838 `string-as-multibyte' in doc string.
13839
13840 2003-01-17 Kenichi Handa <handa@m17n.org>
13841
13842 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
13843
13844 * editfns.c (Fformat): Convert an unibyte char argument that is
13845 formatted by "%c" to multibyte if the total result must be a
13846 multibyte string.
13847
13848 2003-01-16 Kim F. Storm <storm@cua.dk>
13849
13850 * process.c (set-process-filter): Document unibyte/multibyte-ness
13851 of string argument.
13852
13853 2003-01-16 Kenichi Handa <handa@m17n.org>
13854
13855 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
13856
13857 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
13858 (re_search_2): Likewise.
13859
13860 2003-01-15 Kenichi Handa <handa@m17n.org>
13861
13862 * xdisp.c (message_dolog): Fix bug of the case that *Message*
13863 buffer is unibyte.
13864
13865 2003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
13866
13867 * fns.c (Fsubstring): Clarify doc string.
13868
13869 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
13870 (Fprevious_char_property_change)
13871 (Fnext_single_char_property_change)
13872 (Fprevious_single_char_property_change, Fnext_property_change)
13873 (Fnext_single_property_change, Fprevious_property_change)
13874 (Fprevious_single_property_change, Fadd_text_properties)
13875 (Fput_text_property, Fset_text_properties)
13876 (Fremove_text_properties, Fremove_list_of_text_properties)
13877 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
13878
13879 2003-01-14 Kim F. Storm <storm@cua.dk>
13880
13881 * process.h (struct Lisp_Process): New member plist replaces old
13882 member private_vars. All uses changed.
13883
13884 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
13885 (QCplist): Rename from QCvars. Change all uses.
13886 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
13887 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
13888 (syms_of_process): Intern, staticpro, defsubr these.
13889 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
13890
13891 2003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
13892
13893 * m/delta.h: Remove (obsolete).
13894
13895 2003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
13896
13897 * fileio.c (Fdelete_directory, Fdelete_file): Document the
13898 behaviour in front of symlinks.
13899 (Fdelete_file): Raise an error on directories.
13900
13901 2003-01-13 Dave Love <fx@gnu.org>
13902
13903 * fns.c (Freverse): Use QUIT.
13904
13905 2003-01-13 Richard M. Stallman <rms@gnu.org>
13906
13907 * minibuf.c (minibuffer_completion_contents):
13908 Error if point is inside prompt.
13909
13910 * keyboard.c (command_loop_1): Don't redisplay directly
13911 if there's a post-command-hook.
13912
13913 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
13914 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
13915
13916 2003-01-12 Kim F. Storm <storm@cua.dk>
13917
13918 * process.h (struct Lisp_Process): New member private_vars.
13919
13920 * process.c (QCvars): New variable.
13921 (syms_of_process): Intern and staticpro it.
13922 (Fset_process_contact): Removed function.
13923 (Fprocess_variable, Fset_process_variable): New functions.
13924 (syms_of_process): Defsubr them.
13925 (Fstart_process): Initialize private_vars plist to nil.
13926 (Fmake_network_process): New arg :vars to setup the private
13927 variables for new network process.
13928 (server_accept_connection): Copy server's private variables to
13929 client process.
13930
13931 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
13932 crashes). Code rewritten and simplified. Now directly aligns the
13933 pointer and recalculates pure_bytes_used, rather than aligning the
13934 size and adjusting the pointer.
13935
13936 2003-01-11 Kim F. Storm <storm@cua.dk>
13937
13938 * process.c (Fset_process_contact): New function.
13939 (syms_of_process): defsubr it.
13940 (make-network-process): Update doc.
13941
13942 2003-01-10 Andreas Schwab <schwab@suse.de>
13943
13944 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
13945 Reported by Berthold Gunreben <b.gunreben@web.de>.
13946
13947 2003-01-10 Dave Love <fx@gnu.org>
13948
13949 * composite.c (syms_of_composite): Make composition_hash_table weak.
13950
13951 2003-01-09 Kim F. Storm <storm@cua.dk>
13952
13953 * process.c (Fmake_network_process): Convert new port number
13954 to host byte order for `:service t' case. From Mario Lang.
13955
13956 2003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13957
13958 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
13959 instead of XtAppProcessEvent.
13960
13961 * xterm.c (handle_one_xevent): New function.
13962 (x_dispatch_event): New function.
13963 (XTread_socket): Call handle_one_xevent.
13964
13965 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
13966
13967 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
13968 call XQueryPointer to get coordinates.
13969 (popup_get_selection): Do not set popup_activated_flag to zero,
13970 let popup_deactivate_callback do that. Needed for Motif.
13971 Call x_dispatch_event instead of XtDispatchEvent.
13972 (xmenu_show): Calculate root coordinate from frame top/left position.
13973
13974 2003-01-08 Kim F. Storm <storm@cua.dk>
13975
13976 * process.c (server_accept_connection): Fix recording of new
13977 connection's local address in :local property of contact info.
13978 (Fmake_network_process): Record local network address for new
13979 client processes in :local property of contact info.
13980 (format-network-address): Add arg OMIT-PORT. Change callers.
13981
13982 2003-01-07 Dave Love <fx@gnu.org>
13983
13984 * Makefile.in (fns.o): Depend on coding.h.
13985
13986 2003-01-07 Markus Rost <rost@math.ohio-state.edu>
13987
13988 * minibuf.c (Fread_variable): Doc fix.
13989
13990 * eval.c (Fuser_variable_p): Doc change. For custom variables,
13991 use the same test as for custom-variable-p.
13992
13993 2003-01-05 Richard M. Stallman <rms@gnu.org>
13994
13995 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
13996 Count LAST_LINE_MISFIT in scroll margin for end of window.
13997 Move label too_near_end before setting SCROLL_MARGIN_POS.
13998 Set LAST_LINE_MISFIT before jumping there.
13999
14000 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
14001 scroll_conservatively case. If scrolling that much doesn't change
14002 STARTP, move it down one line.
14003
14004 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
14005 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
14006
14007 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
14008 selected frame.
14009
14010 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
14011 (syms_of_keymap): Staticpro them.
14012 (Fapropos_internal): Initialize them and clear them out.
14013 Don't GCPRO them.
14014
14015 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
14016 Doc fixes.
14017
14018 * lisp.h: New misc type Lisp_Save_Value.
14019 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
14020 (XSAVE_VALUE): New macro.
14021 (struct Lisp_Save_Value): New data type.
14022 (union Lisp_Misc): Add u_save_value alternative.
14023 (make_save_value): Declare.
14024
14025 * alloc.c (make_save_value): New function.
14026
14027 * xterm.c (x_catch_errors): Save dpy using make_save_value.
14028 (x_catch_errors_unwind): Call XSync.
14029
14030 2003-01-01 Richard M. Stallman <rms@gnu.org>
14031
14032 * window.c (window_scroll_pixel_based): Partially undo last change.
14033
14034 * keyboard.c (command_loop_1): Call adjust_point_for_property
14035 in direct action cases for Qforward_char and Qbackward_char.
14036 Set already_adjusted so it won't be done twice.
14037
14038 2002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk>
14039
14040 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
14041 type definition of size_t.
14042
14043 2003-01-02 Steven Tamm <steventamm@mac.com>
14044
14045 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
14046 distinguish Carbon GUI builds from X11 builds on darwin.
14047
14048 2002-12-30 Steven Tamm <steventamm@mac.com>
14049
14050 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
14051 to default to t.
14052
14053 2002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
14054
14055 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
14056
14057 2002-12-28 Steven Tamm <steventamm@mac.com>
14058
14059 * Makefile.in (macosx-bundle): Fix Mac OS X/Carbon port to
14060 allow building in a different directory than source. Uses some
14061 GNU Make extensions, but there is no other make on Mac OS X.
14062
14063 2002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
14064
14065 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
14066 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
14067 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
14068 (Fstring_to_number): Mention the returned value in the doc strings.
14069
14070 2002-12-23 Richard M. Stallman <rms@gnu.org>
14071
14072 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
14073 <scroll-down-aggressively>: Doc fix.
14074
14075 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
14076 string as pane name, if there is one.
14077 (set_frame_menubar): Save menu_items_n_panes from each call to
14078 parse_single_submenu and use it when calling digest_single_submenu.
14079
14080 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
14081 Don't try to make last line fully visible if it is past end of window.
14082
14083 2002-12-22 Steven Tamm <steventamm@mac.com>
14084
14085 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
14086 (mac_menu_show): Add support for hierarchical popup menus.
14087 (add_menu_item): Remove indentation support.
14088 (fill_submenu, fill_menu): Create hierarchical menus
14089 instead of using indentation.
14090
14091 2002-12-22 Richard M. Stallman <rms@gnu.org>
14092
14093 * xdisp.c (try_cursor_movement): Don't call try_window here.
14094 (redisplay_window): Never redisplay minibuffer when inactive.
14095
14096 * window.c (select_window_1): Undo 9/21 change.
14097
14098 2002-12-22 Steven Tamm <steventamm@mac.com>
14099
14100 * macterm.c (XTread_socket): Call KeyTranslate for control and
14101 meta to deal correctly shifted non-alpha characters, like C-S-5
14102 being treated like C-%. Do not look for shift key to deal
14103 with masking off control-key with mac-reverse-ctrl-meta.
14104
14105 2002-12-21 Richard M. Stallman <rms@gnu.org>
14106
14107 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
14108 If it is non-nil, run timers. Use an unwind-protect to requeue
14109 the events that were read ahead.
14110 (popup_get_selection_unwind): New subroutine.
14111 (popup_get_selection_queue): File-scope variable now holds that queue.
14112 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
14113 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
14114 Use an unwind-protect to pop down the dialog box.
14115 (xdialog_show_unwind): New subroutine implements that.
14116
14117 * xdisp.c (row_containing_pos): Change exit test using last_y.
14118 (try_window_id): Abort if row_containing_pos returns null.
14119
14120 * lread.c (load_error_handler): New function.
14121 (Fload): Handle errors in Fsubstitute_in_file_name.
14122 Don't expect Fsignal to return.
14123
14124 * eval.c: Errors and throws work right with interrupt blocking.
14125 (struct catchtag): New elt interrupt_input_blocked.
14126 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
14127 (internal_catch, Fcondition_case, internal_condition_case)
14128 (internal_condition_case_1, internal_condition_case_2): Save it.
14129 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
14130
14131 * editfns.c (Fformat): Add parens.
14132
14133 * dired.c (file_name_completion): Fix that change.
14134 Delete special quit-handling code; just use QUIT.
14135
14136 2002-12-21 Tak Ota <Takaaki.Ota@am.sony.com>
14137
14138 * dired.c (file_name_completion): Close directory on error
14139 just as in directory_files_internal.
14140
14141 2002-12-19 David Kastrup <David.Kastrup@t-online.de>
14142
14143 * window.c (Fset_window_configuration): Set old_point to correct
14144 value when new_current_buffer == current_buffer.
14145
14146 2002-12-17 Ben Key <bkey1@tampabay.rr.com>
14147
14148 Revisited my earlier fix for the following entry in etc/PROBLEMS:
14149 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
14150 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
14151
14152 These changes were in part based upon suggestions made by Peter
14153 'Luna' Runestig [peter@runestig.com].
14154
14155 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token)
14156 (g_b_init_get_token_information, g_b_init_lookup_account_sid)
14157 (g_b_init_get_sid_identifier_authority ): Add several static
14158 global variables.
14159
14160 * w32.c (globals_of_w32): New function. Used to initialize those
14161 global variables that must always be initialized on startup even
14162 when the global variable initialized is non zero. Its primary
14163 purpose at this time is to set the global variables
14164 g_b_init_is_windows_9x, g_b_init_open_process_token,
14165 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
14166 g_b_init_get_sid_identifier_authority to 0 on startup.
14167 Called from main.
14168
14169 * w32.c (is_windows_9x): Perform initialization only if
14170 g_b_init_is_windows_9x is equal to 0. On initialization set
14171 g_b_init_is_windows_9x equal to 1.
14172
14173 * w32.c (open_process_token): Perform initialization only if
14174 g_b_init_open_process_token is equal to 0. On initialization set
14175 g_b_init_open_process_token equal to 1.
14176
14177 * w32.c (get_token_information): Perform initialization only if
14178 g_b_init_get_token_information is equal to 0. On initialization
14179 set g_b_init_get_token_information equal to 1.
14180
14181 * w32.c (lookup_account_sid): Perform initialization only if
14182 g_b_init_lookup_account_sid is equal to 0. On initialization
14183 set g_b_init_lookup_account_sid equal to 1.
14184
14185 * w32.c (get_sid_identifier_authority): Perform initialization
14186 only if g_b_init_get_sid_identifier_authority is equal to 0.
14187 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
14188
14189 * w32fns.c (globals_of_w32fns): New function. Used to initialize
14190 those global variables that must always be initialized on startup
14191 even when the global variable initialized is non zero.
14192 Its primary purpose at this time is to initialize the global variable
14193 track_mouse_event_fn.
14194
14195 * w32fns.c (w32_wnd_proc): Remove initialization of
14196 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
14197
14198 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
14199
14200 * w32menu.c (globals_of_w32menu): New function. Used to
14201 initialize those global variables that must always be initialized
14202 on startup even when the global variable initialized is non zero.
14203 Its primary purpose at this time is to initialize the global
14204 variables get_menu_item_info and set_menu_item_info.
14205
14206 * w32menu.c (initialize_frame_menubar): Remove initialization of
14207 get_menu_item_info and set_menu_item_info.
14208
14209 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
14210
14211 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
14212 Declare them.
14213
14214 * emacs.c (main): Call globals_of_w32 prior to calling
14215 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
14216 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
14217 is defined.
14218
14219 * w32term.c (x_update_window_begin): Fix Windows API error
14220 detected by BoundsChecker. Test to determine if
14221 w32_system_caret_hwnd is NULL prior to attempting to use
14222 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
14223
14224 * w32term.c (x_update_window_end): Fix Windows API error
14225 detected by BoundsChecker. Test to determine if
14226 w32_system_caret_hwnd is NULL prior to attempting to use
14227 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
14228
14229 2002-12-17 Kenichi Handa <handa@m17n.org>
14230
14231 * coding.c (coding_system_require_warning): New variable.
14232 (syms_of_coding): DEFVAR it.
14233
14234 * coding.h (coding_system_require_warning): Extern it.
14235
14236 * fileio.c (choose_write_coding_system): Even if
14237 Vcoding_system_for_write is non-nil, if
14238 coding_system_require_warning is nonzero, call
14239 Vselect_safe_coding_system_function.
14240
14241 2002-12-17 Markus Rost <rost@math.ohio-state.edu>
14242
14243 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
14244 (lisp): Add font-core.
14245
14246 2002-12-13 Stefan Monnier <monnier@cs.yale.edu>
14247
14248 * textprop.c (text_read_only): New arg `propval'.
14249 (get_char_property_and_overlay): Remove unused var `next_overlay'.
14250 (verify_interval_modification): Use text_read_only's new arg.
14251
14252 2002-12-13 Kenichi Handa <handa@m17n.org>
14253
14254 * coding.c (Funencodable_char_position): Set pend correctly.
14255
14256 2002-12-12 Jason Rumney <jasonr@gnu.org>
14257
14258 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
14259 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
14260 Be more careful about when help_events are generated.
14261
14262 2002-12-12 Steven Tamm <steventamm@mac.com>
14263
14264 * macterm.c (mac_check_for_quit_char): Correctly set the
14265 modifiers of the event to 0.
14266 * mac.c (sys_select): Duplicate rfds before calling select to
14267 ensure that rfds survive the while loop.
14268
14269 2002-12-11 Kim F. Storm <storm@cua.dk>
14270
14271 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
14272 row_containing_pos returned NULL.
14273
14274 2002-12-10 Steven Tamm <steventamm@mac.com>
14275
14276 * mac.c (sys_read): Fix sys_read to not call select if IO is
14277 non-blocking.
14278 (sys_select): Fix sys_select to not use a timeout larger than
14279 the one given.
14280
14281 2002-12-10 Juanma Barranquero <lektu@terra.es>
14282
14283 * editfns.c (Fformat): Use alloca, not _alloca.
14284
14285 2002-12-09 Richard M. Stallman <rms@gnu.org>
14286
14287 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
14288 as the last thing.
14289
14290 2002-12-09 Dave Love <fx@gnu.org>
14291
14292 * s/sol2-8.h: Removed. (Not necessary.)
14293
14294 2002-12-09 Matthew Swift <swift@alum.mit.edu>
14295
14296 * editfns.c (Fformat): Handle precision in string conversion
14297 specifiers like libc functions do (ie, print at most that many
14298 characters).
14299
14300 2002-12-08 Richard M. Stallman <rms@gnu.org>
14301
14302 * xdisp.c (row_containing_pos): Check more carefully
14303 whether charpos is really in the row before returning it.
14304
14305 2002-12-07 Steven Tamm <steventamm@mac.com>
14306
14307 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
14308
14309 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
14310 each stack frame. This may change as it could be time consuming.
14311
14312 * macterm.c (mac_check_for_quit_char, quit_char_comp)
14313 (init_quit_char_handler, mac_determine_quit_char_modifiers)
14314 (mac_initialize): Add code to check for pressing of quit_char
14315 in the OS event queue.
14316
14317 * mac.c (sys_select): Call mac_check_for_quit_char every second
14318 while blocking on select.
14319
14320 * mac.c (sys_read): Use sys_select to test for input first
14321 before calling read, to allow C-g to break.
14322
14323 2002-12-07 Richard M. Stallman <rms@gnu.org>
14324
14325 * minibuf.c (Fcompleting_read): Doc fix.
14326
14327 * lread.c (syms_of_lread) <load-history>: Doc fix.
14328
14329 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
14330
14331 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
14332 autoload.
14333
14334 * data.c (Fdefalias): Record in load-history redefining an autoload.
14335
14336 * alloca.c: Undo ifdef change accidentally made on 12-04.
14337
14338 2002-12-06 Francesco Potorti` <pot@gnu.org>
14339
14340 * xfns.c (png_load): Avoid double gamma correction for PNG images.
14341
14342 2002-12-04 Richard M. Stallman <rms@gnu.org>
14343
14344 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
14345
14346 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
14347
14348 * alloca.c: Don't use #error.
14349
14350 2002-12-03 Dave Love <fx@gnu.org>
14351
14352 * buffer.c (Qucs_set_table_for_input): New.
14353 (Fget_buffer_create): Use it.
14354 (Qset_buffer_major_mode_hook): Deleted.
14355 (Fset_buffer_major_mode): Revert previous change.
14356 (init_buffer_once): Intern ucs-set-table-for-input.
14357 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
14358 Add &Qucs_set_table_for_input.
14359
14360 2002-12-03 Andreas Schwab <schwab@suse.de>
14361
14362 * callint.c (Fcall_interactively): Use next_event only if less
14363 than key_count.
14364
14365 2002-12-02 Andrew Choi <akochoi@shaw.ca>
14366
14367 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
14368 names to 255 characters.
14369
14370 * macterm.c (XTread_socket): If all frames have been collapsed,
14371 expand the first one before handling drag-and-drop events.
14372
14373 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
14374 which is detected by autoconf.
14375
14376 2002-12-01 Steven Tamm <steventamm@mac.com>
14377
14378 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
14379 offset in two hints table to allow prebinding to be redone and
14380 allow the executable to be stripped.
14381
14382 2002-11-29 Dave Love <fx@gnu.org>
14383
14384 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
14385 already provided.
14386
14387 2002-11-29 Richard M. Stallman <rms@gnu.org>
14388
14389 * xdisp.c (start_display): Check more intelligently for
14390 whether the line is continued.
14391 (move_it_vertically_backward): Clear it->continuation_lines_width.
14392
14393 2002-11-28 Dave Love <fx@gnu.org>
14394
14395 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
14396 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
14397
14398 2002-11-27 Steven Tamm <steventamm@mac.com>
14399
14400 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
14401 more descriptive error output from lread.c:Fload upon most require
14402 cycles during boostrapping.
14403
14404 2002-11-27 Jason Rumney <jasonr@gnu.org>
14405
14406 * fileio.c (Finsert_file_contents): Give a more appropriate error
14407 for files bigger than 2Gb when off_t is 32 bit.
14408
14409 * dired.c (Ffile_attributes): Don't return negative file sizes for
14410 files bigger than 2Gb when off_t is 32 bit.
14411
14412 2002-11-27 Dave Love <fx@gnu.org>
14413
14414 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
14415
14416 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
14417 Test GETPGRP_VOID instead.
14418 [BSD_TERMIOS]: Remove definitions (never used).
14419
14420 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
14421 Don't define.
14422 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
14423
14424 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
14425
14426 2002-11-25 Jason Rumney <jasonr@gnu.org>
14427
14428 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
14429 supported.
14430
14431 2002-11-25 Dave Love <fx@gnu.org>
14432
14433 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
14434
14435 * Makefile.in (TEMACS_LDFLAGS): Update last change.
14436
14437 2002-11-25 Andreas Schwab <schwab@suse.de>
14438
14439 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
14440
14441 2002-11-24 Steven Tamm <steventamm@mac.com>
14442
14443 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
14444 determine the size of pointers alloced in unexed space instead
14445 of using possibly invalid emacs_zone pointers. This fixes the
14446 binary incompatibility problems caused by updates to libSystem.B.
14447
14448 2002-11-24 Richard M. Stallman <rms@gnu.org>
14449
14450 * search.c (Fstring_match): Doc fix.
14451
14452 * callint.c (Fcall_interactively): If a command fails because
14453 `*' detects a read-only buffer, but RECORD_FLAG is set,
14454 record it anyway if the args don't actually do tty input.
14455
14456 2002-11-22 Dave Love <fx@gnu.org>
14457
14458 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
14459
14460 * keyboard.c (interrupt_signal): Provide forward declaration.
14461 (kbd_buffer_store_event): Don't declare interrupt_signal.
14462
14463 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
14464
14465 2002-11-21 Richard M. Stallman <rms@gnu.org>
14466
14467 * eval.c (interactive_p): Skip any number of bytecode
14468 and special form frames, in any order.
14469
14470 2002-11-20 Jason Rumney <jasonr@gnu.org>
14471
14472 * w32fns.c (convert_mono_to_color_image): New function.
14473 (xbm_load, xbm_load_image): Use it when foreground or background
14474 is explicitly set.
14475
14476 2002-11-19 Dave Love <fx@gnu.org>
14477
14478 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
14479
14480 2002-11-18 Jason Rumney <jasonr@gnu.org>
14481
14482 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
14483 (XPutPixel): Swap blue and red.
14484 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
14485 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
14486 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
14487 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
14488
14489 2002-11-18 Dave Love <fx@gnu.org>
14490
14491 * m/orion105.h (HAVE_ALLOCA): Don't define.
14492
14493 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
14494
14495 * m/intel386.h: Don't include alloca.h or define alloca.
14496
14497 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
14498 malloc, realloc, calloc.
14499
14500 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
14501 (bcmp): Don't define.
14502
14503 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
14504
14505 * m/amdahl.h: Don't define LIB_STANDARD.
14506
14507 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
14508
14509 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
14510
14511 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
14512 Don't include alloca.h.
14513
14514 * s/aix3-2.h (HAVE_FSYNC): Don't define.
14515
14516 * regex.c (_GNU_SOURCE): Don't define.
14517
14518 * process.c (_GNU_SOURCE): Don't define.
14519
14520 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
14521
14522 2002-11-18 Markus Rost <rost@math.ohio-state.edu>
14523
14524 * s/sol2-8.h: Include sol2-6.h.
14525
14526 2002-11-18 Miles Bader <miles@gnu.org>
14527
14528 * dispextern.h (struct face): Add `overstrike' field.
14529 * xterm.c (x_draw_glyph_string_foreground)
14530 (x_draw_composite_glyph_string_foreground): Implement overstriking.
14531 * xfaces.c (load_face_font): Set `face->overstrike' based on
14532 result from choose_face_font.
14533 (best_matching_font, choose_face_font): Add `needs_overstrike'
14534 argument, and use it to return whether overstriking is desirable
14535 for this face/font combo.
14536 (set_font_frame_param: Pass new argument to choose_face_font.
14537
14538 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
14539
14540 This change is my fix for the following entry in etc/PROBLEMS:
14541 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
14542 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
14543
14544 * w32.c: Added wrapper functions around the win32 API functions
14545 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
14546 GetSidIdentifierAuthority. These wrapper functions serve two
14547 purposes:
14548 1. They ensure that the wrapped function can never be called
14549 when Emacs is running on an operating system on which they are
14550 not supported (Microsoft Windows 95 / 98 / ME).
14551 2. They call the wrapped functions via function pointers rather
14552 than calling them directly. This avoids taking advantage of the
14553 undocumented fact that although these functions are not supported
14554 in the 9x branch of Microsoft Windows, the functions do exist in
14555 the version of advapi32.dll that is found in the 9x branch of
14556 Microsoft Windows.
14557
14558 * w32.c (init_user_info): Replace the calls to the win32 API
14559 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
14560 and GetSidIdentifierAuthority with calls to the newly added
14561 wrapper functions.
14562
14563 * w32.h: Added extern declarations for the following functions:
14564 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
14565 syms_of_w32menu, and void syms_of_fontset.
14566
14567 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
14568 function pointer track_mouse_event_fn in the handler for the
14569 WM_SETFOCUS message.
14570
14571 * w32menu.c (initialize_frame_menubar): Add code to
14572 reinitialize the function pointers set_menu_item_info and
14573 get_menu_item_info.
14574
14575 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
14576
14577 * sound.c: Added a partial implementation of play-sound-internal
14578 for Microsoft Windows. Added various #ifdef / #else / #endif
14579 code blocks to separate the code that will compile under
14580 Microsoft Windows from the code that is specific to GNU/Linux.
14581 Moved several blocks of code around to make this separation of code
14582 into Windows compatible and GNU/Linux compatible code blocks easier.
14583
14584 * makefile.w32-in: Include sound.c and link with WinMM.lib.
14585
14586 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
14587 added support for play-sound-internal under Windows would be
14588 included in the build of Emacs.
14589
14590 2002-11-16 Jason Rumney <jasonr@gnu.org>
14591
14592 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
14593
14594 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
14595
14596 2002-11-15 Stefan Monnier <monnier@cs.yale.edu>
14597
14598 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
14599 (adjust_point_for_property): Move out of display and invisible even if
14600 we were already inside before (in case a property was added while
14601 we weren't looking). Be more careful when handling invisible props.
14602 Skip invisible text as if it really wasn't there at all.
14603
14604 2002-11-15 Jason Rumney <jasonr@gnu.org>
14605
14606 * w32term.c (x_draw_image_foreground)
14607 (w32_draw_image_foreground_1): Use standard copy and invert
14608 operations to draw images.
14609
14610 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
14611 depth of 1.
14612 (xbm_read_bitmap_data): Invert bits as xbm is read in.
14613 (XPutPixel): Don't invert bits here.
14614
14615 2002-11-15 Jason Rumney <jasonr@gnu.org>
14616
14617 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
14618 (w32_draw_image_foreground_1): Handle image masks.
14619 (x_draw_image_glyph_string): Don't BitBlt transparently.
14620
14621 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
14622 (x_from_xcolors): Adjust RGB values for W32.
14623 (image_background, image_background_transparent)
14624 (postprocess_image, x_to_xcolors, x_disable_image)
14625 (x_build_heuristic_mask): Adapt for W32 and enable.
14626 (x_create_x_image_and_pixmap): Mark images with palettes as such.
14627 (xbm_load): Remove unused variable.
14628
14629 2002-11-14 Richard M. Stallman <rms@gnu.org>
14630
14631 * buffer.c (syms_of_buffer): Doc fix.
14632
14633 2002-11-14 Dave Love <fx@gnu.org>
14634
14635 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
14636
14637 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
14638 * xmenu.c (unuse_menu_items, digest_single_submenu):
14639 * xfns.c (x_put_x_image):
14640 * xdisp.c (message2_nolog, set_message):
14641 * undo.c (record_point):
14642 * terminfo.c (tparam):
14643 * syntax.c (scan_sexps_forward):
14644 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
14645 * composite.c (update_compositions):
14646 * cm.c (calccost, cmgoto):
14647 * charset.c (c_string_width): Declare all args (per C99).
14648
14649 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
14650
14651 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
14652 Don't declare.
14653
14654 * emacs.c (main) [!VMS]: Avoid third arg.
14655
14656 * fns.c (Fcopy_sequence): Doc fix.
14657 (Fmap_char_table): Cast `call2'.
14658
14659 2002-11-14 Francesco Potorti` <pot@gnu.org>
14660
14661 * s/sol2-8.h: New file.
14662
14663 2002-11-14 Kim F. Storm <storm@cua.dk>
14664
14665 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
14666 dependency on `risky-local-variable' and the :propertize form.
14667
14668 2002-11-12 Stefan Monnier <monnier@cs.yale.edu>
14669
14670 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
14671
14672 * syntax.c (scan_sexps_forward): Undo last patch.
14673 Use a more obvious fix: check eob before updating the syntax table.
14674
14675 2002-11-09 Stefan Monnier <monnier@cs.yale.edu>
14676
14677 * syntax.c (scan_sexps_forward): Update syntax table before reading
14678 a char rather than after so we don't update the table past eob.
14679
14680 2002-11-09 Dave Love <fx@gnu.org>
14681
14682 * buffer.c (Fset_buffer_major_mode): Fix last change.
14683
14684 * regex.c (regexec): Fix pmatch declaration.
14685
14686 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
14687
14688 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
14689 to self-inserting characters.
14690 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
14691
14692 * coding.c (Vtranslation_table_for_input): New.
14693 (syms_of_coding): DEFVAR it.
14694
14695 2002-11-08 Juanma Barranquero <lektu@terra.es>
14696
14697 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
14698 window.
14699
14700 2002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14701
14702 * process.c (Fformat_network_address): Remove unused locals p,
14703 cp, and i.
14704
14705 2002-11-06 Dave Love <fx@gnu.org>
14706
14707 * buffer.c (Qset_buffer_major_mode_hook): New.
14708 (Fset_buffer_major_mode): Use it.
14709
14710 2002-11-06 Richard M. Stallman <rms@gnu.org>
14711
14712 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
14713 and stop_polling.
14714
14715 * process.c (wait_reading_process_input):
14716 Test POLLING_PROBLEM_IN_SELECT, not hpux.
14717 Avoid initialization for auto Lisp_Object var.
14718
14719 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
14720
14721 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
14722
14723 2002-11-05 Richard M. Stallman <rms@gnu.org>
14724
14725 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
14726
14727 * callint.c (Fcall_interactively): New local filter_specs.
14728 (Fcall_interactively): Check for progn as well as let.
14729 Add a gcpro.
14730 (Qprogn): New variable.
14731 (syms_of_callint): Staticpro and init Qprogn.
14732
14733 2002-11-04 John Paul Wallington <jpw@shootybangbang.com>
14734
14735 * lread.c (Feval_buffer): Doc fix.
14736
14737 2002-11-04 Dave Love <fx@gnu.org>
14738
14739 * keyboard.c (read_char): Always translate iff
14740 Vkeyboard_translate_table is a char table and c is valid.
14741
14742 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
14743 and fix C types.
14744
14745 2002-11-03 Stefan Monnier <monnier@cs.yale.edu>
14746
14747 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
14748
14749 * editfns.c (get_pos_property): Don't hardcode Qfield.
14750
14751 * keyboard.c (adjust_point_for_property): Handle `display' prop on
14752 overlays. Also handle `invisible' prop.
14753
14754 2002-11-02 Stefan Monnier <monnier@cs.yale.edu>
14755
14756 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
14757 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
14758
14759 2002-11-01 Andreas Schwab <schwab@suse.de>
14760
14761 * editfns.c (Fmessage): Revert last change to properly handle %%.
14762
14763 2002-11-01 Stefan Monnier <monnier@cs.yale.edu>
14764
14765 * xmenu.c (unuse_menu_items): New fun.
14766 (menu_items_inuse): New var.
14767 (syms_of_xmenu): Initialize it.
14768 (init_menu_items): Use it to detect re-entrance.
14769 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
14770 (Fx_popup_menu): Remove spurious XSETFRAME.
14771
14772 * editfns.c (find_field): Make an exception for nil fields.
14773
14774 2002-11-01 Dave Love <fx@gnu.org>
14775
14776 * m/gec63.h: Deleted.
14777
14778 2002-10-31 Dave Love <fx@gnu.org>
14779
14780 * xterm.c (XTread_socket): Fix last change.
14781 (xaw_scroll_callback): Cast call_data to long to avoid warning.
14782
14783 2002-10-31 Stefan Monnier <monnier@cs.yale.edu>
14784
14785 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
14786
14787 2002-10-30 Stefan Monnier <monnier@cs.yale.edu>
14788
14789 * editfns.c (overlays_around, get_pos_property): New funs.
14790 (find_field): Use them.
14791 Also be careful not to modify POS before its last use.
14792 (Fmessage): Don't Fformat if there's nothing to format.
14793
14794 2002-10-30 Dave Love <fx@gnu.org>
14795
14796 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
14797 [HAVE_PTY_H]; Include pty.h.
14798
14799 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
14800
14801 * xterm.c (Qeql): Declare.
14802 (Vx_keysym_table): New.
14803 (syms_of_xterm): Initialize it.
14804 (XTread_socket): Use it. Deal with ASCII keysyms.
14805 (XSetIMValues) [HAVE_X11R6]: Prototype.
14806
14807 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
14808 (lispy_kana_keys): Comment out.
14809 (make_lispy_event) [XK_kana_A]: Comment out.
14810 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
14811 Fix sprintf call.
14812
14813 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
14814 regexp.h change).
14815 (TERMINFO, LIBS_TERMCAP): Define.
14816
14817 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
14818 (bcmp): Define conditional on HAVE_BCMP.
14819 (NO_SIOCTL_H): Don't define.
14820 (TIOCSIGSEND): Don't make conditional on IRIX6.
14821
14822 * s/sol2-5.h: Don't include strings.h.
14823 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
14824
14825 * s/irix6-0.h (IRIX6): Don't define.
14826 (bcopy, bcmp, bzero): Don't undef.
14827
14828 * s/irix6-5.h: Don't include strings.h.
14829 (IRIX6): Don't define.
14830 (bcopy, bcmp, bzero): Don't undef.
14831
14832 * syntax.c (Fforward_comment): Doc fix.
14833
14834 2002-10-29 Kim F. Storm <storm@cua.dk>
14835
14836 * process.c (Fsignal_process): Allow PROCESS to be specified by
14837 name in addition to pid (as integer or string).
14838
14839 2002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
14840
14841 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
14842 environments.
14843
14844 2002-10-27 Kim F. Storm <storm@cua.dk>
14845
14846 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
14847
14848 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
14849
14850 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
14851
14852 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
14853
14854 2002-10-26 Richard M. Stallman <rms@gnu.org>
14855
14856 * editfns.c (Fformat): Detect invalid format letters for floats.
14857
14858 2002-10-25 Kenichi Handa <handa@m17n.org>
14859
14860 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
14861 (x_set_title): Likewise.
14862
14863 2002-10-25 Juanma Barranquero <lektu@terra.es>
14864
14865 * macgui.h:
14866 * w32gui.h: Remove definition of XColor.
14867
14868 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
14869
14870 2002-10-24 Kim F. Storm <storm@cua.dk>
14871
14872 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
14873 Callers changed (supply dummy arg).
14874
14875 * lisp.h (get_window_cursor_type): Update prototype.
14876
14877 * w32term.c (x_display_and_set_cursor): Get active_cursor from
14878 get_window_cursor_type to track system caret.
14879
14880 2002-10-24 Kim F. Storm <storm@cua.dk>
14881
14882 * process.c (Fformat_network_address): New function.
14883 (syms_of_process): Defsubr it.
14884 (list_processes_1): Use it to format :local/:remote address if
14885 service/host is not set; before Emacs would crash in that case.
14886 (Fmake_network_process): Don't use Ffind_operation_coding_system
14887 to setup coding system if host or service is not set.
14888
14889 2002-10-23 Juanma Barranquero <lektu@terra.es>
14890
14891 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
14892
14893 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
14894 COLORREF.
14895
14896 * macgui.h:
14897 * w32gui.h: Add definition of XColor.
14898
14899 * macfns.c:
14900 * w32fns.c:
14901 * xfaces.c: Remove definition of XColor.
14902
14903 2002-10-22 Stefan Monnier <monnier@cs.yale.edu>
14904
14905 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
14906
14907 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
14908 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
14909 window if it is dedicated.
14910 (Fshrink_window): Add preserve_before as was done for enlarge_window.
14911 (Vspecial_display_function): Update docstring.
14912
14913 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
14914 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
14915 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
14916
14917 2002-10-21 Stefan Monnier <monnier@cs.yale.edu>
14918
14919 * casefiddle.c (casify_region): Don't treat a prefix char as part
14920 of a word when at the beginning.
14921
14922 2002-10-17 Juanma Barranquero <lektu@terra.es>
14923
14924 * lread.c (syms_of_lread): Fix typos.
14925
14926 2002-10-17 Dave Love <fx@gnu.org>
14927
14928 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
14929
14930 2002-10-16 Richard M. Stallman <rms@gnu.org>
14931
14932 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
14933
14934 2002-10-14 Juanma Barranquero <lektu@terra.es>
14935
14936 * w16select.c (syms_of_win16select): Fix docstring for
14937 `selection-coding-system'.
14938
14939 * w32select.c (syms_of_w32select): Likewise.
14940
14941 2002-10-14 Stefan Monnier <monnier@cs.yale.edu>
14942
14943 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
14944 a backslash-quoted char.
14945 (scan_lists, scan_sexps_forward): Pacify the compiler.
14946
14947 2002-10-13 Richard M. Stallman <rms@gnu.org>
14948
14949 * window.c (window_scroll): Set immediate_quit.
14950
14951 * print.c (print): When backquote form is the car of a list,
14952 output in old style. Use old_backquote_output to output all
14953 comma forms inside it in old style too.
14954
14955 * buffer.h (struct buffer): Move `undo_list' down below `name'.
14956
14957 2002-10-11 Markus Rost <rost@math.ohio-state.edu>
14958
14959 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
14960 batch mode).
14961
14962 * lread.c (Fload): Doc fix (load-suffixes).
14963
14964 2002-10-10 Steven Tamm <steventamm@mac.com>
14965
14966 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
14967 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
14968 Also switch the default to Qnil from Qt.
14969
14970 2002-10-08 Kenichi Handa <handa@m17n.org>
14971
14972 * coding.c (code_convert_region): When we need more GAP for
14973 conversion, pay attention to the case that coding->produced is not
14974 greater than coding->consumed.
14975
14976 2002-10-07 Richard M. Stallman <rms@gnu.org>
14977
14978 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
14979
14980 2002-10-06 Andrew Choi <akochoi@shaw.ca>
14981
14982 * macmenu.c (mac_menu_show): Add j to count menu items; match
14983 menu_item_selection to it to find selected item.
14984
14985 2002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14986
14987 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
14988 cases. The correct fix is to pass ReparentNotify to Xt.
14989 The shell widget interprets ConfigureNotify differently depending
14990 on if it has been reparented or not.
14991
14992 2002-10-05 Markus Rost <rost@math.ohio-state.edu>
14993
14994 * editfns.c (Fformat_time_string): Doc fix.
14995
14996 2002-10-05 John Paul Wallington <jpw@shootybangbang.com>
14997
14998 * fns.c (Flength): Doc fix.
14999
15000 2002-10-04 Stefan Monnier <monnier@cs.yale.edu>
15001
15002 * keyboard.c (keyremap): New struct.
15003 (read_key_sequence): Use it: globally replace keytran_foo with
15004 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
15005 keytran_next and fkey_next to just `next'.
15006
15007 2002-10-04 Steven Tamm <steventamm@mac.com>
15008
15009 * macterm.c (keycode_to_xkeysym_table): Change return to be
15010 treated like an X keysym.
15011
15012 2002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15013
15014 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
15015 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
15016 This is to also handle x/y changes that occur because of a resize.
15017
15018 2002-10-02 John Paul Wallington <jpw@shootybangbang.com>
15019
15020 * frame.c (Vdelete_frame_functions): New variable.
15021 (syms_of_frame): Initialize and defvar it.
15022 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
15023 it when frame's `tooltip' parameter is non-nil.
15024
15025 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
15026
15027 * w32fns.c (x_create_tip_frame): Likewise.
15028
15029 * macfns.c (x_create_tip_frame): Likewise.
15030
15031 2002-09-30 Kenichi Handa <handa@m17n.org>
15032
15033 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
15034 -1 before calling ccl_driver.
15035
15036 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
15037 Only when it is non-nil, handle composition sequence.
15038 (setup_coding_system) <0>: Don't force composition handling.
15039
15040 * Makefile.in (lisp, shortlisp): Add utf-16.elc
15041
15042 2002-09-29 Richard M. Stallman <rms@gnu.org>
15043
15044 * search.c (Freplace_match): Adjust match data for the substitution
15045 just made in the buffer.
15046
15047 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
15048 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
15049
15050 2002-09-27 Richard M. Stallman <rms@gnu.org>
15051
15052 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
15053 (read_char): Use them. Do all exits thru the end of the function.
15054
15055 2002-09-27 Kenichi Handa <handa@etl.go.jp>
15056
15057 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
15058 is nil.
15059
15060 2002-09-26 Richard M. Stallman <rms@gnu.org>
15061
15062 * regex.h (__restrict_arr): Don't define if already defined.
15063
15064 * coding.c (run_pre_post_conversion_on_str):
15065 Save and restore Vdeactivate_mark.
15066
15067 2002-09-26 John Paul Wallington <jpw@shootybangbang.com>
15068
15069 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
15070
15071 2002-09-26 Kenichi Handa <handa@etl.go.jp>
15072
15073 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
15074 nonzero, try face's family at first. Otherwise try FAMILY at first.
15075 (choose_face_font): If C is a single byte char or latin-1, call
15076 try_font_list with PREFER_FACE_FAMILY 1.
15077
15078 2002-09-21 Richard M. Stallman <rms@gnu.org>
15079
15080 * window.c (select_window_1): Don't select frame.
15081 Set frame's selected window only when frame itself is selected.
15082 (Fselect_window): Doc fix.
15083
15084 2002-09-18 Kim F. Storm <storm@cua.dk>
15085
15086 * process.c (make-network-process): Doc fix (there is no
15087 network-server-log-function hook).
15088
15089 2002-09-18 Richard M. Stallman <rms@gnu.org>
15090
15091 * print.c (print): Clear out the unused parts of Vprint_number_table.
15092 (syms_of_print): Doc fix for `print-number-table'.
15093
15094 * unexelf.c (unexec): Undo previous change.
15095
15096 2002-09-17 Andreas Schwab <schwab@suse.de>
15097
15098 * m/alpha.h [LINUX]: Don't define DATA_START.
15099
15100 2002-09-16 Dave Love <fx@gnu.org>
15101
15102 * unexelf.c (unexec): Deal with .got, reinstating change from
15103 25-08-1999.
15104
15105 2002-09-13 Richard M. Stallman <rms@gnu.org>
15106
15107 * s/sol2-6.h (UNEXEC): Comment out definition.
15108
15109 * unexsol.c (unexec): Don't downcase first letter of error msg.
15110
15111 * xfaces.c (Fcolor_supported_p): Just one arg is required.
15112
15113 2002-09-12 Markus Rost <rost@math.ohio-state.edu>
15114
15115 * unexsol.c: Include buffer.h, charset.h, coding.h.
15116
15117 2002-09-11 Richard M. Stallman <rms@gnu.org>
15118
15119 * unexsol.c: Don't use report_file_error; do it by hand
15120 using dlerror.
15121
15122 * process.c (wait_reading_process_input, both versions):
15123 Before calling turn_on_atimers, call stop_polling.
15124
15125 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
15126
15127 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
15128 we go to too_near_end, call clear_glyph_matrix.
15129 (redisplay_window): After make_cursor_line_fully_visible,
15130 call clear_glyph_matrix and bypass `goto done'.
15131
15132 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
15133 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
15134
15135 2002-09-10 Richard M. Stallman <rms@gnu.org>
15136
15137 * fileio.c (Fdo_auto_save): Catch error making directory.
15138 Only call push_message if we need to.
15139 At the same time, make an unwind-protect to pop it.
15140 Rename local message_p to old_message_p.
15141 (do_auto_save_make_dir, do_auto_save_eh): New functions.
15142 (do_auto_save_unwind): Don't call pop_message.
15143
15144 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
15145
15146 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
15147
15148 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
15149
15150 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
15151
15152 2002-09-10 Stefan Monnier <monnier@cs.yale.edu>
15153
15154 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
15155 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
15156 (re_match_2_internal): Be more careful with infinite loops.
15157
15158 2002-09-10 Kim F. Storm <storm@cua.dk>
15159
15160 * macros.c (end_kbd_macro): New function.
15161 (Fend_kbd_macro): Use it.
15162
15163 * macros.h (end_kbd_macro): Declare extern.
15164
15165 * keyboard.c (Fdiscard_input): If defining keyboard macro,
15166 end and save it instead of discarding it.
15167
15168 2002-09-09 Markus Rost <rost@math.ohio-state.edu>
15169
15170 * s/sol2-6.h: Fix typo. Add comment.
15171
15172 2002-09-09 Richard M. Stallman <rms@gnu.org>
15173
15174 * regex.c (regnum_t): Use signed int, not unsigned int.
15175
15176 * s/sol2-6.h: New file.
15177
15178 * s/sol2-5.h (UNEXEC): Definition deleted.
15179
15180 2002-09-08 Kim F. Storm <storm@cua.dk>
15181
15182 * macros.c (executing_macro_index): Change type to EMACS_INT.
15183 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
15184
15185 * macros.h (executing_macro_index): Change type to EMACS_INT.
15186
15187 2002-09-06 Richard M. Stallman <rms@gnu.org>
15188
15189 * casetab.c (set_case_table): Make canon table point to eqv table.
15190
15191 2002-09-06 Juanma Barranquero <lektu@terra.es>
15192
15193 * coding.c (syms_of_coding): Fix spacing.
15194
15195 * composite.c (Fcompose_region_internal)
15196 (Fcompose_string_internal): Likewise.
15197
15198 * data.c (Flsh): Likewise.
15199
15200 * fontset.c (Fset_fontset_font): Likewise.
15201
15202 * macfns.c (Fx_server_max_request_size): Likewise.
15203
15204 * w16select.c (syms_of_win16select): Likewise.
15205
15206 * w32select.c (syms_of_w32select): Likewise.
15207
15208 * xselect.c (syms_of_xselect): Likewise.
15209
15210 2002-09-05 Richard M. Stallman <rms@gnu.org>
15211
15212 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
15213 call EXTEND_RANGE_TABLE and return a proper value.
15214 (set_image_of_range): Don't call set_image_of_range_1
15215 if no TRANSLATE or if range includes all of Latin-1.
15216 Only call it for the Latin-1 part of the range.
15217 For other cases, make two separate ranges,
15218 one for the original specified characters and one for
15219 their case-conversions.
15220
15221 2002-09-04 Richard M. Stallman <rms@gnu.org>
15222
15223 * s/sol2-5.h (UNEXEC): Use unexsol.o.
15224
15225 * window.c (displayed_window_lines): Correct for one-off bug
15226 in HEIGHT on non-window displays.
15227
15228 * regex.c (set_image_of_range_1): New function.
15229 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
15230 Return a value to indicate running out of memory.
15231 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
15232 (extend_range_table_work_area): New subroutine.
15233 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
15234 Different calling conventions, and used from set_image_of_range{,_1}.
15235 (IMMEDIATE_QUIT_CHECK): Definitions moved.
15236
15237 2002-09-04 Juanma Barranquero <lektu@terra.es>
15238
15239 * makefile.w32-in: All dependencies updated.
15240
15241 2002-09-01 Richard M. Stallman <rms@gnu.org>
15242
15243 * unexsol.c: New file.
15244
15245 * xfns.c (Qbox): Declare external, don't define.
15246
15247 * xdisp.c (redisplay_window) <force-start case>:
15248 If point is on semi-visible last line, reposition
15249 it at previous line.
15250
15251 * alloc.c (display_malloc_warning): Use display-warning.
15252 (malloc_warning_1): Function deleted.
15253
15254 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
15255
15256 * lread.c (read1): Handle #! by skipping the line.
15257
15258 2002-08-31 Richard M. Stallman <rms@gnu.org>
15259
15260 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
15261 Don't include LDFLAGS.
15262 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
15263
15264 2002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
15265
15266 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
15267 member of x_display_info unless we compile for some window system.
15268
15269 2002-08-31 Kim F. Storm <storm@cua.dk>
15270
15271 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
15272 (get_window_cursor_type): Don't use them.
15273 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
15274
15275 2002-08-30 Kenichi Handa <handa@etl.go.jp>
15276
15277 * xdisp.c (get_next_display_element): Fix previous change.
15278
15279 2002-08-30 Andrew Choi <akochoi@shaw.ca>
15280
15281 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
15282 (expose_window): Use it to fix the display of overlapping
15283 rows (merge code from xterm.c).
15284
15285 * macfns.c (Qbox): Add extern declaration.
15286
15287 2002-08-30 Juanma Barranquero <lektu@terra.es>
15288
15289 * w32fns.c (Qbox): Make extern.
15290 (syms_of_w32fns): Remove initialization of Qbox.
15291
15292 2002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
15293
15294 * xfns.c (Fx_open_connection): Fix error message.
15295
15296 2002-08-30 Kim F. Storm <storm@cua.dk>
15297
15298 The following changes consolidates the handling of the cursor
15299 type in xdisp.c, moving duplicate code and functionality from
15300 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
15301
15302 * frame.h (enum text_cursor_kinds): Consolidated here.
15303 Added DEFAULT_CURSOR value.
15304 (struct frame) <desired_cursor, cursor_width>
15305 <blink_off_cursor, blink_off_cursor_width>: New fields.
15306 Consolidated from output_x, output_w32 and output_mac structs.
15307 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
15308 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
15309
15310 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
15311 Variables consolidated here.
15312 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
15313 (Vcursor_in_non_selected_windows): Renamed from
15314 cursor_in_non_selected_windows and changed to Lisp_Object.
15315 (syms_of_xdisp): Define and staticpro new and moved variables.
15316 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
15317 consolidated here. Recognize Qhollow setting.
15318 (set_frame_cursor_types): New function to set frame cursor types
15319 based on the frame parameters.
15320 (get_window_cursor_type): New function to calculate new cursor
15321 type and width for the specified window. Based on duplicated
15322 code consolidated here.
15323 Enhancements: cursor-in-non-selected-windows may be a cursor type,
15324 check buffer-local alternate-cursor-type and blink-cursor-alist
15325 before using built-in blink off methods.
15326
15327 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
15328
15329 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
15330 (get_specified_cursor_type, get_window_cursor_type)
15331 (set_frame_cursor_types): Added prototypes.
15332
15333 * macfns.c (x_specified_cursor_type): Removed.
15334 (x_set_cursor_type): Use set_frame_cursor_types.
15335 (Qbar, Qbox): Removed.
15336 (syms_of_macfns): Don't intern or staticpro them.
15337
15338 * macterm.c (x_specified_cursor_type): Remove prototype.
15339 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
15340 (x_display_and_set_cursor): Use get_window_cursor_type.
15341 Remove unused local variables cursor_non_selected, active_cursor.
15342 Redraw cursor if hbar cursor width changes.
15343 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
15344
15345 * macterm.h (enum text_cursor_kinds): Removed.
15346 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
15347 <blink_off_cursor, blink_off_cursor_width>: Members removed.
15348 (FRAME_DESIRED_CURSOR): Macro removed.
15349
15350 * w32fns.c (Vblink_cursor_alist): Removed.
15351 (Qbar, Qhbar, Qbox, Qhollow): Removed.
15352 (syms_of_w32fns): Don't intern, staticpro, or define them.
15353 (x_specified_cursor_type): Removed.
15354 (x_set_cursor_type): Use set_frame_cursor_types.
15355
15356 * w32term.c (x_specified_cursor_type): Remove prototype.
15357 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
15358 (x_display_and_set_cursor): Use get_window_cursor_type.
15359 Remove unused local variables cursor_off_state.
15360 Redraw cursor if hbar cursor width changes.
15361 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
15362
15363 * w32term.h (enum text_cursor_kinds): Removed.
15364 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
15365 <blink_off_cursor, blink_off_cursor_width>: Members removed.
15366 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
15367 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
15368 (struct w32_display_info) <x_highlight_frame>: Renamed member from
15369 w32_highlight_frame.
15370
15371 * xfns.c (Vblink_cursor_alist): Removed.
15372 (Qbar, Qhbar, Qbox, Qhollow): Removed.
15373 (syms_of_xfns): Don't intern, staticpro, or define them.
15374 (x_specified_cursor_type): Removed.
15375 (x_set_cursor_type): Use set_frame_cursor_types.
15376
15377 * xterm.c (x_specified_cursor_type): Remove prototype.
15378 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
15379 (x_display_and_set_cursor): Use get_window_cursor_type.
15380 Remove unused local variables cursor_off_state.
15381 Redraw cursor if hbar cursor width changes.
15382
15383 * xterm.h (enum text_cursor_kinds): Removed.
15384 (struct output_x) <current_cursor, desired_cursor, cursor_width>
15385 <blink_off_cursor, blink_off_cursor_width>: Members removed.
15386 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
15387 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
15388 (x_specified_cursor_type): Remove prototype.
15389
15390 2002-08-28 Richard M. Stallman <rms@gnu.org>
15391
15392 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
15393 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
15394 (Vblink_cursor_alist): New variable.
15395 (syms_of_w32fns): Initialize and defvar it.
15396 (x_specified_cursor_type): Recognize Qbox for filled box.
15397 Exceptions are hollow boxes.
15398 (Qbox, Qhollow): New variables.
15399 (syms_of_w32fns): Initialize and staticpro them.
15400
15401 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
15402 New macros.
15403 (struct w32_output): New fields blink_off_cursor,
15404 blink_off_cursor_width.
15405 (FRAME_CURSOR_WIDTH): New macro.
15406
15407 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
15408 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
15409
15410 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
15411 for bar cursor.
15412
15413 * w32term.c (expose_overlaps): New function.
15414 (expose_window): Use it to fix the display of overlapping rows.
15415
15416 2002-08-28 Simon Josefsson <jas@extundo.com>
15417
15418 * xfns.c (Fx_open_connection): Improve help when X connection
15419 fails, xhost is insecure and xauth is better.
15420
15421 2002-08-28 Juanma Barranquero <lektu@terra.es>
15422
15423 * makefile.w32-in: Add missing dependencies on w32term.h and
15424 composite.h.
15425
15426 * emacs.c (USAGE1): Add missing newline.
15427
15428 2002-08-27 Andrew Choi <akochoi@shaw.ca>
15429
15430 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
15431
15432 2002-08-27 Richard M. Stallman <rms@gnu.org>
15433
15434 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
15435 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
15436 (Vblink_cursor_alist): New variable.
15437 (syms_of_xfns): Initialize and defvar it.
15438 (x_specified_cursor_type): Recognize Qbox for filled box.
15439 Exceptions are hollow boxes.
15440 (Qbox, Qhollow): New variables.
15441 (syms_of_xfns): Initialize and staticpro them.
15442
15443 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
15444 New macros.
15445 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
15446
15447 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
15448 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
15449
15450 * emacs.c (main): Handle --script.
15451 (USAGE1): Mention --script.
15452 (standard_args): Define sort order for --script.
15453
15454 2002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
15455
15456 * xdisp.c (redisplay_updating_p): Variable removed.
15457 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
15458 New variables.
15459 (init_iterator): Don't free realized faces if
15460 inhibit_free_realized_faces is set.
15461 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
15462 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
15463 initialize Qinhibit_free_realized_faces.
15464
15465 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
15466 when iterator is adding glyphs to a glyph matrix.
15467
15468 2002-08-27 Kenichi Handa <handa@etl.go.jp>
15469
15470 * xdisp.c (get_next_display_element): In unibyte case, don't use
15471 octal form for such eight-bit characters that can be converted to
15472 multibyte char.
15473
15474 2002-08-26 Kim F. Storm <storm@cua.dk>
15475
15476 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize
15477 foreground and background colors. From Joe Buehler.
15478
15479 2002-08-26 Miles Bader <miles@gnu.org>
15480
15481 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
15482
15483 2002-08-25 Andrew Choi <akochoi@shaw.ca>
15484
15485 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
15486 defined instead of MAC_OSX.
15487
15488 * s/darwin.h (select): Define select to sys_select only if
15489 HAVE_CARBON is defined.
15490 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
15491 (DONT_REOPEN_PTY): #def it.
15492
15493 * macterm.c (XTread_socket): Remove code to call
15494 SendEventToEventTarget for keys with command modifiers when
15495 mac_command_key_is_meta is nil.
15496
15497 2002-08-24 Andreas Schwab <schwab@suse.de>
15498
15499 * eval.c (Fdefvar): Fix last change.
15500
15501 2002-08-23 Richard M. Stallman <rms@gnu.org>
15502
15503 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
15504 Record variables in load history as (defvar . VAR).
15505 (Fdefvar): Don't record in load history if no initial value.
15506 (Qdefvar): New variable.
15507 (syms_of_eval): Init and staticpro it.
15508
15509 * lread.c (syms_of_lread): Doc fix.
15510 (build_load_history): Use Fmember to see if a definition
15511 is already in the Vload_history element.
15512
15513 * process.c (Fstart_process): Remove /: from program name.
15514
15515 * emacs.c (decode_env_path): Don't add /: if file name handler
15516 has a `safe-magic' property.
15517
15518 * callproc.c (Fcall_process): Remove /: from program name.
15519
15520 2002-08-23 Stefan Monnier <monnier@cs.yale.edu>
15521
15522 * regex.c (PATFETCH): Remove the translating fetch.
15523 (PATFETCH_RAW): Rename to PATFETCH.
15524 (set_image_of_range): New fun.
15525 (SET_RANGE_TABLE_WORK_AREA): Use it.
15526 (regex_compile): Don't translate the pattern chars so eagerly.
15527 Only do it when inserting an `exactn' bytecode or when handling
15528 a char-range.
15529 (mutually_exclusive_p): Avoid empty statement.
15530
15531 2002-08-22 Kim F. Storm <storm@cua.dk>
15532
15533 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
15534 end up on a partially visible line; this reverts a specific part
15535 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
15536 display error which has been reported several times now.
15537 However it introduces the problem that changes was supposed to fix.
15538 See my comments in the source if you want to debug this further.
15539
15540 2002-08-20 Kenichi Handa <handa@etl.go.jp>
15541
15542 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
15543
15544 2002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
15545
15546 * msdos.c (croak): Add `void' to definition.
15547
15548 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
15549 Don't define them, they are defined in msdos.c.
15550
15551 * mem-limits.h [MSDOS]: Declare etext.
15552
15553 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
15554 `const' since CORRECT_DIR_SEPS modifies its target.
15555
15556 2002-08-19 Kim F. Storm <storm@cua.dk>
15557
15558 * keyboard.c (Fclear_this_command_keys): Add optional arg
15559 KEEP-RECORD to avoid clearing lossage when we just want to clear
15560 the current key sequence (kmacro needs this).
15561
15562 2002-08-19 Kenichi Handa <handa@localhost>
15563
15564 * composite.c (run_composition_function): Call FUNC if it is fboundp.
15565
15566 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
15567 cons, return Qnil.
15568
15569 2002-08-17 Richard M. Stallman <rms@gnu.org>
15570
15571 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
15572
15573 * sysdep.c [!VMS]: Include sys/files.h.
15574
15575 * editfns.c (save_restriction_restore): Defend from unchained marker.
15576
15577 * buffer.c (overlays_at): Handle extending vec uniformly.
15578 (overlays_in): Handle extending vec from length 0 as in overlays_at.
15579
15580 2002-08-15 Andrew Choi <akochoi@shaw.ca>
15581
15582 * mac.c (init_mac_osx_environment): New function.
15583
15584 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
15585
15586 2002-08-14 Kim F. Storm <storm@cua.dk>
15587
15588 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
15589 executing macro before appending to it (when used from Lisp).
15590 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
15591 which is called prior to each iteration of macro (for kmacro.el).
15592 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
15593
15594 * lisp.h (Fexecute_kbd_macro): Update prototype.
15595
15596 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
15597
15598 2002-08-14 Kenichi Handa <handa@etl.go.jp>
15599
15600 * xselect.c (QUTF8_STRING): New variable.
15601 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
15602 (x_atom_to_symbol): Likewise.
15603 (x_get_local_selection): New argument local_request. If it is
15604 nonzero, call handler_fn with the second arg nil.
15605 (x_handle_selection_request): Call x_get_local_selection with
15606 local_request 0.
15607 (lisp_data_to_selection_data): Don't encode the string here.
15608 (Fx_get_selection_internal): Call x_get_local_selection with
15609 local_request 1.
15610 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
15611
15612 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
15613
15614 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
15615
15616 2002-08-13 Richard M. Stallman <rms@gnu.org>
15617
15618 * minibuf.c (Fminibufferp): New function.
15619 (syms_of_minibuf): Defsubr it.
15620 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
15621
15622 2002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
15623
15624 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
15625
15626 2002-08-12 Richard M. Stallman <rms@gnu.org>
15627
15628 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
15629 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
15630 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
15631 already.
15632
15633 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
15634
15635 2002-08-11 Andrew Choi <akochoi@shaw.ca>
15636
15637 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
15638 (Vmac_pass_command_to_system): New variable.
15639 (Vmac_pass_control_to_system): New variable.
15640 (do_mouse_moved): Check wp with is_emacs_window.
15641 (XTread_socket): Check window_ptr with is_emacs_window.
15642 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
15643 events back to Mac Toolbox for processing, depending on values of
15644 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
15645 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
15646 Vmac_pass_control_to_system.
15647
15648 2002-08-10 Kenichi Handa <handa@etl.go.jp>
15649
15650 * coding.c (unencodable_char_position): New function.
15651 (Funencodable_char_position): New function.
15652 (syms_of_coding): Defsubr Funencodable_char_position.
15653
15654 2002-08-10 Andrew Choi <akochoi@shaw.ca>
15655
15656 * mac.c (sys_select) [MAC_OSX]: New function.
15657
15658 * macterm.c (MakeMeTheFrontProcess): New function.
15659 (mac_initialize): Call MakeMeTheFrontProcess.
15660
15661 * s/darwin.h: Define select to sys_select.
15662
15663 2002-08-09 Richard M. Stallman <rms@gnu.org>
15664
15665 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
15666
15667 2002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
15668
15669 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
15670 end of the buffer.
15671
15672 2002-08-08 Ken Raeburn <raeburn@mit.edu>
15673
15674 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
15675
15676 * puresize.h (BASE_PURESIZE): Increase to 910000.
15677
15678 2002-08-08 Kenichi Handa <handa@etl.go.jp>
15679
15680 * coding.c (Ffind_operation_coding_system): For write-region, if
15681 VISIT is a filename, make it the target.
15682
15683 2002-08-07 Richard M. Stallman <rms@gnu.org>
15684
15685 * alloc.c (mark_object): Detect long lists for debugging.
15686 (mark_object_loop_halt): New variable.
15687
15688 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
15689
15690 * data.c (Fmake_variable_frame_local): Doc fix.
15691
15692 2002-08-01 David Ponce <david@dponce.com>
15693
15694 * w32menu.c (local_heap, local_alloc, local_free): New macros.
15695 (malloc_widget_value, free_widget_value)
15696 (w32_free_submenu_strings): Use them.
15697
15698 (push_submenu_start, push_submenu_end, push_left_right_boundary)
15699 (push_menu_pane, push_menu_item, single_keymap_panes)
15700 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
15701 (single_submenu, set_frame_menubar)
15702 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
15703
15704 (Fx_popup_menu): Don't show pop up menu until preceding one is
15705 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
15706
15707 * w32menu.c: Changes adapted from xmenu.c
15708 (set_frame_menubar): First parse all submenus,
15709 then make widget_value trees from them.
15710 Don't allocate any widget_value objects
15711 until we are done with the parsing.
15712 (parse_single_submenu): New function.
15713 (digest_single_submenu): New function.
15714 (single_submenu): Function deleted, replaced by those two.
15715
15716 2002-08-04 Andrew Choi <akochoi@shaw.ca>
15717
15718 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
15719 returns a valid window pointer before proceeding for keyDown and
15720 autoKey events.
15721
15722 2002-08-03 Andrew Choi <akochoi@shaw.ca>
15723
15724 * macterm.c (USE_CARBON_EVENTS): New macro.
15725 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
15726 (x_iconify_frame): Call CollapseWindow.
15727 (Vmac_reverse_ctrl_meta): New variable.
15728 (Vmac_wheel_button_is_mouse_2): New variable.
15729 (init_mac_drag_n_drop): New function.
15730 (mac_do_receive_drag): New function.
15731 (mac_handle_service_event): New function.
15732 (init_service_handler): New function.
15733 (mac_to_emacs_modifiers): New function.
15734 (mac_event_to_emacs_modifiers): New function.
15735 (mac_get_mouse_btn): New function.
15736 (mac_convert_event_ref): New function.
15737 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
15738 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
15739 mac_get_mouse_btn.
15740 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
15741
15742 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
15743 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
15744 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
15745 TOOL_BAR_EVENT for MAC_OS as well.
15746 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
15747 as for WINDOWS_NT.
15748 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
15749
15750 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
15751
15752 2002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
15753
15754 * xdisp.c (forward_to_next_line_start): Fix a condition that
15755 lead to a newline being skipped.
15756
15757 2002-08-02 Andrew Choi <akochoi@shaw.ca>
15758
15759 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
15760
15761 2002-08-01 Richard M. Stallman <rms@gnu.org>
15762
15763 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
15764
15765 2002-07-31 Andrew Choi <akochoi@shaw.ca>
15766
15767 * macfns.c: #undef init_process before #define-ing it.
15768
15769 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
15770 HAVE_CARBON is defined.
15771
15772 2002-07-31 Richard M. Stallman <rms@gnu.org>
15773
15774 * xmenu.c (set_frame_menubar): First parse all submenus,
15775 then make widget_value trees from them.
15776 Don't allocate any widget_value objects
15777 until we are done with the parsing.
15778 (parse_single_submenu): New function.
15779 (digest_single_submenu): New function.
15780 (single_submenu): Function deleted, replaced by those two.
15781
15782 2002-07-30 Juanma Barranquero <lektu@terra.es>
15783
15784 * w32proc.c (syms_of_ntproc): Fix docstring of
15785 `w32-get-true-file-attributes'.
15786
15787 2002-07-28 Richard M. Stallman <rms@gnu.org>
15788
15789 * s/hpux8.h (HPUX8): Define this before including hpux.h.
15790 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
15791
15792 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
15793
15794 * keyboard.c (make_lispy_event):
15795 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
15796 Explicitly clear up_modifier in event->modifiers.
15797
15798 2002-07-27 Richard M. Stallman <rms@gnu.org>
15799
15800 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
15801
15802 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
15803 for bar cursor.
15804
15805 2002-07-26 Kenichi Handa <handa@etl.go.jp>
15806
15807 * coding.c (detect_coding_iso2022): While checking a byte sequence
15808 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
15809 it in the normal loop.
15810
15811 2002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
15812
15813 * xterm.c (expose_overlaps): New function.
15814 (expose_window): Use it to fix the display of overlapping rows.
15815
15816 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
15817
15818 2002-07-23 Ken Raeburn <raeburn@gnu.org>
15819
15820 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
15821 since it only depends on XUINT.
15822
15823 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
15824 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
15825 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
15826 Macros deleted.
15827
15828 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
15829 its value over other approaches.
15830 * sysdep.c (start_of_data): Don't define the function if a macro
15831 form has been defined.
15832
15833 2002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
15834
15835 * xdisp.c (redisplay_updating_p): New variable.
15836 (init_iterator): Don't free realized faces when
15837 redisplay_updating_p is set.
15838 (redisplay_internal): Set redisplay_updating_p while updating
15839 the display.
15840
15841 2002-07-23 Richard M. Stallman <rms@gnu.org>
15842
15843 * editfns.c (Fmessage): Treat "" like nil.
15844
15845 2002-07-23 Kenichi Handa <handa@etl.go.jp>
15846
15847 * xdisp.c (face_before_or_after_it_pos):
15848 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
15849
15850 2002-07-22 Juanma Barranquero <lektu@terra.es>
15851
15852 * callproc.c (init_callproc) [DOS_NT]:
15853 Initialize Vshared_game_score_directory to nil.
15854 (syms_of_callproc) [DOS_NT]: Likewise.
15855
15856 2002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
15857
15858 * xdisp.c (display_line): Replace an abort with xassert.
15859
15860 2002-07-21 Richard M. Stallman <rms@gnu.org>
15861
15862 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
15863 and END_UNCHANGED when setting buffer_unchanged_p.
15864 Use current_matrix_up_to_date_p to decide whether to use
15865 try_cursor_movement.
15866
15867 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
15868
15869 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
15870
15871 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
15872 Set to nil if dir does not exist.
15873 (syms_of_callproc): Init unconditionally and simply.
15874
15875 * buffer.c (Fbuffer_list): Doc fix.
15876
15877 2002-07-21 Ken Raeburn <raeburn@gnu.org>
15878
15879 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
15880
15881 * buffer.c (mmap_realloc): When shrinking, make sure number of
15882 pages to unmap is rounded towards zero.
15883
15884 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
15885 (XSETINT): Deleted.
15886
15887 * m/att3b.h (XINT): Don't define.
15888 (VALBITS, VALMASK, XTYPE): Deleted.
15889 (DATA_SEG_BITS): Define.
15890 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
15891 ARRAY_MARK_FLAG): Deleted.
15892 (DATA_SEG_BITS): Define.
15893 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
15894 (DATA_SEG_BITS): Define.
15895
15896 2002-07-20 Richard M. Stallman <rms@gnu.org>
15897
15898 * print.c (print_error_message): New args CONTEXT and CALLER.
15899 Calls changed.
15900
15901 * lisp.h (print_error_message): Declare new args.
15902
15903 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
15904 and CONTEXT to print_error_message, don't print them here.
15905 For a Quit, don't use Vsignaling_function.
15906 Call message_log_maybe_newline.
15907
15908 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
15909
15910 2002-07-20 Kim F. Storm <storm@cua.dk>
15911
15912 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
15913
15914 2002-07-19 Ken Raeburn <raeburn@gnu.org>
15915
15916 * bytecode.c (struct byte_stack): Pointers into byte string now
15917 point to const.
15918 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
15919 const.
15920 * charset.h (BCOPY_SHORT): Source pointer now points to const.
15921 * coding.c (encode_eol, detect_coding, detect_eol):
15922 (decode_coding, encode_coding, detect_coding_system):
15923 Source strings now treated as const.
15924 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
15925 modify Lisp string contents.
15926 * coding.h (decode_coding, encode_coding, detect_coding,
15927 detect_eol): Declarations updated.
15928 * composite.c (compose_chars_in_text): Treat Lisp string contents
15929 as const.
15930 * dispnew.c (safe_bcopy): Source pointer now points to const.
15931 * lisp.h (STRING_COPYIN): New macro.
15932 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
15933 (internal_with_output_to_temp_buffer): Declarations updated.
15934 * print.c (temp_output_buffer_setup):
15935 (internal_with_output_to_temp_buffer): Buffer name argument is now
15936 pointer to const.
15937 * sound.c (struct sound_device): Function pointer field "write"
15938 buffer argument now points to const.
15939 (vox_write): Buffer argument points to const.
15940 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
15941 contents as const.
15942 * sysdep.c (emacs_write): Buffer pointer now const.
15943 * term.c (encode_terminal_code): Buffer pointer now const.
15944 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
15945 (x_face_list_fonts, x_update_menu_appearance):
15946 (hash_string_case_insensitive): Treat Lisp string contents as const.
15947
15948 2002-07-19 Juanma Barranquero <lektu@terra.es>
15949
15950 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
15951
15952 * fileio.c (syms_of_fileio): Likewise.
15953 (Ffile_name_as_directory): Fix argument name in docstring.
15954 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
15955
15956 2002-07-18 Richard M. Stallman <rms@gnu.org>
15957
15958 * data.c (Fdefalias): Doc fix.
15959
15960 2002-07-17 Dave Love <fx@gnu.org>
15961
15962 * intervals.h (text_property_stickiness): Use P_.
15963
15964 * ccl.c: Remove `emacs' conditionals.
15965 (ccl_backtrace_table): Fix size spec.
15966 (ccl_driver): Fix type errors.
15967
15968 2002-07-16 Ken Raeburn <raeburn@gnu.org>
15969
15970 * alloc.c (xstrdup, make_string, make_unibyte_string)
15971 (make_multibyte_string, build_string): String pointer args now
15972 point to const.
15973 * charset.c (find_charset_in_text, c_string_width):
15974 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
15975 * fileio.c (report_file_error):
15976 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
15977 (count_combining_before, count_combining_after, insert_1_both):
15978 (insert, insert_and_inherit, insert_string):
15979 (insert_before_markers, insert_before_markers_and_inherit):
15980 * lread.c (intern, oblookup, hash_string):
15981 * minibuf.c (temp_echo_area_glyphs):
15982 * search.c (fast_c_string_match_ignore_case):
15983 * sysdep.c (emacs_open, set_file_times):
15984 * xfaces.c (xstricmp):
15985 * xdisp.c (store_frame_title, string_char_and_length):
15986 (message_dolog, message2, message2_nolog, set_message): Likewise.
15987 (set_message_1): Cast message string argument to const pointer.
15988 * editfns.c (general_insert_function): Insertion function now
15989 takes pointer to const for input data.
15990 * charset.h (find_charset_in_text, c_string_width):
15991 (parse_str_as_multibyte): Declarations updated.
15992 * dispextern.h (xstricmp): Declaration updated.
15993 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
15994 (count_size_as_multibyte, count_combining_before):
15995 (count_combining_after, insert_1, insert_1_both, message_dolog):
15996 (insert, insert_and_inherit, insert_before_markers)
15997 (insert_before_markers_and_inherit, set_message, message2):
15998 (message2_dolog, build_string, make_string, make_unibyte_string):
15999 (make_multibyte_string, intern, oblookup, report_file_error):
16000 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
16001 (emacs_open, xstrdup): Declarations updated.
16002 * systime.h (set_file_times): Declaration updated.
16003
16004 * charset.c (find_charset_in_text, lisp_string_width): Use const
16005 for pointer to lisp string data.
16006 * charset.h (FETCH_STRING_CHAR_ADVANCE):
16007 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
16008 * coding.c (Ffind_coding_systems_region_interval):
16009 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
16010 (Fmake_directory_internal, Fdelete_directory):
16011 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
16012 * fontset.c (font_family_registry, fs_query_fontset):
16013 (list_fontsets):
16014 * frame.c (Fframe_parameter):
16015 * keyboard.c (cmd_error_internal):
16016 * keymap.c (Fdescribe_buffer_bindings):
16017 * lread.c (complete_filename_p, openp):
16018 * minibuf.c (Fminibuffer_complete_word):
16019 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
16020 (face_before_or_after_it_pos, next_element_from_string):
16021 (get_overlay_arrow_glyph_row, display_mode_element):
16022 (decode_mode_spec_coding):
16023 * xterm.c (same_x_server): Likewise.
16024
16025 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
16026 settings of non-existent fields.
16027
16028 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
16029 copy a lisp value.
16030
16031 * lread.c (Fintern_soft): Use string macros instead of
16032 Lisp_String fields.
16033 * keyboard.c (echo_char, parse_modifiers_uncached):
16034 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
16035 * textprop.c (validate_interval_range, interval_of): Likewise.
16036
16037 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
16038
16039 * charset.h (FETCH_STRING_CHAR_ADVANCE)
16040 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
16041 XSTRING()->size_byte.
16042
16043 * lisp.h (SDATA, SREF): Produce rvalue.
16044 (SSET): New macro.
16045 * alloc.c (make_event_array): Use SSET for storing into a string.
16046 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
16047 a string.
16048 * casefiddle.c (casify_object): Use SSET.
16049 * charset.h (FETCH_STRING_CHAR_ADVANCE)
16050 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
16051 address of string contents.
16052 * data.c (Faref): Use SDATA.
16053 (Faset): Use SDATA, SSET.
16054 * dired.c (directory_files_internal): Use SSET.
16055 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
16056 (Fread_file_name): Use SREF, SSET.
16057 * fns.c (concat): Use SSET.
16058 (concat, Fdelete): Use SDATA.
16059 * insdel.c (insert_from_string_1): Use SDATA.
16060 * keyboard.c (Fevent_convert_list): Use SREF.
16061 * lread.c (Fload): Use SDATA, SSET.
16062 * macfns.c (validate_x_resource_name): Use SSET.
16063 * process.c (status_message): Use SSET.
16064 * search.c (wordify): Use SDATA.
16065 (Freplace_match): Use SREF.
16066 * w32fns.c (validate_x_resource_name): Use SSET.
16067 * xfns.c (validate_x_resource_name): Use SSET.
16068 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
16069
16070 2002-07-16 Richard M. Stallman <rms@gnu.org>
16071
16072 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
16073
16074 * xdisp.c (reconsider_clip_changes):
16075 Don't test prevent_redisplay_optimizations_p.
16076 (redisplay_internal): Test prevent_redisplay_optimizations_p
16077 along with clip_changed in some cases.
16078 (try_window_id): Likewise.
16079 (redisplay_window): New local var buffer_unchanged_p.
16080
16081 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
16082
16083 * process.c (create_process): Test USG_SUBTTY_WORKS.
16084 (process_send_signal): Clean up handling of GID.
16085 Detect errors in ioctls meant to set GID.
16086
16087 * window.c (temp_output_buffer_show):
16088 Don't set prevent_redisplay_optimizations_p.
16089
16090 2002-07-15 Juanma Barranquero <lektu@terra.es>
16091
16092 * eval.c (Fdefvaralias): Add docstring argument.
16093
16094 2002-07-15 Ken Raeburn <raeburn@gnu.org>
16095
16096 * lisp.h (STRING_INTERVALS): Produce rvalue.
16097 (STRING_SET_INTERVALS): New macro.
16098 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
16099 * fns.c (Fstring_as_multibyte): Likewise.
16100 * intervals.c (balance_possible_root_interval, delete_interval)
16101 (create_root_interval, copy_intervals_to_string): Likewise.
16102 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
16103 instead of 0.
16104
16105 2002-07-14 Ken Raeburn <raeburn@gnu.org>
16106
16107 * lisp.h (STRING_SET_CHARS): New macro.
16108 (SCHARS, SBYTES): Produce rvalues.
16109 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
16110 * fns.c (concat): Likewise.
16111 * lread.c (read_vector): Likewise.
16112
16113 * lisp.h (SMBP): Delete. All uses changed to STRING_MULTIBYTE.
16114 (STRING_SET_UNIBYTE): New macro.
16115 (SET_STRING_BYTES): Delete. Callers (all of which supplied a
16116 length of -1) changed to use STRING_SET_UNIBYTE.
16117 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
16118 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
16119 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
16120 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
16121 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
16122 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
16123 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
16124 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
16125 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
16126 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
16127 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
16128 STRING_BYTES or indirection changed to SCHARS, SBYTES,
16129 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
16130 unchanged for now.
16131
16132 2002-07-13 Kim F. Storm <storm@cua.dk>
16133
16134 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
16135
16136 2002-07-12 Richard M. Stallman <rms@gnu.org>
16137
16138 * fileio.c (Fwrite_region): Doc fix.
16139
16140 * print.c (print_error_message): Don't handle Vsignaling_function here.
16141
16142 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
16143 (command_loop_1): Avoid certain actions after memory-full error.
16144
16145 * eval.c (Fsignal): Don't call cancel_hourglass.
16146 For a memory-full error, don't call Vsignal_hook_function
16147 and don't set Vsignaling_function.
16148
16149 * process.c (process_send_signal): Add abort call.
16150
16151 2002-07-11 Markus Rost <rost@math.ohio-state.edu>
16152
16153 * keymap.c (Fkey_binding): Fix typo.
16154
16155 2002-07-11 Richard M. Stallman <rms@gnu.org>
16156
16157 * alloc.c (Vmemory_full): New variable.
16158 (Vmemory_signal_data): Rename from memory_signal_data.
16159 Uses changed.
16160 (syms_of_alloc): Defvar them.
16161 (memory_full, buffer_memory_full): Set Vmemory_full.
16162
16163 * lisp.h (Vmemory_full): Add declaration.
16164 (current_column, indented_beyond_p): Change declaration.
16165
16166 * indent.c (last_known_column): Declare as double, not float.
16167 (current_column, current_column_1, string_display_width)
16168 (position_indentation): Return `double'.
16169 (indented_beyond_p): Arg `column' is `double'. Callers changed.
16170
16171 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
16172 (back_to_previous_visible_line_start)
16173 (reseat_at_next_visible_line_start, next_element_from_buffer):
16174 Use `double', not `float', when calling indented_beyond_p.
16175
16176 * s/hpux11.h (BROKEN_SA_RESTART): Define.
16177
16178 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
16179
16180 2002-07-11 Juanma Barranquero <lektu@terra.es>
16181
16182 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
16183 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
16184 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
16185 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
16186 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
16187 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
16188
16189 2002-07-10 Juanma Barranquero <lektu@terra.es>
16190
16191 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
16192 All callers changed.
16193
16194 2002-07-09 Stefan Monnier <monnier@cs.yale.edu>
16195
16196 * data.c (Fdefalias): Add an optional `docstring' argument.
16197 (set_internal, Fsetq_default): Use XCAR/XCDR.
16198
16199 * composite.c (HASH_VALUE, HASH_KEY):
16200 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
16201
16202 2002-07-09 Kenichi Handa <handa@etl.go.jp>
16203
16204 * callproc.c (Fcall_process): Fix previous change.
16205
16206 2002-07-07 Stefan Monnier <monnier@cs.yale.edu>
16207
16208 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
16209 Add support for hash-tables.
16210 (Ftry_completion): Return t even if the string appears multiple times.
16211
16212 * fns.c (Fnconc): Use XCDR.
16213 (Fprovide): Use CONSP and XCDR.
16214 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
16215 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
16216 (Fmake_hash_table): Accept `:size nil'.
16217 (Fmakehash): Delete: moved to subr.el.
16218 (syms_of_fns): Don't defsubr makehash.
16219
16220 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
16221 (HASH_TABLE_SIZE): Move from fns.c.
16222
16223 2002-07-07 Richard M. Stallman <rms@gnu.org>
16224
16225 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
16226 Instead just return 0 when there is something to be done.
16227 (try_scrolling): If make_cursor_line_fully_visible returns 0,
16228 retry scrolling as if cursor were off the bottom.
16229 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
16230 return CURSOR_MOVEMENT_MUST_SCROLL.
16231 (redisplay_window): If make_cursor_line_fully_visible returns 0,
16232 go to try_to_scroll.
16233
16234 * buffer.c (Fbuffer_local_value): Store current value into its binding
16235 so we get the up-to-date value for the binding that is loaded.
16236
16237 * eval.c (Fdefmacro): Doc fix.
16238
16239 2002-07-05 Dave Love <fx@gnu.org>
16240
16241 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
16242 correctly.
16243
16244 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
16245 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
16246 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
16247 CCL_LookupCharConstTbl.
16248 (syms_of_ccl): Defvar translation-hash-table-vector.
16249
16250 2002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16251
16252 * xdisp.c: Remove unused variable `face'.
16253
16254 2002-07-04 Juanma Barranquero <lektu@terra.es>
16255
16256 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
16257 obsolescence information.
16258
16259 2002-07-03 Andrew Choi <akochoi@shaw.ca>
16260
16261 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
16262 pattern. Search cache first.
16263 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
16264 for Japanese font.
16265 (XLoadQueryFont): Use it.
16266
16267 2002-07-02 Richard M. Stallman <rms@gnu.org>
16268
16269 * keymap.c (Fdefine_key): Doc fix.
16270
16271 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
16272
16273 2002-07-02 Juanma Barranquero <lektu@terra.es>
16274
16275 * keymap.c (syms_of_keymap): Fix typo.
16276
16277 2002-07-01 Andrew Choi <akochoi@shaw.ca>
16278
16279 * s/darwin.h: Define POSIX_SIGNALS.
16280
16281 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
16282 and FSRefMakePath to convert FSSpec returned with Apple Event to
16283 Posix pathname.
16284 (mac_initialize) [TARGET_API_MAC_CARBON]:
16285 Call init_required_apple_events and disable the `Quit' menu item
16286 provided automatically by the Carbon Toolbox.
16287
16288 2002-07-01 Dave Love <fx@gnu.org>
16289
16290 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
16291 for K&R.
16292
16293 * xterm.c: Fix prototype for K&R.
16294
16295 * term.c (costs_set): Declare static, non-initialized for pcc.
16296
16297 2002-07-01 Richard M. Stallman <rms@gnu.org>
16298
16299 * keyboard.c (timer_last_idleness_start_time): New variable.
16300 (timer_start_idle): Set that.
16301 (read_key_sequence): Use that to reset timer_idleness_start_time
16302 to previous value.
16303
16304 * window.c (Frecenter): With arg, set optional_new_start.
16305
16306 * xdisp.c (redisplay_internal): Make optional_new_start really work.
16307
16308 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
16309 buffer for completion.
16310
16311 2002-06-29 Ken Raeburn <raeburn@gnu.org>
16312
16313 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
16314
16315 2002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16316
16317 * keyboard.c (readable_filtered_events): New function that filters
16318 FOCUS_IN_EVENT depending on parameter.
16319 (readable_events): Calls readable_filtered_events, not filtering
16320 FOCUS_IN_EVENT.
16321 (get_filtered_input_pending): New function, filtering parameter passed
16322 to readable_filtered_events.
16323 (get_input_pending): Calls get_filtered_input_pending, not filtering
16324 FOCUS_IN_EVENT.
16325 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
16326 FOCUS_IN_EVENT.
16327
16328 * xterm.h (struct x_output): Add focus_state.
16329
16330 * xterm.c (x_focus_changed): New function.
16331 (x_detect_focus_change): New function.
16332 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
16333 EnterNotify and LeaveNotify to track X focus changes.
16334
16335 2002-06-28 Andreas Schwab <schwab@suse.de>
16336
16337 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
16338
16339 2002-06-27 Kim F. Storm <storm@cua.dk>
16340
16341 * xdisp.c (mode_line_string_list, mode_line_string_face)
16342 (mode_line_string_face_prop): New variables.
16343 (store_mode_line_string): New function.
16344 (display_mode_element): Use store_mode_line_string to
16345 add mode-line string elements to mode_line_string_list
16346 when mode_line_string_list is non-nil.
16347 (Fformat_mode_line): Now returns propertized string by
16348 default. New arg NO-PROPS to ignore properties.
16349 (decode_mode_spec): Only add two dashes for %- in propertized
16350 mode-line string.
16351 (syms_of_xdisp): Init and staticpro mode_line_string_list.
16352
16353 2002-06-27 Stefan Monnier <monnier@cs.yale.edu>
16354
16355 * minibuf.c (minibuffer_completion_contents): Add return type.
16356
16357 2002-06-27 Juanma Barranquero <lektu@terra.es>
16358
16359 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
16360
16361 2002-06-26 Juanma Barranquero <lektu@terra.es>
16362
16363 * fileio.c (read_file_name_cleanup): Add missing return.
16364
16365 2002-06-26 Richard M. Stallman <rms@gnu.org>
16366
16367 * window.c (Frecenter): Don't set force_start flag.
16368
16369 * minibuf.c (do_completion, Fminibuffer_complete_word)
16370 (Fminibuffer_completion_help): Complete just the text before point.
16371 (minibuffer_completion_contents): New function.
16372
16373 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
16374
16375 * frame.c (frames_bury_buffer): Function deleted.
16376
16377 2002-06-25 Miles Bader <miles@gnu.org>
16378
16379 * callint.c (Fcall_interactively): When checking to see if doprnt hit
16380 the end of callint_message, allow for a terminating '\0'.
16381
16382 2002-06-24 Juanma Barranquero <lektu@terra.es>
16383
16384 * w32select.c: Include composite.h.
16385
16386 * w16select.c: Likewise.
16387
16388 2002-06-24 Kenichi Handa <handa@etl.go.jp>
16389
16390 * callproc.c (Fcall_process): If code detection is necessary,
16391 call detect_coding directly here.
16392
16393 * coding.c (detect_eol): Preserve coding->cmp_data.
16394
16395 * w16select.c (Fw16_get_clipboard_data):
16396 * w32fns.c (w32_to_x_font):
16397 * w32select.c (Fw32_get_clipboard_data):
16398 * xselect.c (selection_data_to_lisp_data):
16399 * xterm.c (XTread_socket): Disable composition handling.
16400
16401 2002-06-24 Stefan Monnier <monnier@cs.yale.edu>
16402
16403 * print.c (temp_output_buffer_setup): Kill all local variables.
16404
16405 2002-06-22 Stefan Monnier <monnier@cs.yale.edu>
16406
16407 * lread.c (Fread): Remove redundant and imprecise declaration.
16408
16409 * xfns.c (check_x_display_info): Use check_x_frame.
16410
16411 * .gdbinit (xprintsym): Use the new `xname' field.
16412 (xsymbol): Use it.
16413
16414 2002-06-22 Jason Rumney <jasonr@gnu.org>
16415
16416 * w32fns.c (file_dialog_callback): New function.
16417 (Fx_file_dialog): Allow selecting directories as well as files.
16418
16419 2002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16420
16421 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
16422 OpenBSD. Add support for mipseb-*-netbsd* machines.
16423
16424 2002-06-17 Andrew Choi <akochoi@shaw.ca>
16425
16426 * macterm.c (mac_scroll_area): Set foreground and backcolor to
16427 black and white before scrolling. Restore frame background and
16428 foreground color after scrolling.
16429 (do_window_update): Call XClearWindow before calling expose_frame.
16430 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
16431 FRAME_FOREGROUND_PIXEL of frame.
16432
16433 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
16434 test Mac command key as <ALT> key.
16435
16436 2002-06-17 Stefan Monnier <monnier@cs.yale.edu>
16437
16438 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
16439
16440 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
16441 Lookup keys in function-key-map immediately so that key-translation-map
16442 can be applied earlier.
16443 Remove function_key_possible and key_translation_possible, replaced
16444 by checking `keytran_start < t'.
16445
16446 * .gdbinit (xsymbol): Use the new `xname' field.
16447
16448 2002-06-17 Andrew Choi <akochoi@shaw.ca>
16449
16450 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
16451 test Mac command key as <ALT> key.
16452
16453 * mac.c (do_applescript): Call initialize_applescript if necessary
16454 when first called. Dispose of result_desc only when there is no error.
16455 (Fdo_applescript): Use %d format specifier instead of %ld.
16456
16457 2002-06-16 Andrew Choi <akochoi@shaw.ca>
16458
16459 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
16460 of FrontWindow for cases keyDown and autoKey.
16461
16462 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
16463 Vdefault_fontset to Monaco with mac-roman coding.
16464
16465 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
16466 init_process before and after inclusion of Carbon/Carbon.h, resp.
16467
16468 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
16469 cursor_gc.
16470 (add_font_name_table_entry): New function.
16471 (init_font_name_table): Use add_font_name_table_entry; add italic,
16472 bold, and bold-italic entries for truetype fonts.
16473
16474 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
16475 for Mac too.
16476 (try_font_list) [MAC_OS]: If no font matches given registry, try
16477 fonts with any registry matching face_family.
16478 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
16479
16480 * s/darwin.h: If autoconf detects the Ncurses library, define
16481 LIBS_TERMCAP to -lncurses to use it.
16482
16483 2002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
16484
16485 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
16486
16487 2002-06-15 Richard M. Stallman <rms@gnu.org>
16488
16489 * window.c (Fset_window_configuration): Explicitly preserve
16490 the point value that new_current_buffer had at the start.
16491
16492 2002-06-14 Juanma Barranquero <lektu@terra.es>
16493
16494 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
16495 Fix typos.
16496
16497 2002-06-14 Kim F. Storm <storm@cua.dk>
16498
16499 * insdel.c (insert_1_both, insert_from_string_1)
16500 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
16501 insert happened in the end_unchanged region. Otherwise, the
16502 redisplay may be confused and duplicate the last line in the
16503 buffer [seen after save-buffer when require-final-newline==t].
16504
16505 2002-06-13 Jason Rumney <jasonr@gnu.org>
16506
16507 * w32.c (init_environment): Remove EMACSLOCKDIR.
16508 (stat): Swap _S_IFDIR and _S_IFREG.
16509
16510 2002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16511
16512 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
16513 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
16514 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
16515 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
16516 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
16517 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
16518 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
16519 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
16520 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
16521 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
16522 SELECTION_REQUEST_EVENT, selection_clear_event to
16523 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
16524 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
16525 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
16526 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
16527 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
16528 no_event to NO_EVENT.
16529
16530 2002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16531
16532 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
16533
16534 2002-06-12 Stefan Monnier <monnier@cs.yale.edu>
16535
16536 * intervals.c (textget): Don't forget to `return'.
16537 (lookup_char_property): Use XCAR/XCDR.
16538
16539 2002-06-12 Juanma Barranquero <lektu@terra.es>
16540
16541 * xdisp.c (Fformat_mode_line): Fix typo.
16542
16543 2002-06-12 Kim F. Storm <storm@cua.dk>
16544
16545 * xdisp.c (Fformat_mode_line): New function.
16546 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
16547 (store_frame_title_char, store_frame_title): Use unconditionally.
16548 (init_xdisp): Defsubr Fformat_mode_line.
16549 Initialize frame_title_buf etc. unconditionally.
16550
16551 2002-06-11 Stefan Monnier <monnier@cs.yale.edu>
16552
16553 * keyboard.c (read_key_sequence):
16554 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
16555 things through those maps after downcasing events.
16556 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
16557 applies after function-key-map.
16558 Make sure that keytran can be done in the middle in the sequence.
16559 Be careful not to throw away events past the one we downcase.
16560
16561 * lread.c (read_integer): Remove unused var `tem'.
16562 (read1): Fix int/Lisp_Object mixup.
16563
16564 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
16565
16566 2002-06-11 Richard M. Stallman <rms@gnu.org>
16567
16568 * keyboard.c (readable_events): Ignore any number of
16569 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
16570
16571 2002-06-09 Miles Bader <miles@gnu.org>
16572
16573 * xfaces.c (Ftty_supports_face_attributes_p): New function.
16574 (parse_rgb_list, tty_lookup_color): New functions.
16575 (tty_defined_color): Use `tty_lookup_color' to do all the work.
16576 (color_distance, Fcolor_distance): New functions.
16577 (TTY_SAME_COLOR_THRESHOLD): New macro.
16578 (Qtty_color_standard_values): New variable.
16579 (syms_of_xfaces): Initialize new vars & functions.
16580
16581 2002-06-08 Colin Walters <walters@verbum.org>
16582
16583 * textprop.c (Vchar_property_alias_alist): New variable.
16584 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
16585
16586 * intervals.c (lookup_char_property): New function for looking up
16587 overlay and text properties, created from textget.
16588 (textget): Use it.
16589
16590 * intervals.h (lookup_char_property): Declare.
16591 (Vchar_property_alias_alist): Declare.
16592
16593 * buffer.c (Foverlay_get): Use lookup_char_property.
16594
16595 2002-06-07 Sam Steingold <sds@gnu.org>
16596
16597 * xselect.c (lisp_data_to_selection_data): Fix last change:
16598 *data_ret is not a Lisp string, while unibyte_string is.
16599
16600 2002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
16601
16602 * xselect.c (lisp_data_to_selection_data): Fix last change:
16603 set size_ret.
16604
16605 2002-06-07 Andreas Schwab <schwab@suse.de>
16606
16607 * m/amdx86-64.h: New file.
16608
16609 2002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
16610
16611 * fns.c (Fstring_make_unibyte): Doc fix.
16612
16613 * xselect.c (lisp_data_to_selection_data): If the requested type
16614 is STRING, call string_make_unibyte to encode the selected text
16615 as a string.
16616
16617 * window.c (Fset_window_hscroll): Doc fix.
16618
16619 2002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16620
16621 * fileio.c (choose_write_coding_system):
16622 Call select-safe-coding-system properly.
16623
16624 2002-06-03 Richard M. Stallman <rms@gnu.org>
16625
16626 * xdisp.c (message_with_string): Error if STRING is not a string.
16627
16628 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
16629
16630 * fileio.c (choose_write_coding_system): Pass FILE arg to
16631 Vselect_safe_coding_system_function.
16632
16633 2002-06-03 Ken Raeburn <raeburn@gnu.org>
16634
16635 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
16636
16637 2002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
16638
16639 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
16640 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
16641 * keymap.c (describe_command): Likewise.
16642 * minibuf.c (read_minibuf): Likewise.
16643
16644 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
16645 Cast `current_column' return value to int.
16646 (back_to_previous_visible_line_start)
16647 (reseat_at_next_visible_line_start, next_element_from_buffer):
16648 Cast `indented_beyond_p' 3rd arg to float.
16649
16650 * indent.c (last_known_column): Now a float.
16651 (current_column_1, position_indentation, current_column)
16652 (string_display_width): Return float.
16653 (Fcurrent_column): Cast `current_column' return value to int.
16654 (Fcurrent_indentation): Cast `position_indentation' retval to int.
16655 (indented_beyond_p): Third arg now a float.
16656 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
16657
16658 * lisp.h (current_column): Now returns float.
16659 (indented_beyond_p): 3rd arg now a float.
16660
16661 2002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
16662
16663 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
16664 is Qcompound_text_with_extensions.
16665
16666 * xselect.c (lisp_data_to_selection_data): Always set selection
16667 type as string if x_encode_text returns streingp non-NULL.
16668
16669 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
16670
16671 2002-05-30 Richard M. Stallman <rms@gnu.org>
16672
16673 * window.c (Fset_window_configuration): Correct the handling
16674 of point in current buffer, to work with multiple windows.
16675
16676 2002-05-29 Colin Walters <walters@verbum.org>
16677
16678 * lread.c (Fread_from_string): Don't depend on order of evaluation
16679 for C function parameters.
16680
16681 2002-05-28 Richard M. Stallman <rms@gnu.org>
16682
16683 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
16684 way for blinked-off state and for a nonselected window.
16685
16686 * window.c (window_scroll_pixel_based): Don't call Fbolp;
16687 instead, see if the new start pos is at beginning of line.
16688
16689 * fileio.c (Fwrite_region): If START is a string, don't
16690 make any annotations.
16691
16692 * eval.c (syms_of_eval): Doc fix.
16693
16694 2002-05-28 Colin Walters <walters@debian.org>
16695
16696 * emacs.c (USAGE1): Add --no-splash.
16697 (standard_args): Ditto.
16698
16699 2002-05-28 Colin Walters <walters@gnu.org>
16700
16701 * lread.c (readchar_count): New variable.
16702 (readchar): Increment it.
16703 (unreadchar): Decrement it.
16704 (read_multibyte): Decrement it.
16705 (Vread_with_symbol_positions): New variable.
16706 (Vread_symbol_positions_list): New variable.
16707 (read_internal_start): New function, created from Fread and
16708 Fread_from_string. Handle Vread_symbol_positions_list and
16709 Vread_with_symbol_positions.
16710 (readevalloop, Fread, Fread_from_string): Use it.
16711 (read1): Use readchar_count to add symbol positions to
16712 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
16713 (syms_of_lread): DEFVAR_LISP and initialize them.
16714
16715 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
16716 (substitute_object_recurse, substitute_object_in_subtree)
16717 (substitute_in_interval): Prototype.
16718 (read_multibyte): Return c if it's less than zero.
16719
16720 2002-05-28 Kim F. Storm <storm@cua.dk>
16721
16722 * fileio.c (Fread_file_name_internal): Added brute-force
16723 speed up for using predicate file-directory-p.
16724
16725 2002-05-28 Kim F. Storm <storm@cua.dk>
16726
16727 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
16728 New variables.
16729 (syms_of_fileio): DEFVAR_LISP them.
16730 (read_file_name_cleanup): New unwind function.
16731 (Fread_file_name_internal): Only return completions satifying
16732 Vread_file_name_predicate. Temporarily unwind protect and rebind
16733 default-directory while checking completions against the predicate.
16734 (Fread_file_name): Added PREDICATE argument. Specbind it to
16735 Vread_file_name_predicate during completion.
16736 Call Vread_file_name_function to read the file name if non-nil.
16737
16738 * lisp.h (Fread_file_name): Now has 6 args.
16739
16740 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
16741 predicate for Fread_file_name when reading directory name.
16742 Supply Qnil for predicate in other calls to Fread_file_name.
16743
16744 2002-05-26 Miles Bader <miles@gnu.org>
16745
16746 * term.c (tty_capable_p): New function.
16747 * dispextern.h (tty_capable_p): New function declaration.
16748 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
16749 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
16750
16751 2002-05-23 Stefan Monnier <monnier@cs.yale.edu>
16752
16753 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
16754 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
16755 (Vwrite_region_annotate_functions): Docstring fix.
16756
16757 2002-05-23 Kim F. Storm <storm@cua.dk>
16758
16759 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
16760 phys_cursor's hpos is overwritten. This is still not completely
16761 correct, as it doesn't really make sense to use hpos at all to
16762 get the cursor glyph (as that is relative to the width of the
16763 characters on the line, which may have changed during the update).
16764
16765 2002-05-22 Jason Rumney <jasonr@gnu.org>
16766
16767 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
16768 Lisp_Object.
16769 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
16770 Use modified enumfont_t struct.
16771
16772 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
16773
16774 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
16775 Handle the `hbar' cursor type.
16776 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
16777
16778 * w32fns.c (Qhbar): New variable.
16779 (x_specified_cursor_type): Use it.
16780
16781 2002-05-21 Ken Raeburn <raeburn@gnu.org>
16782
16783 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
16784 now, when the address is needed.
16785
16786 2002-05-21 Colin Walters <walters@gnu.org>
16787
16788 * Makefile.in (shortlisp): Add font-core.el.
16789
16790 2002-05-20 Richard M. Stallman <rms@gnu.org>
16791
16792 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
16793
16794 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
16795 equivalent key bindings here.
16796
16797 2002-05-20 Ken Raeburn <raeburn@gnu.org>
16798
16799 Change symbol structure to contain a lisp object for the symbol
16800 name:
16801 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
16802 object field named "xname".
16803 (SYMBOL_NAME): New macro.
16804 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
16805 name field.
16806 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
16807 (mark_object, gc_sweep): Use symbol xname field and XSTRING
16808 instead of name field.
16809 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
16810 SYMBOL_NAME instead of XSYMBOL and name field.
16811 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
16812 instead of XSYMBOL and name field.
16813 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
16814 and SYMBOL_NAME instead of XSYMBOL and name field.
16815 * coding.c (Fread_coding_system, code_convert_region1)
16816 (code_convert_string1, code_convert_string_norecord)
16817 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
16818 XSYMBOL and name field.
16819 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
16820 (Fmake_variable_buffer_local, Fmake_local_variable)
16821 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
16822 of XSYMBOL and name field.
16823 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
16824 XSYMBOL and name field.
16825 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
16826 instead of XSYMBOL and name field.
16827 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
16828 XSYMBOL and name field.
16829 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
16830 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
16831 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
16832 instead of XSYMBOL and name field.
16833 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
16834 (parse_modifiers, apply_modifiers, Fevent_convert_list)
16835 (parse_solitary_modifier, Fexecute_extended_command):
16836 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
16837 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
16838 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
16839 of XSYMBOL and name field.
16840 (describe_command, describe_translation): Use SYMBOL_NAME and
16841 assignment instead of XSYMBOL and name field and XSETSTRING.
16842 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
16843 instead of XSYMBOL and name field.
16844 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
16845 name field and XSETSTRING.
16846 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
16847 of XSYMBOL and name field.
16848 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
16849 assignment instead of XSYMBOL and name field and XSETSTRING.
16850 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
16851 XSTRING instead of XSYMBOL and name field.
16852 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
16853 and XSTRING instead of XSYMBOL and name field.
16854 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
16855 and XSTRING instead of XSYMBOL and name field.
16856 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
16857 XSTRING instead of XSYMBOL and name field.
16858 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
16859 of XSYMBOL and name field.
16860 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
16861 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
16862
16863 2002-05-19 Ken Raeburn <raeburn@gnu.org>
16864
16865 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
16866 and XCDR real rvalues in most configurations.
16867
16868 * buffer.c (fix_overlays_in_range, fix_overlays_before):
16869 Don't take the address of the cdr part of a cons cell; instead, track
16870 the parent cell and call XSETCDR, or set the variable for the head
16871 of the list if we haven't started down the list yet.
16872
16873 2002-05-19 Richard M. Stallman <rms@gnu.org>
16874
16875 * doc.c (reread_doc_file): Don't ask for confirmation.
16876
16877 2002-05-18 Jason Rumney <jasonr@gnu.org>
16878
16879 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
16880 (xbm_load_image): Use it.
16881 (xbm_load): Ditto.
16882 (xbm_read_bitmap_data): Reverted to xfns.c version.
16883 From David Ponce <david@dponce.com>.
16884
16885 2002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
16886
16887 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
16888 2.02 and later.
16889
16890 2002-05-16 Juanma Barranquero <lektu@terra.es>
16891
16892 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
16893
16894 2002-05-15 Stefan Monnier <monnier@cs.yale.edu>
16895
16896 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
16897 meaningful test.
16898 (read_char_minibuf_menu_prompt): Fix typo.
16899
16900 2002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
16901
16902 * eval.c (Fcommandp): Doc fix.
16903
16904 2002-05-13 Stefan Monnier <monnier@cs.yale.edu>
16905
16906 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
16907 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
16908 (Fset_keymap_parent): Gcpro a bit more.
16909 (access_keymap): Gcpro around meta_map call and around the main loop.
16910 (get_keyelt): Gcpro when following indirect references.
16911 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
16912 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
16913 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
16914 Remove useless ad-hoc remap code.
16915
16916 2002-05-13 Richard M. Stallman <rms@gnu.org>
16917
16918 * search.c (search_buffer): Give up boyer moore search if inverse
16919 translation change charset_base.
16920
16921 2002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
16922
16923 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
16924 characters is carried over from the previous block of text, adjust
16925 coding->produced to account for the extra character.
16926
16927 2002-05-11 Andreas Schwab <schwab@suse.de>
16928
16929 * coding.c (intersection): Keep the elements of the returned list
16930 in the same order as in the first list.
16931
16932 2002-05-11 Kim F. Storm <storm@cua.dk>
16933
16934 * keymap.c (current_minor_maps): Fix resizing of cmm_maps;
16935 only update cmm_size if realloc actually succeeds.
16936 Testing with initial size of 2 elements revealed that using
16937 realloc on GNU/Linux would cause a random trap in xmalloc
16938 later on, so I rewrote the code to use malloc/bcopy/free instead
16939 of realloc.
16940
16941 2002-05-10 Jason Rumney <jasonr@gnu.org>
16942
16943 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
16944
16945 2002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
16946
16947 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
16948 parens, to ensure correct evaluation order.
16949
16950 2002-05-10 Kim F. Storm <storm@cua.dk>
16951
16952 * keymap.c (Vemulation_mode_map_alists): New variable.
16953 (syms_of_keymap): DEFVAR_LISP it.
16954 (current_minor_maps): Process keymap alists in that list before
16955 minor-mode-overriding-map-alist and minor-mode-map-alist.
16956
16957 2002-05-09 Richard M. Stallman <rms@gnu.org>
16958
16959 * search.c (Freplace_match): Doc fix.
16960
16961 2002-05-09 Kim F. Storm <storm@cua.dk>
16962
16963 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
16964 Enlarge cursor rectangle drawn around image with non-zero relief.
16965
16966 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
16967 Enlarge cursor rectangle drawn around image with non-zero relief.
16968
16969 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
16970 Enlarge cursor rectangle drawn around image with non-zero relief.
16971
16972 2002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
16973
16974 * xselect.c (lisp_data_to_selection_data): Don't set selection
16975 type if comes from the Lisp object's car. If the selection
16976 contains a pure ASCII text, always return QSTRING as its type.
16977
16978 2002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16979
16980 * mac.c (mac-cut-function): Doc fix.
16981
16982 2002-05-05 Richard M. Stallman <rms@gnu.org>
16983
16984 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
16985
16986 2002-05-04 Jason Rumney <jasonr@gnu.org>
16987
16988 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
16989 for event-click-count.
16990
16991 * process.c (init_process): Only add server subfeature if we can
16992 use non-blocking I/O.
16993
16994 2002-05-04 Andrew Choi <akochoi@shaw.ca>
16995
16996 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
16997 repeatedly.
16998
16999 2002-05-03 Jason Rumney <jasonr@gnu.org>
17000
17001 * process.c (Fmake_network_process): Only support server sockets
17002 when we can make them non-blocking.
17003
17004 * s/ms-w32.h (HAVE_SELECT): Define.
17005
17006 * w32.h (FILE_NDELAY): New flag.
17007
17008 * w32.c (sys_getpeername, fcntl): New functions.
17009 (_sys_read_ahead): Temporarily block on non-blocking sockets.
17010
17011 * w32proc.c: Include sys/file.h.
17012
17013 2002-05-03 Colin Walters <walters@verbum.org>
17014
17015 * callproc.c (Vgame_score_directory): Renamed to
17016 Vshared_game_score_directory.
17017
17018 2002-04-30 Richard M. Stallman <rms@gnu.org>
17019
17020 * s/gnu.h [emacs]: Include stdio.h.
17021 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
17022
17023 * eval.c (do_autoload): Error if called while preparing to dump.
17024
17025 * fns.c (Frequire): Error if need to load while preparing to dump.
17026
17027 2002-04-28 Colin Walters <walters@verbum.org>
17028
17029 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
17030 Default to "~/.emacs.d/games".
17031
17032 2002-04-29 Stefan Monnier <monnier@cs.yale.edu>
17033
17034 * lread.c (openp): Change arg exec_only to predicate.
17035 (build_load_history): Use XCAR/XCDR.
17036 (Flocate_file_internal): New fun.
17037 (syms_of_lread): Defsubr it.
17038 (Fload): Update call to openp.
17039
17040 * lisp.h (openp): Update prototype.
17041
17042 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
17043 * w32proc.c (sys_spawnve):
17044 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
17045 * w32.c (check_windows_init_file):
17046 * sound.c (Fplay_sound_internal):
17047 * process.c (Fstart_process):
17048 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
17049 * mac.c (run_mac_command):
17050 * emacs.c (init_cmdargs):
17051 * callproc.c (Fcall_process): Update call to openp.
17052
17053 * textprop.c (remove_properties): Don't use XCAR without CONSP.
17054
17055 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
17056
17057 2002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17058
17059 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
17060 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
17061
17062 2002-04-28 Richard M. Stallman <rms@gnu.org>
17063
17064 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
17065
17066 * eval.c (Fcommandp): New arg for_call_interactively.
17067 * lisp.h (Fcommandp): Declare new arg.
17068
17069 2002-04-28 Jason Rumney <jasonr@gnu.org>
17070
17071 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
17072
17073 * w32.c (stat, fstat): Use file index information to generate
17074 inodes for directories where available.
17075
17076 2002-04-26 Andrew Choi <akochoi@shaw.ca>
17077
17078 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
17079 [HAVE_CARBON]: Include Mac object files.
17080
17081 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
17082 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
17083 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
17084 MAC_OSX, and MAC_OS instead of macintosh.
17085
17086 * editfns.c [MAC_OS8]: Include stdio.h.
17087
17088 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
17089
17090 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
17091 Apple Monaco.
17092
17093 * process.c (QCfamily, QCfilte): Declare extern.
17094 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
17095 calling select.
17096
17097 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
17098
17099 * tparam.c [MAC_OSX]: Don't define BC and UP.
17100
17101 * config.in [HAVE_CARBON]: Add.
17102
17103 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
17104 Move here from mac/src and mac/inc.
17105
17106 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
17107
17108 2002-04-26 Gerd Moellmann <gerd@gnu.org>
17109
17110 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
17111 Compute phys_cursor_width from the x position returned
17112 by x_draw_glyhs, which is cheaper.
17113 (x_display_and_set_cursor): Compute the buffer-local value
17114 of `cursor-in-non-selected-windows' only when needed.
17115
17116 2002-04-25 Gerd Moellmann <gerd@gnu.org>
17117
17118 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
17119 cursor on a stretch glyph has a width that depends on
17120 x_stretch_cursor_p.
17121
17122 2002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17123
17124 * abbrev.c (abbrev-start-location): Doc fix.
17125
17126 * indent.c (Fvertical_motion): Fix last change.
17127
17128 2002-04-25 Gerd Moellmann <gerd@gnu.org>
17129
17130 * indent.c (Fvertical_motion): Move to the start of the line
17131 containing PT before moving up or down.
17132
17133 2002-04-24 Gerd Moellmann <gerd@gnu.org>
17134
17135 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
17136 case of writing a whole row, more or less analogous to the case of
17137 writing only parts of a row.
17138
17139 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
17140 0 for NO_CURSOR.
17141
17142 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
17143
17144 2002-04-23 Colin Walters <walters@verbum.org>
17145
17146 * buffer.c (syms_of_buffer): Doc fix.
17147
17148 2002-04-23 Gerd Moellmann <gerd@gnu.org>
17149
17150 * xterm.c (notice_overwritten_cursor): Handle the special case
17151 of the cursor being in the first blank non-text line at the
17152 end of a window.
17153
17154 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
17155 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
17156 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
17157 bar cursors only, to make phys_cursor_width contain what its name
17158 suggests.
17159 (notice_overwritten_cursor): Consider the cursor image erased if
17160 the output area intersects the cursor image in y-direction.
17161
17162 2002-04-23 Simon Marshall <simon@gnu.org>
17163
17164 * xfns.c (x_set_mouse_color): Change default for cross_cursor
17165 to XC_hand2.
17166
17167 2002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17168
17169 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
17170
17171 2002-04-22 Kim F. Storm <storm@cua.dk>
17172
17173 * textprop.c (remove_properties): Fixed trap for malformed plist.
17174
17175 2002-04-22 Richard M. Stallman <rms@gnu.org>
17176
17177 * cmds.c (Fend_of_line): Handle intangible text in mid line.
17178
17179 * window.c (make_window): Initialize height_fixed_p,
17180 last_cursor_off_p, and p->cursor_off_p slots.
17181
17182 2002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17183
17184 * fns.c (use-dialog-box): Doc fix.
17185
17186 2002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17187
17188 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
17189 variables `row', `i' and `area'.
17190 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
17191 toolkit library.
17192
17193 2002-04-19 Stefan Monnier <monnier@cs.yale.edu>
17194
17195 * xfaces.c (clear_font_table): Don't free the default font of
17196 a frame even if it's on another display.
17197 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
17198 that could be Qt.
17199
17200 2002-04-19 Juanma Barranquero <lektu@terra.es>
17201
17202 * indent.c (Fmove_to_column): Remove unused local variable
17203 `next_boundary_byte'.
17204 (current_column_1): Likewise.
17205
17206 2002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
17207
17208 * msdos.c (Qhbar): New variable.
17209 (syms_of_msdos): Intern and staticpro it.
17210 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
17211 cursor type.
17212
17213 2002-04-19 Dave Lambert <dlambert@acm.org>
17214
17215 Theses change implement an underscore-like (`hbar') cursor.
17216
17217 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
17218
17219 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
17220 Handle the `hbar' cursor type.
17221 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
17222
17223 * xfns.c (Qhbar): New variable.
17224 (syms_of_xfns): Intern and staticpro it.
17225 (x_specified_cursor_type): Handle `hbar' cursor.
17226
17227 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
17228 not defined.
17229
17230 2002-04-18 Richard M. Stallman <rms@gnu.org>
17231
17232 * textprop.c (remove_properties): New arg LIST allows scanning
17233 either a list or a plist.
17234 (interval_has_some_properties_list): New function, like
17235 interval_has_some_properties using list instead of plist.
17236 All callers changed.
17237 (Fremove_list_of_text_properties): New function.
17238 (syms_of_textprop): Defsubr it.
17239
17240 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
17241
17242 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
17243
17244 2002-04-17 Juanma Barranquero <lektu@terra.es>
17245
17246 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
17247
17248 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
17249
17250 * window.c (coordinates_in_window): Don't report on margin area
17251 if its width is zero.
17252
17253 2002-04-16 Jason Rumney <jasonr@gnu.org>
17254
17255 * w32fns.c (Fx_file_dialog): Decode file name before using.
17256
17257 * w32term.c (construct_drag_n_drop): Likewise.
17258
17259 2002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
17260
17261 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
17262 store load-history in pure space.
17263
17264 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
17265
17266 2002-04-16 Stefan Monnier <monnier@cs.yale.edu>
17267
17268 * xterm.c (Qlatin_1, Qutf_8): New vars.
17269 (syms_of_xterm): Initialize them.
17270 (XTread_socket): Eliminate incorrect optimization that tried to avoid
17271 decoding the output of X*LookupString.
17272 Always use latin-1 to decode the output of XLookupString.
17273 Try Xutf8LookupString if XmbLookupString failed.
17274
17275 * region-cache.c (new_region_cache): Use BEG.
17276
17277 2002-04-16 Gerd Moellmann <gerd@gnu.org>
17278
17279 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
17280 configuration files.
17281 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
17282 returns 0.
17283
17284 2002-04-15 Andreas Schwab <schwab@suse.de>
17285
17286 * config.in: Regenerated using autoheader.
17287
17288 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
17289 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
17290 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
17291 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
17292 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
17293 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
17294 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
17295 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
17296 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
17297 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
17298 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
17299 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
17300 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
17301 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
17302 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
17303 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
17304 STACK_DIRECTION, now set by autoconf.
17305
17306 2002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17307
17308 * dispnew.c (marginal_area_string): Sort arguments.
17309
17310 * dispextern.h (marginal_area_string): Add prototype.
17311
17312 2002-04-13 Richard M. Stallman <rms@gnu.org>
17313
17314 * fileio.c (Finsert_file_contents):
17315 Don't call temp_output_buffer_setup--do just part, by hand.
17316
17317 * coding.c (run_pre_post_conversion_on_str):
17318 Don't call temp_output_buffer_setup--do just part, by hand.
17319
17320 * keyboard.c (command_loop_1): Don't call start_hourglass
17321 or cancel_hourglass when executing a macro.
17322
17323 * marker.c (count_markers): New function.
17324
17325 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
17326 grow without limit. Move recently used elements to the front.
17327
17328 2002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
17329
17330 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
17331
17332 2002-04-12 Gerd Moellmann <gerd@gnu.org>
17333
17334 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
17335 rows marginal areas.
17336 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
17337 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
17338
17339 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
17340
17341 2002-04-12 Dave Love <fx@gnu.org>
17342
17343 * dispnew.c (marginal_area_string): New.
17344
17345 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
17346 (Qleft_margin, Qright_margin): Declare.
17347 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
17348
17349 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
17350 note_mode_line_highlight and extended.
17351
17352 * keyboard.c (Qleft_margin, Qright_margin): Declare.
17353 (make_lispy_event): Deal with mouse events in margins.
17354
17355 2002-04-12 Stefan Monnier <monnier@cs.yale.edu>
17356
17357 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
17358
17359 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
17360 than deactivating the mark if tmm is set to `lambda'.
17361 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
17362 Use a single event for HELP_EVENT.
17363 (Fexecute_extended_command): Save last_point_position.
17364
17365 2002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17366
17367 * lisp.h (Fpropertize): Add prototype.
17368
17369 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
17370
17371 2002-04-10 Colin Walters <walters@verbum.org>
17372
17373 * config.in: Add HAVE_SHARED_GAME_DIR.
17374
17375 * callproc.c (Vgame_score_directory): New variable.
17376 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
17377
17378 2002-04-10 Richard M. Stallman <rms@gnu.org>
17379
17380 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
17381
17382 2002-04-09 Stefan Monnier <monnier@cs.yale.edu>
17383
17384 * minibuf.c (read_minibuf): Use empty_string.
17385 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
17386 Short-circuit the search as soon as it "failed".
17387 (Fall_completions): Allow lambda forms and lists of strings for alist.
17388 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
17389 when require_match is nil.
17390 (Ftest_completion): Rename from `test_completion' and export to elisp.
17391 Call the predicate also when alist is a list.
17392 Obey Vcompletion_regexp_list.
17393 (do_completion, Fminibuffer_complete_and_exit): Use it.
17394 (Fassoc_string): Rename from `assoc_for_completion'.
17395 Allow list of strings as well and export to elisp.
17396
17397 2002-04-08 Stefan Monnier <monnier@cs.yale.edu>
17398
17399 * puresize.h (BASE_PURESIZE): Increase to 900KB.
17400
17401 2002-04-08 Juanma Barranquero <lektu@terra.es>
17402
17403 * w32.c (sys_accept): Don't hide variable `s'.
17404
17405 2002-04-05 Gerd Moellmann <gerd@gnu.org>
17406
17407 * callint.c (Fcall_interactively): Use INTEGERP instead of
17408 NUMBERP for checking Vhistory_length.
17409
17410 2002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17411
17412 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
17413 Doc fix to reflect it.
17414
17415 2002-04-04 Richard M. Stallman <rms@gnu.org>
17416
17417 * xdisp.c (display_mode_element): New arg RISKY.
17418 Disregard text props found or specified within a variable
17419 that isn't marked risky-local-variable.
17420 (Qrisky_local_variable): New variable.
17421 (syms_of_xdisp): Init and staticpro it.
17422
17423 2002-04-04 Stefan Monnier <monnier@cs.yale.edu>
17424
17425 * undo.c (record_point): New fun.
17426 (record_delete, record_insert): Use it.
17427
17428 2002-04-03 Juanma Barranquero <lektu@terra.es>
17429
17430 * doc.c (Fdocumentation): Add missing parentheses.
17431 (Fdocumentation_property): Likewise.
17432
17433 2002-04-03 Stefan Monnier <monnier@cs.yale.edu>
17434
17435 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
17436 data is 0, just return nil.
17437
17438 2002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
17439
17440 * msdos.c (syms_of_msdos): Fix last change with
17441 mouse_autoselect_window.
17442
17443 2002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17444
17445 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
17446 mouse_autoselect_window.
17447
17448 2002-04-02 Stefan Monnier <monnier@cs.yale.edu>
17449
17450 * keyboard.c (make_lispy_event): Handle unknown keysyms together
17451 with system-specific keysyms. Use it also for unknown function keys.
17452
17453 * doc.c (reread_doc_file): Return whether reload was attempted.
17454 (Fdocumentation, Fdocumentation_property): Don't try to reload
17455 if the doc is 0 and only ask once.
17456
17457 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
17458
17459 2002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
17460
17461 * keyboard.c (read_char): If the event was Qselect_window,
17462 restore timer_idleness_start_time to its previous value.
17463
17464 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
17465
17466 2002-04-01 Stefan Monnier <monnier@cs.yale.edu>
17467
17468 * region-cache.c (new_region_cache): Use BEG.
17469
17470 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
17471 Use BEG and BEG_BYTE.
17472
17473 * doc.c (get_doc_string): Return nil if the location is wrong.
17474 (reread_doc_file): New fun.
17475 (Fdocumentation, Fdocumentation_property):
17476 Call it if get_doc_string fails.
17477 (Fsnarf_documentation): Make it work for a dumped Emacs.
17478
17479 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
17480 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
17481
17482 * charset.c (Fstring): Allow 0 arguments.
17483
17484 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
17485
17486 * process.c (DATAGRAM_CONN_P, list_processes_1)
17487 (Fprocess_datagram_address, Fset_process_datagram_address)
17488 (Fset_network_process_options, server_accept_connection):
17489 Fix some int/Lisp_Object confusions (thank you union types).
17490
17491 2002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17492
17493 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
17494
17495 * w32term.c: Likewise.
17496 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
17497
17498 * keyboard.c (Qselect_window): New symbol.
17499 (head_table): Use it.
17500 (keys_of_keyboard): Bound select-window event to handle-select-window.
17501 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
17502
17503 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
17504 (last_window): New variable.
17505 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
17506 (note_mouse_movement): Remove reimplemented code in #if 0.
17507 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
17508 Emacs windows.
17509
17510 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
17511
17512 2002-03-31 Gerd Moellmann <gerd@gnu.org>
17513
17514 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
17515 Callers changed.
17516
17517 2002-03-30 Richard M. Stallman <rms@gnu.org>
17518
17519 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
17520 loop whenever it stops making progress.
17521
17522 * widget.c (set_frame_size): Don't call change_frame_size.
17523
17524 2002-03-30 Gerd Moellmann <gerd@gnu.org>
17525
17526 * dispnew.c (direct_output_for_insert):
17527 Call mark_window_display_accurate.
17528
17529 2002-03-29 Jason Rumney <jasonr@gnu.org>
17530
17531 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
17532
17533 2002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
17534
17535 * Makefile.in (lread.o): Depend on coding.h.
17536
17537 * lread.c (openp, Fload): Encode the file name before passing it
17538 to `stat', `access', and `emacs_open'.
17539 (openp): GCPRO the encoded file name. Don't recompute Lisp
17540 strings unnecessarily.
17541
17542 2002-03-29 Kim F. Storm <storm@cua.dk>
17543
17544 * fns.c (Flax_plist_put): Doc fix.
17545
17546 2002-03-28 Miles Bader <miles@gnu.org>
17547
17548 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
17549
17550 2002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17551
17552 * process.c (set-network-process-options): Add usage.
17553 (make-network-process): Doc fix.
17554
17555 2002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
17556
17557 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
17558
17559 2002-03-26 Richard M. Stallman <rms@gnu.org>
17560
17561 * fns.c (Fsubstring_no_properties): New function.
17562 (Flax_plist_get, Flax_plist_put): New functions.
17563 (syms_of_fns): defsubr them.
17564
17565 * xdisp.c (update_menu_bar): Test only update_mode_lines;
17566 don't test or alter w->update_mode_line.
17567
17568 * window.c (Fdisplay_buffer): Doc fix.
17569
17570 2002-03-24 Richard M. Stallman <rms@gnu.org>
17571
17572 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
17573
17574 2002-03-24 Gerd Moellmann <gerd@gnu.org>
17575
17576 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
17577 (Fdefmacro): Handle `(declare ...)'.
17578 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
17579 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
17580
17581 2002-03-24 Jason Rumney <jasonr@gnu.org>
17582
17583 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
17584 (xbm_file_p): Add prototypes.
17585 (xbm_format, xbm_image_p): Sync with xfns.c.
17586 (reflect_byte): New function.
17587 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
17588 (xbm_load_image): Create bitmaps with a depth of 1.
17589 (init_xfns): Enable XBM images.
17590
17591 2002-03-23 Jason Rumney <jasonr@gnu.org>
17592
17593 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
17594 correctly. Do not pass up_modifier to keyboard buffer.
17595
17596 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
17597
17598 2002-03-22 Stefan Monnier <monnier@cs.yale.edu>
17599
17600 * Makefile.in (bootstrapclean): New target.
17601 (bootstrap-temacs, bootstrap-doc): Remove.
17602 (bootstrap-emacs): Use a bog-standard `temacs'.
17603 Don't bother to build a DOC file.
17604
17605 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
17606
17607 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
17608 in temacs even if !CANNOT_DUMP.
17609 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
17610
17611 * alloc.c (check_pure_size): Only output a warning.
17612
17613 2002-03-22 Jason Rumney <jasonr@gnu.org>
17614
17615 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
17616 supported.
17617
17618 * w32term.c (zv_bits): Declare as short, for word alignment.
17619 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
17620 (syms_of_w32term): Define x-use-underline-position-properties.
17621
17622 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
17623 (clear_image_cache): Block input, fix logic, clear matrices in
17624 all frames that share this cache.
17625
17626 2002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
17627
17628 * emacs.c (main): Update the Copyright year in the blurb printed
17629 by "emacs --version".
17630
17631 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
17632
17633 * xterm.c (XTread_socket): If XK_ISO_Lock and
17634 XK_ISO_Last_Group_Lock are defined, handle keysyms between
17635 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
17636
17637 2002-03-21 Kim F. Storm <storm@cua.dk>
17638
17639 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
17640 menu-bar bindings in keymap and local-map properties _are_ used.
17641 But try keymap property first in accordance with 2002-01-03 patch.
17642 Added comment describing why this is not always reliable.
17643 (tool_bar_items): Ditto for tool-bar.
17644
17645 2002-03-21 Jason Rumney <jasonr@gnu.org>
17646
17647 * w32fns.c (x_clear_image_1): Disable color table code.
17648
17649 2002-03-21 Kim F. Storm <storm@cua.dk>
17650
17651 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
17652 removed the wrong version of the DEFUN macro; fixed it.
17653
17654 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
17655 Fmember rather than Fmemq).
17656 (Fprovide): Check that subfeatures is a list.
17657
17658 * process.c (QCfeature, QCdatagram): Removed variables.
17659 (QCtype, Qdatagram): New variables.
17660 (network_process_featurep): Removed function.
17661 (Fmake_network_process): Removed :feature check.
17662 Use :type 'datagram instead of :datagram t to create a datagram
17663 socket. This allows us to add other connection types (e.g. raw
17664 sockets) later in a consistent manner.
17665 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
17666 supported subfeatures for feature make-network-process.
17667 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
17668 Intern and staticpro QCtype and Qdatagram.
17669 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
17670
17671 * xfns.c: (QCtype): Remove duplicate declaration and
17672 initialization (is now declared in process.c).
17673
17674 * w32fns.c: (QCtype): Remove duplicate declaration and
17675 initialization (is now declared in process.c).
17676
17677 2002-03-21 Richard M. Stallman <rms@gnu.org>
17678
17679 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
17680 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
17681 when jumping to `fail' to avoid undoing reg changes in the
17682 last iteration of the loop.
17683 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
17684
17685 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
17686 Depend on process.h.
17687
17688 2002-03-20 Jason Rumney <jasonr@gnu.org>
17689
17690 Most of the following changes are still conditional on HAVE_IMAGES
17691 which is not set by default on Windows.
17692
17693 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
17694
17695 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
17696 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
17697 (four_corners_best, x_clear_image_1, x_clear_image)
17698 (x_alloc_image_color, postprocess_image)
17699 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
17700 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
17701 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
17702
17703 * w32gui.h (struct XImage): Define.
17704
17705 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
17706 extract mouse co-ordinates.
17707
17708 2002-03-20 Jason Rumney <jasonr@gnu.org>
17709
17710 * w32.c (init_winsock): Dynamically load new server and UDP
17711 socket functions.
17712 (socket_to_fd): New function.
17713 (sys_socket): Use it.
17714 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
17715 (sys_recvfrom, sys_sendto): New wrapper functions.
17716
17717 * process.c (QCfamily, QCfilter): Remove duplicate declaration
17718 and initialization.
17719
17720 * makefile.w32-in (LIBS): Remove $(WSOCK32).
17721
17722 2002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
17723
17724 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
17725 Don't use "sun" as a variable, it's a predefined constant on Sun
17726 machines.
17727
17728 2002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17729
17730 * bytecode.c (Fbyte_code): Revert last change.
17731
17732 2002-03-19 Kim F. Storm <storm@cua.dk>
17733
17734 * makefile.w32-in (LIBS): Add $(WSOCK32).
17735 From David Ponce <dponce@voila.fr>.
17736
17737 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17738
17739 * process.c (wait_reading_process_input): Move variables `pname'
17740 and `pnamelen' down where they are used.
17741
17742 * bytecode.c (Fbyte_code): Discard unused computed value to
17743 prevent gcc warning.
17744
17745 * lisp.h (Fplist_member): Add prototype.
17746
17747 2002-03-18 Kim F. Storm <storm@cua.dk>
17748
17749 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
17750 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
17751
17752 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
17753 Remove explicit GNU_LINUX settings for datagram support.
17754
17755 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17756
17757 * process.c (Fmake_network_process): Remove unused variable `sa'.
17758 Doc fix. Add usage:.
17759 (set_socket_options): Remove unused variables `optnum' and `opttype'.
17760
17761 2002-03-17 Richard M. Stallman <rms@gnu.org>
17762
17763 * xdisp.c (cursor_type_changed): New variable.
17764 (redisplay_internal): Redisplay all windows if cursor_type_changed.
17765 Clear it when clearing windows_or_buffers_changed.
17766 (try_cursor_movement, redisplay_window, try_window_id)
17767 (try_window_reusing_current_matrix): Test cursor_type_changed
17768 along with windows_or_buffers_changed.
17769
17770 * window.h (cursor_type_changed): New variable.
17771
17772 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
17773 not update_mode_lines, and always set it to 1.
17774
17775 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
17776 if no frames needed redrawing.
17777
17778 2002-03-17 Kim F. Storm <storm@cua.dk>
17779
17780 The following changes add support for network server processes,
17781 datagram connections, and local (unix) sockets.
17782
17783 * process.h (struct Lisp_Process): New member log.
17784 Doc fix: Member command used to indicate stopped network process.
17785 Doc fix: Member childp contains plist for network process.
17786 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
17787
17788 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
17789 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
17790 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
17791 New variables.
17792 (NETCONN1_P): New macro.
17793 (DATAGRAM_SOCKETS): New conditional symbol.
17794 (datagram_address): New array.
17795 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
17796 (status_message): Use concat3.
17797 (Fprocess_status): Add `listen' status to doc string. Return `stop'
17798 for a stopped network process.
17799 (Fset_process_buffer): Update contact plist for network process.
17800 (Fset_process_filter): Ditto. Don't enable input for stopped
17801 network processes. Server must listen, even if filter is t.
17802 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
17803 New functions.
17804 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
17805 (Fprocess_contact): Added KEY argument. Handle datagrams.
17806 (list_processes_1): Optionally show only processes with the query
17807 on exit flag set. Dynamically adjust column widths. Omit tty
17808 column if not needed. Report stopped network processes.
17809 Identify server and datagram network processes.
17810 (Flist_processes): New optional arg `query-only'.
17811 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
17812 (conv_lisp_to_sockaddr, set_socket_options)
17813 (network_process_featurep, unwind_request_sigio): New helper functions.
17814 (Fprocess_datagram_address, Fset_process_datagram_address):
17815 (Fset_network_process_options): New lisp functions.
17816 (Fopen_network_stream): Removed. Now defined in simple.el.
17817 (Fmake_network_process): New lisp function. Code is based on previous
17818 Fopen_network_stream, but heavily reworked with new property list based
17819 argument list, support for datagrams, server processes, and local
17820 sockets in addition to old client-only functionality.
17821 (server_accept_connection): New function.
17822 (wait_reading_process_input): Use it to handle incoming connects.
17823 Do not enable input on a new connection if process is stopped.
17824 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
17825 (send_process): Handle datagram sockets.
17826 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
17827 network process is indicated by setting command field to t .
17828 (Fprocess_send_eof): No-op if datagram connection.
17829 (Fstatus_notify): Don't read input for a stream server socket or a
17830 stopped network process.
17831 (init_process): Initialize datagram_address array.
17832 (syms_of_process): Intern and staticpro new variables, defsubr new
17833 functions.
17834
17835 2002-03-16 Jason Rumney <jasonr@gnu.org>
17836
17837 * w32fns.c (w32_to_all_x_charsets): Return correct type in
17838 startup case.
17839
17840 2002-03-16 Richard M. Stallman <rms@gnu.org>
17841
17842 * xdisp.c (redisplay_internal, redisplay_windows):
17843 Use list_of_error to call internal_condition_case_1.
17844 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
17845 so as to catch all errors with no possibility of debugger redisplay.
17846 (list_of_error): New variable.
17847 (syms_of_xdisp): Init and staticpro it.
17848
17849 * print.c (print_object): Delete `\ ' from printed rep of frame.
17850
17851 2002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
17852
17853 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
17854 until its implementation is fixed.
17855
17856 2002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17857
17858 * xfns.c (png_load): Remove unused variable `gamma_str'.
17859
17860 2002-03-14 Richard M. Stallman <rms@gnu.org>
17861
17862 * xfns.c (x_real_positions): Handle failure in XQueryTree.
17863
17864 2002-03-14 Miles Bader <miles@gnu.org>
17865
17866 * intervals.c (adjust_for_invis_intang): New function.
17867 (set_point_both): Use `adjust_for_invis_intang' to do most of the
17868 work for dealing with invisible+intangible regions. Do so before
17869 and after both forward and backward movements, to handle both
17870 front-sticky and rear-sticky cases.
17871 * textprop.c (text_property_stickiness): Function moved here from
17872 `editfns.c'.
17873 * intervals.h (text_property_stickiness): New declaration.
17874 * editfns.c (char_property_eq): Function removed.
17875 (text_property_stickiness): Function moved to `textprop.c'.
17876
17877 2002-03-13 Jason Rumney <jasonr@gnu.org>
17878
17879 * config.in: Add STRFTIME_NO_POSIX2.
17880
17881 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
17882 and %OX when underlying strftime does not.
17883
17884 2002-03-13 Stefan Monnier <monnier@cs.yale.edu>
17885
17886 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
17887 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
17888 line) to avoid annoying flicker.
17889 (xm_scroll_callback): Get rid of the now unnecessary kludge.
17890 (XTread_socket): Mark it static.
17891
17892 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
17893
17894 2002-03-13 Kim F. Storm <storm@cua.dk>
17895
17896 * puresize.h (BASE_PURESIZE): Increase to 775000.
17897
17898 2002-03-12 Juanma Barranquero <lektu@terra.es>
17899
17900 * editfns.c (syms_of_editfns): Fix typo.
17901
17902 2002-03-12 Gerd Moellmann <gerd@gnu.org>
17903
17904 * xsmfns.c: Include stdio.h because termhooks.h needs it.
17905 Include termopt.h for interrupt_input.
17906
17907 2002-03-11 Andreas Schwab <schwab@suse.de>
17908
17909 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
17910
17911 2002-03-11 Gerd Moellmann <gerd@gnu.org>
17912
17913 * xterm.c (note_mouse_movement): Put code for
17914 x_autoselect_window_p in #if 0.
17915
17916 * lread.c (Fload): Don't assume that message_with_string uses the
17917 string it is given like a C string.
17918
17919 2002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17920
17921 * xterm.h (x_session_check_input, x_session_initialize): Declare.
17922
17923 * xterm.c (XTread_socket): Add call to x_session_check_input and
17924 x_session_have_connection.
17925 (x_initialize): Add call to x_session_initialize.
17926
17927 * termhooks.h (enum event_kind): Add save_session_event.
17928
17929 * keyboard.c: Add Emacs event save_session_event.
17930
17931 * emacs.c (main): Add call to syms_of_xsmfns.
17932
17933 * lisp.h (syms_of_xsmfns): Declare extern.
17934
17935 * config.in: Add HAVE_X_SM.
17936
17937 * Makefile.in (LIBXT): Add -lSM -lICE
17938 if HAVE_X_SM and not USE_X_TOOLKIT.
17939 (XOBJ): New file xsmfns.c added.
17940
17941 * xsmfns.c: New file for X session management.
17942
17943 2002-03-09 Jason Rumney <jasonr@gnu.org>
17944
17945 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
17946 read-only when setting modified time.
17947
17948 2002-03-08 Gerd Moellmann <gerd@gnu.org>
17949
17950 * xdisp.c (move_it_vertically_backward): At the end of the function,
17951 when moving forward by lines, treat terminal frames specially.
17952
17953 * keyboard.c (echo_char): Make sure to add a separator between
17954 keys even if echo_dash hasn't been called.
17955
17956 * xdisp.c: Use new string macros.
17957 (update_echo_area): Pass number of bytes to message3 instead of
17958 number of chars.
17959 (set_message_1): Don't access a string's size_byte directly.
17960 (decode_mode_spec_coding): Use number of bytes of eoltype string
17961 instead number of chars.
17962
17963 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
17964
17965 2002-03-08 Juanma Barranquero <lektu@terra.es>
17966
17967 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
17968 24-bit.
17969
17970 2002-03-06 Jason Rumney <jasonr@gnu.org>
17971
17972 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
17973
17974 2002-03-06 Gerd Moellmann <gerd@gnu.org>
17975
17976 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
17977 (cancel_echoing, echo_length, echo_truncate): Changed to
17978 work with new kboard definition.
17979 (echo_now): Use message3_nolog instead of message2_nolog.
17980
17981 * alloc.c (mark_kboards): Mark echo_string.
17982
17983 * keyboard.h (ECHOBUFSIZE): Removed.
17984 (struct kboard): Member echoptr removed, member echobuf renamed
17985 to echo_string.
17986
17987 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
17988 message3 instead of message2 to display the message using STRING's
17989 text properties.
17990
17991 2002-03-05 Andreas Schwab <schwab@suse.de>
17992
17993 * xdisp.c (hscroll_margin): Change to EMACS_INT.
17994
17995 2002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
17996
17997 * frame.c (default-frame-alist): Explain that setting it doesn't
17998 affect existing frames.
17999
18000 2002-03-05 Stefan Monnier <monnier@cs.yale.edu>
18001
18002 * indent.c (skip_invisible): Fix my brain fart.
18003
18004 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
18005
18006 2002-03-04 Stefan Monnier <monnier@cs.yale.edu>
18007
18008 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
18009 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
18010 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
18011 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
18012 and variables to use EMACS_INT instead of just int.
18013
18014 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
18015
18016 2002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
18017
18018 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
18019 environment, pass it down with corrected value.
18020
18021 2002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18022
18023 * lread.c (read_filtered_event): Do not call start_hourglass
18024 before returning.
18025
18026 2002-03-04 Juanma Barranquero <lektu@terra.es>
18027
18028 * w32term.c (x_display_and_set_cursor): Fix typo.
18029
18030 2002-03-03 Richard M. Stallman <rms@gnu.org>
18031
18032 * fileio.c (Fmake_temp_name): Doc fix.
18033
18034 2002-03-03 Gary Wong <gtw@gnu.org>
18035
18036 * termcap.c [!emacs]: Replace ospeed for building standalone
18037 libtermcap, for binary compatibility.
18038
18039 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
18040
18041 2002-03-03 Richard M. Stallman <rms@gnu.org>
18042
18043 * xrdb.c (file_p): Rename arg `path' to `filename'.
18044
18045 * abbrev.c (Fexpand_abbrev): Increment plist as use count
18046 only if it is an integer.
18047
18048 * xfns.c (png_load): Set screen_gamma based on f->gamma.
18049 If png_get_sRGB gives an answer, call png_set_gamma
18050 using the default image gamma value.
18051
18052 * lread.c (read1): When reading from a file, default string to
18053 multibyte only if it has some multibyte characters.
18054
18055 * print.c (print_object): Output multibyte chars 128...255
18056 using \x even if ! print_escape_multibyte.
18057
18058 * xdisp.c (display_mode_element): Move the places where
18059 bytepos, charpos, this, and lisp_string are set.
18060 Use lisp_string to set bytepos.
18061
18062 * xdisp.c (redisplay_internal):
18063 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
18064
18065 * xdisp.c (display_mode_element): Merge properties specified with
18066 :propertize onto those that come with the string.
18067
18068 2002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
18069
18070 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
18071 automatic-hscrolling. Users changed.
18072 <hscroll-margin>: Renamed from automatic-hscroll-margin.
18073 Users changed.
18074 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
18075
18076 2002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
18077
18078 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
18079
18080 2002-03-02 Kim F. Storm <storm@cua.dk>
18081
18082 * window.c (Fminibuffer_selected_window): New function.
18083 (syms_of_window): Defsubr it.
18084
18085 2002-03-01 Kim F. Storm <storm@cua.dk>
18086
18087 * window.h (struct window): New member phys_cursor_width.
18088
18089 * window.c (make_window, replace_window): Init phys_cursor_width.
18090
18091 * xterm.c (x_display_and_set_cursor): Blink box cursor using
18092 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
18093
18094 * w32term.c (x_display_and_set_cursor): Blink box cursor using
18095 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
18096
18097 * lisp.h (GCPRO6): New macro.
18098
18099 * process.c (Fopen_network_stream): Use GCPRO6.
18100
18101 2002-03-01 Kim F. Storm <storm@cua.dk>
18102
18103 * process.c (Qconnect, Qfailed): New variables.
18104 (syms_of_process): Intern and staticpro them.
18105 (Fprocess_status): Document connect and failed return values.
18106 [NON_BLOCKING_CONNECT]: New conditional.
18107 (connect_wait_mask, num_pending_connects): New variables.
18108 (status_message): Convert Qfailed status.
18109 (Fopen_network_stream): Added support for non-blocking connect.
18110 New optional args: filter, sentinel, non_blocking. Doc updated.
18111 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
18112 (deactivate_process): Handle pending non-blocking connect.
18113 (wait_reading_process_input): Poll for status of non-blocking
18114 connects. Exec sentinel directly when connect succeeds.
18115 (status_notify): Don't read process output if not yet connected.
18116
18117 2002-02-28 Kim F. Storm <storm@cua.dk>
18118
18119 * window.c: (minibuf_selected_window): Renamed from
18120 Vminibuf_selected_window. Users changed.
18121 (syms_of_window): Staticpro it.
18122
18123 2002-02-26 Kim F. Storm <storm@cua.dk>
18124
18125 The following changes add a new Vminibuf_selected_window variable
18126 which is similar to Vminibuf_scroll_window, but which is only set
18127 on entry to the minibuffer (from a non-minibuffer window):
18128
18129 * window.c: (Vminibuf_selected_window): New variable.
18130 (struct save_window_data): New member minibuf_selected_window.
18131 (Fset_window_configuration): Restore Vminibuf_selected_window.
18132 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
18133 Set minibuf_scroll_window member to nil if minibuf_level is 0.
18134 (compare_window_configurations): Compare minibuf_selected_window.
18135
18136 * window.h: (Vminibuf_selected_window): Declare extern.
18137
18138 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
18139 entry to minibuffer or on entry from a non-minibuffer window.
18140
18141 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
18142 Vminibuf_selected_window instead of Vminibuf_scroll_window.
18143
18144 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
18145 instead of Vminibuf_scroll_window when deciding in which window
18146 the region should be highlighted. Consequently, the region remains
18147 highlighteded even when a completion buffer is also displayed.
18148
18149 2002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
18150
18151 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
18152
18153 * xselect.c (Qcompound_text_with_extensions): Renamed from
18154 Qcompound_text_no_extensions.
18155 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
18156
18157 2002-02-26 Juanma Barranquero <lektu@terra.es>
18158
18159 * w32proc.c (syms_of_ntproc): Doc fix.
18160
18161 2002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18162
18163 * intervals.h: Include "dispextern.h" unconditionally.
18164
18165 2002-02-24 Jason Rumney <jasonr@gnu.org>
18166
18167 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
18168 and disp-table.elc.
18169 (lisp): Add emacs-lisp/backquote.elc.
18170
18171 2002-02-24 Kim F. Storm <storm@cua.dk>
18172
18173 * keymap.c (Flookup_key): Fix problem in 2001-12-28 patch:
18174 The validation of the event type was too strict as it didn't
18175 allow string events; buffer names are used in bindings for
18176 menu-bar-select-buffer (see `menu-bar-update-buffers').
18177
18178 2002-02-23 Kim F. Storm <storm@cua.dk>
18179
18180 The following changes rework my patch of 2002-02-06 which
18181 added command remapping by entering the commands directly into
18182 the keymaps. Now, command remapping uses an explicit `remap'
18183 prefix in the keymaps, i.e. [remap COMMAND].
18184
18185 * keymap.c (Qremap, remap_command_vector): New variables.
18186 (is_command_symbol): Remove function.
18187 (Fdefine_key): No longer accept a symbol for KEY.
18188 Added validation of [remap COMMAND] argument for KEY.
18189 The DEF is no longer required to be a symbol when remapping a command.
18190 (Fremap_command): New function to remap command through keymaps.
18191 (Flookup_key): Perform command remapping initiated by
18192 Fremap_command directly for speed.
18193 (Fkey_binding): Use Fremap_command for command remapping.
18194 (where_is_internal): Handle new command remapping representation.
18195 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
18196 staticpro them. Defsubr Fremap_command.
18197
18198 * keymap.h (Fremap_command): Declare extern.
18199 (is_command_symbol): Remove extern.
18200
18201 * keyboard.c (command_loop_1): Use Fremap_command for command
18202 remapping; now try command remapping for all symbols.
18203
18204 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
18205
18206 * coding.h (run_pre_post_conversion_on_str): Add prototype.
18207
18208 2002-02-23 Jason Rumney <jasonr@gnu.org>
18209
18210 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
18211 on the string before encoding it.
18212 (Fw32_get_clipboard_data): Run post-read-conversion on the string
18213 after decoding it.
18214
18215 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
18216
18217 2002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18218
18219 * w32term.c (enter_timestamp): Remove unused static variable to
18220 prevent warning.
18221
18222 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
18223
18224 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
18225
18226 * w16select.c (Fw16_get_clipboard_data): Fix last change.
18227
18228 * xselect.c (selection_data_to_lisp_data): Fix last change.
18229
18230 2002-02-22 Jason Rumney <jasonr@gnu.org>
18231
18232 * w32term.h (struct w32_output): New member menu_command_in_progress.
18233
18234 * w32menu.c (menubar_selection_callback): Free the menu and
18235 clear the menu_command_in_progress flag.
18236
18237 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
18238 (menu_free_timer): New variable.
18239 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
18240 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
18241 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
18242 menu command is in progress.
18243 <WM_COMMAND>: Set the menu_command_in_progress flag.
18244 Kill any menu_free_timer that is running.
18245
18246 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
18247 Call ExtTextOutA rather than ExtTextOut.
18248
18249 2002-02-22 Eli Zaretskii <eliz@gnu.org>
18250
18251 * puresize.h (BASE_PURESIZE): Increase to 755000.
18252
18253 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
18254
18255 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
18256 on the string before encoding it.
18257 (Fw16_get_clipboard_data): Run post-read-conversion on the string
18258 after decoding it.
18259
18260 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
18261
18262 Support for ICCCM Extended Segments in X selections:
18263
18264 * xselect.c <Qcompound_text_no_extensions>: New variable.
18265 (syms_of_xselect): Intern and staticpro it.
18266 (selection_data_to_lisp_data): Run post-read-conversion on decoded
18267 selection text.
18268 (lisp_data_to_selection_data): If next-selection-coding-system is
18269 compound-text-no-extensions, set the type of selection to be
18270 compound-text.
18271
18272 * xterm.h (x_encode_text): Update prototype.
18273
18274 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
18275 callers changed. If SELECTIONP is non-zero, run the
18276 pre-write-conversion function before encoding the selection text.
18277
18278 2002-02-21 Kim F. Storm <storm@cua.dk>
18279
18280 * frame.c (syms_of_frame): Change mouse-highlight default to t.
18281
18282 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
18283 Correct composing of language-change event.
18284
18285 2002-02-20 Kim F. Storm <storm@cua.dk>
18286
18287 * keyboard.c (menu_bar_items): Don't include keymap or local-map
18288 bindings at PT when building menu (the menu is not updated often
18289 enough for this to work reliable).
18290 (tool_bar_items): Likewise.
18291 (current_active_maps): Removed unused (and buggy) function.
18292
18293 2002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18294
18295 * xfns.c (gif_load): Use correct width and height for GIF images.
18296
18297 2002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
18298
18299 * floatfns.c (Fatan): Accept an optional second arg and call
18300 atan2 if passed 2 args.
18301
18302 2002-02-18 Jason Rumney <jasonr@gnu.org>
18303
18304 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
18305
18306 2002-02-17 Jason Rumney <jasonr@gnu.org>
18307
18308 * w32term.c (x_autoselect_window_p): New variable.
18309 (syms_of_w32term): DEFVAR_BOOL and initialize it.
18310 (note_mouse_movement): Use it.
18311
18312 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
18313
18314 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
18315
18316 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
18317 New variables.
18318 (syms_of_w32fns): Intern and staticpro them.
18319 (x_frame_parms) <"fullscreen">: New parameter.
18320 (x_fullscreen_move, x_set_fullscreen): New functions.
18321 (x_set_frame_parameters): Support Qfullscreen.
18322 (x_real_positions): Save x/y_pixels_diff frame params.
18323 (x_figure_window_size): Support full-screen frames.
18324 (Fx_create_frame): Default the fullscreen parameter.
18325
18326 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
18327 (x_fullscreen_adjust): New functions.
18328 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
18329 fullscreen. Call x_check_fullscreen_move, and set the
18330 want_fullscreen member of output_data.w32
18331 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
18332
18333 * w32term.h: New enum for FULLSCREEN_* constants.
18334 (struct w32_output): New members want_fullscreen, x_pixels_diff,
18335 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
18336 (x-fullscreen-adjust): New prototype.
18337
18338 2002-02-17 Kim F. Storm <storm@cua.dk>
18339
18340 * frame.c (Vmouse_highlight): New variable.
18341 (syms_of_frame): DEFVAR_LISP it.
18342
18343 * frame.h (Vmouse_highlight): Declare extern.
18344
18345 * xterm.h (struct x_display_info): Add mouse_face_hidden.
18346
18347 * xterm.c (disable_mouse_highlight): Removed variable.
18348 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
18349 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
18350 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
18351 and on after keyboard input.
18352 (x_term_init): Initialize mouse_face_hidden.
18353
18354 * msdos.h (struct display_info): Add mouse_face_hidden.
18355
18356 * msdos.c (disable_mouse_highlight): Removed variable.
18357 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
18358 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
18359 (internal_terminal_init): Initialize mouse_face_hidden.
18360 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
18361 and on after keyboard input.
18362
18363 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
18364
18365 * w32term.c (disable_mouse_highlight): Removed variable.
18366 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
18367 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
18368 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
18369 and on after keyboard input.
18370 (w32_initialize_display_info): Initialize mouse_face_hidden.
18371
18372 2002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
18373
18374 * msdos.c (last_mouse_window): New variable.
18375 (dos_rawgetc): Fix last change--if the mouse is in the same window
18376 as recorded in last_mouse_window, don't select this window.
18377
18378 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
18379
18380 * msdos.c (x_autoselect_window_p): New variable.
18381 (syms_of_msdos): Defvar it.
18382 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
18383 which the last mouse movement occured, unless it is already selected.
18384
18385 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
18386 New variables.
18387 (syms_of_xdisp): DEVFAR them.
18388 (hscroll_window_tree): Use automatic_hscroll_margin and
18389 Vautomatic_hscroll_step to compute the amount of window scrolling.
18390
18391 2002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18392
18393 * xterm.c (x-autoselect-window): New variable.
18394 (note_mouse_movement): Use it.
18395
18396 * keyboard.c: Do not include "systime.h" twice.
18397
18398 2002-02-15 Andreas Schwab <schwab@suse.de>
18399
18400 * puresize.h (PURESIZE_RATIO): Increase to 9/5.
18401
18402 * alloc.c (NSTATICS): Increase to 1280.
18403
18404 2002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
18405
18406 * alloc.c (NSTATICS): Bump to 1026.
18407
18408 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
18409 (Vx_super_keysym): New variables.
18410 (syms_of_xterm): DEFVAR_LISP them.
18411 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
18412 variables to determine which keys to use for the various modifiers.
18413
18414 2002-02-13 Kim F. Storm <storm@cua.dk>
18415
18416 * window.c: (Vmode_line_in_non_selected_windows): Removed.
18417 (mode_line_in_non_selected_windows): New variable.
18418 (syms_of_window): DEFVAR_BOOL it.
18419
18420 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
18421 Use mode_line_in_non_selected_windows.
18422 (mode_line_in_non_selected_windows): Declare extern.
18423 (Vmode_line_in_non_selected_windows): Removed extern.
18424
18425 2002-02-13 Richard M. Stallman <rms@gnu.org>
18426
18427 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
18428 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
18429 (Fclear_this_command_keys): Doc fixes.
18430
18431 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
18432 (update_face_from_frame_parameter): Increment face_change_count
18433 and windows_or_buffers_changed to force redisplay using changed faces.
18434
18435 * xdisp.c (QCpropertize): New variable.
18436 (mode_line_proptrans_alist): New variable.
18437 (display_mode_element): New arg PROPS; all calls changed.
18438 Implement this, for strings.
18439 Handle literal output of strings by sharing the
18440 main-line code for strings, using local var `literal'.
18441 Handle :propertize feature.
18442 (syms_of_xdisp): Initialze and staticpro QCpropertize and
18443 mode_line_proptrans_alist.
18444
18445 2002-02-11 Kim F. Storm <storm@cua.dk>
18446
18447 * window.c: (Vmode_line_in_non_selected_windows): New variable.
18448 (syms_of_window): DEFVAR_LISP it.
18449
18450 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
18451 (CURRENT_MODE_LINE_FACE_ID): Use it.
18452 (Vmode_line_in_non_selected_windows): Declare extern.
18453
18454 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
18455 to get mode line face.
18456
18457 2002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
18458
18459 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
18460 variables; cus-start.el doesn't need them anymore.
18461
18462 2002-02-09 Kim F. Storm <storm@cua.dk>
18463
18464 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
18465 reduction. This fixes a display problem where stray newlines were
18466 inserted in the window (corrected by C-l). Clarified code (IMHO).
18467
18468 2002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
18469
18470 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
18471
18472 * xdisp.c (display_mode_lines): Fix last change.
18473
18474 2002-02-09 Jason Rumney <jasonr@gnu.org>
18475
18476 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
18477 match each other.
18478 (w32_load_system_font): Prevent Cleartype fonts from loading.
18479 (Fx_show_tip): Ensure tip frames are above other topmost windows.
18480
18481 2002-02-09 Kim F. Storm <storm@cua.dk>
18482
18483 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
18484 (CURRENT_MODE_LINE_HEIGHT): Use it.
18485 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
18486
18487 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
18488 (pos_visible_p, handle_face_prop): Likewise.
18489 (display_mode_lines): Likewise, but for the real selected window.
18490 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
18491
18492 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
18493 in non-selected windows.
18494 (realize_basic_faces): Realize it.
18495 (syms_of_term): Intern and staticpro it.
18496
18497 2002-02-08 Kim F. Storm <storm@cua.dk>
18498
18499 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
18500 Changed mail addresses to emacs-devel@gnu.org.
18501
18502 2002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
18503
18504 * fileio.c (Fsubstitute_in_file_name): If the file name includes
18505 ~user, and there's no such user, don't discard everything before ~user.
18506
18507 * floatfns.c (Fround): Doc fix.
18508
18509 2002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18510
18511 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
18512
18513 2002-02-07 Stefan Monnier <monnier@cs.yale.edu>
18514
18515 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
18516
18517 2002-02-07 Kim F. Storm <storm@cua.dk>
18518
18519 * keymap.c (where_is_internal): Only check whether definition is
18520 remapped if it fulfills is_command_symbol.
18521
18522 2002-02-07 Andreas Schwab <schwab@suse.de>
18523
18524 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
18525
18526 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
18527
18528 2002-02-06 Kim F. Storm <storm@cua.dk>
18529
18530 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
18531 defining command remapping. Doc updated.
18532 (Flookup_key): Remap command through keymap if KEY is a symbol.
18533 (is_command_symbol): New function.
18534 (Fkey_binding): Use it. New optional argument NO-REMAP.
18535 Doc updated. Callers changed. Perform command remapping via
18536 recursive call unless that arg is non-nil.
18537 (where_is_internal): New argument no_remap. Callers changed.
18538 Call recursively to find original key bindings for a remapped
18539 comand unless that arg is non-nil.
18540 (Fwhere_is_internal): New optional argument NO-REMAP.
18541 Doc updated. Callers changed. Pass arg to where_is_internal.
18542
18543 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
18544 (is_command_symbol): Add prototype.
18545
18546 * keyboard.c (Vthis_original_command): New variable.
18547 (syms_of_keyboard): DEFVAR_LISP it.
18548 (command_loop_1): Set it, and perform command remapping.
18549
18550 2002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18551
18552 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
18553
18554 2002-02-06 Jason Rumney <jasonr@gnu.org>
18555
18556 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
18557
18558 2002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
18559
18560 * charset.c (get_charset_id): Use if-else instead of ?:.
18561
18562 2002-02-06 Richard M. Stallman <rms@gnu.org>
18563
18564 * filelock.c (S_ISLNK): Define if not defined.
18565
18566 2002-02-03 Richard M. Stallman <rms@gnu.org>
18567
18568 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
18569
18570 * lread.c (read1): Redesign strategy for force_multibyte and
18571 force_singlebyte. Now is_multibyte records whether read_buffer
18572 is multibyte. Encountering any multibyte character makes it so.
18573
18574 2002-02-02 Stefan Monnier <monnier@cs.yale.edu>
18575
18576 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
18577 with the same sequence, map that sequence to f10 rather than f0.
18578
18579 2002-02-03 Andreas Schwab <schwab@suse.de>
18580
18581 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
18582 latter never being defined on GNU/Linux.
18583
18584 2002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
18585
18586 * xfaces.c (realize_default_face): Don't set the weight and slant of
18587 the default face to Qnormal, unless these attributes are unspecified.
18588
18589 2002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18590
18591 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
18592 Call cancel_hourglass unconditionally.
18593
18594 * eval.c (Fsignal): Remove duplicated declaration of
18595 the variable `display_hourglass_p'.
18596
18597 2002-01-31 Richard M. Stallman <rms@gnu.org>
18598
18599 * editfns.c (region_limit): Nicer error message.
18600
18601 * coding.c (decode_composition_emacs_mule):
18602 Give up if NCOMPONENT gets too large to index `component'.
18603
18604 * callint.c (check_mark): New arg to specify clearer error message.
18605 Callers changed.
18606
18607 2002-01-27 Richard M. Stallman <rms@gnu.org>
18608
18609 * minibuf.c (Fcompleting_read): Doc fix.
18610
18611 2002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18612
18613 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
18614 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
18615 Fix doc-strings.
18616
18617 2002-01-26 Richard M. Stallman <rms@gnu.org>
18618
18619 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
18620
18621 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
18622 and scroll_up_aggressively.
18623
18624 2002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18625
18626 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
18627
18628 2002-01-25 Stefan Monnier <monnier@cs.yale.edu>
18629
18630 * textprop.c (Fnext_property_change, Fnext_single_property_change)
18631 (Fprevious_property_change, Fprevious_single_property_change):
18632 Stay within the narrowed-buffer boundaries.
18633
18634 2002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
18635
18636 * term.c (Ftty_display_color_cells): New function.
18637 (syms_of_term): Defsubr it.
18638 (Ftty_display_color_cells, Ftty_display_color_p): Change the
18639 argument name to DISPLAY. Doc fix.
18640
18641 * dispextern.h: Add prototype for set_tty_color_mode and
18642 tty_setup_colors.
18643
18644 2002-01-24 Jason Rumney <jasonr@gnu.org>
18645
18646 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
18647 If region left to draw is not what was expected, mark the frame as
18648 garbaged.
18649
18650 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
18651 Combine the regions returned by BeginPaint and GetUpdateRect.
18652
18653 2002-01-23 Jason Rumney <jasonr@gnu.org>
18654
18655 * w32term.c (x_update_window_begin): Only hide caret if
18656 w32_use_visible_system_caret is set.
18657 (x_update_window_end): Only show caret if
18658 w32_use_visible_system_caret is set.
18659 (syms_of_w32term): Handle SystemParametersInfo call failing.
18660
18661 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
18662
18663 2002-01-22 Richard M. Stallman <rms@gnu.org>
18664
18665 * unexelf.c (unexec): Define n so as to cause compilation error
18666 for the code where people have often written n instead of nn.
18667
18668 * .gdbinit (hookpost-run): Defined.
18669
18670 2002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
18671
18672 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
18673
18674 2002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
18675
18676 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
18677 if fullscreen is being set.
18678
18679 2002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18680
18681 * minibuf.c (Fminibuffer_contents)
18682 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
18683 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
18684
18685 2002-01-21 Richard M. Stallman <rms@gnu.org>
18686
18687 * window.c (check_frame_size): Fix minimum height calculation.
18688
18689 2002-01-20 Ken Raeburn <raeburn@gnu.org>
18690
18691 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
18692 height before comparison.
18693 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
18694
18695 2002-01-20 Jason Rumney <jasonr@gnu.org>
18696
18697 * w32term.c (w32_system_caret_width): Remove.
18698 (w32_use_visible_system_caret): New user flag.
18699 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
18700 Windows reports a screen reader running.
18701 (x_update_window_begin): Hide the system caret.
18702 (x_update_window_end): Show the system caret.
18703 (x_display_and_set_cursor): Don't draw a cursor when
18704 w32_use_visible_system_caret is set. Do not adjust width.
18705
18706 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
18707 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
18708 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
18709 the user requests it. Use system default width when creating.
18710 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
18711
18712 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
18713 New window messages.
18714
18715 2002-01-20 Richard M. Stallman <rms@gnu.org>
18716
18717 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
18718
18719 2002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18720
18721 * doprnt.c (doprnt1): Fix typos in error call.
18722
18723 2002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
18724
18725 * unexelf.c (unexec) [__sgi]: Support the .got sections.
18726
18727 2002-01-20 Jason Rumney <jasonr@gnu.org>
18728
18729 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
18730 that Windows returns. If a double check fails, try to guess how
18731 ExtTextOut is going to act.
18732
18733 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
18734 in place of stricmp.
18735 (w32_list_synthesized_fonts): Removed.
18736 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
18737 (struct enumfont_t): New element; list.
18738 (enum_font_cb2): List all style and charset variations of a font.
18739 (Fw32_select_font): New optional argument; include_proportional.
18740 Exclude vertical fonts. Exclude proportional fonts unless
18741 include_proportional is non-nil.
18742 (w32_enable_synthesized_fonts): Change to a boolean.
18743 (Fw32_send_sys_command): Doc fix.
18744
18745 2002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18746
18747 * dispnew.c (update_frame): Move the variable `tem' to the block
18748 where it is used.
18749
18750 2002-01-19 Jason Rumney <jasonr@gnu.org>
18751
18752 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
18753 call to face-set-after-frame-default.
18754
18755 2002-01-18 Richard M. Stallman <rms@gnu.org>
18756
18757 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
18758 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
18759
18760 2002-01-17 Richard M. Stallman <rms@gnu.org>
18761
18762 * window.c (enlarge_window): When exceeding size of parent,
18763 directly delete all the siblings instead of trying to resize it.
18764
18765 2002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18766
18767 * term.c (set_tty_color_mode): Remove unused variable `tem'.
18768
18769 2002-01-16 Henrik Enberg <henrik@enberg.org>
18770
18771 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
18772
18773 2002-01-16 Kim F. Storm <storm@cua.dk>
18774
18775 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
18776 is invisible. This can happen if cursor is on top line of a
18777 window, and we switch to a buffer with a header line.
18778
18779 * w32term.c (x_erase_phys_cursor): Ditto.
18780
18781 2002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18782
18783 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
18784 `dont_resize' only when used.
18785
18786 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
18787
18788 2002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
18789
18790 * xdisp.c (display_mode_element): When computing charpos, depend
18791 on multibyteness of elt, not the text in field.
18792
18793 2002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18794
18795 * buffer.c (Fkill_all_local_variables):
18796 Increment `update_mode_lines' only once.
18797
18798 2002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18799
18800 * lisp.h (adjust_after_replace_noundo)
18801 (Fupdate_coding_systems_internal): Add prototypes.
18802
18803 * sound.c (Fplay_sound): Initialize header_size also for :data case.
18804
18805 2002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
18806
18807 Support for the --color command-line argument and tty-color-mode
18808 frame parameter:
18809
18810 * term.c (tty_default_color_capabilities, tty_setup_colors)
18811 (set_tty_color_mode): New functions.
18812 (term_init): Call tty_default_color_capabilities.
18813 (Qtty_color_mode_alist): New variable.
18814 (syms_of_term): Intern and staticpro it.
18815
18816 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
18817 frames.
18818 (do_switch_frame): For termcap frames, switch the tty
18819 color mode as specified by the frame's parameters.
18820 (Qtty_color_mode): New variable.
18821 (syms_of_frame): Intern and staticpro it.
18822
18823 * emacs.c (USAGE2): Add the --color option.
18824 (standard_args): Ditto.
18825
18826 2002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
18827
18828 * xterm.h (struct x_output): New members want_fullscreen,
18829 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
18830 y_pixels_outer_diff.
18831 New enum for FULLSCREEN_* constants.
18832 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
18833 is NULL.
18834 (x_fullscreen_adjust): Add prototype.
18835
18836 * emacs.c (USAGE2): Add the new full-screen arguments.
18837 (standard_args): Ditto.
18838
18839 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
18840 New variables.
18841 (syms_of_xfns): Intern and staticpro them.
18842 (x_frame_parms) <"fullscreen">: New parameter.
18843 (x_fullscreen_move, x_set_fullscreen): New functions.
18844 (x_set_frame_parameters): Support for Qfullscreen.
18845 (x_real_positions): More accurate computation of the frame position.
18846 (x_figure_window_size): Support full-screen frames.
18847 (Fx_create_frame): Default the fullscreen parameter.
18848
18849 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
18850 (XTread_socket) <Expose>: Call x_check_fullscreen.
18851 <ConfigureNotify>: Don't resize to fullscreen.
18852 Call x_check_fullscreen_move, and set the want_fullscreen member of
18853 output_data.x.
18854
18855 2002-01-13 Jason Rumney <jasonr@gnu.org>
18856
18857 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
18858 for mice with more than 3 buttons.
18859
18860 * w32term.c (parse_button): New parameter xbutton. Callers changed.
18861 (w32_read_socket): Handle new "XBUTTON" messages.
18862
18863 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
18864 (syms_of_w32fns): DEFVAR_BOOL it.
18865 (w32_wnd_proc): Handle new "XBUTTON" messages.
18866
18867 2002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18868
18869 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
18870
18871 2002-01-13 Andreas Schwab <schwab@suse.de>
18872
18873 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
18874
18875 2002-01-12 Andreas Schwab <schwab@suse.de>
18876
18877 * .gdbinit (xbuffer): Remove address operator since data is now a
18878 pointer.
18879
18880 2002-01-11 Richard M. Stallman <rms@gnu.org>
18881
18882 * insdel.c (adjust_after_replace_noundo): New function.
18883
18884 * coding.c (code_convert_region): Don't copy old text if undo disabled.
18885
18886 2002-01-09 Jason Rumney <jasonr@gnu.org>
18887
18888 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
18889 when checking for multiple frames.
18890
18891 2002-01-08 Richard M. Stallman <rms@gnu.org>
18892
18893 * window.c (delete_window): Rewrite the code for changing the
18894 selected window to handle the case where WINDOW is not a leaf.
18895
18896 2002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
18897
18898 * process.c (send_process): Set src_multibyte to 1 after the call
18899 top setup_coding_system, not before the call.
18900
18901 2002-01-07 Jason Rumney <jasonr@gnu.org>
18902
18903 * xmenu.c (set_frame_menubar, xmenu_show):
18904 (xdialog_show): Initialize wv->help to Qnil.
18905
18906 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
18907 (w32_dialog_show): Initialize wv->help to Qnil.
18908
18909 2002-01-06 Jason Rumney <jasonr@gnu.org>
18910
18911 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
18912
18913 * w32menu.c (w32_menu_display_help): Revert last change.
18914
18915 * xmenu.c (menu_highlight_callback): Revert last change.
18916
18917 2002-01-06 Andreas Schwab <schwab@suse.de>
18918
18919 * insdel.c (make_gap_larger): Make sure buffer size does not
18920 overflow range of int.
18921
18922 2002-01-05 Jason Rumney <jasonr@gnu.org>
18923
18924 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
18925 OVERLAPS_P.
18926
18927 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
18928
18929 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
18930 to the left or to the right of the pointer, put it against
18931 the left screen edge.
18932 (x_frame_parms): Add missing braces around initializer.
18933
18934 * w32term.c (x_setup_relief_colors): Don't compute an image's
18935 background color if it doesn't have a Pixmap.
18936 (notice_overwritten_cursor): Don't depend on
18937 output_cursor and updated_area. Compare pixel coordinates with
18938 window's cursor pixel coordinates.
18939 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
18940 Call notice_overwritten_cursor with new arg list.
18941 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
18942 unconditionally.
18943 (x_draw_image_relief): Use predefined macro instead of
18944 constant when the value of `tool_bar_button_relief' is negative.
18945
18946 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
18947
18948 2002-01-04 Richard M. Stallman <rms@gnu.org>
18949
18950 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
18951
18952 2002-01-03 Richard M. Stallman <rms@gnu.org>
18953
18954 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
18955 (Fkey_binding): Try the `keymap' property map first.
18956 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
18957 minor mode bindings.
18958
18959 2002-01-03 Kim F. Storm <storm@cua.dk>
18960
18961 * keyboard.c (read_key_sequence): Fix cast of submaps arg to bcopy.
18962
18963 2002-01-02 Richard M. Stallman <rms@gnu.org>
18964
18965 * keyboard.c (read_key_sequence): Handle the keymap property
18966 before minor mode maps.
18967
18968 * editfns.c (Fformat): Update thissize from field_width
18969 based on the actual width, in the string case.
18970
18971 2002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18972
18973 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
18974 when used as truth value to prevent gcc warnings.
18975
18976 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
18977 * w32proc.c: Include <config.h>.
18978
18979 2002-01-01 Andreas Schwab <schwab@suse.de>
18980
18981 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
18982 not EMACS_INT, to make them compatible with DEFVAR_INT.
18983 * lisp.h (max_specpdl_size): Adjust declaration.
18984
18985 2002-01-01 Richard M. Stallman <rms@gnu.org>
18986
18987 * print.c (print_object): Test print_escape_nonascii only for
18988 unibyte strings.
18989 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
18990 when outputting to a multibyte buffer.
18991
18992 2001-12-29 Richard M. Stallman <rms@gnu.org>
18993
18994 * print.c (print_object): In multibyte string, use hex escapes.
18995 Use octal only for unibyte strings.
18996 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
18997
18998 * lread.c (read_escape): New arg BYTEREP for reporting whether
18999 escape forces unibyte or multibyte.
19000 (read1): When reading a string, take note of that info.
19001
19002 2001-12-29 Ken Raeburn <raeburn@gnu.org>
19003
19004 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
19005 comparison to test lisp value returned by Fget.
19006
19007 2001-12-29 Richard M. Stallman <rms@gnu.org>
19008
19009 * lisp.h (max_specpdl_size): Add declaration.
19010
19011 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
19012
19013 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
19014 Handle modifier bits. Correct typo in error message.
19015
19016 2001-12-28 Richard M. Stallman <rms@gnu.org>
19017
19018 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
19019 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
19020 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
19021 Update calls to Fdefine_abbrev.
19022 (write_abbrev): Update for changed data format.
19023 Don't list "system" abbrevs.
19024 (Fexpand_abbrev): Update use count with new data format.
19025 (describe_abbrev): Update for changed data format.
19026 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
19027
19028 * config.in (HAVE_MBSINIT): Add #undef.
19029
19030 * strftime.c (mbsinit): Define as no-op if not available.
19031
19032 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
19033 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
19034
19035 * keymap.c (Flookup_key): Error message if key has wrong data type.
19036 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
19037 (exclude_key): New variable.
19038
19039 2001-12-28 Gerd Moellmann <gerd@gnu.org>
19040
19041 * xterm.c (x_setup_relief_colors): Don't compute an image's
19042 background color if it doesn't have a Pixmap.
19043
19044 * xterm.c (notice_overwritten_cursor): Don't depend on
19045 output_cursor and updated_area. Compare pixel coordinates with
19046 window's cursor pixel coordinates.
19047 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
19048 Call notice_overwritten_cursor with new arg list.
19049 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
19050 unconditionally.
19051
19052 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
19053 height of the cursor line to the amount to scroll.
19054
19055 2001-12-27 Richard M. Stallman <rms@gnu.org>
19056
19057 * intervals.c (set_point_both): The position after an invisible,
19058 intangible character is not an acceptable stopping point.
19059
19060 2001-12-27 Ken Raeburn <raeburn@gnu.org>
19061
19062 * window.c (enlarge_window): In new preserve_before code, convert
19063 CURBEG from lisp object to integer before doing arithmetic.
19064
19065 2001-12-27 Richard M. Stallman <rms@gnu.org>
19066
19067 * bytecode.c (Fbyte_code): Undo previous change.
19068
19069 2001-12-26 Kim F. Storm <storm@cua.dk>
19070
19071 * keyboard.c (record_char): Ignore duplicate help-echo events only
19072 separated by mouse-movement. When tracking mouse, only record
19073 first and last mouse-movement event in same window.
19074 Don't record mouse-movement events in keyboard macros.
19075
19076 2001-12-25 Richard M. Stallman <rms@gnu.org>
19077
19078 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
19079 (Fenlarge_window): New arg PRESERVE_BEFORE.
19080
19081 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
19082 instead of Fstring_as_unibyte.
19083
19084 2001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19085
19086 The following changes remove mocklisp support:
19087
19088 * mocklisp.h, mocklisp.c: Files removed.
19089
19090 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
19091 `Qmocklisp' and `Qmocklisp_arguments'.
19092 Remove prototype of syms_of_mocklisp.
19093
19094 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
19095
19096 * callint.c: Do not include mocklisp.h.
19097 (Fcall_interactively): Do not test for mocklisp case.
19098
19099 * eval.c: Remove variables `Qmocklisp_arguments',
19100 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
19101 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
19102 Do not test for mocklisp case.
19103 (Fwhile): Remove unused variable `tem'.
19104 (syms_of_eval): Remove variable `moclisp-arguments'.
19105
19106 * data.c (wrong_type_argument): Remove mocklisp case.
19107
19108 * doc.c (Fdocumentation): Remove mocklisp case.
19109
19110 * emacs.c (main): Do not call syms_of_mocklisp.
19111
19112 2001-12-21 Richard M. Stallman <rms@gnu.org>
19113
19114 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
19115 to the left or to the right of the pointer, put it against
19116 the left screen edge.
19117
19118 2001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
19119
19120 * Makefile.in (distclean): Remove .gdbinit if we are building
19121 outside the source tree.
19122
19123 2001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
19124
19125 * w32.c (emacs_root_dir): New function.
19126
19127 * msdos.c (emacs_root_dir): New function.
19128
19129 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
19130 of the current drive as the fallback for default_directory.
19131
19132 * dired.c (file_name_completion): Run the elements of
19133 completion-ignored-extensions through ENCODE_FILE.
19134
19135 * lisp.h (scmp): Remove prototype, since it's now a static
19136 function private to dired.c.
19137
19138 2001-12-18 Richard M. Stallman <rms@gnu.org>
19139
19140 * dired.c (scmp): Function moved from minibuf.c.
19141 Delete multibyte handling--used only on encoded strings.
19142
19143 * minibuf.c (scmp): Function moved to dired.c.
19144
19145 * fns.c (merge): Add QUIT call.
19146
19147 2001-12-18 Dave Love <fx@gnu.org>
19148
19149 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
19150 language/georgian.el.
19151
19152 2001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
19153
19154 * Makefile.in (lisp, shortlisp): Synchronize with changes to
19155 lisp/Makefile.in:DONTCOMPILE.
19156
19157 2001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19158
19159 * xdisp.c (window_box_height): Do not return negative values.
19160 From Gerd Moellmann <gerd@gnu.org>.
19161
19162 * keyboard.c (head_table): Add missing braces around initializer.
19163
19164 * term.c (keys): Likewise.
19165
19166 * xfns.c (x_frame_parms, visual_classes): Likewise.
19167
19168 2001-12-17 Sam Steingold <sds@gnu.org>
19169
19170 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
19171 patch (COMPOSING_P, not COMPOSING).
19172
19173 2001-12-17 Richard M. Stallman <rms@gnu.org>
19174
19175 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
19176
19177 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
19178 before calling decode_coding.
19179
19180 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
19181
19182 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
19183 instead of only for COMPOSITION_DISABLED.
19184
19185 2001-12-16 Richard M. Stallman <rms@gnu.org>
19186
19187 * alloc.c (pure_alloc): After overflow, allocate just a small block.
19188
19189 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
19190
19191 * buffer.h (struct buffer): New field `display_error_modiff'.
19192 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
19193
19194 * window.c (Frecenter): Clear display_error_modiff field.
19195
19196 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
19197 Call redisplay_window, but not if display_error_modiff field says no.
19198 (redisplay_window_error): New function.
19199 (displayed_buffer): New variable.
19200 (redisplay_internal, redisplay_windows): Call the new functions
19201 instead of redisplay_window directly.
19202
19203 2001-12-15 Richard M. Stallman <rms@gnu.org>
19204
19205 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
19206
19207 2001-12-14 Andrew Innes <andrewi@gnu.org>
19208
19209 * makefile.w32-in (EMACSLOADPATH): Define.
19210 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
19211 (bootstrap-temacs): Remove dependency on bootstrap-clean.
19212
19213 2001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
19214
19215 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
19216 parameter have a numeric value all the time.
19217
19218 * w32fns.c (x_report_frame_params): Likewise.
19219
19220 2001-12-12 Richard M. Stallman <rms@gnu.org>
19221
19222 * fileio.c (Fwrite_region): Doc fix.
19223
19224 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
19225 (redisplay_internal): Call clear_image_cache only for window terminals.
19226
19227 2001-12-12 Gerd Moellmann <gerd@gnu.org>
19228
19229 * xdisp.c (move_it_vertically_backward): Change heuristic
19230 for the case that we didn't move far enough initially.
19231
19232 * window.c (Frecenter): Simplify computation in the case of window
19233 system frames and ARG < 0; use window_box_height.
19234
19235 2001-12-11 Richard M. Stallman <rms@gnu.org>
19236
19237 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
19238 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
19239
19240 2001-12-11 Andrew Innes <andrewi@gnu.org>
19241
19242 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
19243 arg is negative.
19244
19245 2001-12-11 Richard M. Stallman <rms@gnu.org>
19246
19247 * m/hp800.h: Split the __hpux conditional into the parts
19248 that are right for GNU/Linux too and the parts that are not.
19249 Use the former if GNU_LINUX.
19250 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
19251
19252 * s/gnu-linux.h (GNU_LINUX): Defined.
19253
19254 2001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19255
19256 * macros.c, msdos.c, w16select.c: Change doc-string comments to
19257 `new style' [w/`doc:' keyword].
19258
19259 2001-12-10 Jason Rumney <jasonr@gnu.org>
19260
19261 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
19262 before using.
19263
19264 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19265
19266 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
19267 keyword].
19268
19269 2001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
19270
19271 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
19272
19273 * s/hpux10.h (srand48): Don't undefine.
19274
19275 2001-12-09 Jason Rumney <jasonr@gnu.org>
19276
19277 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
19278 Add comment to explain where the struct came from.
19279 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
19280 (add_menu_item): Process pop-up menus first to avoid memory leak.
19281 (add_menu_item, w32_menu_display_help): Use `help' field as
19282 Lisp_Object.
19283 (w32_free_submenu_strings): Only free owner-drawn strings.
19284
19285 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19286
19287 * COPYING: Moved back.
19288
19289 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
19290 Add parentheses around && within ||.
19291
19292 * indent.c (compute_motion): Likewise.
19293
19294 * intervals.c (merge_properties_sticky): Likewise.
19295
19296 * coding.c (setup_coding_system, shrink_encoding_region)
19297 (Fdecode_sjis_char): Likewise.
19298
19299 2001-12-07 Andreas Schwab <schwab@suse.de>
19300
19301 * xdisp.c (display_mode_element): Don't read past end of string if
19302 it ends with '%'.
19303
19304 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
19305 can hold.
19306
19307 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
19308 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
19309 type changed to Lisp_Object.
19310 (syms_of_data): DEFVAR_LISP them.
19311
19312 2001-12-07 Richard M. Stallman <rms@gnu.org>
19313
19314 * callproc.c (init_callproc): Set Vdata_directory based on the source
19315 location whenever Emacs was run uninstalled.
19316
19317 2001-12-06 Paul Eggert <eggert@twinsun.com>
19318
19319 * config.in (HAVE_WORKING_VFORK): New #undefs.
19320 * process.c (create_process):
19321 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
19322 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
19323 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
19324 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
19325 * m/intel386.h (HAVE_VFORK): Likewise.
19326 * m/mips-siemens.h (HAVE_VFORK): Likewise.
19327 * m/mips.h (HAVE_VFORK): Likewise.
19328 * s/freebsd.h (vfork): Remove #define.
19329 * s/lynxos.h (HAVE_VFORK): Remove #undef.
19330 * s/usg5-4-2.h: Fix comment about vfork.
19331
19332 2001-12-06 Richard M. Stallman <rms@gnu.org>
19333
19334 * s/hpux10.h (random): Add undef.
19335 (HAVE_RANDOM): Define it just once.
19336
19337 2001-12-06 Stefan Monnier <monnier@cs.yale.edu>
19338
19339 * eval.c: Undo last change: the standard syntax is not wanted.
19340
19341 2001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
19342
19343 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
19344 scroll bars of the frame before deleting the frame itself. If the
19345 frame has a widget, delete the frame with XtDestroyWidget, and do
19346 not call XDestroyWindow before that.
19347
19348 2001-12-06 Kim F. Storm <storm@cua.dk>
19349
19350 * xfns.c (x_report_frame_params): Return actual fringe widths.
19351
19352 * w32fns.c (x_report_frame_params): Return actual fringe widths.
19353
19354 2001-12-05 Andrew Innes <andrewi@gnu.org>
19355
19356 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
19357 excessively large.
19358
19359 * insdel.c (make_gap_larger): New function.
19360 (make_gap_smaller): New function.
19361 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
19362 Call make_gap_smaller if arg is negative.
19363
19364 2001-12-04 Stefan Monnier <monnier@cs.yale.edu>
19365
19366 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
19367 Pass a dummy argument when calling interrupt_signal.
19368 (parse_menu_item): Mark disabled items before checking for empty def.
19369 (read_char_minibuf_menu_prompt): Make safety more visible.
19370 (read_key_sequence): Add a `first_unbound' variable.
19371 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
19372 unbound prefix as soon as we can detect it.
19373
19374 * doc.c (Fsnarf_documentation): Add prototype.
19375 (get_doc_string): Handle negative arguments.
19376 (Fdocumentation): Use AREF and ASIZE.
19377 Move the calls to get_doc_string to a single place.
19378 Don't confuse an interactive-spec for a docstring reference.
19379 (Fdocumentation_property): Take advantage of the fact that
19380 get_doc_string now ignores the sign of the docstring position.
19381
19382 * eval.c: Use standard syntax for usage in docstrings.
19383
19384 2001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19385
19386 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
19387
19388 2001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19389
19390 * xterm.c (x_draw_image_relief): Use predefined macro instead of
19391 constant when the value of `tool_bar_button_relief' is negative.
19392
19393 2001-12-02 Richard M. Stallman <rms@gnu.org>
19394
19395 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
19396 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
19397
19398 * fileio.c (read_non_regular): Delete Fsignal call.
19399
19400 2001-12-01 Stefan Monnier <monnier@cs.yale.edu>
19401
19402 * lisp.h (run_hook_list_with_args): Undo last change.
19403
19404 2001-12-01 Gerd Moellmann <gerd@gnu.org>
19405
19406 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
19407
19408 2001-12-01 Jason Rumney <jasonr@gnu.org>
19409
19410 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
19411
19412 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
19413 [!WM_MOUSELEAVE]: Define.
19414
19415 * w32menu.c (current_popup_menu, get_menu_item_info):
19416 (set_menu_item_info): New vars.
19417 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
19418 (w32_menu_show): Set current_popup_menu.
19419 (add_menu_item): Allocate new strings for owner-drawn menu items
19420 and help strings.
19421 Use owner-draw for disabled menu items again.
19422 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
19423 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
19424
19425 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
19426 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
19427 <WM_EXITMENULOOP>: Free menu strings.
19428 <WM_MOUSELEAVE>: Stop tracking mouse.
19429 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
19430
19431 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
19432 and mouse face.
19433
19434 2001-12-01 Kim F. Storm <storm@cua.dk>
19435
19436 The following changes add left-fringe and right-fringe
19437 frame parameters to adjust fringe widths, or remove one or
19438 both fringes.
19439
19440 * frame.h (struct frame): Remove trunc_area_pixel_width and
19441 trunc_area_cols fields.
19442 (Qleft_fringe, Qright_fringe): Declare.
19443 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
19444
19445 * frame.c (Qleft_fringe, Qright_fringe): New vars.
19446 (syms_of_frame): Initialize them.
19447
19448 * window.c (coordinates_in_window): Handle separate left and right
19449 fringe widths.
19450
19451 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
19452 and fringe_cols fields.
19453 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
19454 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
19455 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
19456 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
19457 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
19458 (x_compute_fringe_widths): Add prototype.
19459
19460 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
19461 fill fringe evenly with small dashes.
19462 (x_draw_fringe_bitmap): Clear background if necessary. Align and
19463 clip the new ZV bitmap to avoid jitter between rows.
19464 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
19465 background. Don't draw fringe bitmaps if fringe width is zero.
19466 (x_compute_fringe_widths): New function.
19467 (x_new_font, x_set_window_size_1): Use it.
19468
19469 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
19470 (x_set_frame_parameters): Process `font' parameter before other
19471 parameters as fringe widths depend on it.
19472 (x_set_fringe_width): New function.
19473 (x_figure_window_size): Use x_compute_fringe_widths.
19474 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
19475 parameters.
19476
19477 * widget.c (set_frame_size): Use x_compute_fringe_widths.
19478 (EmacsFrameSetCharSize): Ditto.
19479
19480 * w32term.h: Merged changes from xterm.h.
19481 * w32term.c: Merged changes from xterm.c.
19482 * w32fns.c: Merged changes from xfns.c.
19483
19484 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19485
19486 * COPYING: Removed.
19487
19488 2001-11-29 Dave Love <fx@gnu.org>
19489
19490 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
19491 extra extra slot.
19492 (detect_coding_mask): Fix call of detect_coding_iso2022.
19493
19494 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19495
19496 * fileio.c (file-name-coding-system)
19497 (default-file-name-coding-system): Doc fix (links to referenced
19498 variables added).
19499
19500 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
19501
19502 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
19503 Add dummy uses of gcproN variables.
19504
19505 * category.c (describe_category, describe_category_1)
19506 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
19507 (syms_of_category): Don't defsubr Sdescribe_categories.
19508
19509 2001-11-28 Richard M. Stallman <rms@gnu.org>
19510
19511 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
19512
19513 * Makefile.in (lispdir): New variable, referring to build dir.
19514 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
19515
19516 2001-11-28 Andrew Innes <andrewi@gnu.org>
19517
19518 * w32menu.c (w32_menu_display_help): Actually add the new argument
19519 OWNER.
19520
19521 2001-11-28 Jason Rumney <jasonr@gnu.org>
19522
19523 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
19524 menu items. From David Ponce <dponce@wanadoo.fr>.
19525 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
19526 conditionally.
19527 (w32_menu_display_help): New argument OWNER. Rewritten to store a
19528 help event in the owner frame's keyboard buffer.
19529
19530 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
19531 (Fx_show_tip): Don't subtract last width from row width.
19532
19533 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
19534 (w32_read_socket): Use EQ to compare frames.
19535
19536 2001-11-28 Gerd Moellmann <gerd@gnu.org>
19537
19538 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
19539 OVERLAPS_P.
19540
19541 2001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19542
19543 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
19544 `gcpro3' and `gcpro4'.
19545
19546 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
19547
19548 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
19549
19550 * ccl.c: Use AREF and ASIZE.
19551
19552 2001-11-27 Stefan Monnier <monnier@cs.yale.edu>
19553
19554 * lisp.h (run_hook_list_with_args): Remove.
19555 (LIST_END_P): Fix call to wrong_type_argument.
19556 (make_fixnum_or_float): Use EMACS_INT rather than int.
19557
19558 2001-11-26 Stefan Monnier <monnier@cs.yale.edu>
19559
19560 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
19561 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
19562
19563 * eval.c: Use AREF and ASIZE.
19564 (Ffetch_bytecode): Add the file name to the error message.
19565
19566 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
19567 which match the end of the file-name.
19568 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
19569 is not a valid env var, but leave it as is instead.
19570
19571 * keymap.c (access_keymap): Handle t bindings like nil bindings.
19572 Make nil bindings in char-tables transparent.
19573 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
19574
19575 2001-11-26 Richard M. Stallman <rms@gnu.org>
19576
19577 * textprop.c (set_text_properties_1): Allow START, END in either order.
19578 Do nothing if range is empty.
19579
19580 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
19581
19582 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
19583 (clean): Not here.
19584
19585 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
19586
19587 * textprop.c (set_text_properties_1): Clearly mark that the
19588 interval should not be empty.
19589
19590 * intervals.c (graft_intervals_into_buffer):
19591 Don't call set_text_properties_1 on an empty interval.
19592
19593 2001-11-25 Richard M. Stallman <rms@gnu.org>
19594
19595 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
19596
19597 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
19598 don't lose the data in it.
19599
19600 2001-11-25 Juanma Barranquero <lektu@terra.es>
19601
19602 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
19603
19604 * buffer.c (Fkill_buffer): Likewise.
19605
19606 * print.c (temp_output_buffer_setup): Likewise.
19607
19608 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
19609
19610 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
19611
19612 2001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
19613
19614 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
19615 Niemitalo <kon@iki.fi>.
19616
19617 2001-11-25 Jason Rumney <jasonr@gnu.org>
19618
19619 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
19620
19621 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
19622 (Fx_show_tip): Block input during frame creation.
19623 (Fx_show_tip, Fx_hide_tip): Enable.
19624
19625 2001-11-24 Richard M. Stallman <rms@gnu.org>
19626
19627 * lread.c (Fload): Detect recursive load error for more than 3
19628 nestings of the same file.
19629 (Vrecursive_load_depth_limit): Variable deleted.
19630 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
19631
19632 2001-11-24 Jason Rumney <jasonr@gnu.org>
19633
19634 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
19635 mouse position if either left or top is not specified.
19636
19637 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
19638 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
19639 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
19640 (my_create_tip_window): Assign tip_window.
19641 (x_create_tip_frame): Use same defaults as X.
19642 (compute_tip_xy): Remove unused variable. Use full screen width.
19643 (Fx_show_tip): Do not double height. Call ShowWindow directly.
19644
19645 * w32term.c (x_after_update_window_line): Doc fix.
19646 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
19647 frames.
19648 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
19649
19650 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
19651 for all Windowed systems.
19652
19653 2001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
19654
19655 * msdos.c (IT_clear_screen): If the frame's faces are not yet
19656 realized, use the initial screen colors to clear the screen.
19657
19658 2001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19659
19660 * textprop.c (Fset_text_properties): Remove unused variables
19661 `unchanged', `prev_changed', `s' and `len'.
19662
19663 * search.c (Freplace_match): Remove unused variable `inslen'.
19664
19665 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
19666
19667 2001-11-22 Jason Rumney <jasonr@gnu.org>
19668
19669 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
19670 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
19671 (my_create_tip_window): New function.
19672 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
19673 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
19674
19675 2001-11-20 Jason Rumney <jasonr@gnu.org>
19676
19677 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
19678 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
19679
19680 * w32fns.c (Vw32_system_coding_system): Remove.
19681 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
19682
19683 2001-11-19 Stefan Monnier <monnier@cs.yale.edu>
19684
19685 * fileio.c (Fwrite_region): Move choose_write_coding_system to
19686 after build_annotations.
19687
19688 * syntax.c (describe_syntax): Add dummy arg.
19689 (describe_syntax_1): Update call to describe_vector.
19690
19691 * category.c (describe_category): Add dummy arg.
19692 (describe_category_1): Update call to describe_vector.
19693
19694 * keymap.c (Fdescribe_vector): Add `describer' parameter.
19695 (describe_command, describe_translation): Add dummy second param.
19696 (describe_map): Call elt_describer with two arguments.
19697 (describe_vector_princ): Add `fun' parameter.
19698 Call it instead of the hardcoded `princ'.
19699 (describe_vector): Add arg `args'.
19700 Pass it as a new second argument to elt_describer.
19701
19702 * keymap.h (describe_vector): Update prototype.
19703
19704 * frame.c: Don't include keymap.h any more.
19705 (keys_of_frame): Remove.
19706
19707 * lisp.h (keys_of_frame): Remove declaration.
19708
19709 * emacs.c (main): Don't call `keys_of_frame' any more.
19710
19711 2001-11-14 Andreas Schwab <schwab@suse.de>
19712
19713 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
19714 if defined, 0 otherwise.
19715 (MAP_FAILED): Define if not defined and use it to test mmap failure.
19716 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
19717
19718 2001-11-19 Richard M. Stallman <rms@gnu.org>
19719
19720 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
19721
19722 2001-11-18 Jason Rumney <jasonr@gnu.org>
19723
19724 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
19725 (x_draw_bar_cursor): If the background color of the glyph under
19726 the cursor equals the frame's cursor color, use the glyph's
19727 foreground color for drawing the bar cursor.
19728 (x_after_update_window_line): Clear internal border in different
19729 circumstances.
19730 (w32_set_vertical_scroll_bar): Check for width and height > 0.
19731 (w32_draw_relief_rect): Correct relief by 1 pixel.
19732 (x_set_glyph_string_background_width):
19733 Set extends_to_end_of_line_p if the row's fill_line_p is set and
19734 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
19735 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
19736 if cursor_in_non_selected_windows is false.
19737 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
19738 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
19739 Notice if cursor gets overwritten.
19740 (notice_overwritten_cursor): Renamed from
19741 note_overwritten_text_cursor. Rewritten to take glyph widths
19742 into account, and to take X positions as parameters.
19743 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
19744 around call to x_draw_glyphs.
19745 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
19746 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
19747 color to use for image glyph reliefs.
19748 (x_draw_image_relief): Accept zero tool_bar_button_relief.
19749 (glyph_rect): Remove unused variable `area'.
19750
19751 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
19752 some items.
19753 (x_set_internal_border_width): Set frame garbaged when window
19754 doesn't exist yet.
19755 (Fx_create_frame): Accept zero tool_bar_button_relief.
19756 (x_clear_image_1, four_corners_best, image_background)
19757 (image_background_transparent): New functions.
19758 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
19759 (gs_format): Add `:background' entry.
19760 (lookup_image): Set IMG's background color if specified.
19761 (pbm_load, xbm_load_image, png_load): Set IMG's background field
19762 when appropriate.
19763 (x_clear_image_1): Reset `background_valid' and
19764 `background_transparent_valid' fields.
19765 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
19766 calculating it here. Set IMG's background_transparent field.
19767 (enum xpm_keyword_index): Add XPM_BACKGROUND.
19768 (enum png_keyword_index): Add PNG_BACKGROUND.
19769 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
19770 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
19771 (enum gif_keyword_index): Add GIF_BACKGROUND.
19772 (enum gs_keyword_index): Add GS_BACKGROUND.
19773 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
19774 Pre-calculate image background color where necessary.
19775 (x_create_x_image_and_pixmap, xbm_load, gs_load):
19776 Use display info's n_cbits entry for screen depth.
19777 (Fx_show_tip): Remove unused variables `buffer', `top',
19778 `left', `max_width' and `max_height'.
19779
19780 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
19781
19782 2001-11-18 Gerd Moellmann <gerd@gnu.org>
19783
19784 * puresize.h (BASE_PURESIZE): Increase to 750000.
19785
19786 2001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19787
19788 * frame.c (Fframe_live_p): Doc fix.
19789
19790 2001-11-18 Richard M. Stallman <rms@gnu.org>
19791
19792 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
19793 (message_dolog_marker3): New static variables hold three markers.
19794 (syms_of_xdisp): Initialize and staticpro them.
19795 (message_dolog): Use message_dolog_marker1..3 instead of
19796 allocating markers each time. Unchain them when done.
19797
19798 2001-11-17 Richard M. Stallman <rms@gnu.org>
19799
19800 * doc.c (Fsnarf_documentation): Doc fix.
19801
19802 2001-11-17 Andreas Schwab <schwab@suse.de>
19803
19804 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
19805
19806 2001-11-17 Richard M. Stallman <rms@gnu.org>
19807
19808 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
19809
19810 2001-11-17 Jason Rumney <jasonr@gnu.org>
19811
19812 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
19813
19814 2001-11-17 Gerd Moellmann <gerd@gnu.org>
19815
19816 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
19817 with invalid position.
19818
19819 2001-11-16 Richard M. Stallman <rms@gnu.org>
19820
19821 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
19822
19823 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
19824 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
19825 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
19826
19827 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
19828
19829 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
19830
19831 * fileio.c (build_annotations): Split off the tail.
19832 (build_annotations_2): New fun. Extracted from build_annotations.
19833 (Fwrite_region): Split the call to build_annotations into two
19834 calls to build_annotations and build_annotations_2.
19835
19836 2001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19837
19838 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
19839 clear_waiting_for_input with argument.
19840
19841 * xterm.h (x_update_cursor): Remove duplicated prototype.
19842
19843 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
19844
19845 * xterm.c (waiting_for_input): Remove unnecessary declaration.
19846
19847 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
19848
19849 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
19850
19851 * fileio.c (choose_write_coding_system): New fun, extracted
19852 from Fwrite_region.
19853 (Fwrite_region): Use it.
19854
19855 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
19856 (funcall_lambda, run_hook_with_args): Make static and add prototype.
19857 (ml_apply, find_handler_clause): Add prototype.
19858
19859 2001-11-16 Eli Zaretskii <eliz@gnu.org>
19860
19861 * config.in: Add #undef HAVE_COFF_H.
19862
19863 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
19864 Required for ISC 4.1.
19865
19866 2001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
19867
19868 * syswait.h (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
19869 Andrew Wiseman <a.wiseman@btclick.com>.
19870
19871 2001-11-16 Kim F. Storm <storm@cua.dk>
19872
19873 The following changes are made to clean up the various internal
19874 references to the fringes to actually use the term `fringe' for
19875 them. Previously, they were called `flags areas', `bitmap areas',
19876 `left/right side of windows', or implicitly as `flags' or
19877 `bitmaps':
19878
19879 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
19880 Comments fixed. Use renamed symbols.
19881
19882 * dispnew.c: Comment fix. Use renamed symbols.
19883
19884 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
19885 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
19886 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
19887
19888 * msdos.c: Comment fix.
19889
19890 * w32fns.c: Use renamed symbols.
19891
19892 * w32term.c: Comment fixes. Use renamed symbols.
19893 (fringe_bitmap_type): Renamed from bitmap_type.
19894 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
19895 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
19896 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
19897
19898 * w32term.h: Comment fixes. Use renamed symbols.
19899 (fringes_extra): Renamed from flags_areas_extra.
19900 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
19901 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
19902 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
19903 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
19904 (FRAME_X_LEFT_FRINGE_WIDTH):
19905 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
19906 (FRAME_X_RIGHT_FRINGE_WIDTH):
19907 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
19908
19909 * widget.c: Use renamed symbols.
19910
19911 * window.c: Comment fixes. Use renamed symbols.
19912 (coordinates-in-window-p): Doc fix.
19913
19914 * xdisp.c: Comment fixes. Use renamed symbols.
19915
19916 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
19917
19918 * xfns.c: Use renamed symbols.
19919
19920 * xterm.c: Comment fixes. Use renamed symbols.
19921 (fringe_bitmap_type): Renamed from bitmap_type.
19922 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
19923 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
19924 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
19925
19926 * xterm.h: Comment fixes. Use renamed symbols.
19927 (fringes_extra): Renamed from flags_areas_extra.
19928 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
19929 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
19930 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
19931 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
19932 (FRAME_X_LEFT_FRINGE_WIDTH):
19933 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
19934 (FRAME_X_RIGHT_FRINGE_WIDTH):
19935 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
19936
19937 2001-11-15 Jason Rumney <jasonr@gnu.org>
19938
19939 * w32menu.c (add-menu-item): Make help_echo and radio buttons
19940 work for most menu items. From David Ponce
19941 <david.ponce@wanadoo.fr>.
19942
19943 2001-11-15 Gerd Moellmann <gerd@gnu.org>
19944
19945 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
19946 Some x_set_* function expect to be called even if old and new
19947 value are equal.
19948
19949 * xdisp.c (build_desired_tool_bar_string): Accept zero
19950 tool_bar_button_relief.
19951
19952 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
19953
19954 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
19955
19956 * xterm.c (x_draw_bar_cursor): If the background color of the
19957 glyph under the cursor equals the frame's cursor color, use
19958 the glyph's foreground color for drawing the bar cursor.
19959
19960 * dispnew.c (direct_output_forward_char): Fix character/byte
19961 position comparison.
19962
19963 2001-11-15 Miles Bader <miles@gnu.org>
19964
19965 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
19966 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
19967 Update arguments to find_field.
19968 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
19969 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
19970 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
19971 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
19972
19973 2001-11-14 Richard M. Stallman <rms@gnu.org>
19974
19975 * editfns.c (Fpropertize): Allow call with 1 arg.
19976
19977 * dispextern.h (image_background, image_background_transparent):
19978 Conditionalize on HAVE_X_WINDOWS.
19979
19980 2001-11-13 Richard M. Stallman <rms@gnu.org>
19981
19982 * print.c (Fprin1_to_string): Doc fix.
19983
19984 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
19985
19986 * floatfns.c (Fceiling, Ffloor): Doc fixes.
19987
19988 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
19989
19990 * fileio.c (Ffile_accessible_directory_p): Doc fix.
19991
19992 * eval.c (syms_of_eval): Doc fix.
19993
19994 * coding.c (syms_of_coding): Doc fix.
19995
19996 * doc.c (Fsnarf_documentation): Doc fix.
19997
19998 * dispnew.c (syms_of_display): Doc fix.
19999
20000 * category.c (Fget_unused_category): Doc fix.
20001
20002 * buffer.c (syms_of_buffer): Doc fixes.
20003
20004 2001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
20005
20006 * print.c (prin1, print): Doc fix.
20007
20008 2001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20009
20010 * fontset.h: Remove declarations of variables
20011 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
20012
20013 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
20014 `Vclip_large_size_font'.
20015
20016 2001-11-13 Jason Rumney <jasonr@gnu.org>
20017
20018 * w32fns.c: Doc fix.
20019
20020 2001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20021
20022 * xfaces.c (Fface_attributes_as_vector): Doc fix.
20023
20024 * fns.c: Doc fix.
20025
20026 * emacs.c: Doc fix.
20027
20028 * coding.c: Doc fix.
20029
20030 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
20031 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
20032 `new style' [w/`doc:' keyword].
20033
20034 2001-11-12 Richard M. Stallman <rms@gnu.org>
20035
20036 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
20037 LeaveNotify events. Only FocusIn and FocusOut do that now.
20038 (x_display_and_set_cursor): Do display hollow cursors in active
20039 minibuffer windows when they are not selected.
20040
20041 2001-11-12 Jason Rumney <jasonr@gnu.org>
20042
20043 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
20044 * w32term.c: Change doc-string comments to `new style'
20045 [w/`doc:' keyword]. Doc fixes.
20046
20047 * w32fns.c: Don't define max.
20048 (Fx_open_connection): Only execute once.
20049
20050 2001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20051
20052 * ccl.c: Change macros to use do-while block instead of if-else.
20053 Use braces to follow GNU Coding Standards.
20054
20055 2001-11-11 Richard M. Stallman <rms@gnu.org>
20056
20057 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
20058
20059 * lread.c (read_escape): Use end_of_file_error for reporting eof.
20060
20061 * insdel.c (replace_range): Use adjust_markers_for_replace
20062 instead of adjust_markers_for_delete and adjust_markers_for_insert.
20063
20064 * intervals.h (set_text_properties, set_text_properties_1): Declare.
20065
20066 * textprop.c (set_text_properties_1): New subroutine
20067 broken out of set_text_properties.
20068 (set_text_properties): Use set_text_properties_1.
20069
20070 * intervals.c (graft_intervals_into_buffer):
20071 Use set_text_properties_1 to clear out properties.
20072
20073 * search.c (Freplace_match): Use replace_range to insert
20074 and delete. Don't request property inheritance from
20075 surrounding text.
20076
20077 2001-11-10 Jason Rumney <jasonr@gnu.org>
20078
20079 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
20080 vertical fonts. Allow them if face name is explicitly specified.
20081 Do not give up if we find a font that cannot be converted to an xlfd.
20082
20083 2001-11-10 Gerd Moellmann <gerd@gnu.org>
20084
20085 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
20086 instead of malloc/free.
20087
20088 2001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20089
20090 * xfaces.c (merge_face_vectors): Use braces to follow GNU
20091 Coding Standards.
20092 (Finternal_set_lisp_face_attribute): Likewise.
20093
20094 * buffer.c (Fbury_buffer): Likewise.
20095
20096 * indent.c (current_column_1): Remove unused variable `prev_col'.
20097
20098 * coding.c (encode_coding): Use precomputed value of `src'.
20099 (encode_coding): Remove unused variable `src_end'.
20100 (code_convert_region): Remove unused variables `count'.
20101
20102 2001-11-07 Jason Rumney <jasonr@gnu.org>
20103
20104 * w32term.c (x_display_and_set_cursor): Do not move system caret
20105 if cursor_glyph is NULL.
20106
20107 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20108
20109 * keymap.c (access_keymap): Fix compilation error.
20110
20111 2001-11-07 Miles Bader <miles@gnu.org>
20112
20113 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
20114
20115 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20116
20117 * intervals.c (graft_intervals_into_buffer):
20118 Remove #ifdef'd-out code.
20119 (graft_intervals_into_buffer): Remove unused variable `middle'.
20120
20121 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
20122 code (eval-current-buffer).
20123 Change doc-string comments to `new style' [w/`doc:' keyword].
20124
20125 2001-11-06 Richard M. Stallman <rms@gnu.org>
20126
20127 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
20128
20129 2001-11-06 Stefan Monnier <monnier@cs.yale.edu>
20130
20131 * lread.c (read1): Fix behavior with nested backquoting.
20132
20133 * keyboard.c (make_lispy_event): Check integerness and fix
20134 Lisp_Object/int mixup.
20135
20136 2001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20137
20138 * fns.c (copy_hash_table): Remove unused variable `v'.
20139
20140 * fontset.c (fontset_font_pattern): Remove unused variable
20141 `family_registry'.
20142
20143 * indent.c (current_column_1): Remove unused variable `prev_col'.
20144
20145 2001-11-05 Richard M. Stallman <rms@gnu.org>
20146
20147 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
20148
20149 * buffer.c (Fkill_buffer): Don't delete auto save file
20150 if buffer is modified.
20151
20152 2001-11-05 Andrew Innes <andrewi@gnu.org>
20153
20154 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
20155 CHECK_NUMBER_CDR.
20156
20157 2001-11-05 Richard M. Stallman <rms@gnu.org>
20158
20159 * unexelf.c (unexec): Minor changes; clean up comments.
20160
20161 2001-11-05 Sam Steingold <sds@gnu.org>
20162
20163 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
20164
20165 2001-11-05 Andreas Schwab <schwab@suse.de>
20166
20167 * sound.c (sound_perror): Save errno from being clobbered.
20168
20169 2001-11-05 Dale Hagglund <rdh@yottayotta.com>
20170
20171 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
20172 the program image directly.
20173
20174 2001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20175
20176 * buffer.h (Fbuffer_local_value): Add prototype.
20177
20178 2001-11-04 Richard M. Stallman <rms@gnu.org>
20179
20180 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
20181 and CHECK_BUFFER.
20182
20183 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
20184 (record_char): Likewise.
20185
20186 * keyboard.c (make_lispy_event): Don't insist a drag event must
20187 move to a different buffer position. Instead, check for moving at
20188 least double_click_fuzz.
20189
20190 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
20191
20192 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
20193
20194 * indent.c (current_column_1, Fmove_to_column): Separate the code
20195 for display-table glyphs from the code for buffer text, to fix
20196 bugs in the former.
20197
20198 2001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
20199
20200 * buffer.c (Fbuffer_local_value): New function.
20201 (syms_of_buffer): Defsubr it.
20202
20203 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
20204 value of `cursor-in-non-selected-windows'.
20205
20206 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
20207 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
20208 (syms_of_xdisp): Initialize it.
20209
20210 2001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20211
20212 * xfns.c (Fx_create_frame): Doc fix.
20213
20214 * coding.c: Change doc-string comments to `new style' [w/`doc:'
20215 keyword].
20216
20217 * eval.c (top_level_value, top_level_set): Remove commented and
20218 #ifdef'd-out code.
20219 (Fdefvar): Fix usage in doc-string.
20220
20221 2001-11-03 Richard M. Stallman <rms@gnu.org>
20222
20223 * xfns.c: Include unistd.h, if it exists.
20224
20225 * editfns.c: Move the include of ctype.h after unistd.h.
20226
20227 * gmalloc.c: Test BROKEN_PROTOTYPES.
20228
20229 2001-11-03 Ken Raeburn <raeburn@gnu.org>
20230
20231 * lisp.h (CHECK_STRING_CAR): New macro.
20232 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
20233 treating XCAR and XCDR as lvalues.
20234 (openp): Use CHECK_STRING_CAR.
20235 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
20236
20237 2001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
20238
20239 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
20240 (SIGMASKTYPE): Define.
20241
20242 * syssignal.h (sigunblock): Don't define if already defined.
20243
20244 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20245
20246 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
20247 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
20248 Fix typos in comments.
20249
20250 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
20251 and #ifdef'd-out code.
20252 Fix and reindent comments.
20253
20254 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
20255
20256 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
20257 argument `i' in macros.
20258
20259 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
20260 `i' in macros.
20261
20262 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
20263 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
20264 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
20265 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
20266 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
20267 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
20268 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
20269 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
20270 in macros.
20271
20272 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
20273 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
20274 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
20275 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
20276 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
20277 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
20278 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
20279 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
20280 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
20281 (remove unused second argument).
20282
20283 2001-11-02 Stefan Monnier <monnier@cs.yale.edu>
20284
20285 * syntax.c (describe_syntax): New wrapper.
20286 (Finternal_describe_syntax_value): Rename from describe_syntax.
20287 Don't insert space at front and \n at the end.
20288 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
20289
20290 * regex.c (re_wctype): Try to fix some warnings.
20291 (regcomp, regexec): Don't forget the __restrict.
20292
20293 2001-11-02 Richard M. Stallman <rms@gnu.org>
20294
20295 * textprop.c (Fget_char_property): Doc fix.
20296
20297 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20298
20299 * process.c (Fstart_process): Add usage to doc-string.
20300
20301 * data.c (Fsetq_default): Ditto.
20302
20303 * callint.c (Finteractive): Ditto.
20304
20305 2001-11-01 Stefan Monnier <monnier@cs.yale.edu>
20306
20307 * macros.c: Don't include keymap.h any more.
20308
20309 2001-11-01 Richard M. Stallman <rms@gnu.org>
20310
20311 * data.c (Fmake_local_variable): Doc fix.
20312
20313 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
20314 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
20315
20316 * keymap.c (Fdescribe_buffer_bindings): Print character property
20317 bindings along with or instead of the buffer local map.
20318 Make the overriding maps override what they should.
20319
20320 2001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20321
20322 * window.c (grow_mini_window): Fix typo in comment.
20323
20324 2001-11-01 Gerd Moellmann <gerd@gnu.org>
20325
20326 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
20327 (XTset_vertical_scroll_bar): Likewise.
20328
20329 * xfns.c (x_build_heuristic_mask): Use four_corners_best
20330 instead of IMAGE_BACKGROUND.
20331
20332 * xfns.c (four_corners_best): Reindent.
20333
20334 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
20335 Handle :box so that it is possible to specify sexprs.
20336
20337 2001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
20338
20339 * s/hpux11.h: New file.
20340
20341 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20342
20343 * emacs.c (USAGE1): Show command line option --no-window-system
20344 instead of --no-windows in usage.
20345 (standard_args): Rename --no-windows to --no-window-system.
20346 (bug_reporting_address): Follow Emacs coding conventions.
20347
20348 * eval.c (Fcommandp): Doc fix.
20349 Change doc-string comments to `new style' [w/`doc:' keyword].
20350
20351 * frame.c (Fframe_live_p): Doc fix.
20352
20353 * buffer.c (selective-display-ellipses): Doc fix.
20354
20355 2001-10-31 Gerd Moellmann <gerd@gnu.org>
20356
20357 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
20358
20359 * xfaces.c (realize_x_face): If C is not a single-byte character,
20360 set the face's colors_copied_bitwise_p instead of the defaulted_p
20361 members which have a different meaning.
20362 (free_face_colors): Do nothing for a face whose colors have been
20363 copied bitwise.
20364
20365 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
20366
20367 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20368
20369 * marker.c, mocklisp.c: Change doc-string comments to `new style'
20370 [w/`doc:' keyword].
20371
20372 2001-10-31 Gerd Moellmann <gerd@gnu.org>
20373
20374 * fns.c (require_unwind): Return Lisp_Object.
20375
20376 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20377
20378 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
20379 (last-input-char): Revert doc-string to be the same as the
20380 doc-string of `last-input-event'.
20381
20382 * xdisp.c: Fix typos in comments.
20383
20384 2001-10-31 Gerd Moellmann <gerd@gnu.org>
20385
20386 * window.c (grow_mini_window): Handle case that the root
20387 window is already smaller than the nominal mininum height.
20388
20389 2001-10-30 Stefan Monnier <monnier@cs.yale.edu>
20390
20391 * emacs.c (main): Don't call keys_of_macros any more.
20392
20393 * lisp.h (keys_of_macros): Remove.
20394
20395 * macros.c (keys_of_macros): Remove.
20396
20397 * xfaces.c (Fface_attribute_relative_p): Declare args.
20398
20399 2001-10-30 Jason Rumney <jasonr@gnu.org>
20400
20401 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
20402 (enum_font_cb2): Ignore fonts with vertical orientation.
20403
20404 2001-10-30 Richard M. Stallman <rms@gnu.org>
20405
20406 * keyboard.c (Finput_pending_p): Doc fix.
20407
20408 2001-10-30 Gerd Moellmann <gerd@gnu.org>
20409
20410 * xterm.c (x_after_update_window_line): Don't run the code
20411 clearing in borders for rows whose visible height is 0.
20412
20413 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
20414 resized_p flag is set. If not set, use the much less flickering
20415 method previously used.
20416
20417 * dispnew.c (change_frame_size_1): Set frame's resized_p.
20418
20419 * frame.h (struct frame) <resized_p>: New member.
20420
20421 * lread.c (to_multibyte): Ensure read_buffer is at least twice
20422 as large as the number of bytes to convert.
20423
20424 * lread.c (to_multibyte): New function.
20425 (read1): Use it.
20426
20427 2001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
20428
20429 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
20430
20431 2001-10-30 Gerd Moellmann <gerd@gnu.org>
20432
20433 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
20434 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
20435 if the row's fill_line_p is set and drawing the last glyph with
20436 DRAW_IMAGE_{RAISED,SUNKEN}.
20437
20438 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
20439
20440 2001-10-29 Stefan Monnier <monnier@cs.yale.edu>
20441
20442 * xmenu.c: Include coding.h and charset.h.
20443 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
20444 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
20445 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
20446 Explicitly set wv->help. Use `TRUE' rather than `True'.
20447 (menu_help_callback): Use empty_string.
20448
20449 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
20450 (Fx_popup_dialog): Explicitly init f.
20451 (w32_menu_display_help): Use empty_string.
20452
20453 2001-10-29 Richard M. Stallman <rms@gnu.org>
20454
20455 * fns.c (Frequire): Detect recursive try to require the same
20456 feature 3 or more levels deep, and get error.
20457 (require_unwind): New subroutine.
20458 (require_nesting_list): New variable.
20459 (syms_of_fns): Init and staticpro it.
20460
20461 * print.c (print_object): Clarify indication of insertion type.
20462
20463 2001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
20464
20465 * coding.c (syms_of_coding): Document that locale-coding-system is
20466 used for decoding input on X.
20467
20468 * window.c (Fscroll_left, Fscroll_right): Doc fix.
20469
20470 2001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20471
20472 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
20473 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
20474
20475 2001-10-29 Gerd Moellmann <gerd@gnu.org>
20476
20477 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
20478 use NO_CURSOR if cursor_in_non_selected_windows is false.
20479
20480 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
20481 the slant attribute if FRAME is t.
20482
20483 * xfns.c (x_set_internal_border_width): Set frame garbaged
20484 when X window doesn't exist yet.
20485
20486 * xterm.c (x_after_update_window_line): Clear internal border
20487 in different circumstances.
20488
20489 * xterm.c (XTread_socket) <KeyPress>: Don't use
20490 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
20491 <handa@etl.go.jp>.
20492
20493 2001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
20494
20495 * m/ibms390.h: New file. From Adam Thornton
20496 <athornton@sinenomine.net>.
20497
20498 2001-10-28 Gerd Moellmann <gerd@gnu.org>
20499
20500 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
20501
20502 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
20503 a loop counter.
20504
20505 2001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20506
20507 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
20508
20509 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
20510 keyword].
20511 Fix typos in comments.
20512
20513 * emacs.c (bug_reporting_address): New function.
20514 Use it when displaying usage message.
20515
20516 * minibuf.c (read_minibuf): Remove unused external declaration of
20517 variable `Qread_only'.
20518
20519 * keymap.c (access_keymap): Remove unused variable `charset'.
20520
20521 2001-10-28 Miles Bader <miles@gnu.org>
20522
20523 * xfaces.c (merge_face_heights): Handle TO being relative as well.
20524 Remove #ifdef'd-out code.
20525 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
20526 (syms_of_xfaces): Initialize them.
20527
20528 2001-10-27 Jason Rumney <jasonr@gnu.org>
20529
20530 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
20531 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
20532 position using the system caret.
20533
20534 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
20535 (w32_system_caret_height, w32_system_caret_x)
20536 (w32_system_caret_y): New variables for tracking system caret.
20537 (w32_initialize): Initialize them.
20538 (x_display_and_set_cursor): Make system caret follow the active cursor.
20539
20540 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
20541 New messages types.
20542
20543 * w32term.c (note_mouse_highlight): Clear old help_echo.
20544
20545 2001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20546
20547 * xterm.c: Fix typo in a comment.
20548
20549 * emacs.c: Fix typos in comments.
20550 Remove unnecessary spaces.
20551 Change doc-string comments to `new style' [w/`doc:' keyword].
20552 (USAGE2): Fix typos in usage string.
20553
20554 * xterm.c: Fix typo in a comment.
20555
20556 * lisp.h (gdb_lisp_params): Remove code in #if 0 which is now in
20557 emacs.c.
20558
20559 2001-10-27 Gerd Moellmann <gerd@gnu.org>
20560
20561 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
20562 instead of 1/2 line_height in the heuristic for skipping
20563 farther backward when target_y was not reached.
20564
20565 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
20566 Display errno only if non-zero.
20567 (sound_warning): New function.
20568 (vox_configure): Don't treat failing to set sample rate as error.
20569 (various places): Improve error messages.
20570
20571 2001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
20572
20573 * fileio.c (Faccess_file): Run the argument filename through
20574 Fexpand_file_name, before using it.
20575
20576 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
20577 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
20578
20579 2001-10-26 Gerd Moellmann <gerd@gnu.org>
20580
20581 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
20582
20583 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
20584 Fix clearing in the case of scroll bars on the right.
20585
20586 2001-10-26 Juanma Barranquero <lektu@terra.es>
20587
20588 * w32gui.h (XImage): Add a dummy typedef.
20589
20590 2001-10-26 Gerd Moellmann <gerd@gnu.org>
20591
20592 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
20593
20594 2001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
20595
20596 * frame.c (Fframe_parameter): Fix last change.
20597
20598 * fileio.c: Revert last change (which removed old commented-out
20599 version of expand-file-name). Add a comment that explains why
20600 this old version should not be removed.
20601
20602 2001-10-25 Gerd Moellmann <gerd@gnu.org>
20603
20604 * frame.c (Fframe_parameter): Fix a bug whereby some
20605 ``artificial'' frame parameters, like `minibuffer' were not
20606 obtained by calling Fframe_parameters.
20607
20608 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
20609 cursor differently.
20610
20611 * xdisp.c (move_it_vertically_backward): Compute line height
20612 differently. Add heuristic to try to be more compatible to 20.x.
20613
20614 2001-10-25 Stefan Monnier <monnier@cs.yale.edu>
20615
20616 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
20617
20618 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
20619 boolean.
20620
20621 2001-10-25 Miles Bader <miles@gnu.org>
20622
20623 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
20624 BG is a pointer to a structure, not a structure.
20625 (gif_format, png_format): Add missing commas.
20626
20627 2001-10-24 Richard M. Stallman <rms@gnu.org>
20628
20629 * xfaces.c (Fface_attributes_as_vector): New function.
20630 (syms_of_xfaces): Defsubr it.
20631
20632 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20633
20634 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
20635 variable `area'.
20636
20637 2001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20638
20639 * search.c (scan_newline): Remove unused variable `selective_display'.
20640
20641 2001-10-25 Miles Bader <miles@gnu.org>
20642
20643 * dispextern.h (struct image): Add `background',
20644 `background_valid', and `background_transparent' fields.
20645 (image_background, image_background_transparent): New declarations.
20646 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
20647 * xfns.c (image_background, image_background_transparent)
20648 (four_corners_best): New functions.
20649 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
20650 (gs_format): Add `:background' entry.
20651 (lookup_image): Set IMG's background color if specified.
20652 (pbm_load, xbm_load_image, png_load): Set IMG's background field
20653 when appropriate.
20654 (x_clear_image_1): Reset `background_valid' and
20655 `background_transparent_valid' fields.
20656 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
20657 calculating it here. Set IMG's background_transparent field.
20658 (enum xpm_keyword_index): Add XPM_BACKGROUND.
20659 (enum png_keyword_index): Add PNG_BACKGROUND.
20660 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
20661 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
20662 (enum gif_keyword_index): Add GIF_BACKGROUND.
20663 (enum gs_keyword_index): Add GS_BACKGROUND.
20664 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
20665 Pre-calculate image background color where necessary.
20666 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
20667 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
20668 color to use for image glyph reliefs.
20669
20670 2001-10-24 Gerd Moellmann <gerd@gnu.org>
20671
20672 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
20673 in full-width rows.
20674
20675 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
20676 Fix clearing of area not covered by scroll bar.
20677
20678 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20679
20680 * xterm.c (x_insert_glyphs): Remove unused variables `real_end'
20681 and `real_start'.
20682 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
20683 (glyph_rect): Remove unused variable `area'.
20684
20685 2001-10-24 Gerd Moellmann <gerd@gnu.org>
20686
20687 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
20688
20689 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
20690 (row_containing_pos): Take additional argument DY.
20691 Treat rows ending in middle of char differently.
20692 (display_line): Handle tabs on window systems differently.
20693
20694 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
20695 with additional argument.
20696
20697 * dispextern.h (row_containing_pos): Adjust prototype.
20698
20699 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
20700 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
20701 (try_window_id, try_window_reusing_current_matrix)
20702 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
20703 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
20704
20705 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20706
20707 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
20708 gnuemacs).
20709 (HAVE_BOXES): Fix typo in comment.
20710 (push_menu_pane): Fix typo in comment.
20711
20712 * xdisp.c (display_prop_string_p): Remove unused local declaration
20713 of `Qwhen'.
20714 (single_display_prop_string_p): Remove unused local declarations
20715 of `Qwhen' and `Qmargin'.
20716 (string_buffer_position): Remove unused variable `around'.
20717 (store_frame_title): Remove unused variable `width'.
20718
20719 * window.c: Don't define max.
20720 (coordinates_in_window): Remove unused variable `uy'.
20721
20722 * widget.c: Don't define max.
20723
20724 * process.c: Don't define max.
20725 (create_process): Remove unused variable `buffer'.
20726
20727 2001-10-23 Gerd Moellmann <gerd@gnu.org>
20728
20729 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
20730
20731 2001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
20732
20733 * xfaces.c (Finternal_set_lisp_face_attribute)
20734 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
20735 frame is on a windowed display.
20736
20737 2001-10-23 Gerd Moellmann <gerd@gnu.org>
20738
20739 * dispnew.c (sync_window_with_frame_matrix_rows):
20740 Fix handling of windows which aren't full-width, fix handling
20741 of marginal areas.
20742
20743 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
20744
20745 2001-10-23 Andreas Schwab <schwab@suse.de>
20746
20747 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
20748 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
20749
20750 2001-10-23 Gerd Moellmann <gerd@gnu.org>
20751
20752 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
20753 REAL_END. Notice if cursor gets overwritten.
20754 (notice_overwritten_cursor): Take X positions as parameters.
20755 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
20756 around call to x_draw_glyphs.
20757
20758 2001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20759
20760 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
20761 instead of C) and usage.
20762
20763 * editfns.c (char-to-string): Fix argument names (use CHAR instead
20764 of C) and usage.
20765
20766 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
20767 `left', `max_width' and `max_height'.
20768
20769 2001-10-23 Gerd Moellmann <gerd@gnu.org>
20770
20771 * xdisp.c (display_line): For a tab continued to the next line,
20772 set row's ends_in_middle_of_char_p.
20773
20774 2001-10-22 Gerd Moellmann <gerd@gnu.org>
20775
20776 * xdisp.c (display_line): Fix computation of continuation lines
20777 width for TABs.
20778
20779 2001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20780
20781 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
20782 `Qlaplace'.
20783
20784 * fileio.c: Remove unused code.
20785
20786 2001-10-22 Miles Bader <miles@gnu.org>
20787
20788 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
20789 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
20790 Remove `DOC_STRINGS_IN_COMMENTS' cases.
20791
20792 2001-10-21 Jason Rumney <jasonr@gnu.org>
20793
20794 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
20795
20796 2001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
20797
20798 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
20799 (Finsert_string): Avoid the multi-line string literals warning.
20800
20801 2001-10-22 Miles Bader <miles@gnu.org>
20802
20803 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
20804 (Fdocumentation): Don't use it.
20805 (syms_of_doc): Don't initialize it.
20806
20807 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
20808 * print.c (Fwith_output_to_temp_buffer): Likewise.
20809 * window.c (Fsave_window_excursion): Likewise.
20810 * editfns.c (Fsave_excursion, Fsave_current_buffer)
20811 (Fsave_restriction): Likewise.
20812 * eval.c (Frun_hooks, Frun_hook_with_args)
20813 (Frun_hook_with_args_until_failure)
20814 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
20815 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
20816 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
20817 (Funwind_protect, Fcondition_case): Likewise.
20818 * coding.c (Ffind_operation_coding_system): Likewise.
20819 * keyboard.c (Ftrack_mouse): Likewise.
20820
20821 2001-10-21 Miles Bader <miles@gnu.org>
20822
20823 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
20824 (Fmake_hash_table): Add usage: string to doc string.
20825 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
20826 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
20827 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
20828 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
20829 (Fml_prefix_argument_loop): Likewise.
20830
20831 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20832
20833 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
20834
20835 * sysdep.c (init_sys_modes): Change doc-string comments to `new
20836 style' [w/`doc:' keyword].
20837
20838 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
20839 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
20840 comments to `new style' [w/`doc:' keyword].
20841
20842 2001-10-21 Jason Rumney <jasonr@gnu.org>
20843
20844 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
20845
20846 * w32term.c (remember_mouse_glyph): New function.
20847 (w32_mouse_position): Use it.
20848 (note_mouse_movement): If the mouse moved off the glyph, remember
20849 its new position.
20850
20851 * w32term.h (struct w32_output): Correct spelling of x_compatible.
20852 (w32_display_info): Add mouse_face_overlay.
20853
20854 * w32term.c (notice_overwritten_cursor): Renamed from
20855 note_overwritten_text_cursor. Rewritten to take glyph widths into
20856 account.
20857 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
20858 (fast_find_string_pos): New function.
20859 (fast_find_position): Return the correct vpos. Add parameter
20860 STOP. In the final row, stop before glyphs having STOP as object.
20861 Don't consider glyphs that are not from a buffer.
20862 (fast_find_position) [0]: Add a presumably more correct version
20863 for after 21.1.
20864 (expose_window_tree, expose_frame): Don't compute intersections here.
20865 (expose_window): Do it here instead.
20866 (expose_window_tree, expose_window, expose_line): Return 1 when
20867 overwriting mouse-face.
20868 (expose_window): If W is the window currently being updated, mark
20869 the frame garbaged.
20870 (expose_frame): If mouse-face was overwritten, redo it.
20871 (x_use_underline_position_properties): New variable.
20872 (syms_of_xterm): DEFVAR_BOOL it.
20873 (x_draw_glyph_string): Add comment to use it in future.
20874 (x_draw_glyph_string): Restore clipping after drawing box.
20875 Fix a computation of the underline position.
20876 (w32_get_glyph_string_clip_rect): Minor cleanup.
20877 (x_fill_stretch_glyph_string): Remove an assertion.
20878 (x_produce_glyphs): Don't convert multibyte characters
20879 to unibyte characters in unibyte buffers.
20880 (cursor_in_mouse_face_p): New function.
20881 (x_draw_stretch_glyph_string): Use it to choose a different GC
20882 when drawing a cursor within highlighted text. Don't draw
20883 background again if it has already been drawn.
20884 (x_draw_glyph_string_box): Don't draw a full-width
20885 box just because the glyph row's full_width_p flag is set.
20886 (x_draw_glyphs): Fix computation of rightmost x for
20887 full-width rows.
20888 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
20889 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
20890 change bottom shadow accordingly. Some cleanup.
20891 (x_update_window_end): Handle overwritten mouse face
20892 also for tool bar windows.
20893 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
20894 DRAW is DRAW_IMAGE_RAISED.
20895 (clear_mouse_face): Return 1 if text with mouse face was
20896 actually redrawn. Make the function static.
20897 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
20898 optimize away highlighting if we pass over that same overlay again.
20899 (note_mouse_highlight): Call mouse_face_overlay_overlaps
20900 to detect a case where we have to highlight a different region
20901 despite not having left the currently highlighted region.
20902 Set mouse_face_overlay in the x_display_info. Avoid changing the
20903 mouse pointer shape when show_mouse_face has already done it, or
20904 there is no need. Handle mouse-face and help-echo in strings.
20905 (glyph_rect): New function.
20906 (w32_mouse_position): Use it to raise the threshold for mouse
20907 movement event generation.
20908 (w32_initialize_display_info): Initialize the x_display_info's
20909 mouse_face_overlay.
20910 (w32_set_vertical_scroll_bar): Don't clear a zero height
20911 or width area.
20912 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
20913 a widget to zero height.
20914
20915 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
20916 Protect unibyte strings created by replacing their multibyte
20917 equivalents in menu_items.
20918 (w32_menu_show): Don't overwrite an item's name with its key
20919 description in case the description is a multibyte string.
20920 (single_submenu): Some cleanup.
20921
20922 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
20923 (postprocess_image): New function.
20924 (lookup_image): Call it for all image types except PostScript.
20925 (x_kill_gs_process): Call postprocess_image.
20926 (tiff_error_handler, tiff_warning_handler): New functions.
20927 (tiff_load): Install them as handlers.
20928 (x_kill_gs_process): Recognize if someone has cleared the image
20929 cache under us.
20930 (valid_image_p): Protect better against invalid image
20931 specifications. Previous code could signal an error.
20932 (Fx_hide_tip, Fshow_tip): Doc fix.
20933 (Fv_max_tooltip_size): New variable.
20934 (syns_of_xfns): DEFVAR_LISP it.
20935 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
20936 window buffer to *tip* right after creating the frame. Set frame's
20937 window_width. Use a maximum tooltip size specified by
20938 Vx_max_tooltip_size, if that has valid contents.
20939 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
20940 Make sure the tooltip is completely visible.
20941 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
20942 (Fx_create_frame): Adjust the frame's height for presence
20943 of the tool bar before calling x_figure_window_size.
20944 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
20945 when the window gets smaller.
20946 (x_set_foreground_color): Set frame's cursor_pixel.
20947 (x_set_foreground_color, x_set_background_color): Cleaned up.
20948 (x_set_font): Handle case of x_new_fontset returning the same name
20949 as before, although there was a change in fontsets.
20950
20951 2001-10-21 Miles Bader <miles@gnu.org>
20952
20953 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
20954 (Flogxor): Add usage: string to doc string.
20955 * charset.c (Fstring): Likewise.
20956 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
20957 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
20958
20959 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20960
20961 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
20962
20963 * alloc.c: Reindent DEFUNs with doc: keywords.
20964
20965 * abbrev.c (Finsert_abbrev_table_description): Reindent.
20966
20967 * frame.c: Change doc-string comments to `new style' [w/`doc:'
20968 keyword].
20969
20970 See ChangeLog.9 for earlier changes.
20971
20972 ;; Local Variables:
20973 ;; coding: iso-2022-7bit
20974 ;; End:
20975
20976 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
20977 Copying and distribution of this file, with or without modification,
20978 are permitted provided the copyright notice and this notice are preserved.
20979
20980 ;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4