Add autoloads of crypt++ and mailcrypt routines, all for encryption
[bpt/emacs.git] / src / ChangeLog
... / ...
CommitLineData
12005-10-20 Olli Savia <ops@iki.fi> (tiny change)
2
3 * syssignal.h [__Lynx__]: Undef SIGPOLL along with SIGIO.
4
52005-10-20 Andreas Schwab <schwab@suse.de>
6
7 * minibuf.c (Fdisplay_completion_list): Doc fix.
8
92005-10-19 Kim F. Storm <storm@cua.dk>
10
11 * image.c (check_image_size): Handle integer Vmax_image_size value
12 directly as max pixel value. Use default frame size for null frame.
13 (syms_of_image) <max-image-size>: Describe integer value.
14
152005-10-19 Romain Francoise <romain@orebokech.com>
16
17 * emacs.c (main): Update copyright year.
18
192005-10-18 Chong Yidong <cyd@stupidchicken.com>
20
21 * image.c (Vmax_image_size): New variable.
22 (check_image_size): New function.
23 (xbm_read_bitmap_data, pbm_load, png_load, jpeg_load, tiff_load)
24 (gif_load, gs_load): Use it.
25 (lookup_image): Try loading again if previous load failed.
26 (xbm_read_bitmap_data): Add a new argument, a pointer to the frame
27 to display in, NULL if none.
28 (xbm_load_image, xbm_file_p): Pass xbm_read_bitmap_data the new
29 argument.
30
312005-10-18 Richard M. Stallman <rms@gnu.org>
32
33 * search.c (Fstring_match): Doc fix.
34
352005-10-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
36
37 * macterm.c (note_mouse_movement): Use PtInRect.
38 (XTread_socket): Also ignore mouse motion just before a button
39 release event. Don't process button release event when mouse is
40 not grabbed.
41
422005-10-16 Masatake YAMATO <jet@gyve.org>
43
44 * minibuf.c (Fdisplay_completion_list): Add new optional
45 argument COMMON_SUBSTRING. Bind `completion-common-substring'
46 to the optional argument during running `completion-setup-hook'.
47
482005-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
49
50 * mac.c [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp):
51 Allow nil as argument.
52 [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Regard nil
53 for encoding arguments as UTF-16 in native byte order, no BOM.
54
55 * macfns.c (Fx_create_frame): Add debugging code.
56 (Fx_show_tip): Set frame pixel width and height.
57
58 * macterm.c (MAC_WINDOW_NORMAL_GC): Remove macro.
59 (FRAME_NORMAL_GC): New macro.
60 (mac_draw_line, mac_clear_area, mac_clear_window)
61 (mac_fill_rectangle, mac_draw_string, mac_draw_string_16)
62 (mac_draw_image_string, mac_draw_image_string_16): Rename from
63 XDrawLine, XClearArea, XClearWindow, XFillRectangle, XDrawString,
64 XDrawString16, XDrawImageString, and XDrawImageString16, respectively.
65 All uses changed.
66 (mac_draw_line, mac_erase_rectangle, mac_clear_area)
67 (mac_clear_window, mac_draw_bitmap, mac_draw_rectangle)
68 (mac_invert_rectangle, mac_draw_string_common, mac_draw_string)
69 (mac_draw_string_16, mac_draw_image_string)
70 (mac_draw_image_string_16, mac_copy_area, mac_copy_area_with_mask)
71 (mac_scroll_area): Drawing functions now take frame as destination.
72 All uses changed.
73 (mac_draw_string_common): Get port height with FRAME_PIXEL_HEIGHT.
74 (x_draw_fringe_bitmap): Set clipping area in face->gc.
75
76 * macterm.h (mac_clear_area): Add extern.
77
782005-10-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
79
80 * macterm.c (note_mouse_movement, XTread_socket): Apply 2005-10-14
81 changes for xterm.c.
82
83 * w32term.c (note_mouse_movement, w32_read_socket): Likewise.
84
852005-10-14 Kenichi Handa <handa@m17n.org>
86
87 * search.c (search_buffer): Give up BM search on case-fold-search
88 if one of a target character has a case-equivalence of different
89 charset even if that target charcter is an ASCII.
90
91 * casefiddle.c (casify_object): Fix for the case that case
92 conversion change the byte length.
93
942005-10-14 Kim F. Storm <storm@cua.dk>
95
96 * xterm.c (note_mouse_movement): Return 1 if mouse moved; 0 otherwise.
97 (handle_one_xevent): Only clear help_echo_string; restore it if
98 note_mouse_movement didn't record any mouse movement.
99
100 * xdisp.c (pos_visible_p): Convert w->hscroll to pixels before use.
101 (remember_mouse_glyph): Clear RECT if mouse is over an image glyph.
102
103 * keyboard.c (make_lispy_position): Adjust wx for left margin if ON_TEXT.
104 (Fposn_at_x_y): Fix calculation of x coordinate.
105 (Fposn_at_point): Return nil if point is hscrolled out of view.
106
1072005-10-13 Andreas Schwab <schwab@suse.de>
108
109 * sysdep.c (request_sigio, unrequest_sigio): Do nothing in
110 non-interactive mode.
111
1122005-10-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
113
114 * xterm.c, w32term.c, macterm.c (note_mouse_movement): Undo last change.
115
1162005-10-12 Kim F. Storm <storm@cua.dk>
117
118 * xterm.c (handle_one_xevent): Clear last_mouse_glyph on mouse up/down.
119
1202005-10-12 Romain Francoise <romain@orebokech.com>
121
122 * buffer.c (init_buffer): Rename `rc' to `len' for clarity.
123
1242005-10-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
125
126 * xdisp.c (remember_mouse_glyph): Use MATRIX_BOTTOM_TEXT_ROW to
127 get end of text rows. Obtain header-line/mode-line rows directly.
128
129 * xterm.c, w32term.c, macterm.c (note_mouse_movement): Restore
130 help_echo_string if mouse is moved inside last_mouse_glyph.
131
1322005-10-12 Kim F. Storm <storm@cua.dk>
133
134 * xdisp.c (remember_mouse_glyph): New generic version based on
135 glyph_rect and remember_mouse_glyph from xterm.c enhanced to
136 properly handle all different window areas.
137
138 * dispextern.h (remember_mouse_glyph): Add prototype.
139
140 * xterm.c (glyph_rect, remember_mouse_glyph): Remove X versions.
141 (note_mouse_movement, XTmouse_position): Use generic
142 remember_mouse_glyph, add last_mouse_glyph arg.
143
144 * w32term.c (note_mouse_movement): Fix last_mouse_glyph check.
145 (glyph_rect, remember_mouse_glyph): Remove w32 specific versions.
146 (note_mouse_movement, w32_mouse_position): Use generic
147 remember_mouse_glyph, add last_mouse_glyph arg.
148
149 * macterm.c (note_mouse_movement): Add call to remember_mouse_glyph.
150 (glyph_rect, remember_mouse_glyph): Remove mac specific versions.
151 (XTmouse_position): Adapt to use generic remember_mouse_glyph
152 instead of pixel_to_glyph_coords.
153
154 * window.c (coordinates_in_window): Fix x position for ON_RIGHT_MARGIN.
155 Fix x position for ON_TEXT when left margin width > 0.
156
1572005-10-11 Kim F. Storm <storm@cua.dk>
158
159 * window.c (coordinates_in_window): Fix y position for ON_SCROLL_BAR.
160
161 * keyboard.c (make_lispy_position): Fix buffer calculations for
162 mouse click or movement in right fringe and the margins.
163
1642005-10-11 Juanma Barranquero <lekktu@gmail.com>
165
166 * image.c (fn_jpeg_stdio_src): Don't define it.
167 (init_jpeg_functions): Don't initialize `fn_jpeg_stdio_src'.
168 (our_common_init_source): Rename from `our_init_source'.
169 (our_common_term_source): Rename from `our_term_source'.
170 (our_memory_fill_input_buffer): Rename from
171 `our_fill_input_buffer'.
172 (our_memory_skip_input_data): Rename from `our_skip_input_data'.
173 (jpeg_memory_src): Use the new names.
174 (struct jpeg_stdio_mgr): New struct.
175 (JPEG_STDIO_BUFFER_SIZE): New constant.
176 (our_stdio_fill_input_buffer, our_stdio_skip_input_data)
177 (jpeg_file_src): New functions.
178 (jpeg_load): Use `jpeg_file_src' instead of `fn_jpeg_stdio_src'.
179
1802005-10-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
181
182 * macterm.c (PER_CHAR_METRIC): Remove unused macro.
183 (fm_font_family_alist): New variable.
184 (syms_of_macterm): Initialize and staticpro it.
185 (decode_mac_font_name): Replace '-' in family name with '_' if it
186 occurs just once. Lower family name.
187 (parse_x_font_name): Rename from x_font_name_to_mac_font_name.
188 All uses changed. Remove argument MF and code conversion for it.
189 Add argument SIZE. Rename argument MF_DECODED to FAMILY, and CS
190 to CHARSET. Parse font size. Lower family name. Return integer
191 value for status of parsing.
192 (init_font_name_table) [USE_ATSUI]: Use decode_mac_font_name.
193 Don't use Fdowncase because family name is already lowered by
194 decode_mac_font_name.
195 (init_font_name_table): Always call decode_mac_font_name. Add
196 pair of family name and its reference to fm_font_family_alist.
197 (mac_clear_font_name_table): Clear fm_font_family_alist.
198 (XLoadQueryFont): Move font size parsing part to parse_x_font_name.
199 Lookup fm_font_family_alist to get font family reference.
200 (XLoadQueryFont) [USE_ATSUI]: Don't use Fdowncase because family
201 name is already lowered by parse_x_font_name.
202
2032005-10-11 Kim F. Storm <storm@cua.dk>
204
205 * xterm.c (glyph_rect): Return 0 if position is outside text area.
206
207 * keyboard.c (make_lispy_position): Fix buffer position calculation for
208 mouse click or movement in fringe.
209
2102005-10-10 Jason Rumney <jasonr@gnu.org>
211
212 * xterm.c (remember_mouse_glyph): New function.
213 (note_mouse_movement): Use it to remember the current glyph if changed.
214 (XTmouse_position): Fix calculation of fake glyph under mouse.
215 Move code to calculate glyph under mouse into remember_mouse_glyph.
216
2172005-10-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
218
219 * emacs.c (USAGE3, standard_args): -nb => -nbi.
220
2212005-10-10 Juanma Barranquero <lekktu@gmail.com>
222
223 * frame.c (Fredirect_frame_focus): Fix typos in docstring.
224 (next_frame, prev_frame, set_term_frame_name): Make static.
225
226 * window.c (Fwindow_tree): Fix spelling.
227
2282005-10-09 Romain Francoise <romain@orebokech.com>
229
230 * window.c (Fwindow_end): Don't try to redisplay if non-interactive.
231
2322005-10-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
233
234 * emacs.c (standard_args): Remove options -i, -itype, --icon-type.
235 Add options -nb, --no-bitmap-icon.
236
237 * xfns.c (Fx_create_frame): Make bitmapIcon have default on.
238
2392005-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
240
241 * macgui.h (MAX_CLIP_RECTS): New define.
242 (struct _XGC): New member clip_region.
243 (struct _XGC) [MAC_OSX && USE_ATSUI]: New members n_clip_rects and
244 clip_rects.
245
246 * macterm.c (GC_CLIP_REGION): New macro.
247 (saved_port_clip_region): New variable.
248 (mac_begin_clip, mac_end_clip): New functions.
249 (XDrawLine, mac_erase_rectangle, mac_draw_bitmap, XFillRectangle)
250 (mac_draw_rectangle, mac_draw_string_common, mac_copy_area)
251 (mac_copy_area_with_mask, mac_scroll_area): Use them.
252 (mac_set_clip_rectangle, mac_reset_clipping): Remove functions.
253 [USE_ATSUI] (atsu_get_text_layout_with_text_ptr)
254 [MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Specify kATSLineFractDisable.
255 (mac_draw_string_common) [MAC_OSX && USE_ATSUI]: Clip to clipping
256 rectangles stored in gc.
257 (XFreeGC): Dispose of clipping region.
258 (mac_set_clip_rectangles, mac_reset_clip_rectangles): New functions.
259 (x_draw_fringe_bitmap, x_set_glyph_string_clipping)
260 (x_draw_relief_rect, x_draw_box_rect, x_draw_stretch_glyph_string)
261 (x_draw_glyph_string, x_clip_to_row, x_draw_hollow_cursor)
262 (x_draw_bar_cursor): Use them.
263 (x_set_glyph_string_clipping): Use get_glyph_string_clip_rects to
264 get multiple clipping rectangles.
265
266 * macterm.h (mac_term_init): Add types to extern.
267 (struct mac_output): Remove members mWP and pending_menu_activation.
268 Put members scroll_bar_foreground_pixel and
269 scroll_bar_background_pixel in #if 0.
270 (FRAME_MAC_WINDOW, FRAME_X_WINDOW): Use window_desc.
271
272 * xfaces.c (x_create_gc, x_free_gc) [MAC_OS]: Add BLOCK_INPUT.
273 Add debugging code.
274
2752005-10-08 Kim F. Storm <storm@cua.dk>
276
277 * window.c (window_tree, Fwindow_tree): Rename fns added 2005-10-04.
278
2792005-10-07 Kim F. Storm <storm@cua.dk>
280
281 * dispnew.c (redraw_overlapped_rows, redraw_overlapping_rows)
282 [!HAVE_WINDOW_SYSTEM]: Don't declare them...
283 (update_window) [!HAVE_WINDOW_SYSTEM]: ...and don't call them.
284
2852005-10-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
286
287 * dispextern.h (struct glyph_string): Rename member for_overlaps_p
288 to for_overlaps. Now occupy 3 bits.
289 (OVERLAPS_PRED, OVERLAPS_SUCC, OVERLAPS_BOTH)
290 (OVERLAPS_ERASED_CURSOR): New defines.
291 (struct redisplay_interface): Add new OVERLAPS arg to member
292 fix_overlapping_area.
293 (x_fix_overlapping_area): Add new OVERLAPS arg.
294 (get_glyph_string_clip_rects): Add extern.
295
296 * dispnew.c (redraw_overlapping_rows): Call
297 rif->fix_overlapping_area with new OVERLAPS arg as redrawn part.
298
299 * xdisp.c: Rename member for_overlaps_p in struct glyph_string to
300 for_overlaps.
301 (get_glyph_string_clip_rects): New function created from
302 get_glyph_string_clip_rect. Set clipping rectangles according to the
303 value of for_overlaps. Enable to store multiple clipping rectangles.
304 (get_glyph_string_clip_rect): Use get_glyph_string_clip_rects.
305 (fill_composite_glyph_string, fill_glyph_string, draw_glyphs):
306 Rename argument OVERLAPS_P to OVERLAPS. All uses in macros changed.
307 (x_fix_overlapping_area): Add OVERLAPS arg. Pass it to draw_glyphs.
308 (draw_phys_cursor_glyph): Set width of erased cursor to use it for
309 calculating clipping rectangles later. Call x_fix_overlapping_area
310 with new OVERLAPS arg to draw only erased cursor area.
311 (expose_overlaps): Call x_fix_overlapping_area with new OVERLAPS arg
312 to draw overlaps in both preceding and succeeding rows.
313
314 * xterm.c, w32term.c, macterm.c: Rename member for_overlaps_p in
315 struct glyph_string to for_overlaps.
316
3172005-10-04 Richard M. Stallman <rms@gnu.org>
318
319 * alloc.c (refill_memory_reserve): Conditionalize the body,
320 not the function's existence.
321
3222005-10-04 Kim F. Storm <storm@cua.dk>
323
324 * window.c (window_split_tree): New function.
325 (Fwindow_split_tree): New defun.
326 (syms_of_window): Defsubr it.
327
3282005-10-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
329
330 * macterm.c (mac_invert_rectangle): New function.
331 (XTflash): Use it.
332
3332005-10-04 Stefan Monnier <monnier@iro.umontreal.ca>
334
335 * regex.h (re_char): Don't expose it in the interface.
336 (re_set_whitespace_regexp): Adjust the arg's type to not use it.
337
338 * regex.c (re_char): Move it back here.
339 (re_set_whitespace_regexp): Change the arg's type to not use it.
340
341 * keyboard.c (make_lispy_event): If point has moved between down and up
342 event, make it a drag, not a click, to mirror what
343 mouse-drag-region expects.
344
3452005-10-02 Dan Nicolaescu <dann@ics.uci.edu>
346
347 * lisp.h (fatal): Undo previous change.
348 * term.c (fatal): Undo previous change.
349
3502005-10-01 Richard M. Stallman <rms@gnu.org>
351
352 * xfaces.c (face_color_gray_p): Colors close to black count as gray.
353
3542005-10-01 Kim F. Storm <storm@cua.dk>
355
356 * xdisp.c (try_window): Skip scroll-margin check if ZV is visible.
357
3582005-10-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
359
360 * keyboard.c (init_keyboard) [MAC_OSX]: Don't install SIGINT handler.
361
362 * macfns.c (start_hourglass): Apply 2005-05-07 change for xfns.c.
363 (x_create_tip_frame) [GLYPH_DEBUG]: Uncomment debugging code.
364 (Fx_create_frame, x_create_tip_frame) [USE_ATSUI]:
365 Try ATSUI-compatible 12pt Monaco font first.
366
367 * macgui.h (struct _XCharStruct): New member valid_p.
368 (STORE_XCHARSTRUCT): Set valid_p.
369 (struct MacFontStruct) [USE_ATSUI]: New member mac_style.
370
371 * macterm.c (mac_draw_string_common, x_per_char_metric)
372 (mac_compute_glyph_string_overhangs, init_font_name_table)
373 (XLoadQueryFont, mac_unload_font) [USE_ATSUI]: Add ATSUI support.
374 (atsu_get_text_layout_with_text_ptr) [USE_ATSUI]: New function.
375 (x_draw_glyph_string_background)
376 (x_draw_glyph_string_foreground) [MAC_OS8 && USE_ATSUI]: Don't use
377 XDrawImageString. Always draw background and foreground separately.
378 (x_draw_glyph_string_foreground) [USE_ATSUI]: Don't use 8-bit
379 functions for one-byte chars when using ATSUI-compatible fonts.
380 (atsu_font_id_hash) [USE_ATSUI]: New variable.
381 (syms_of_macterm) [USE_ATSUI]: Initialize and staticpro it.
382 (XLoadQueryFont): Set min_byte1, max_byte1, min_char_or_byte2, and
383 max_char_or_byte2 more in detail.
384 (quit_char_comp, mac_check_for_quit_char) [MAC_OSX]: Remove functions.
385
3862005-09-30 Dan Nicolaescu <dann@ics.uci.edu>
387
388 * image.c (slurp_file, xbm_read_bitmap_data): Cast to the correct type.
389 * xterm.c (handle_one_xevent, handle_one_xevent): Likewise.
390
391 * unexelf.c (fatal): Fix prototype.
392
393 * term.c (fatal): Implement using varargs.
394
395 * regex.c (re_char): Move typedef ...
396 * regex.h (re_char): ... here.
397 (re_iswctype, re_wctype, re_set_whitespace_regexp): New prototypes.
398
399 * emacs.c (malloc_set_state): Fix return type.
400 (endif): Fix type.
401
402 * lisp.h (fatal): Add argument types.
403
404 * dispextern.h (fatal): Delete prototype.
405
406 * systime.h: (make_time): Prototype moved from ...
407 * editfns.c (make_time): ... here.
408
409 * editfns.c: Move systime.h include after lisp.h.
410 * dired.c:
411 * xsmfns.c:
412 * process.c: Likewise.
413
414 * alloc.c (old_malloc_hook, old_realloc_hook, old_realloc_hook):
415 Add parameter types.
416 (__malloc_hook, __realloc_hook, __free_hook): Fix prototypes.
417 (emacs_blocked_free): Change definition to match __free_hook.
418 (emacs_blocked_malloc): Change definition to match __malloc_hook.
419 (emacs_blocked_realloc): Change definition to match __realloc_hook.
420
4212005-09-30 Romain Francoise <romain@orebokech.com>
422
423 * minibuf.c (Fread_buffer): Follow convention for reading from the
424 minibuffer with a default value. Doc fix.
425
4262005-09-29 Juri Linkov <juri@jurta.org>
427
428 * editfns.c (Fmessage, Fmessage_box, Fmessage_or_box):
429 Rename argument name `string' to `format-string'.
430 (Fformat): Doc fix.
431
4322005-09-28 Kim F. Storm <storm@cua.dk>
433
434 * image.c (gif_load): Fix size of allocated image buffer
435 for images where a sub-image may be larger than the image's
436 total height/width specifications.
437
4382005-09-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
439
440 * macgui.h (struct _XCharStruct): Each member now takes short value.
441
4422005-09-27 Dan Nicolaescu <dann@ics.uci.edu>
443
444 * xfaces.c (lookup_derived_face): Add parameter type.
445
446 * xdisp.c (cursor_row_fully_visible_p): Add parameter type.
447
448 * marker.c (verify_bytepos): Add parameter type.
449
450 * process.c (get_operating_system_release): Move prototype ...
451
452 * systime.h (get_operating_system_release): ... here.
453
454 * xterm.c (handle_one_xevent): Refer to union field to match the
455 type required by the function definition.
456 (set_vertical_scroll_bar): Move prototype ...
457
458 * xterm.h: ... here.
459
460 * fns.c (internal_equal, seed_random): Fix prototypes.
461 (internal_equal): Add missing parameter.
462
4632005-09-25 Richard M. Stallman <rms@gnu.org>
464
465 * keyboard.c (update_menu_bindings): Variable deleted.
466 (syms_of_keyboard): Don't defvar it.
467 (parse_menu_item): Don't test it.
468
4692005-09-23 Richard M. Stallman <rms@gnu.org>
470
471 * editfns.c (Fformat): Explicitly test for end of format string
472 and don't use `index'.
473
4742005-09-23 Dan Nicolaescu <dann@ics.uci.edu>
475
476 * s/aix4-2.h (BROKEN_GET_CURRENT_DIR_NAME):
477 Define BROKEN_GET_CURRENT_DIR_NAME.
478
479 * sysdep.c (get_current_dir_name): Also define if
480 BROKEN_GET_CURRENT_DIR_NAME.
481
482 * m/ibmrs6000.h: Test for USG5, not USG5_4.
483
4842005-09-22 Kim F. Storm <storm@cua.dk>
485
486 * xdisp.c (message_dolog): Add warning about GC and Lisp strings.
487 (message2): Fix commentary. Ok to use alloca'ed memory.
488 Still not ok to use Lisp string data (because of GC).
489 (set_message): Add comment why GC cannot happen.
490
4912005-09-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
492
493 * macterm.c (xlfdpat_block_match_1): Fix assertion.
494 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't add style
495 variants for a scalable font multiple times.
496
4972005-09-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
498
499 * process.c (create_process) [RTU || UNIPLUS || DONT_REOPEN_PTY]:
500 Setup slave tty options before forking.
501
5022005-09-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
503
504 * gtkutil.c (xg_set_geometry): Do a gtk_window_move if program
505 positions have been set for the frame (as is done for frames in
506 special-display-buffer-names).
507
5082005-09-19 Kim F. Storm <storm@cua.dk>
509
510 * editfns.c (Fformat): Don't scan past end of format string that
511 ends in %. Reported by: Johan Bockg\e,Ae\e(Brd.
512
5132005-09-18 Andreas Schwab <schwab@suse.de>
514
515 * window.h (struct window): Remove height_fixed_p, no longer set.
516
517 * window.c (make_window): Don't initialize height_fixed_p.
518 (window_fixed_size_p): Don't use it.
519
5202005-09-18 John Paul Wallington <jpw@pobox.com>
521
522 * data.c (Fdefalias): Signal an error if SYMBOL is not a symbol.
523
5242005-09-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
525
526 * Makefile.in (SOME_MACHINE_OBJECTS): Undo previous change.
527
528 * macfns.c (image_cache_refcount, dpyinfo_refcount) [GLYPH_DEBUG]:
529 New variables.
530 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Don't allow multiple
531 file selection.
532
533 * sysdep.c [MAC_OS8]: Don't include stdlib.h. Include sys/param.h.
534
5352005-09-17 Eli Zaretskii <eliz@gnu.org>
536
537 * Makefile.in (XMENU_OBJ) [!HAVE_CARBON]: Reinstate variable.
538 (obj): Use XMENU_OBJ, not a literal xmenu.o.
539
5402005-09-16 Romain Francoise <romain@orebokech.com>
541
542 * fileio.c (syms_of_fileio) <write-region-inhibit-fsync>: Doc fix.
543
5442005-09-15 Richard M. Stallman <rms@gnu.org>
545
546 * xdisp.c (overlay_arrow_at_row): Add HAVE_WINDOW_SYSTEM conditional.
547 (display_mode_element): Instead of `lisp_string' and `this',
548 record `offset' and increment that.
549 `last_offset' replaces `last'.
550
551 * Makefile.in (XMENU_OBJ): Variable deleted.
552 (obj): Use xmenu.o unconditionally.
553 (SOME_MACHINE_OBJECTS): Delete xmenu.o.
554
555 * emacs.c (main): Don't conditionalize syms_of_xmenu on HAVE_XMENU.
556
5572005-09-15 Kim F. Storm <storm@cua.dk>
558
559 * xdisp.c (move_it_vertically): Don't try to fetch byte BEGV-1.
560 (reseat_at_next_visible_line_start): Likewise (in xassert).
561
5622005-09-14 Romain Francoise <romain@orebokech.com>
563
564 * fileio.c (write_region_inhibit_fsync): New variable.
565 (Fwrite_region): Use it to skip call to fsync.
566 (syms_of_fileio): Initialize it.
567
5682005-09-14 Kenichi Handa <handa@m17n.org>
569
570 * coding.c (code_convert_region_unwind): Argument format changed.
571 (run_pre_post_conversion_on_str): If pre-write-conversion function
572 changed the current buffer, delete the new buffer.
573 (run_pre_write_conversin_on_c_str): Likewise.
574
575 * fileio.c (Fexpand_file_name): Check multibyteness of
576 default_directory.
577
5782005-09-13 Kenichi Handa <handa@m17n.org>
579
580 * composite.c (compose_chars_in_text): Delete it.
581
582 * composite.h (compose_chars_in_text): Delete extern.
583
5842005-09-13 Kim F. Storm <storm@cua.dk>
585
586 * print.c (print_error_message): Fix last change.
587
5882005-09-12 Kim F. Storm <storm@cua.dk>
589
590 * composite.c (compose_chars_in_text): Fix setup of `pend'.
591 Unconditionally reload `ptr' and `pend' after eval.
592
593 * xdisp.c (message3): Pass copy of lisp string to message_dolog.
594
595 * print.c (print_error_message): Pass copy of caller name to
596 message_dolog.
597
598 * fileio.c (auto_save_error): Pass copy of lisp string to message2.
599
6002005-09-12 Kenichi Handa <handa@m17n.org>
601
602 * xdisp.c (display_mode_element): Be sure to make variables THIS
603 and LISP_STRING point into a string data of ELT.
604
6052005-09-12 Kim F. Storm <storm@cua.dk>
606
607 * editfns.c (Ftranslate_region_internal): Reload `tt' after
608 signal_after_change that may have GC'ed.
609 (Fmessage, Fmessage_box, Fmessage_or_box): Doc fix.
610
611 * keymap.c (Fdescribe_buffer_bindings): Reload `translate'
612 after insert while runs signal_after_change.
613
614 * minibuf.c (Fminibuffer_complete_word): Move `completion_string'
615 declaration to where it is used.
616
617 * w32.c (check_windows_init_file): Fix allocation of error buffer.
618
619 * xfns.c (x_encode_text): Declare static. Add FREEP arg.
620 (x_set_name_internal): Call x_encode_text with new FREEP arg to
621 know if xfree is needed instead of guessing.
622
623 * xterm.h (x_encode_text): Remove prototype.
624
6252005-09-11 Chris Prince <cprince@gmail.com> (tiny change)
626
627 * w32term.c (x_bitmap_icon): Load small icons too.
628
6292005-09-10 Romain Francoise <romain@orebokech.com>
630
631 * buffer.c (init_buffer): Grow buffer to add directory separator
632 and terminal zero. Fix typos.
633
6342005-09-10 Eli Zaretskii <eliz@gnu.org>
635
636 * buffer.c (init_buffer): Fix error message for failed call to
637 get_current_dir_name.
638 (get_current_dir_name): Remove prototype.
639
640 * xsmfns.c: (get_current_dir_name): Remove prototype.
641
642 * lisp.h: (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]: Add
643 prototype.
644
645 * sysdep.c [WINDOWSNT]: Add prototype for getwd.
646 Don't #undef NULL after including blockinput.h.
647
648 * config.in: Regenerated.
649
6502005-09-10 Giuseppe Scrivano <gscrivano@gmail.com>
651
652 Remove the MAXPATHLEN limitations:
653
654 * sysdep.c (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]:
655 New function.
656
657 * buffer.c (init_buffer): Use it.
658
659 * xsmfns.c (smc_save_yourself_CB): Ditto.
660
6612005-09-09 Kim F. Storm <storm@cua.dk>
662
663 * doc.c (Fsubstitute_command_keys): Lookup key binding for
664 commands that are remapped from some other command.
665
666 * xdisp.c (try_window_reusing_current_matrix): Clear mode_line_p
667 flag in disabled rows below the window.
668
669 * frame.h (struct frame): New member updated_p.
670
671 * xdisp.c (redisplay_internal): Mark updated frames in new updated_p
672 member. Remove local `updated' array and associated variables.
673
6742005-09-07 Kim F. Storm <storm@cua.dk>
675
676 * xdisp.c (handle_display_prop): Respect overlay window property.
677
678 * xdisp.c (try_window): Remove superfluous cursor_height calculation.
679 Fixes crash reported by YAMAMOTO Mitsuharu.
680
6812005-09-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
682
683 * macterm.c (struct xlfdpat_block, struct xlfdpat): New structs.
684 (xlfdpat_destroy, xlfdpat_create, xlfdpat_exact_p)
685 (xlfdpat_block_match_1, xlfdpat_match): New functions.
686 (xlfdpat_block_match): New macro.
687 (mac_to_x_fontname): Don't use tolower for non-ASCII characters.
688 (x_font_name_to_mac_font_name): Set coding.dst_multibyte to 0.
689 (add_font_name_table_entry): Increase font_name_table_size more
690 rapidly.
691 (mac_c_string_match): Remove function.
692 (mac_do_list_fonts): Use XLFD pattern match instead of regular
693 expression match.
694
695 * xfaces.c (xstrlwr): Don't use tolower for non-ASCII characters.
696
6972005-09-03 Richard M. Stallman <rms@gnu.org>
698
699 * xdisp.c (redisplay_internal): Make UPDATED as long as needed.
700 (move_it_in_display_line_to): Stop after last char on line even
701 on a windowing terminal, if that's the specified stop position.
702
703 * fns.c (Fsort): Doc fix.
704
705 * editfns.c (Fpropertize): Don't insist that properties be symbols.
706
7072005-09-02 Stefan Monnier <monnier@iro.umontreal.ca>
708
709 * dired.c (directory_files_internal_unwind, directory_files_internal)
710 (file_name_completion): Use a Save_Value object rather than a cons of
711 two 16bit ints to store the DIR*.
712 (directory_files_internal, file_name_completion): Handle both EINTR and
713 EAGAIN consistently after `readdir'.
714
7152005-09-01 Stefan Monnier <monnier@iro.umontreal.ca>
716
717 * intervals.c (update_interval): Add position info in error.
718
719 * dispnew.c (window_to_frame_hpos, update_window):
720 Avoid gcc warning about unused variable `f'.
721
7222005-08-31 Jason Rumney <jasonr@gnu.org>
723
724 * w32menu.c (add_menu_item): If unicode_append_menu returns an
725 error, revert to using AppendMenu.
726
7272005-08-31 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
728
729 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN): Remove argument.
730 All uses changed.
731 [MAC_OS] (XPutPixel, XGetPixel): Add efficient versions for common
732 cases.
733 (x_create_x_image_and_pixmap) [MAC_OS]: Don't call x_destroy_x_image.
734 [MAC_OS] (find_image_fsspec) [!MAC_OSX]: Don't use FSRef.
735 Use posix_pathname_to_fsspec.
736 [MAC_OS] (xpm_load_image): Fill in background_transparent field
737 while we have mask.
738
739 * macgui.h [!TARGET_API_MAC_CARBON] (GetPixDepth): New define.
740
741 * macterm.h (PIX_MASK_DRAW, PIX_MASK_RETAIN): Move defines to image.c.
742
7432005-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
744
745 * syntax.c (update_syntax_table): Properly reproduce the special +1
746 setting of e_property at the end of the buffer when bumping into the
747 INTERVALS_AT_ONCE limit.
748
7492005-08-27 Eli Zaretskii <eliz@gnu.org>
750
751 * emacs.c (USAGE1): Fix the description of the -Q option.
752
7532005-08-26 Stefan Monnier <monnier@iro.umontreal.ca>
754
755 * xdisp.c (pos_visible_p): Yet another int/Lisp_Object mixup (YAILOM).
756
7572005-08-26 Kim F. Storm <storm@cua.dk>
758
759 * xdisp.c (resize_mini_window): Fix 2005-08-20 change.
760 Don't move PT to new window start.
761
7622005-08-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
763
764 * keyboard.c (kbd_buffer_get_event) [MAC_OS]: Make events for
765 ICONIFY/DEICONIFY_EVENT.
766
767 * macterm.c (mac_copy_area, mac_copy_area_with_mask):
768 Restore background color.
769 (mac_handle_visibility_change): New function.
770 (x_make_frame_invisible, x_iconify_frame)
771 (XTread_socket) [!USE_CARBON_EVENTS]: Use it.
772 [USE_CARBON_EVENTS] (mac_handle_window_event)
773 (install_window_handler): Handle visibility change events.
774 (x_make_frame_visible): Don't reposition window if it is iconified
775 or asked for visible before. Select and uncollapse window when it
776 is made visible.
777 (x_make_frame_invisible): Don't reset x_highlight_frame.
778 (x_iconify_frame): Likewise. Make invisible frame visible before
779 it is iconified.
780 (read_socket_inev): Move variable outside #if USE_CARBON_EVENTS.
781 (do_window_update): Don't change visibility of invisible frame.
782
7832005-08-22 Juri Linkov <juri@jurta.org>
784
785 * term.c (turn_on_face): Check for TS_set_foreground and
786 TS_set_background depending on standout_mode. Simplify.
787
7882005-08-21 Kim F. Storm <storm@cua.dk>
789
790 * fringe.c (update_window_fringes): Only put TOP and BOTTOM
791 bitmaps on fully visible rows.
792
793 * fringe.c (update_window_fringes): Replace FORCE_P arg with
794 KEEP_CURRENT_P arg; if non-zero, don't update current row fringes,
795 and return 0.
796
797 * xdisp.c (redisplay_window): Call update_window_fringes with
798 KEEP_CURRENT_P non-0 if we are going to refresh fringes later.
799
8002005-08-20 Richard M. Stallman <rms@gnu.org>
801
802 * xdisp.c (display_echo_area_1): Get display start pos from w->start.
803 (resize_mini_window): Set w->start, and PT, so as to display the tail
804 end of the buffer, if it doesn't all fit.
805
8062005-08-18 Kim F. Storm <storm@cua.dk>
807
808 * xdisp.c (calc_pixel_width_or_height): Use actual display
809 resolution when available instead of Vdisplay_pixels_per_inch.
810
8112005-08-17 Kim F. Storm <storm@cua.dk>
812
813 * xdisp.c (pos_visible_p): Adjust X value if window is hscrolled.
814
815 * dispnew.c (buffer_posn_from_coords): Check that target row is
816 within matrix.
817
8182005-08-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
819
820 * xterm.c (x_wm_set_icon_pixmap): Move GTK specific code to
821 xg_set_frame_icon and call it.
822
823 * gtkutil.c (xg_set_frame_icon): New function.
824
825 * gtkutil.h (xg_set_frame_icon): Declare it.
826
8272005-08-16 Kim F. Storm <storm@cua.dk>
828
829 * dispnew.c (increment_row_positions): Skip non-enabled rows.
830
831 * window.c (SAVED_WINDOW_VECTOR_SIZE): Remove dangerous define.
832 (Fcurrent_window_configuration): Use VECSIZE macro instead.
833
8342005-08-15 Richard M. Stallman <rms@gnu.org>
835
836 * xdisp.c (message3_nolog): Clear echo_message_buffer.
837
8382005-08-15 Kim F. Storm <storm@cua.dk>
839
840 * lisp.h (QUIT) [!SYNC_INPUT]: Throw t to Vthrow_on_input.
841
842 * process.c (deactivate_process, status_notify, read_process_output)
843 (update_status, status_convert, decode_status, allocate_pty)
844 (make_process, remove_process, list_processes_1)
845 (create_process_1, unwind_request_sigio, read_process_output)
846 (send_process, keyboard_bit_set): Declare static.
847 (Fdelete_process): Simplify. Pass process to status_notify, so we
848 don't try to read output from it.
849 (status_notify): New arg deleting_process--don't try to read
850 output from that process.
851
852 * lisp.h (deactivate_process, status_notify, read_process_output):
853 Remove prototypes.
854
8552005-08-14 Richard M. Stallman <rms@gnu.org>
856
857 * image.c (syms_of_image): Init Qxbm, Qpbm before calling
858 define_image_type.
859
8602005-08-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
861
862 * gtkutil.c (xg_get_pixbuf_from_pix_and_mask): New function.
863 (xg_get_image_for_pixmap): Move some code to
864 xg_get_pixbuf_from_pix_and_mask, and call it.
865
866 * gtkutil.h (xg_get_pixbuf_from_pix_and_mask): Declare.
867
868 * xterm.c (x_wm_set_icon_pixmap): Call xg_get_pixbuf_from_pix_and_mask
869 to get an GTK icon and set it with GTK functions to avoid having GTK
870 override an icon set with just X functions.
871
8722005-08-11 Richard M. Stallman <rms@gnu.org>
873
874 * image.c (syms_of_image): Init image_types here, and call
875 define_image_type.
876 (init_image): Not here.
877
8782005-08-09 Richard M. Stallman <rms@gnu.org>
879
880 * bytecode.c (BYTE_CODE_QUIT): Throw t to Vthrow_on_input.
881
882 * lisp.h (QUIT): Throw t to Vthrow_on_input.
883
8842005-08-09 Thien-Thi Nguyen <ttn@gnu.org>
885
886 * floatfns.c (Fexpt): Use floats for negative exponent.
887
8882005-08-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
889
890 * gtkutil.c (xg_modify_menubar_widgets): Remove semicolon that
891 should not be there, causing menu display errors with GTK 2.6.9.
892
8932005-08-07 Richard M. Stallman <rms@gnu.org>
894
895 * floatfns.c (Fexpt): Undo previous change.
896
897 * dispnew.c (Fframe_or_buffer_changed_p): Take an arg
898 so it can be used with various state vectors.
899
900 * emacs.c (endif): Convert -script into -scriptload.
901 (standard_args): Add -scriptload. Allow -basic-display with one dash.
902
903 * fns.c (syms_of_fns): Add `emacs' to features.
904
905 * term.c (set_terminal_modes): If no TS_termcap_modes string,
906 output newlines to scroll the old screen contents off the screen.
907
9082005-08-06 Thien-Thi Nguyen <ttn@gnu.org>
909
910 * floatfns.c (Fexpt): Use floats for negative exponent.
911 Reported by D Goel.
912
9132005-08-02 Richard M. Stallman <rms@gnu.org>
914
915 * frame.c (Fframe_char_width): Doc fix.
916
9172005-07-30 Juanma Barranquero <lekktu@gmail.com>
918
919 * xdisp.c (syms_of_xdisp) <redisplay-end-trigger-functions>:
920 Defvar it.
921
9222005-07-28 Juanma Barranquero <lekktu@gmail.com>
923
924 * w32fns.c (my_set_window_pos, my_show_window): Don't declare.
925 (my_create_window, my_create_tip_window): Make static.
926
927 * w32term.c (my_show_window, my_set_window_pos, my_set_focus)
928 (my_set_foreground_window, my_destroy_window): Make static.
929
9302005-07-26 Paul Eggert <eggert@cs.ucla.edu>
931
932 Merge gnulib getopt implementation into Emacs.
933
934 * s/cygwin.h (C_SWITCH_SYSTEM): Remove, since gettext.h is
935 now part of lib-src.
936
9372005-07-26 Stefan Monnier <monnier@iro.umontreal.ca>
938
939 * eval.c (Fdefvar): Allow (defvar enable-multibyte-characters).
940
9412005-07-25 Jason Rumney <jasonr@gnu.org>
942
943 * w32menu.c (w32_menu_display_help): Suppress tooltip when
944 navigating menus with the keyboard.
945
9462005-07-23 Richard M. Stallman <rms@gnu.org>
947
948 * insdel.c (syms_of_insdel): staticpro combine_after_change_buffer.
949
950 * bytecode.c (MAYBE_GC): Test gc_cons_threshold and
951 gc_relative_threshold, one by one.
952
953 * keyboard.c (read_char): Test gc_cons_threshold.
954 (syms_of_keyboard): staticpro Qecho_area_clear_hook.
955
956 * eval.c (Feval, Ffuncall): Test gc_cons_threshold and
957 gc_relative_threshold, one by one.
958
959 * alloc.c (gc_cons_threshold): Not static.
960 (gc_cons_combined_threshold): Var deleted.
961 (gc_relative_threshold): New variable.
962 (Fgarbage_collect, init_alloc_once): Compute gc_relative_threshold
963 instead of gc_cons_combined_threshold.
964
965 * lisp.h (gc_cons_threshold, gc_relative_threshold): Declare.
966 (gc_cons_combined_threshold): Declaration deleted.
967
9682005-07-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
969
970 * mac.c: Don't include stdlib.h or string.h.
971 (Fdo_applescript, Fmac_file_name_to_posix)
972 (Fmac_file_name_to_posix): Doc fixes.
973 [TARGET_API_MAC_CARBON] (Fmac_get_preference)
974 (Fmac_code_convert_string): Likewise.
975 [MAC_OSX] (init_mac_osx_environment): Fall back on terminal mode
976 if the executable is not contained in a bundle.
977
978 * macfns.c: Don't include stdlib.h or string.h. Include atimer.h.
979 (gray_width, gray_height): Remove defines.
980 (gray_bits, gray_bitmap_width, gray_bitmap_height)
981 (gray_bitmap_bits): Remove variables.
982 (lispy_function_keys): Remove extern.
983 (free_frame_menubar): Add extern.
984 (x_window_to_frame): Remove function.
985 (unwind_create_tip_frame): Add declaration.
986 (x_set_name_internal): New function.
987 (x_set_name, x_set_title): Use it.
988 (Fx_create_frame, Fx_display_grayscale_p, Fx_display_pixel_width)
989 (Fx_display_pixel_height, Fx_display_planes)
990 (Fx_display_color_cells, Fx_server_max_request_size)
991 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
992 (Fx_display_mm_height, Fx_display_mm_width)
993 (Fx_display_backing_store, Fx_display_visual_class)
994 (Fx_display_save_under, Fx_synchronize, Fx_show_tip): Doc fixes.
995
996 * macmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
997
998 * macselect.c (Fx_own_selection_internal): Follow error conventions.
999 (Fx_get_selection_internal, Fx_selection_owner_p)
1000 (Fx_selection_exists_p): Doc fixes.
1001 (syms_of_macselect) <selection-converter-alist>: Likewise.
1002
10032005-07-21 Juanma Barranquero <lekktu@gmail.com>
1004
1005 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
1006
1007 * ccl.c (Fregister_ccl_program): Fix typos in docstring.
1008 (Fccl_execute_on_string): Likewise; add usage info.
1009
1010 * composite.c (Fcompose_region_internal)
1011 (Fcompose_string_internal):
1012 Improve argument/docstring consistency.
1013
1014 * minibuf.c (Fminibuffer_prompt_end, Feval_minibuffer):
1015 Fix typos in docstrings.
1016
1017 * textprop.c (Fnext_char_property_change)
1018 (Fprevious_char_property_change): Doc fixes.
1019
1020 * window.c (Fset_window_margins, Fset_window_fringes):
1021 Improve argument/docstring consistency.
1022
1023 * xfaces.c (Finternal_lisp_face_p): Doc fix.
1024
10252005-07-21 Andreas Schwab <schwab@suse.de>
1026
1027 * eval.c (restore_stack_limits): Return a value.
1028
10292005-07-20 Juanma Barranquero <lekktu@gmail.com>
1030
1031 * eval.c (Fdefvar): Doc fix.
1032
10332005-07-20 Kim F. Storm <storm@cua.dk>
1034
1035 * fileio.c (Fdo_auto_save, do_auto_save_unwind):
1036 Use make_save_value to unwind protect stream.
1037
1038 * lread.c (Fload, load_unwind):
1039 Use make_save_value to unwind protect stream.
1040
10412005-07-19 Juanma Barranquero <lekktu@gmail.com>
1042
1043 * eval.c (Fprog2, Fcalled_interactively_p),
1044 (syms_of_eval) <debug-on-quit>: Doc fixes.
1045 (syms_of_eval) <max-specpdl-size>:
1046 (Finteractive_p): Fix typos in docstrings.
1047
10482005-07-19 Kim F. Storm <storm@cua.dk>
1049
1050 * w32fns.c (Vx_hand_shape): Variable removed.
1051 (syms_of_w32fns): Intern and staticpro Qw32_charset_default.
1052
10532005-07-19 Kenichi Handa <handa@m17n.org>
1054
1055 * fns.c (Fstring_as_multibyte): Escape backslashes in the docstring.
1056
10572005-07-18 Stefan Monnier <monnier@iro.umontreal.ca>
1058
1059 * buffer.h (Fgenerate_new_buffer_name): Declare (for use in coding.c).
1060
10612005-07-18 Kim F. Storm <storm@cua.dk>
1062
1063 * frame.h (struct frame): New member already_hscrolled_p.
1064
1065 * xdisp.c (redisplay_internal): Only try to hscroll each frame once
1066 to avoid redisplay looping hscrolling back and forth ad infinitum.
1067
10682005-07-18 Juri Linkov <juri@jurta.org>
1069
1070 * buffer.c (scroll-up-aggressively, scroll-down-aggressively):
1071 * keymap.c (Fminor_mode_key_binding):
1072 * macterm.c (mac-emulate-three-button-mouse):
1073 Delete duplicate duplicate words.
1074
10752005-07-18 Ken Raeburn <raeburn@gnu.org>
1076
1077 * minibuf.c (Ftest_completion): Fix odd syntax in test.
1078
10792005-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1080
1081 * macfns.c (x_set_cursor_color): Use XSetBackground and XSetForeground.
1082
1083 * macgui.h (struct _XGC): New struct.
1084 (GC): Use it.
1085 (GCForeground, GCBackground, GCFont): Use X11 mask values.
1086 (XCreateGC, XParseGeometry): Move externs to macterm.h.
1087
1088 * macterm.c (x_bitmap_icon, x_make_frame_visible): Remove declarations.
1089 (XSetFont): Add declaration.
1090 (mac_set_forecolor, mac_set_backcolor, mac_set_colors):
1091 Remove functions.
1092 (GC_FORE_COLOR, GC_BACK_COLOR, GC_FONT, MAC_WINDOW_NORMAL_GC):
1093 New defines.
1094 (XDrawLine, mac_draw_line_to_pixmap, XClearWindow)
1095 (mac_draw_bitmap, XCreatePixmapFromBitmapData, XFillRectangle)
1096 (mac_draw_rectangle, mac_draw_string_common, mac_scroll_area):
1097 Use them.
1098 (mac_erase_rectangle): New function.
1099 (XClearArea, x_draw_fringe_bitmap, x_clear_glyph_string_rect)
1100 (x_draw_stretch_glyph_string): Use it.
1101 (XChangeGC, XCreateGC, XGetGCValues, XSetForeground)
1102 (XSetBackground, XSetFont): Adjust for new GC implementation.
1103 (x_draw_fringe_bitmap, x_draw_box_rect): Use GC to set colors.
1104 (XTset_vertical_scroll_bar): Clear area under scroll bar.
1105
1106 * macterm.h (struct mac_display_info): Change types of
1107 scratch_cursor_gc black_relief.gc, and white_relief.gc to GC.
1108 (XCreateGC, XParseGeometry): Move externs from macgui.h.
1109
1110 * xfaces.c [MAC_OS] (XCreateGC): Remove extern.
1111
11122005-07-16 Richard M. Stallman <rms@gnu.org>
1113
1114 * buffer.c (Fmake_overlay): Doc fix.
1115
11162005-07-16 Eli Zaretskii <eliz@gnu.org>
1117
1118 * w32proc.c (syms_of_ntproc): staticpro Qhigh, Qlow,
1119 Vw32_valid_locale_ids, and Vw32_valid_codepages.
1120
11212005-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1122
1123 * mac.c [TARGET_API_MAC_CARBON] (Fmac_code_convert_string):
1124 Use Fstring_as_unibyte instead of string_make_unibyte.
1125
11262005-07-15 Richard M. Stallman <rms@gnu.org>
1127
1128 * xdisp.c (select_frame_for_redisplay): Use find_symbol_value.
1129
11302005-07-15 Kim F. Storm <storm@cua.dk>
1131
1132 * xdisp.c: Fix redisplay loop in last change.
1133 (IT_POS_VALID_AFTER_MOVE_P): New macro.
1134 (move_it_vertically_backward, move_it_by_lines): Use it.
1135
11362005-07-14 Jason Rumney <jasonr@gnu.org>
1137
1138 * w32.c (init_environment): Default HOME directory to user's
1139 appdata directory if possible.
1140
11412005-07-14 Kim F. Storm <storm@cua.dk>
1142
1143 * .gdbinit (pitx): Fix output format. Print string charpos.
1144
1145 * lread.c (syms_of_lread): Initialize seen_list.
1146
1147 * search.c (syms_of_search): Staticpro searchbuf.whitespace_regexp.
1148
1149 * syntax.c (syms_of_syntax): Staticpro lisp objects in gl_state.
1150 Staticpro re_match_object.
1151
11522005-07-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1153
1154 * macselect.c (get_scrap_target_type_list): Avoid NULL pointer
1155 dereference.
1156
1157 * macterm.c (mac_window_to_frame): Remove duplicate define.
1158
11592005-07-14 Kenichi Handa <handa@m17n.org>
1160
1161 * coding.c (code_convert_region_unwind): ARG is changed to a cons.
1162 (code_convert_region): Adjust for the above change.
1163 (set_conversion_work_buffer): If the work buffer is already in
1164 use, generate a new buffer and return it. Otherwise return Qnil.
1165 (run_pre_post_conversion_on_str): Adjust for the above change.
1166 (run_pre_write_conversin_on_c_str): Likewise.
1167
11682005-07-13 Kim F. Storm <storm@cua.dk>
1169
1170 * xdisp.c (start_display): Don't reseat to next visible line start
1171 if current start position is in a string or image.
1172 (move_it_vertically_backward): Be sure to move out of strings and
1173 images when moving it2 forward.
1174 (move_it_by_lines): When moving forward, move to next buffer
1175 position if we end up in a string or image. When moving backward,
1176 count rows moved over when moving to start of current row in case
1177 row starts in middle of a string or image. Also move further
1178 backward if we end up in a string or image.
1179 (try_cursor_movement): If overlay string spans multiple lines,
1180 move backward to set cursor on start of an overlay string.
1181 (cursor_row_p): Row is ok if cursor is at newline from string, but
1182 string starts on this line (so we always position cursor at start
1183 of string).
1184
1185 * indent.c (Fvertical_motion): If start position is on an image,
1186 don't move back if we move too far (that's almost certain to happen).
1187
1188 * xdisp.c (cursor_row_fully_visible_p): Allow partially visible
1189 row in minibuffer windows.
1190 (try_window): Don't check margins in minibuffer windows.
1191
11922005-07-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1193
1194 * macterm.c: Don't include stdlib.h or composite.h.
1195 (x_use_underline_position_properties, last_mouse_press_frame)
1196 (x_noop_count, Qvendor_specific_keysyms): Remove unused variables.
1197 (syms_of_macterm, mac_initialize): Don't initialize them.
1198 (waiting_for_input, initial_argv, initial_argc)
1199 (Vcommand_line_args, Vx_no_window_manager, errno, window_scroll)
1200 (set_frame_menubar, path_from_vol_dir_name): Remove externs.
1201 (extra_keyboard_modifiers): Fix type in extern.
1202 (x_window_to_frame, x_window_to_scroll_bar): Remove declarations.
1203 (x_scroll_bar_report_motion): Add argument types to declaration.
1204 (mac_compute_glyph_string_overhangs): Add declaration.
1205 (disable_mouse_highlight): Remove unused variable.
1206 [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click)
1207 (x_scroll_bar_handle_press, x_scroll_bar_handle_release)
1208 (x_scroll_bar_handle_drag): Remove argument `timestamp'.
1209 All callers changed.
1210 [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click): Don't set
1211 timestamp.
1212 [USE_CARBON_EVENTS] (mac_handle_mouse_event): Likewise.
1213 (x_scroll_bar_create, XTset_vertical_scroll_bar): Show scroll bar
1214 only when its width is less than the height.
1215 (XTredeem_scroll_bar): Sync with xterm.c.
1216 (font_name_table, font_name_table_size, font_name_count):
1217 Make static.
1218 (drag_and_drop_file_list): Remove variable. Previous use is now
1219 local to function.
1220 (do_ae_open_documents): Move DRAG_N_DROP event construction part
1221 from XTread_socket.
1222 (XTread_socket): Consolidate setting of event timestamp.
1223 Move DRAG_N_DROP event construction part to do_ae_open_documents.
1224 Support extra_keyboard_modifiers.
1225
1226 * xfaces.c (try_font_list) [MAC_OS]: Try font family name
1227 beginning with that for ASCII.
1228
12292005-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
1230
1231 * alloc.c (gc_cons_combined_threshold, Vgc_cons_percentage): New vars.
1232 (Fgarbage_collect, init_alloc_once): Set gc_cons_combined_threshold.
1233 (syms_of_alloc): Declare gc-cons-percentage.
1234
1235 * eval.c (Feval, Ffuncall):
1236 * keyboard.c (read_char):
1237 * bytecode.c (MAYBE_GC): Use gc_cons_combined_threshold.
1238
1239 * lisp.h (gc_cons_combined_threshold): Declare.
1240
12412005-07-12 Kim F. Storm <storm@cua.dk>
1242
1243 * coding.c (Qprocess_argument):
1244 * coding.h (Qprocess_argument): Remove unused var.
1245
1246 * xselect.c (intern): Remove dup. intern and staticpro for QTIMESTAMP.
1247
12482005-07-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1249
1250 * mac.c [!TARGET_API_MAC_CARBON]: Include charset.h, coding.h, and
1251 Endian.h.
1252 [!MAC_OSX] (fchmod, fchown): New functions.
1253 (mac_get_code_from_arg): Don't accept Lisp integer as argument.
1254 Use SBYTES and EndianU32_BtoN.
1255 (mac_get_object_from_code): Return 4 byte string even if argument
1256 is 0. Use make_unibyte_string and EndianU32_NtoB.
1257 (Fmac_get_file_creator, Fmac_get_file_type, Fmac_set_file_creator)
1258 (Fmac_set_file_type): Fix documents and argument declarations.
1259 Don't specify kFSCatInfoNodeFlags. Support Mac OS Classic.
1260
12612005-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
1262
1263 * window.c (Frecenter): Yet another int/Lisp_Object mixup (YAILOM).
1264
12652005-07-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1266
1267 * xfaces.c (x_update_menu_appearance): Use fontSet resource for
1268 Lucid if X_I18N, font otherwise.
1269
12702005-07-10 Steven Tamm <steventamm@mac.com>
1271
1272 * mac.c (Fmac_get_file_type, Fmac_get_file_creator): Add.
1273 (Fmac_set_file_type, Fmac_set_file_creator): Add.
1274 (mac_get_object_from_code, mac_get_code_from_arg): Add.
1275
12762005-07-10 Richard M. Stallman <rms@gnu.org>
1277
1278 * lread.c (Qeval_buffer_list, Veval_buffer_list): New vars.
1279 (syms_of_lread): Set up eval-buffer-list.
1280 (Feval_buffer, Feval_region): Bind eval-buffer-list.
1281
12822005-07-08 Richard M. Stallman <rms@gnu.org>
1283
1284 * eval.c (Fdefvar): Allow defvaring a constant to itself quoted.
1285
12862005-07-08 Kim F. Storm <storm@cua.dk>
1287
1288 * keyboard.c (menu_bar_items): Don't GCPRO menu_bar_items_vector here.
1289 (syms_of_keyboard): Initialize and staticpro menu_bar_items_vector.
1290
12912005-07-07 Kim F. Storm <storm@cua.dk>
1292
1293 * window.c (Frecenter): Fix last change (set iarg before use).
1294
12952005-07-06 Richard M. Stallman <rms@gnu.org>
1296
1297 * window.c (Frecenter): When arg is inside the scroll margin,
1298 move it out of the margin.
1299
13002005-07-06 Jason Rumney <jasonr@gnu.org>
1301
1302 * w32console.c (initialize_w32_display): Detect when the console
1303 dimensions are insane, and default to 80x25 instead.
1304 (w32_use_full_screen_buffer): Default to NIL.
1305
13062005-07-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1307
1308 * macterm.c (mac_draw_vertical_window_border): Use foreground of
1309 VERTICAL_BORDER_FACE_ID for vertical border line.
1310 (mac_encode_char): Call check_ccl_update in advance.
1311 (mac_to_x_fontname, x_font_name_to_mac_font_name)
1312 (init_font_name_table, mac_do_list_fonts, XLoadQueryFont):
1313 Don't assume that font family length is less than 32.
1314 (x_compute_min_glyph_bounds): Make static.
1315 (x_load_font): Never set fonts_changed_p to zero.
1316
13172005-07-04 Lute Kamstra <lute@gnu.org>
1318
1319 * Update FSF's address in GPL notices.
1320
13212005-07-03 Richard M. Stallman <rms@gnu.org>
1322
1323 * xdisp.c (try_window): Fix previous change in how it handles
1324 a partially-visible line or one only partly past the margin.
1325
1326 * window.c (window_scroll_pixel_based): Take account
1327 of this_scroll_margin when finding point when scrolling up.
1328
13292005-06-29 Ralf Angeli <angeli@iwi.uni-sb.de>
1330
1331 * window.c (window_scroll_pixel_based, window_scroll_line_based):
1332 Handle `scroll-preserve-screen-position' non-nil, non-t specially.
1333 (syms_of_window): <scroll-preserve-screen-position>: Doc fix.
1334
13352005-07-02 Juri Linkov <juri@jurta.org>
1336
1337 * w32term.c (w32_draw_vertical_window_border): Use foreground of
1338 VERTICAL_BORDER_FACE_ID for vertical border line.
1339
13402005-07-02 Eli Zaretskii <eliz@gnu.org>
1341
1342 * fileio.c (Fcopy_file): Rearrange the code that calls fchown and
1343 fchmod so that chmod doesn't get called on MSDOS before the file
1344 is closed.
1345
13462005-07-01 Jason Rumney <jasonr@gnu.org>
1347
1348 * w32term.c (cleartype_active): New flag for enabling sub-pixel
1349 workaround.
1350 (w32_initialize): Initialize it.
1351 (w32_native_per_char_metric): Allow a couple of extra pixels when
1352 Cleartype is active.
1353
1354 * w32term.c (w32_initialize): Move check for screen reader here
1355 from syms_of_w32term.
1356
13572005-06-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1358
1359 * xterm.c (handle_one_xevent): bzero compose_status when nbytes
1360 is not zero.
1361
13622005-07-01 Masatake YAMATO <jet@gyve.org>
1363
1364 * emacs.c (main): Passing ADD_NO_RANDOMIZE to `personality'.
1365
13662005-06-30 Juri Linkov <juri@jurta.org>
1367
1368 * xdisp.c (x_draw_vertical_border): If left fringe is not present
1369 decrease x coord of vertical border by 1 pixel to not occupy text
1370 area of the right window.
1371
1372 * xterm.c (x_draw_vertical_window_border): Use foreground of
1373 VERTICAL_BORDER_FACE_ID for vertical border line.
1374
1375 * term.c (turn_on_face): In standout mode apply specified
1376 fg to bg, and specified bg to fg (this makes the logic of
1377 inversion on terminal consistent with X).
1378
13792005-06-29 Juanma Barranquero <lekktu@gmail.com>
1380
1381 * eval.c (user_variable_p_eh): New function.
1382 (Fuser_variable_p): Use it. Clarify docstring.
1383 Return t for aliases of user options, nil for alias loops.
1384
13852005-06-27 Richard M. Stallman <rms@gnu.org>
1386
1387 * eval.c (Fdefvar): Improve error message.
1388
13892005-06-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1390
1391 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Fix last
1392 change.
1393
13942005-06-27 Juanma Barranquero <lekktu@gmail.com>
1395
1396 * eval.c (Fdefvar): Don't try to set constant symbols.
1397
13982005-06-25 Richard M. Stallman <rms@gnu.org>
1399
1400 * macfns.c (Fx_show_tip): Pass new arg to try_window.
1401
1402 * w32fns.c (Fx_show_tip): Pass new arg to try_window.
1403
1404 * xfns.c (Fx_show_tip): Pass new arg to try_window.
1405
1406 * xdisp.c (try_window): New arg CHECK_MARGINS. Calls changed.
1407 (redisplay_window): Handle try_window reporting point in scroll margin.
1408
1409 * dispextern.h (try_window): Declare new arg.
1410
1411 * fileio.c (Fcopy_file): New arg PRESERVE_UID_GID.
1412 Use fchmod to copy the file modes.
1413 (Frename_file): Don't copy UID and GID here;
1414 instead, specify t for PRESERVE_UID_GID when calling Fcopy_file.
1415
1416 * eval.c (call_debugger): Take full care of extending stack limits
1417 to make space for the debugger, and restore the change afterward.
1418 Bind debug-on-error to nil.
1419 (restore_stack_limits): New subroutine.
1420 (Fsignal): Extend specpdl bound along with eval depth bound,
1421 for calling edebug. Don't do either one, for calling debugger.
1422 (find_handler_clause): Don't bind debug-on-error here.
1423 Don't unbind anything either.
1424 Temporarily advance max_specpdl_size for calling
1425 internal_with_output_to_temp_buffer.
1426 (grow_specpdl): Don't alter max_specpdl_size before signaling
1427 an error.
1428 (syms_of_eval) <max-specpdl-size>: Doc fix.
1429
1430 * lread.c (read1): 0.0e+NaN should make a "positive" NaN.
1431
14322005-06-24 Eli Zaretskii <eliz@gnu.org>
1433
1434 * fileio.c (Frename_file): Undo last change: no need to ifdef away
1435 chown on DOS_NT platforms.
1436
1437 * w32.c (sys_chown): New function.
1438
1439 * s/ms-w32.h (chown): New; define to sys_chown.
1440
14412005-06-24 Juanma Barranquero <lekktu@gmail.com>
1442
1443 * xdisp.c (syms_of_xdisp) <nobreak-char-display>: Doc fix.
1444 (syms_of_xdisp) <void-text-area-pointer>: Doc fix.
1445
1446 * fileio.c (Frename_file)[!DOS_NT]: Don't call chown on MSDOS/Windows.
1447
14482005-06-23 Richard M. Stallman <rms@gnu.org>
1449
1450 * xdisp.c (get_next_display_element): Finish reversing the tests of
1451 Vnobreak_char_display.
1452
1453 * xdisp.c (Vnobreak_char_display): Rename from Vshow_nonbreak_escape.
1454 All uses changed.
1455 (Qnobreak_space): Rename from Qno_break_space. All uses changed.
1456 (syms_of_xdisp): Define nobreak-char-display and nobreak-space.
1457
1458 * fileio.c (Frename_file): Preserve owner and group, if possible,
1459 when copying.
1460
14612005-06-23 Juanma Barranquero <lekktu@gmail.com>
1462
1463 * abbrev.c (Funexpand_abbrev):
1464 * category.c (Fmake_category_set):
1465 * dispnew.c (Fsleep_for, Fsit_for):
1466 * editfns.c (Fsubst_char_in_region):
1467 * eval.c (Fdefvar, Fdefconst, Feval, Ffuncall):
1468 * frame.c (make_frame_without_minibuffer):
1469 * lread.c (read_vector):
1470 * macfns.c (check_x_frame):
1471 * process.c (Fstop_process, Fcontinue_process):
1472 * search.c (Freplace_match):
1473 * syntax.c (Fstring_to_syntax):
1474 * w32fns.c (check_x_frame, check_x_display_info):
1475 * xfaces.c (x_supports_face_attributes_p):
1476 * xselect.c (Fx_own_selection_internal): Follow error conventions.
1477
1478 * image.c (fn_png_init_io): Don't define it.
1479 (init_png_functions) [HAVE_NTGUI]: Don't initialize fn_png_init_io.
1480 (png_read_from_file): New function, based on png_read_from_memory.
1481 (png_load): Use it, instead of fn_png_init_io.
1482
14832005-06-23 Kim F. Storm <storm@cua.dk>
1484
1485 * search.c (Fmatch_data): Remove evaporate option.
1486 (Fset_match_data): Do not mention evaporate option in doc string.
1487 Add commentary explaining evaporate arg (for internal use only).
1488 (unwind_set_match_data): Add comment on evaporate use.
1489
14902005-06-22 Miles Bader <miles@gnu.org>
1491
1492 * xfaces.c (Qvertical_border): Rename from `Qvertical_divider'.
1493 (realize_basic_faces, syms_of_xfaces): Update references to it.
1494 * dispextern.h (enum face_id): Rename `VERTICAL_DIVIDER_FACE_ID'
1495 to `VERTICAL_BORDER_FACE_ID'.
1496 * dispnew.c (build_frame_matrix_from_leaf_window): Update references.
1497
14982005-06-21 Juri Linkov <juri@jurta.org>
1499
1500 * dispextern.h: Add extern Qframe_set_background_mode.
1501
1502 * xfaces.c: Rename obsolete function Qframe_update_face_colors to
1503 Qframe_set_background_mode.
1504
1505 * frame.c (Fmodify_frame_parameters):
1506 Call frame-set-background-mode after changing the background color
1507 on non-window non-dos branch.
1508
15092005-06-21 Juanma Barranquero <lekktu@gmail.com>
1510
1511 * fns.c (Fchar_table_range):
1512 * process.c (Fmake_network_process): Fix spellings.
1513
15142005-06-20 Kim F. Storm <storm@cua.dk>
1515
1516 * fns.c (Fsort): Doc fix.
1517
15182005-06-20 Miles Bader <miles@gnu.org>
1519
1520 * xfaces.c (Qvertical_divider): New variable.
1521 (realize_basic_faces): Realize its face.
1522 (syms_of_xfaces): Initialize it.
1523
1524 * dispextern.h (enum face_id): Add `VERTICAL_DIVIDER_FACE_ID'.
1525
1526 * dispnew.c (build_frame_matrix_from_leaf_window): Display vertical
1527 window-separator on ttys using `vertical-divider' face by default.
1528
15292005-06-17 Richard M. Stallman <rms@gnu.org>
1530
1531 * xdisp.c (get_next_display_element):
1532 Reverse test of Vshow_nonbreak_escape.
1533
1534 * term.c (produce_special_glyphs): Use spec_glyph_lookup_face.
1535 (Ftty_no_underline): New function.
1536 (syms_of_term): defsubr it.
1537
1538 * keyboard.c (read_char): Call restore_getcjmp after jump occurs.
1539
1540 * dispnew.c (spec_glyph_lookup_face): New function.
1541 (build_frame_matrix_from_leaf_window): Use it.
1542
1543 * dispextern.h (spec_glyph_lookup_face): Add declaration.
1544
1545 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
1546
15472005-06-12 Richard M. Stallman <rms@gnu.org>
1548
1549 * keyboard.c (read_char): After catching a longjmp,
1550 call restore_getcjmp.
1551
15522005-06-17 Juanma Barranquero <lekktu@gmail.com>
1553
1554 * xselect.c (lisp_data_to_selection_data): Fix spelling.
1555
15562005-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1557
1558 * macterm.c (mac_compute_glyph_string_overhangs): Don't set
1559 overhangs unless the given glyph type is noncomposite CHAR_GLYPH.
1560 [USE_CARBON_EVENTS] (mac_convert_event_ref): Convert dead key down
1561 events.
1562 (XTread_socket): Don't pass keyboard events with the option
1563 modifier to the system when Vmac_command_key_is_meta is nil or
1564 Vmac_option_modifier is non-nil.
1565 [USE_CARBON_EVENTS] (read_socket_inev): New variable.
1566 [USE_CARBON_EVENTS] (init_command_handler): Fix argument.
1567 [USE_CARBON_EVENTS] (mac_handle_mouse_event): New Carbon event
1568 handler function.
1569 (install_window_handler) [USE_CARBON_EVENTS]: Install it.
1570 (XTread_socket) [USE_CARBON_EVENTS]: Move mouse wheel event
1571 handler part to mac_handle_mouse_event.
1572
15732005-06-14 Juanma Barranquero <lekktu@gmail.com>
1574
1575 * eval.c (Fdefvaralias): Rename arguments SYMBOL and ALIASED to
1576 NEW-ALIAS and BASE-VARIABLE, respectively.
1577
15782005-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
1579
1580 * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
1581 (get_phys_cursor_geometry, format_mode_line_unwind_data)
1582 (get_line_height_property, x_produce_glyphs): Remove unused vars.
1583
1584 * coding.c (run_pre_post_conversion_on_str): Remove unused var `buf'.
1585
15862005-06-13 Eli Zaretskii <eliz@gnu.org>
1587
1588 * w32term.c (x_use_underline_position_properties): New variable.
1589 (x_draw_glyph_string): Remind in a comment to change doc string of
1590 x-use-underline-position-properties if/when underline positioning
1591 is implemented.
1592 (syms_of_w32term): DEFVAR_BOOL x-use-underline-position-properties,
1593 and initialize it to nil.
1594
15952005-06-12 Jason Rumney <jasonr@gnu.org>
1596
1597 * w32fns.c (NEWOPENFILENAME): New struct.
1598 (Fx_file_dialog): Use it to trick the system into giving us up to
1599 date dialogs on systems that are documented to support it.
1600 Do not set OFN_FILEMUSTEXIST flag if looking for a directory.
1601
16022005-06-12 Eli Zaretskii <eliz@gnu.org>
1603
1604 * w32fns.c (w32_abort): Use the MB_YESNO dialog instead of
1605 MB_ABORTRETRYIGNORE. Never return, even if DebugBreak does.
1606
16072005-06-11 Eli Zaretskii <eliz@gnu.org>
1608
1609 * image.c (x_create_x_image_and_pixmap) [HAVE_NTGUI]: Cast 4th arg
1610 to CreateDIBSection to avoid a compiler warning.
1611 (pbm_load): Cast 3rd arg to IMAGE_BACKGROUND to avoid a compiler
1612 warning.
1613 (png_load): Cast return values of fn_png_create_read_struct and
1614 fn_png_create_info_struct, to avoid compiler warnings on W32.
1615 Cast 3rd arg to IMAGE_BACKGROUND and image_background_transparent
1616 to avoid compiler warnings.
1617 (jpeg_load): Cast return value of fn_jpeg_std_error to avoid a
1618 compiler warning on W32. Cast 3rd arg to IMAGE_BACKGROUND to
1619 avoid a compiler warning.
1620 (tiff_load): Cast return values of fn_TIFFOpen and
1621 fn_TIFFClientOpen to avoid compiler warning on W32. Cast 3rd arg
1622 to IMAGE_BACKGROUND to avoid a compiler warning.
1623 (gif_load): Cast return values of fn_DGifOpenFileName and
1624 fn_DGifOpen to avoid compiler warnings on W32. Cast 3rd arg to
1625 IMAGE_BACKGROUND to avoid a compiler warning.
1626 (DrawText) [HAVE_NTGUI || MAC_OS]: If already defined, undef
1627 before redefining.
1628
1629 * w32bdf.c (create_offscreen_bitmap): Cast `bitsp' to `void **' in
1630 the call to CreateDIBSection, to avoid a compiler warning.
1631
16322005-06-11 Jason Rumney <jasonr@gnu.org>
1633
1634 * w32fns.c (Fx_file_dialog): Unblock input before falling back to
1635 minibuffer.
1636 * macfns.c (Fx_file_dialog): Likewise.
1637
16382005-06-10 Eli Zaretskii <eliz@gnu.org>
1639
1640 * makefile.w32-in ($(TEMACS)): Depend on addsection.exe.
1641
16422005-06-10 Juanma Barranquero <lekktu@gmail.com>
1643
1644 * process.c (syms_of_process) [ADAPTIVE_READ_BUFFERING]:
1645 * w32fns.c (syms_of_w32fns): Fix spellings.
1646
16472005-06-10 Eli Zaretskii <eliz@gnu.org>
1648
1649 * unexw32.c (COPY_CHUNK, COPY_PROC_CHUNK): Add a new argument
1650 `verbose'; print diagnostic messages only if it is non-zero.
1651 All callers changed to pass a zero value unless DEBUG_DUMP is defined
1652 in the environment.
1653 (copy_executable_and_dump_data): Print section names with %.8s.
1654
16552005-06-10 Masatake YAMATO <jet@gyve.org>
1656
1657 * xdisp.c (note_mode_line_or_margin_highlight): Call clear_mouse_face
1658 when mouse_face is not given.
1659
16602005-06-09 Luc Teirlinck <teirllm@auburn.edu>
1661
1662 * window.c (Fselect_window): Adapt call to Fselect_frame.
1663
1664 * lisp.h: Update EXFUN of Fselect_frame.
1665
1666 * keyboard.c (command_loop_1): Adapt call to Fselect_frame.
1667
1668 * frame.c (Fhandle_switch_frame, Fselect_frame): Delete unused arg
1669 no_enter.
1670 (Fset_mouse_position, Fset_mouse_pixel_position, Ficonify_frame):
1671 Adapt to above change.
1672
16732005-06-10 Juanma Barranquero <lekktu@gmail.com>
1674
1675 * fns.c (Fmemq, Fmaphash): Doc fixes.
1676
16772005-06-09 Juanma Barranquero <lekktu@gmail.com>
1678
1679 * xfaces.c (Fdisplay_supports_face_attributes_p):
1680 Fix typo in docstring.
1681
16822005-06-08 Steven Tamm <steventamm@mac.com>
1683
1684 * unexmacosx.c (copy_data_segment): Copy __la_sym_ptr2 section
1685 used by gcc4 on intel mac.
1686
16872005-06-09 Kim F. Storm <storm@cua.dk>
1688
1689 * search.c (Fmatch_data): Add optional RESEAT arg. Unchain markers
1690 in REUSE list if non-nil; free them if equal to evaporate.
1691 (Fset_match_data): Add optional RESEAT arg. Unchain markers in LIST
1692 if non-nil; free them if equal to evaporate. Use XCAR/XCDR.
1693 (restore_search_regs): Rename from restore_match_data. Uses changed.
1694 (unwind_set_match_data): New function.
1695 (record_unwind_save_match_data): New function like save-match-data.
1696
1697 * lisp.h (Fmatch_data, Fset_match_data): Fix EXFUN.
1698 (record_unwind_save_match_data): Add prototype.
1699 (restore_search_regs): Rename from restore_match_data.
1700
1701 * composite.c (compose_chars_in_text):
1702 * eval.c (do_autoload):
1703 * macmenu.c (set_frame_menubar):
1704 * process.c (read_process_output, exec_sentinel):
1705 * xmenu.c (set_frame_menubar):
1706 * xdisp.c (prepare_menu_bars, update_menu_bar, update_tool_bar):
1707 * w32menu.c (set_frame_menubar):
1708 Use record_unwind_save_match_data.
1709
17102005-06-08 Richard M. Stallman <rms@gnu.org>
1711
1712 * xdisp.c (get_next_display_element): Alter previous change:
1713 Distinguish Vshow_nonbreak_escape = t or not t.
1714 For t, use escape_glyph once again, as before previous change.
1715 Use space or hyphen for display, instead of the non-ASCII char.
1716 (syms_of_xdisp) <show-nonbreak-escape>: Doc fix.
1717
1718 * process.c (Fstart_process): Don't touch command_channel_p slot.
1719
1720 * process.h (struct process): Delete command_channel_p.
1721
17222005-06-07 Masatake YAMATO <jet@gyve.org>
1723
1724 * xdisp.c (note_mode_line_or_margin_highlight):
1725 Check the overlapping of re-rendering area to avoid flickering.
1726 (note_mouse_highlight): Call clear_mouse_face if PART
1727 is not ON_MODE_LINE nor ON_HEADER_LINE.
1728
17292005-06-07 Kim F. Storm <storm@cua.dk>
1730
1731 * process.c: Improve commentary for adaptive read buffering.
1732
17332005-06-06 Stefan Monnier <monnier@iro.umontreal.ca>
1734
1735 * xterm.c (x_create_toolkit_scroll_bar): Use XtNarrowScrollbars
1736 if available.
1737
17382005-06-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1739
1740 * macmenu.c (menu_quit_handler, install_menu_quit_handler):
1741 New functions for popping down menus on C-g.
1742 (set_frame_menubar, mac_menu_show): Call install_menu_quit_handler.
1743
1744 * macterm.c: Make mac_quit_char_modifiers and mac_quit_char_keycode
1745 non-static.
1746
1747 * config.in: Add HAVE_CANCELMENUTRACKING.
1748
17492005-06-06 Eli Zaretskii <eliz@gnu.org>
1750
1751 * w32heap.h (OFFSET_TO_RVA, RVA_TO_OFFSET, RVA_TO_PTR): Remove macros.
1752
1753 * unexw32.c (RVA_TO_PTR): Move here from w32heap.h.
1754
1755 * w32proc.c (RVA_TO_PTR): New macro.
1756
1757 * w32heap.c (RVA_TO_PTR): No need to #undef now.
1758
1759 * makefile.w32-in ($(BLD)/emacs.$(O), $(BLD)/w32select.$(O)):
1760 Depend on w32heap.h.
1761
17622005-06-06 Luc Teirlinck <teirllm@auburn.edu>
1763
1764 * keyboard.c (command_loop_1): Update Vthis_original_command.
1765
17662005-06-06 Richard M. Stallman <rms@gnu.org>
1767
1768 * xmenu.c (popup_get_selection): Undo previous change.
1769
17702005-06-06 Juri Linkov <juri@jurta.org>
1771
1772 * xdisp.c (Qno_break_space): New variable.
1773 (syms_of_xdisp): Initialize it.
1774 (get_next_display_element): Add no-break space and soft hypen
1775 codes for iso8859-2 and iso8859-5. Don't add `\' for them.
1776 Use `no-break-space' face for no-break spaces.
1777
17782005-06-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1779
1780 * window.c (delete_window): Handle the case where a h/vchild has
1781 a h/vchild.
1782
17832005-06-05 Eli Zaretskii <eliz@gnu.org>
1784
1785 * w32.c (sys_setsockopt): Change arg 4 to `const void *'. In the
1786 call to pfn_setsockopt, cast optval to `const char *'.
1787
17882005-06-04 Eli Zaretskii <eliz@gnu.org>
1789
1790 * w32.c (gettimeofday): Use struct _timeb, not struct timeb.
1791 (open_unc_volume): Cast return value of map_w32_filename, to avoid
1792 compiler warnings.
1793
1794 * s/ms-w32.h (fileno): Don't define if already defined.
1795
1796 * emacs.c: Include w32heap.h, to avoid compiler warning about sbrk.
1797
1798 * makefile.w32-in (DOC): Define to point to the generated DOC-X.
1799
18002005-06-04 Richard M. Stallman <rms@gnu.org>
1801
1802 * xmenu.c (popup_get_selection): Click not in menu deactivates menu.
1803
18042005-06-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1805
1806 * macmenu.c (cleanup_popup_menu): New function.
1807 (Fx_popup_menu): Unwind protect cleanup_popup_menu in case
1808 mac_menu_show Quit:s.
1809 (mac_menu_show): Quit on cancel if not popped up on click (i.e.
1810 a dialog).
1811
18122005-06-04 Kim F. Storm <storm@cua.dk>
1813
1814 * coding.c (decode_coding_string): Handle CODING_FINISH_INTERRUPT.
1815
1816 * callproc.c (Fcall_process): Don't use alloca to gradually
1817 increase size of buf, as it effectively uses twice the necessary
1818 space on the stack. Instead, pre-allocate buf of full size, and
1819 gradually increase the read size.
1820
1821 * bytecode.c (BYTE_CODE_QUIT): Check Vthrow_on_input.
1822
1823 * eval.c (unbind_to): Preserve value of Vquit_flag.
1824
1825 * xterm.c (handle_one_xevent): Also ignore mouse motion just
1826 before a button release event.
1827
18282005-06-03 Juanma Barranquero <lekktu@gmail.com>
1829
1830 * xfaces.c (Finternal_lisp_face_equal_p): Really report
1831 on faces in a frame, if the argument FRAME is non-nil.
1832 Improve argument/docstring consistency.
1833
18342005-06-02 Kim F. Storm <storm@cua.dk>
1835
1836 * xdisp.c (MODE_LINE_NOPROP_LEN): New macro.
1837 (x_consider_frame_title, Fformat_mode_line): Save offset into
1838 mode_line_noprop_buf rather than pointer, in case buffer is relocated.
1839
18402005-06-01 Kim F. Storm <storm@cua.dk>
1841
1842 * fns.c (mapcar1): Maybe exit loop if original sequence was modified.
1843
18442005-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1845
1846 * macterm.c (mac_to_x_fontname, mac_do_list_fonts): Set XLFD
1847 resolution fields for scalable fonts to 0.
1848
1849 * xfaces.c (build_scalable_font_name): Round pixel size to the
1850 nearest integer.
1851
18522005-06-01 Kim F. Storm <storm@cua.dk>
1853
1854 * xdisp.c (display_mode_line): Support nested calls to redisplay
1855 and format-mode-line. Set mode_line_target to MODE_LINE_DISPLAY.
1856
18572005-05-31 Stefan Monnier <monnier@iro.umontreal.ca>
1858
1859 * fileio.c (Finsert_file_contents):
1860 * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
1861
18622005-05-31 Kim F. Storm <storm@cua.dk>
1863
1864 * xdisp.c (mode_line_noprop_buf, mode_line_noprop_buf_end)
1865 (mode_line_noprop_ptr): Rename from frame_title_*.
1866 (store_mode_line_noprop_char): Rename from store_frame_title_char.
1867 (store_mode_line_noprop): Rename from store_frame_title.
1868 (mode_line_target): New enum to specify current output target
1869 for mode line formatting.
1870 (display_mode_element): Test it rather than frame_title_ptr and
1871 mode_line_string_list to determine where output should go.
1872 (mode_line_proptrans_alist, mode_line_string_alist): Make static.
1873 (Vmode_line_unwind_vector): New variable.
1874 (format_mode_line_unwind_data, unwind_format_mode_line):
1875 New functions for unwind protection in mode line formatting.
1876 (x_consider_frame_title): Use them and new local var 'title_start'
1877 to support nested calls to format-mode-line and redisplay.
1878 Set mode_line_target to MODE_LINE_TITLE.
1879 (Fformat_mode_line): Use them and new local var 'string_start' to
1880 support nested calls to format-mode-line and redisplay.
1881 Set mode_line_target to MODE_LINE_NOPROP or MODE_LINE_STRING.
1882 Don't trim trailing dashes.
1883 (decode_mode_spec): Don't make infinite number of trailing dashes
1884 for MODE_LINE_NOPROP and MODE_LINE_STRING targets.
1885 (syms_of_xdisp): Initialize and staticpro mode_line_string_face,
1886 mode_line_string_face_prop, and Vmode_line_unwind_vector.
1887 (init_xdisp): Initialize mode_line_noprop_ptr to start of _buf.
1888 Initialize mode_line_target to MODE_LINE_DISPLAY.
1889
18902005-05-29 Richard M. Stallman <rms@gnu.org>
1891
1892 * buffer.c (Fbuffer_local_value): Call indirect_variable.
1893
18942005-05-28 Masatake YAMATO <jet@gyve.org>
1895
1896 * xdisp.c (note_mode_line_or_margin_highlight): Change the
1897 pointer to a hand cursor when hoovering over a mouse-face.
1898
18992005-05-27 Kenichi Handa <handa@m17n.org>
1900
1901 * xterm.c (x_encode_char): Call check_ccl_update in advance.
1902
1903 * ccl.c: Now an element of Vccl_program_table is a vector of
1904 length 4, not 3.
1905 (ccl_get_compiled_code): New arg idx. Caller changed.
1906 Adjust for the change of Vccl_program_table.
1907 (setup_ccl_program): Adjust for the change of Vccl_program_table.
1908 (check_ccl_update): New function.
1909 (Fregister_ccl_program): Use ASET to set an element of a vector.
1910 Adjusted for the change of Vccl_program_table.
1911
1912 * ccl.h (struct ccl_program): New member idx.
1913 (check_ccl_update): Extern it.
1914
19152005-05-27 Juanma Barranquero <lekktu@gmail.com>
1916
1917 * image.c (Vimage_library_alist): Move from image.el.
1918 (syms_of_image): Defvar it.
1919 (lookup_image_type): Use it.
1920
1921 * buffer.c (Fbuffer_local_value): Make argument name match its use
1922 in docstring.
1923
19242005-05-26 Juanma Barranquero <lekktu@gmail.com>
1925
1926 * keyboard.c (Frecursive_edit): Fix typo in docstring.
1927 (Fposn_at_x_y): Make argument name match its use in docstring.
1928
19292005-05-26 Lute Kamstra <lute@gnu.org>
1930
1931 * eval.c (Frun_hooks): Mention run-mode-hooks in docstring.
1932
19332005-05-24 Masatake YAMATO <jet@gyve.org>
1934
1935 * xdisp.c (note_mode_line_or_margin_highlight): Use b and e
1936 as loop sentinels.
1937
19382005-05-24 Nick Roberts <nickrob@snap.net.nz>
1939
1940 * xmenu.c (Fx_popup_dialog): Add a third boolean argument to
1941 select frame title ("Question"/"Information").
1942 (xdialog_show): Use it.
1943
1944 * macmenu.c (Fx_popup_dialog, mac_dialog_show): As for xmenu.c.
1945
1946 * w32menu.c (Fx_popup_dialog, w32_dialog_show): As for xmenu.c.
1947
1948 * fns.c (Fyes_or_no_p, Fy_or_n_p): Call Fx_popup_dialog with
1949 a third argument (Qnil).
1950
1951 * lisp.h: x-popup-dialog can have three arguments.
1952
1953 * editfns.c (Fmessage_box): Use "Information" for frame title.
1954
19552005-05-23 Thien-Thi Nguyen <ttn@gnu.org>
1956
1957 * termcap.c [VMS]: Include <starlet.h>.
1958
19592005-05-23 Masatake YAMATO <jet@gyve.org>
1960
1961 * xdisp.c (note_mode_line_or_margin_highlight): Add code
1962 for mouse-face. Change the type of the first argument from `window'
1963 to `Lisp_Object'.
1964 (note_mouse_highlight): Call note_mode_line_or_margin_highlight with
1965 window instead of w.
1966
19672005-05-22 Andreas Schwab <schwab@suse.de>
1968
1969 * process.c (send_process): Move misplaced volatile.
1970
19712005-05-21 Richard M. Stallman <rms@gnu.org>
1972
1973 * xdisp.c (display_mode_element): If we're processing a list and
1974 padding is specified, put it after the last element.
1975
19762005-05-21 Eli Zaretskii <eliz@gnu.org>
1977
1978 * fileio.c (Fexpand_file_name) [DOS_NT]: Don't try to support
1979 "superroot" on DOS_NT systems.
1980
19812005-05-21 David Hunter <hunterd42@comcast.net> (tiny change)
1982
1983 * process.c (send_process): Restore the SIGPIPE handler if we
1984 catch a SIGPIPE.
1985
19862005-05-20 Juanma Barranquero <lekktu@gmail.com>
1987
1988 * image.c (lookup_image, png_read_from_memory): Remove hacks (and
1989 misleading comments).
1990 (DEF_IMGLIB_FN): Use C calling convention for image libraries.
1991
19922005-05-20 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
1993
1994 * window.c (Fwindow_inside_edges, Fwindow_inside_pixel_edges):
1995 Correct the right value.
1996
19972005-05-19 Nick Roberts <nickrob@snap.net.nz>
1998
1999 * keyboard.c (syms_of_keyboard): Remove Lisp variables
2000 post-command-idle-hook and post-command-idle-delay.
2001 (command_loop_1): Don't try to execute post-command-idle-hook.
2002
20032005-05-16 Kim F. Storm <storm@cua.dk>
2004
2005 * xdisp.c (handle_display_prop): Handle empty replacement.
2006 (handle_single_display_spec): Return -1 for empty replacement.
2007
2008 * keyboard.c (adjust_point_for_property): Skip empty overlay string.
2009
2010 * .gdbinit (pitx): Print more info about iterator.
2011
20122005-05-16 Andreas Schwab <schwab@suse.de>
2013
2014 * unexmacosx.c (unexec_realloc): Move declarations before statements.
2015
20162005-05-14 Richard M. Stallman <rms@gnu.org>
2017
2018 * xdisp.c (message3): Call cancel_echoing.
2019
2020 * alloc.c (Fmemory_full_p): New function.
2021 (syms_of_alloc): defsubr it.
2022
2023 * process.c (send_process_trap): Unblock SIGPIPE.
2024 (send_process): Reset SIGPIPE handler before reporting error.
2025
20262005-05-14 Nick Roberts <nickrob@snap.net.nz>
2027
2028 * emacs.c (syms_of_emacs): Fix doc string for system-type.
2029
20302005-05-13 Richard M. Stallman <rms@gnu.org>
2031
2032 * fileio.c (Ffind_file_name_handler): Handle lambda-exp as handler.
2033 (Finsert_file_contents): If we read 0 bytes from a special file,
2034 unlock the visited file if we locked it.
2035 (Fmake_symbolic_link, Frecent_auto_save_p): Doc fixes.
2036 (Ffile_exists_p, Ffile_symlink_p): Doc fixes.
2037
20382005-05-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2039
2040 * emacs.c (main) [MAC_OS8]: Call init_atimer before mac_term_init.
2041
2042 * keyboard.c (readable_events) [USE_TOOLKIT_SCROLL_BARS]:
2043 Regard toolkit scroll bar thumb drag events as squeezable and prevent
2044 redisplay from being paused by them.
2045
2046 * mac.c [!MAC_OSX]: Include keyboard.h and syssignal.h.
2047 [!MAC_OSX] (target_ticks): Remove variable.
2048 [!MAC_OSX] (check_alarm, pause, index): Remove functions.
2049 [!MAC_OSX && __MRC__] (sys_strftime): Likewise.
2050 [!MAC_OSX] (select): If fd 0 is not set in rfds and some input
2051 event occurs before timeout, behave as if the function were interrupted.
2052 [!MAC_OSX] (sigblock, sigsetmask, alarm): Simulate SIGALRM
2053 handling using Time Manager routines.
2054 [!MAC_OSX] (mac_atimer_task, mac_atimer_qlink, signal_mask):
2055 New variables.
2056 [!MAC_OSX] (mac_atimer_handler, set_mac_atimer, remove_mac_atimer)
2057 (setitimer): New functions.
2058
2059 * macfns.c, macmenu.c: Don't include signal.h.
2060
2061 * macterm.c [USE_TOOLKIT_SCROLL_BARS] (get_control_part_bounds):
2062 Rename from get_control_part_bound. All callers changed.
2063 (x_scroll_bar_clear): New function.
2064 (x_clear_frame): Use it.
2065 (XTset_vertical_scroll_bar): Don't call Draw1Control.
2066 (x_scroll_bar_handle_click): Change type of second argument from
2067 int to ControlPartCode.
2068 (check_alarm): Remove declaration.
2069 (XTread_socket) [!TARGET_API_MAC_CARBON]: Don't call it.
2070 (XTread_socket): Use ControlPartCode instead of SInt16.
2071
20722005-05-13 Nozomu Ando <nand@mac.com>
2073
2074 * unexmacosx.c: Include assert.h.
2075 (MACOSX_MALLOC_MULT16): New define.
2076 [MACOSX_MALLOC_MULT16] (ptr_in_unexec_regions): Determine whether
2077 ptr is in unexec regions by checking it is multiple of 16.
2078 (unexec_malloc_header_t): New typedef.
2079 (unexec_malloc, unexec_realloc, unexec_free): Store and use
2080 allocated size information in unexec_malloc_header.
2081
20822005-05-10 Richard M. Stallman <rms@gnu.org>
2083
2084 * xterm.c (noinclude): Add #undef.
2085
2086 * image.c, xfns.c, xmenu.c: Don't include signal.h.
2087
20882005-05-09 Juanma Barranquero <lekktu@gmail.com>
2089
2090 * fileio.c (Fexpand_file_name, Frename_file, Fadd_name_to_file)
2091 (Fmake_symbolic_link, Faccess_file, Frecent_auto_save_p):
2092 Doc fixes.
2093
2094 * dired.c (Ffile_name_completion): Make argument name
2095 match its use in docstring.
2096
20972005-05-08 Luc Teirlinck <teirllm@auburn.edu>
2098
2099 * eval.c (Fdefvaralias): Remove any pre-existing
2100 variable-documentation property of the alias.
2101
21022005-05-07 Thien-Thi Nguyen <ttn@gnu.org>
2103
2104 * xfns.c (start_hourglass): Do nothing when running on a tty.
2105
21062005-05-07 Juanma Barranquero <lekktu@gmail.com>
2107
2108 * fns.c (Fchar_table_range): Fix typos in docstring.
2109
21102005-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
2111
2112 * fns.c (Fchar_table_range): Yet Another Int/Lisp_Object Mixup.
2113
21142005-05-06 Eli Zaretskii <eliz@gnu.org>
2115
2116 * lread.c (Flocate_file_internal): Doc fix.
2117
2118 * Makefile.in (lisp, shortlisp): Add jka-cmpr-hook.elc.
2119
21202005-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2121
2122 * macselect.c (x_own_selection): Accept Lisp string as result of
2123 selection converter function.
2124 (x_clear_frame_selections): Don't call x-lost-selection-functions
2125 if Emacs is not owner of the selection.
2126 (Vmac_services_selection): Put variable and initialization in
2127 #ifdef MAC_OSX.
2128 (syms_of_macselect) [MAC_OSX]: Set default value of
2129 Vmac_services_selection to PRIMARY.
2130
2131 * macterm.c (toolkit_scroll_bar_interaction): Remove unused variable.
2132 (mac_handle_tool_bar_click): Remove unused function and declaration.
2133 [USE_TOOLKIT_SCROLL_BARS] (scroll_bar_timer_callback)
2134 (install_scroll_bar_timer, set_scroll_bar_timer)
2135 (control_part_code_to_scroll_bar_part, construct_scroll_bar_click)
2136 (get_control_part_bound, x_scroll_bar_handle_press)
2137 (x_scroll_bar_handle_release, x_scroll_bar_handle_drag)
2138 (x_set_toolkit_scroll_bar_thumb): New functions and declarations.
2139 [USE_TOOLKIT_SCROLL_BARS] (last_scroll_bar_part, scroll_bar_timer)
2140 (scroll_bar_timer_event_posted_p): New variables.
2141 [USE_TOOLKIT_SCROLL_BARS] (SCROLL_BAR_FIRST_DELAY)
2142 (SCROLL_BAR_CONTINUOUS_DELAY): New macros.
2143 (x_scroll_bar_create): Set control reference with NewControl.
2144 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
2145 Initialize track_top and track_height to nil.
2146 (x_scroll_bar_set_handle, x_scroll_bar_note_movement):
2147 Put functions in #ifndef USE_TOOLKIT_SCROLL_BARS.
2148 (XTset_vertical_scroll_bar): Don't make space between scroll bar
2149 and associated window.
2150 (XTset_vertical_scroll_bar) [MAC_OSX]: Get scroll bar area width
2151 from window config.
2152 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
2153 Set track_top and track_height to nil when scroll bar size is changed.
2154 Recalculate them if they are nil.
2155 (XTread_socket) [MAC_OSX]: Use control kind to determine if the
2156 clicked control is a scroll bar.
2157 (XTread_socket) [USE_TOOLKIT_SCROLL_BARS]: Use toolkit scroll bar
2158 event handler functions. Don't add modifiers to scroll bar click
2159 events. Call scroll bar release handler when window is deactivated.
2160 (mac_initialize): Remove unused code for X toolkit.
2161 (syms_of_macterm) [!USE_TOOLKIT_SCROLL_BARS]:
2162 Initialize Vx_toolkit_scroll_bars to nil.
2163
2164 * macterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
2165 New members track_top and track_height.
2166
2167 * sysselect.h [DARWIN || MAC_OSX]: Temporarily undefine
2168 init_process when including sys/select.h.
2169
21702005-05-05 Luc Teirlinck <teirllm@auburn.edu>
2171
2172 * eval.c (Fdefvaralias): Doc fix.
2173
2174 * xmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
2175
21762005-05-05 Kim F. Storm <storm@cua.dk>
2177
2178 * buffer.c (init_buffer_once): Set cursor_in_non_selected_windows
2179 default value.
2180 (syms_of_buffer): Add default-cursor-in-non-selected-windows.
2181 Fix type of cursor-in-non-selected-windows.
2182
21832005-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2184
2185 * mac.c: #undef init_process so not to conflict with system headers.
2186
21872005-05-02 Richard M. Stallman <rms@gnu.org>
2188
2189 * buffer.c (syms_of_buffer): Define cursor-in-non-selected-windows.
2190
2191 * buffer.h (struct buffer): Add cursor_in_non_selected_windows slot.
2192
2193 * xdisp.c (Vcursor_in_non_selected_windows)
2194 (Qcursor_in_non_selected_windows): Vars deleted.
2195 (syms_of_xdisp): Don't initialize them.
2196 (get_window_cursor_type): Use cursor_in_non_selected_windows
2197 buffer slot.
2198
21992005-05-02 Kim F. Storm <storm@cua.dk>
2200
2201 * macros.c (executing_kbd_macro_index): Rename from
2202 executing_macro_index. All uses changed.
2203 (executing_kbd_macro_iterations): Rename from
2204 executing_macro_iterations. All uses changed.
2205 (executing_kbd_macro): Rename from executing_macro.
2206 All uses changed.
2207 (syms_of_macros): Rename Lisp var executing-macro-index to
2208 executing-kbd-macro-index.
2209
2210 * xdisp.c (move_it_in_display_line_to): Fix last change.
2211
22122005-05-01 Luc Teirlinck <teirllm@auburn.edu>
2213
2214 * xmenu.c (Fx_popup_menu): Doc fix.
2215
2216 * charset.c (syms_of_charset): Delete defsubr for Schars_in_region.
2217
22182005-05-02 Jason Rumney <jasonr@gnu.org>
2219
2220 * emacs.c (USAGE3, USAGE4): Keep strings below 2048 bytes.
2221
22222005-05-02 Nozomu Ando <nand@mac.com>
2223
2224 * sysselect.h: Fix typo.
2225
22262005-05-02 Nick Roberts <nickrob@snap.net.nz>
2227
2228 * charset.c (Fchars_in_region): Remove as obsolete.
2229
22302005-05-01 Kim F. Storm <storm@cua.dk>
2231
2232 * xdisp.c (move_it_in_display_line_to): Stop if we move beyond
2233 TO_CHARPOS. This may happen if last glyphs was an image or stretch
2234 glyph.
2235
22362005-05-01 Luc Teirlinck <teirllm@auburn.edu>
2237
2238 * dispnew.c (sit_for): Vexecuting_macro -> Vexecuting_kbd_macro.
2239
22402005-05-01 Richard M. Stallman <rms@gnu.org>
2241
2242 * xmenu.c [not HAVE_X_TOOLKIT] (xmenu_show):
2243 If user cancels the menu, quit unless FOR_CLICK.
2244
2245 * macros.c (Vexecuting_kbd_macro): Rename from Vexecuting_macro.
2246 All uses changed.
2247 (syms_of_macros): Define only executing-kbd-macro, not executing-macro.
2248 * keyboard.c: Change Vexecuting_macro to Vexecuting_kbd_macro.
2249 * macros.h (Vexecuting_kbd_macro): Declare instead of Vexecuting_macro.
2250 * commands.h (Vexecuting_kbd_macro): Likewise.
2251
22522005-05-01 Thien-Thi Nguyen <ttn@gnu.org>
2253
2254 * sysdep.c (get_frame_size) [VMS]: Use a fresh i/o channel.
2255
22562005-04-30 Richard M. Stallman <rms@gnu.org>
2257
2258 * fileio.c (Ffind_file_name_handler): Handle the `operations'
2259 property of the file name handler.
2260 (Qoperations): New variable.
2261 (syms_of_fileio): Initialize and staticpro it.
2262
2263 * xdisp.c (set_message_1): Delete xassert.
2264
22652005-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2266
2267 * mac.c: Don't include time.h. Include sysselect.h after systime.h.
2268
2269 * macfns.c (Fx_server_version): Add BLOCK_INPUT around Gestalt.
2270
2271 * macgui.h [HAVE_CARBON && MAC_OSX]: Don't undefine/define mktime
2272 before/after including Carbon.h if there is a working mktime.
2273
22742005-04-28 Kim F. Storm <storm@cua.dk>
2275
2276 * xfaces.c (resolve_face_name): Add arg SIGNAL_P. Calls changed.
2277 Fix cyclic alias check. If alias loop is detected, signal
2278 circular-list error if SIGNAL_P, and return Qdefault if !SIGNAL_P.
2279
22802005-04-28 Lute Kamstra <lute@gnu.org>
2281
2282 * eval.c (do_autoload): Record only autoloads in the autoload
2283 property of symbols.
2284
22852005-04-28 Nick Roberts <nickrob@snap.net.nz>
2286
2287 * emacs.c (USAGE1): Add --basic-display and --quick options.
2288
22892005-04-27 Kim F. Storm <storm@cua.dk>
2290
2291 * data.c (syms_of_data) Staticpro Qcyclic_variable_indirection.
2292
22932005-04-26 Richard M. Stallman <rms@gnu.org>
2294
2295 * window.c (Fsame_window_p, Fspecial_display_p): Doc fixes.
2296 (syms_of_window): Doc fixes.
2297
2298 * indent.c (Fvertical_motion): Undo previous change.
2299
23002005-04-26 Kenichi Handa <handa@m17n.org>
2301
2302 * fns.c (char_table_range): New function.
2303 (Fchar_table_range): Signal an error if characters in the range
2304 have inconsistent values. Don't check the parent.
2305
23062005-04-25 Kenichi Handa <handa@m17n.org>
2307
2308 * fontset.c (fontset_set): Fix previous change.
2309
23102005-04-24 Richard M. Stallman <rms@gnu.org>
2311
2312 * indent.c (Fvertical_motion): Bind fontification-functions to nil.
2313
23142005-04-24 Eli Zaretskii <eliz@gnu.org>
2315
2316 * regex.c (re_search_2, re_match_2_internal): Convert second arg
2317 of RE_TRANSLATE to int, to shut up GCC warnings.
2318
2319 * fileio.c (Fcopy_file): Doc fix.
2320 [MSDOS]: Fix call to emacs_open: buffer_file_type not defined and
2321 not needed.
2322
23232005-04-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2324
2325 * Makefile.in [HAVE_CARBON] (MAC_OBJ): Add macselect.o.
2326 (SOME_MACHINE_OBJECTS): Likewise.
2327 (mac.o): Depend on ccl.h.
2328 (macselect.o): New target.
2329
2330 * emacs.c (main) [MAC_OS8 || MAC_OSX && HAVE_CARBON]:
2331 Call syms_of_macselect.
2332
2333 * frame.c (Fdelete_frame) [MAC_OS]: Call x_clear_frame_selections.
2334
2335 * mac.c [!TARGET_API_MAC_CARBON]: Don't include charset.h or coding.h.
2336 (QCLIPBOARD): Remove variable.
2337 (syms_of_mac): Don't initialize it.
2338 (Fmac_paste_function, Fmac_cut_function, Fx_selection_exists_p):
2339 Remove functions.
2340 (syms_of_mac): Don't defsubr them.
2341 [TARGET_API_MAC_CARBON] (Qmime_charset, QNFD, QNFKD, QNFC, QNFKC)
2342 (QHFS_plus_D, QHFS_plus_C): New variables.
2343 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
2344 [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp)
2345 (cfstring_create_normalized): New functions.
2346 [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Likewise.
2347 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
2348
2349 * macterm.c (handling_window_update, terminate_flag):
2350 Remove variables.
2351 (do_window_update, do_ae_quit_application, XTread_socket):
2352 Don't use them.
2353 (WNE_SLEEP_AT_SUSPEND, WNE_SLEEP_AT_RESUME): Don't define.
2354 [USE_CARBON_EVENTS && MAC_OSX] (mac_handle_service_event)
2355 (init_service_handler): Move to macselect.c. Remove declarations.
2356 [USE_CARBON_EVENTS && MAC_OSX] (init_service_handler): Add extern.
2357 (Qapplication, Qabout): New variables.
2358 (syms_of_mac): Initialize them.
2359 [USE_CARBON_EVENTS && MAC_OSX] (Qpreferences, Qservices, Qpaste)
2360 (Qperform): New variables.
2361 (syms_of_mac) [USE_CARBON_EVENTS && MAC_OSX]: Initialize them.
2362 (do_get_menus) [TARGET_API_MAC_CARBON]: Don't call AppendResMenu.
2363 (do_menu_choice): Unhighlight menu bar also when menu_id is 0.
2364 (mac_store_application_menu_event, init_menu_bar): New functions.
2365 [USE_CARBON_EVENTS] (mac_handle_command_event)
2366 (init_command_handler): New functions.
2367 (mac_handle_window_event): Return noErr on window update event.
2368 (do_ae_quit_application): Call mac_store_application_menu_event.
2369 (mac_initialize) [USE_CARBON_EVENTS]: Call init_command_handler
2370 and init_menu_bar.
2371
2372 * macterm.h (x_clear_frame_selections): Add extern.
2373
2374 * macselect.c: New file for selection processing on Mac OS.
2375
23762005-04-23 Richard M. Stallman <rms@gnu.org>
2377
2378 * fileio.c (Fcopy_file): New arg MUSTBENEW.
2379 (Frename_file): Pass new arg to Fcopy_file.
2380
2381 * window.c (window_size_fixed): Variable deleted.
2382 (syms_of_window): Initialize window-size-fixed to nil.
2383 But don't DEFVAR window_size_fixed.
2384
23852005-04-23 Andreas Schwab <schwab@suse.de>
2386
2387 * m/macppc.h (LD_SWITCH_MACHINE) [LINUX]: Don't define.
2388 (START_FILES, LIB_STANDARD) [LINUX && _ARCH_PPC64]: Override to
2389 use lib64 instead of lib.
2390 (_LP64) [_ARCH_PPC64]: Define if not defined.
2391
23922005-04-23 David Hunter <hunterd42@comcast.net> (tiny change)
2393
2394 * s/ms-w32.h (HAVE_PWD_H): Define.
2395
23962005-04-22 Kenichi Handa <handa@m17n.org>
2397
2398 * fns.c (copy_sub_char_table): Explicitly copy the default value
2399 of the sub-chartable.
2400
2401 * fontset.c (fontset_set): When a sub-chartable is created,
2402 explicitly sets the defalt value.
2403
24042005-04-22 Kim F. Storm <storm@cua.dk>
2405
2406 * fns.c (Fplist_get): Replace by Fsafe_plist_get.
2407 (Fsafe_plist_get): Rename to Fplist_get.
2408 (Fsafe_get): Remove, as Fget now uses safe Fplist_get.
2409 (defsubr): Remove defsubr for Fsafe_plist_get and Fsafe_get.
2410
2411 * lisp.h (Fsafe_plist_get, Fsafe_get): Remove EXFUN.
2412
2413 * xdisp.c (store_mode_line_string, produce_stretch_glyph)
2414 (note_mode_line_or_margin_highlight, note_mouse_highlight):
2415 Use Fplist_get instead of Fsafe_plist_get.
2416
2417 * xfaces.c (resolve_face_name): Use Fget instead of Fsafe_get.
2418
24192005-04-21 Miles Bader <miles@gnu.org>
2420
2421 * xdisp.c (dump_glyph_row): Don't display overlay_arrow_p field.
2422
24232005-04-20 Thien-Thi Nguyen <ttn@gnu.org>
2424
2425 * sysdep.c: Remove reference to defunct vms-pwd.h.
2426 * dired.c: Likewise. Also, for pwd.h, use HAVE_PWD_H, not !VMS.
2427 * editfns.c, fileio.c, filelock.c, sysdep.c, xrdb.c: Likewise.
2428
2429 * config.in: Regenerate.
2430
24312005-04-20 Kenichi Handa <handa@m17n.org>
2432
2433 * lisp.h (CHAR_TABLE_DEFAULT_SLOT_ASCII): New macro.
2434 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_CONTROL): New macro.
2435 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_GRAPHIC): New macro.
2436
2437 * alloc.c (make_sub_char_table): Argument changed to initial
2438 value of the slots.
2439
2440 * data.c (Faref): Handle special slots used as default values of
2441 ascii, eight-bit-control, eight-bit-control. Don't ignore a
2442 default value set for a group of characters.
2443 (Faset): Signal an error if IDXVAL is not a valid character code.
2444 Make a sub-chartable with correct initial value.
2445
2446 * fns.c (Fset_char_table_range): Don't set slots used as default
2447 values for ascii, eight-bit-control, eight-bit-graphic.
2448 Don't call Faref with charset-id.
2449 (Fset_char_table_default): Document how to treat normal character
2450 argument. Handle special slots used as default values of ascii,
2451 eight-bit-control, eight-bit-control. Make a sub chartable if
2452 necessary.
2453
24542005-04-20 Kenichi Handa <handa@m17n.org>
2455
2456 * search.c (boyer_moore): Fix previous change.
2457
24582005-04-19 Kim F. Storm <storm@cua.dk>
2459
2460 * xdisp.c (setup_for_ellipsis): Reset saved_face_id to use default
2461 face unless last visible char and first invisible char have the
2462 same face. Also use default face if saved_face_id is undefined.
2463
24642005-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2465
2466 * macgui.h (MacFontStruct): Remove member `fontname'. Add member
2467 `full_name'.
2468 [TARGET_API_MAC_CARBON] (MacFontStruct): Use type int for
2469 mac_scriptcode member.
2470
2471 * macterm.c (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): Remove variables.
2472 (syms_of_mac): Don't initialize them.
2473 (Vmac_charset_info_alist): New variable.
2474 (syms_of_mac): Defvar it.
2475 (create_text_encoding_info_alist): New function.
2476 (decode_mac_font_name, mac_to_x_fontname)
2477 (x_font_name_to_mac_font_name, init_font_name_table): Don't hard
2478 code the correspondence among XLFD charsets, Mac script codes, and
2479 Emacs coding systems. Use Vmac_charset_info_alist and result of
2480 create_text_encoding_info_alist instead.
2481 (init_font_name_table) [TARGET_API_MAC_CARBON]: Use Font Manager
2482 routines also on Mac OS Classic.
2483 (init_font_name_table) [!TARGET_API_MAC_CARBON]:
2484 Use add_font_name_table_entry.
2485 (mac_do_list_fonts): Regard 0 in XLFD scaleble fields as
2486 specified. Derive unspecified scalable fields from specified one.
2487 (x_list_fonts): Consider Valternate_fontname_alist.
2488 (kDefaultFontSize): Change value from 9 to 12.
2489 (XLoadQueryFont): Get decoded font family, font face, and charset
2490 from x_font_name_to_mac_font_name. Set full name of loaded font.
2491 (mac_unload_font): Free `full_name' member.
2492 (x_load_font): Don't try XLoadQueryFont if x_list_fonts returns
2493 NULL. Copy full_name member of struct MacFontStruct to that of
2494 struct font_info.
2495
24962005-04-19 Kim F. Storm <storm@cua.dk>
2497
2498 * xdisp.c (handle_stop): Set saved_face_id to current face if
2499 selective_display_ellipsis_p so ellipsis will be shown in same
2500 face as preceding text.
2501 (setup_for_ellipsis): Don't set saved_face_id here.
2502 (next_element_from_display_vector): Default to saved_face_id.
2503
2504 * fns.c (Fsafe_get): New function.
2505 (syms_of_fns): Defsubr it.
2506
2507 * lisp.h (Fsafe_get): EXFUN it.
2508
2509 * xfaces.c (resolve_face_name): Use Fsafe_get to avoid redisplay
2510 loops in case of bad face property lists. Limit number of face
2511 alias lookups to 10 (in case of face alias loops).
2512
25132005-04-18 Kim F. Storm <storm@cua.dk>
2514
2515 * dispextern.h (struct glyph_row): New member overlay_arrow_bitmap.
2516 It replaces the corresponding member from struct window, as a
2517 window may now show multiple overlay arrows.
2518 Remove member overlay_arrow_p, superseeded by overlay_arrow_bitmap.
2519
2520 * dispnew.c (row_equal_p, update_window_line, scrolling_window):
2521 Compare overlay_arrow_bitmap than overlay_arrow_p members.
2522
2523 * fringe.c (draw_fringe_bitmap): Use overlay_arrow_bitmap from row
2524 rather than from window.
2525 (update_window_fringes): Compare overlay_arrow_bitmap rather than
2526 overlay_arrow_p members.
2527 (Ffringe_bitmaps_at_pos): Return fringe overlay_arrow_bitmap name
2528 if not default.
2529
2530 * window.h (struct window): Remove member overlay_arrow_bitmap.
2531
2532 * window.c (make_window): Don't initialize overlay_arrow_bitmap.
2533
2534 * xdisp.c (overlay_arrow_string_or_property): Remove PBITMAP arg.
2535 Calls changed. Don't check for overlay-arrow-bitmap property here.
2536 (overlay_arrow_at_row): Remove PBITMAP arg. Instead, if left
2537 fringe is present, return Lisp integer for bitmap (or -1 for default).
2538 Fix value of overlay-arrow-bitmap property to be a symbol, use
2539 lookup_fringe_bitmap to parse it.
2540 (display_line): Change call to overlay_arrow_at_row. Store integer
2541 return value as overlay bitmap in row rather than window.
2542 Only show overlay arrow if row displays text, or if no other overlay
2543 arrow is seen in window (if overlay marker is at point-max).
2544
25452005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
2546
2547 * xfaces.c (realize_x_face) [!HAVE_WINDOW_SYSTEM]: Return NULL.
2548
25492005-04-18 Lute Kamstra <lute@gnu.org>
2550
2551 * lread.c (Vloads_in_progress): Static.
2552 * fns.c (Vloads_in_progress): Remove extern.
2553 (load_in_progress): Add extern.
2554 (Frequire): Use load_in_progress instead of Vloads_in_progress.
2555
25562005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
2557
2558 * xmenu.c (Fx_popup_menu): Initialize error_name to NULL.
2559
25602005-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2561
2562 * macterm.c (XTread_socket): Don't beep on keyboard input even if
2563 no frame is visible.
2564
25652005-04-16 Dan Nicolaescu <dann@ics.uci.edu>
2566
2567 * term.c (struct keys): Add support for shifted keys.
2568
25692005-04-16 Richard M. Stallman <rms@gnu.org>
2570
2571 * xdisp.c (with_echo_area_buffer): Delete WHICH < 0 case.
2572 (set_message): Call with_echo_area_buffer with WHICH = 0.
2573 (set_message_1): Erase the echo area buffer first thing.
2574 (echo_area_display): Don't clear echo_message_buffer.
2575
25762005-04-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2577
2578 * Makefile.in (mac.o): Depend on charset.h and coding.h.
2579
2580 * mac.c: Include charset.h and coding.h.
2581 [TARGET_API_MAC_CARBON] (Qutf_8): Remove extern.
2582 [TARGET_API_MAC_CARBON] (cfstring_create_with_string): New function.
2583 [TARGET_API_MAC_CARBON] (Fmac_get_preference): Use it.
2584
2585 * macfns.c [TARGET_API_MAC_CARBON] (Fx_file_dialog): Likewise.
2586
2587 * image.c [MAC_OSX] (image_load_quartz2d): Likewise.
2588
2589 * macterm.c (x_autoselect_window_p): Remove variable.
2590 (last_window): New variable.
2591 (XTreassert_line_highlight, x_change_line_highlight):
2592 Remove declarations.
2593 (mac_focus_changed, x_detect_focus_change): New functions and
2594 declarations.
2595 (XTextExtents16, front_emacs_window): Remove function.
2596 (mac_focus_frame): New function.
2597 (XTmouse_position, do_menu_choice, do_zoom_window, XTread_socket)
2598 (mac_check_for_quit_char): Use it instead of front_emacs_window.
2599 (x_scroll_bar_report_motion): Obtain window from control owner.
2600 (x_make_frame_invisible): Set window manager size hint.
2601 (do_mouse_moved): Remove function.
2602 (XTread_socket): Move its contents here. Generate select-window
2603 event on mouse movement if needed. Use x_detect_focus_change on
2604 activate/deactivate events. Don't deiconify frame or invalidate
2605 window rectangle when dnd items are dropped.
2606 Don't activate/deactivate root control.
2607 (frame_highlight, frame_unhighlight): Activate/deactivate root
2608 control here.
2609 (syms_of_macterm): Delete DEFVAR_BOOL for x_autoselect_window_p.
2610
2611 * macterm.h (cfstring_create_with_string) [TARGET_API_MAC_CARBON]:
2612 New extern.
2613
26142005-04-15 Luc Teirlinck <teirllm@auburn.edu>
2615
2616 * Makefile.in: Define new macro TOOLTIP_SUPPORT.
2617 (lisp): Use it.
2618 (SOME_MACHINE_LISP): Add tooltip.
2619
26202005-04-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2621
2622 * mac.c [!TARGET_API_MAC_CARBON]: Include MacLocales.h.
2623 Don't include TextEncodingConverter.h.
2624 (mac_system_script_code, Vmac_system_locale): New variables.
2625 (syms_of_mac): Defvar them.
2626 (mac_get_system_locale): New function.
2627
2628 * macfns.c (x_set_name, x_set_title) [!TARGET_API_MAC_CARBON]:
2629 Use ENCODE_SYSTEM to encode title bar string.
2630 (x_create_tip_frame): Apply 2005-03-18 change for xfns.c.
2631 (Fx_file_dialog) [TARGET_API_MAC_CARBON && !MAC_OSX]:
2632 Use CFStringGetSystemEncoding to get system default string encoding.
2633
2634 * macterm.c [!TARGET_API_MAC_CARBON]: Don't include
2635 TextEncodingConverter.h.
2636
26372005-04-13 Steven Tamm <steventamm@mac.com>
2638
2639 * macterm.c (syms_of_macterm): Remove redundant definition of
2640 mac-pass-control-to-system.
2641
26422005-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
2643
2644 * window.c (Fset_window_configuration): Be careful when you choose
2645 among several possible points for the new_current_buffer.
2646
26472005-04-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2648
2649 * keyboard.c (poll_for_input) [SYNC_INPUT]: Don't call
2650 poll_for_input_1. Set interrupt_input_pending to 1 instead.
2651 (Qlanguage_change) [MAC_OS]: New variable.
2652 (syms_of_keyboard) [MAC_OS]: Intern and staticpro it.
2653 (kbd_buffer_get_event) [MAC_OS]: Make event for LANGUAGE_CHANGE_EVENT.
2654
2655 * macterm.c (mac_keyboard_text_encoding)
2656 (current_mac_keyboard_text_encoding): Remove variables.
2657 (XTread_socket): Store language-change event if keyboard script change
2658 is detected. Don't convert input to `mac_keyboard_text_encoding'.
2659 (syms_of_macterm): Delete DEFVAR_INT for mac-keyboard-text-encoding.
2660
2661 * termhooks.h (enum event_kind) [MAC_OS]: Add LANGUAGE_CHANGE_EVENT.
2662
26632005-04-10 Richard M. Stallman <rms@gnu.org>
2664
2665 * emacs.c (standard_args): Rename --bare-bones to --quick.
2666 Add -D aka --basic-display.
2667
2668 * buffer.c (Fmake_indirect_buffer): Clear out some local variables.
2669
26702005-04-09 Richard M. Stallman <rms@gnu.org>
2671
2672 * keymap.c (where_is_internal): Convert a string used as event type
2673 into "(any string)".
2674
2675 * lread.c (Vloads_in_progress): Not static.
2676 * fns.c (Vloads_in_progress): Add extern.
2677 (Frequire): Don't do LOADHIST_ATTACH if Vloads_in_progress is nil.
2678
26792005-04-09 Thien-Thi Nguyen <ttn@surf.glug.org>
2680
2681 * dispnew.c (mirror_line_dance): Avoid crash if W2 is null.
2682
26832005-04-09 Lute Kamstra <lute@gnu.org>
2684
2685 * print.c (PRINTPREPARE): Check if the marker PRINTCHARFUN is
2686 within the accessible part of the buffer.
2687
26882005-04-09 Kim F. Storm <storm@cua.dk>
2689
2690 * lread.c (readevalloop): Add args START and END as region in
2691 current buffer to read. Callers changed.
2692 When specified, narrow to this region only when reading,
2693 not during eval. Track next point to read from during eval.
2694 Also restore point to "real" buffer position before eval.
2695 (Feval_region): Don't save excursion and restriction here, and
2696 don't narrow to region. Just pass region to readevalloop.
2697 Note: Point is now preserved even when PRINTFLAG is nil.
2698
26992005-04-08 Kim F. Storm <storm@cua.dk>
2700
2701 * xdisp.c (syms_of_xdisp): Init overlay-arrow-string to "=>".
2702
27032005-04-06 Kim F. Storm <storm@cua.dk>
2704
2705 * emacs.c (standard_args): Add -Q, --bare-bones, -bare-bones.
2706
27072005-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2708
2709 * mac.c (cfdate_to_lisp): Add `const' for variable `epoch_gdate'.
2710 (Fmac_get_preference): Doc fix.
2711
2712 * macfns.c (Fx_create_frame, x_create_tip_frame):
2713 Add "fontset-mac" to fallback font/fontsets.
2714
27152005-04-04 Kim F. Storm <storm@cua.dk>
2716
2717 * alloc.c (Fgarbage_collect): Call CHECK_CONS_LIST before and after gc.
2718
2719 * eval.c (Ffuncall): Always call CHECK_CONS_LIST on entry.
2720 Call it again after autoload.
2721
27222005-04-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2723
2724 * alloc.c (allocate_string_data): Call BLOCK_INPUT before calling
2725 mallopt.
2726
2727 * ralloc.c (r_alloc_init): Ditto.
2728
27292005-04-01 Kenichi Handa <handa@m17n.org>
2730
2731 * lisp.h (Vascii_upcase_table, Vascii_canon_table)
2732 (Vascii_eqv_table): Extern them.
2733
2734 * casetab.c (set_case_table): If standard is nonzero, setup
2735 Vascii_upcase_table, Vascii_canon_table, and Vascii_eqv_table.
2736
2737 * search.c (looking_at_1): Use current_buffer->case_canon_table,
2738 not DOWNCASE_TABLE.
2739 (string_match_1): Likewise.
2740 (fast_c_string_match_ignore_case): Use Vascii_canon_table, not
2741 Vascii_downcase_table.
2742 (fast_string_match_ignore_case): Likewise.
2743 (search_buffer): Fix checking of boyer-moore usability.
2744 (boyer_moore): Calculate translate_prev_byte1/2/3 in advance.
2745 No need of tranlating characters in PAT. Fix calculation of
2746 simple_translate.
2747
27482005-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
2749
2750 * xterm.c [HAVE_XAW3D]: Include ThreeD.h for XtNbeNiceToColormap.
2751 (x_create_toolkit_scroll_bar): Test XtNbeNiceToColormap before using it.
2752 Use XtNtopShadowPixel and XtNbottomShadowPixel.
2753 (x_set_toolkit_scroll_bar_thumb): Remove ugly old hack that didn't
2754 really work and that breaks with some versions of Xaw3d.
2755
27562005-03-31 Kenichi Handa <handa@m17n.org>
2757
2758 * coding.c (syms_of_coding): Fix previous change.
2759
27602005-03-30 Stefan Monnier <monnier@iro.umontreal.ca>
2761
2762 * fileio.c (search_embedded_absfilename): Fix last change.
2763
27642005-03-25 Kenichi Handa <handa@m17n.org>
2765
2766 * coding.c (syms_of_coding): Suggest to use set-coding-category in
2767 the docstring of coding-category-list.
2768
27692005-03-31 Kim F. Storm <storm@cua.dk>
2770
2771 * keyboard.c (Qmouse_fixup_help_message): New var.
2772 (syms_of_keyboard): Intern and staticpro it.
2773 (show_help_echo): Apply mouse-fixup-help-message to help string.
2774
27752005-03-30 Kim F. Storm <storm@cua.dk>
2776
2777 * xdisp.c (display_line): Allow multiple overlay arrows in window.
2778
27792005-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
2780
2781 * fileio.c (Fexpand_file_name): Use IS_DEVICE_SEP.
2782 (file_name_absolute_p): New fun, extracted from Ffile_name_absolute_p.
2783 (Ffile_name_absolute_p): Use it.
2784 (search_embedded_absfilename): New fun, extracted from
2785 Fsubstitute_in_file_name. Use file_name_absolute_p.
2786 Free the pw data after use.
2787 (Fsubstitute_in_file_name): Use it.
2788 After cutting a prefix, re-check file-name-handler.
2789
27902005-03-26 Lennart Borgman <lennart.borgman.073@student.lu.se>
2791
2792 * w32term.h (x_output): Add focus_state.
2793
2794 * w32term.c (x_focus_changed, w32_detect_focus_change): New functions.
2795 (w32_read_socket) [WM_SETFOCUS]: Call w32_detect_focus_change.
2796
27972005-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
2798
2799 * minibuf.c (Fminibuffer_complete_and_exit, Fself_insert_and_exit):
2800 Use Fexit_minibuffer.
2801 (Fexit_minibuffer): Mark it as no-return, deactivate the mark.
2802
28032005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
2804
2805 * dired.c (Ffile_attributes): Add a missing gcpro.
2806
2807 * alloc.c (make_number): The arg can be bigger than `int'.
2808 * lisp.h (make_number): Make prototype more precise.
2809
2810 * process.c, dired.c (Vfile_name_coding_system)
2811 (Vdefault_file_name_coding_system):
2812 * callproc.c (Vdoc_file_name, Vfile_name_coding_system)
2813 (Vdefault_file_name_coding_system): Remove unused declarations.
2814
28152005-03-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2816
2817 * xmenu.c (create_and_show_popup_menu): Just remove menu and return
2818 if it failed to pop up (Gnome "show pointer on ctrl" option makes
2819 menus fail to pop up).
2820
28212005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
2822
2823 * xdisp.c (get_next_display_element): Also use `\ ' & `\-' for latin-9.
2824 Just prepend a backslash without replacing the NBSP by an SPC.
2825
28262005-03-22 Kim F. Storm <storm@cua.dk>
2827
2828 * xfaces.c (lookup_derived_face): Add arg SIGNAL_P.
2829 * dispextern.h (lookup_derived_face): Fix prototype.
2830 * msdos.c (XMenuActivate): Fix call to lookup_derived_face.
2831
2832 * xdisp.c (handle_single_display_spec): Derive left-fringe and
2833 right-fringe face from fringe face.
2834
2835 * fringe.c (draw_fringe_bitmap_1, Fset_fringe_bitmap_face):
2836 Derive face from fringe face.
2837
28382005-03-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2839
2840 * xrdb.c (x_load_resources): Undo previous change (2005-03-18).
2841
28422005-03-22 David Kastrup <dak@gnu.org>
2843
2844 * textprop.c (Fnext_char_property_change)
2845 (Fprevious_char_property_change): Allow marker as limit.
2846 (Fnext_single_char_property_change)
2847 (Fprevious_single_char_property_change): Check that limit is a
2848 number in strings.
2849 (Fnext_single_char_property_change): Coerce position to integer.
2850 (Fprevious_single_char_property_change): Same here.
2851
28522005-03-21 Thien-Thi Nguyen <ttn@gnu.org>
2853
2854 * s/openbsd.h (LD_SWITCH_SYSTEM_tmp): Define if undefined.
2855
28562005-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
2857
2858 * frame.c (Fignore_event): Remove.
2859 (syms_of_frame): Don't defsubr it.
2860
2861 * keyboard.c (keys_of_keyboard): Just use `ignore' instead of the
2862 redundant `ignore-event'.
2863
28642005-03-19 Eli Zaretskii <eliz@gnu.org>
2865
2866 * unexec.c (write_segment, unexec): Move these functions to avoid
2867 forward references (which cause errors with "gcc -gcoff").
2868
28692005-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2870
2871 * xfns.c (x_create_tip_frame): Remove setting of Vx_resource_name so
2872 that it doesn't become "tooltip". The specbind is enough.
2873
2874 * xrdb.c (x_load_resources): Use different char *helv when I18N
2875 is present.
2876
28772005-03-17 Kenichi Handa <handa@m17n.org>
2878
2879 * coding.c (syms_of_coding): Docstring of coding-category-list fixed.
2880
28812005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
2882
2883 * xfaces.c (x_update_menu_appearance) [HAVE_X_I18N]:
2884 Use xic_create_fontsetname even for non-Motif menus.
2885 Don't forget to free the fontsetname.
2886
2887 * xfns.c (xic_create_fontsetname): Add a final catch-all font pattern.
2888
28892005-03-17 Richard M. Stallman <rms@gnu.org>
2890
2891 * dispnew.c (mirror_line_dance): Set W2 according to FRAME_FROM.
2892
2893 * fileio.c (Fcopy_file, Frename_file, Fadd_name_to_file)
2894 (Fmake_symbolic_link): Use G to read the new file name.
2895
2896 * callint.c (Finteractive): Document G option.
2897 (Fcall_interactively): Implement G option.
2898
2899 * buffer.c (buffer_lisp_local_variables): New function,
2900 broken out from Fbuffer_local_variables.
2901 (clone_per_buffer_values): Use buffer_lisp_local_variables.
2902
29032005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
2904
2905 * xfns.c (xic_create_fontsetname): Add `motif' argument.
2906 Always return a freshly allocated string.
2907 (xic_create_xfontset): Adjust call.
2908
2909 * xfaces.c (x_update_menu_appearance) [USE_MOTIF]:
2910 Use xic_create_fontsetname to create a fontset so utf-8 locales work.
2911 (dump_realized_face): Fix warning.
2912
2913 * emacs.c (Fkill_emacs): YAILOM.
2914
2915 * frame.c (Fignore_event): Fix ancient obscure C-u handling bug.
2916
29172005-03-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2918
2919 * mac.c (HASHKEY_TERMINAL): Remove.
2920 (HASHKEY_MAX_NID): New macro.
2921 (xrm_q_get_resource_1): Rename from xrm_q_get_resource. Add extra
2922 argument.
2923 (xrm_q_get_resource): Call xrm_q_get_resource_1 with extra argument.
2924 (xrm_create_database, xrm_q_put_resource)
2925 (xrm_merge_string_database, xrm_q_get_resource_1)
2926 (xrm_q_get_resource): Change resource database representation so
2927 that it may not use multiple hash tables for a single database.
2928 [TARGET_API_MAC_CARBON] (xrm_cfproperty_list_to_value): YAILOM.
2929
29302005-03-16 Stefan Monnier <monnier@iro.umontreal.ca>
2931
2932 * xmenu.c (ENCODE_MENU_STRING) [HAVE_X_I18N]: Use ENCODE_SYSTEM.
2933
2934 * coding.h (ENCODE_SYSTEM, DECODE_SYSTEM) [!WINDOWSNT]: Use the
2935 locale-coding-system, as was already done for WINDOWSNT.
2936
2937 * keyboard.c (read_char): Only do the 7-bit-meta -> 27-bit-meta
2938 translation for chars in the 0-255 range.
2939
29402005-03-16 Lute Kamstra <lute@gnu.org>
2941
2942 * floatfns.c (Ffloor): Doc fix.
2943
29442005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2945
2946 * mac.c: Include macterm.h instead of directly including Carbon.h.
2947 [TARGET_API_MAC_CARBON] (Qstring, Qnumber, Qboolean, Qdate, Qdata)
2948 (Qarray, Qdictionary): New variables.
2949 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
2950 [TARGET_API_MAC_CARBON] (Qutf_8): Add extern.
2951 [TARGET_API_MAC_CARBON] (DECODE_UTF_8): New macro.
2952 [TARGET_API_MAC_CARBON] (struct cfdict_context): New struct used
2953 in callback for CFDictionaryApplyFunction.
2954 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
2955 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
2956 (cfobject_desc_to_lisp, cfdictionary_add_to_list)
2957 (cfdictionary_puthash, cfproperty_list_to_lisp): New functions.
2958 [TARGET_API_MAC_CARBON] (Fmac_get_preference): New function.
2959 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
2960 (P, LOOSE_BINDING, SINGLE_COMPONENT, HASHKEY_TERMINAL): New macro.
2961 (skip_white_space, parse_comment, parse_include_file)
2962 (parse_binding, parse_component, parse_resource_name, parse_value)
2963 (parse_resource_line, xrm_create_database, xrm_q_put_resource)
2964 (xrm_merge_string_database, xrm_q_get_resource, xrm_get_resource)
2965 (xrm_cfproperty_list_to_value, xrm_get_preference_database):
2966 New functions.
2967
2968 * macfns.c (mac_get_rdb_resource): Remove function.
2969 (x_get_string_resource): Use xrm_get_resource.
2970
2971 * macgui.h (XrmDatabase): Typedef to Lisp_Object.
2972
2973 * macterm.c (x_list_fonts): FONT-LIST-CACHE is now cadr part of
2974 name_list_element.
2975 (mac_make_rdb): Create resource database from preferences and
2976 argument string.
2977 (mac_term_init): Save resource database to cddr part of
2978 name_list_element.
2979
2980 * macterm.h (xrm_merge_string_database, xrm_get_resource)
2981 (xrm_get_preference_database): Add externs.
2982 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
2983 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
2984 (cfobject_desc_to_lisp, cfproperty_list_to_lisp): Likewise.
2985
2986 * process.c (init_process): Change `#ifdef DARWIN' to `#if
2987 defined (DARWIN) || defined (MAC_OSX)'
2988
2989 * s/darwin.h (DARWIN): Don't define.
2990
29912005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2992
2993 * macfns.c (Qhyper, Qsuper, Qmeta, Qalt, Qctrl, Qcontrol, Qshift):
2994 Remove unused variables.
2995 (syms_of_macfns): Don't initialize them. Likewise for
2996 Qface_set_after_frame_default. Defvar and initialize
2997 Vx_window_horizontal_drag_shape.
2998 (x_set_mouse_color): Change mouse pointer shape.
2999 (mac_window) [!MAC_OSX]: Create root control.
3000 (Fx_create_frame): Remove initializations of mouse pointer shapes.
3001 (hourglass_started): New function (from xfns.c).
3002 (start_hourglass, cancel_hourglass): Put function body in #ifdef
3003 MAC_OSX.
3004 (show_hourglass) [TARGET_API_MAC_CARBON]: Create progress
3005 indicator for each non-tooltip frame if needed, and show it.
3006 (hide_hourglass) [TARGET_API_MAC_CARBON]: Hide progress indicators.
3007
3008 * macgui.h [!TARGET_API_MAC_CARBON]: Include Appearance.h and
3009 Controls.h. Use ThemeCursor instead of CursHandle.
3010
3011 * macterm.c (activate_scroll_bars, deactivate_scroll_bars):
3012 Remove functions and declarations.
3013 (mac_set_colors): Take argument for saving background color.
3014 All callers changed.
3015 (XDrawLine, XClearArea, mac_draw_bitmap, XFillRectangle)
3016 (mac_draw_rectangle, mac_draw_string_common): Save and Restore
3017 background color.
3018 (x_update_end, mac_do_track_drag): Don't reset background color.
3019 (mac_define_frame_cursor) [!TARGET_API_MAC_CARBON]:
3020 Use SetThemeCursor.
3021 (x_set_window_size) [TARGET_API_MAC_CARBON]: Move progress
3022 indicator control to the upper-right corner of the window.
3023 (arrow_cursor) [!TARGET_API_MAC_CARBON]: Remove variable.
3024 (do_init_managers) [!TARGET_API_MAC_CARBON]: Don't initialize it.
3025 (do_window_update): Update controls after updating content area.
3026 (mac_handle_window_event): Remove unused extern.
3027 (XTread_socket): Check both control handle and control part code
3028 to determine whether a scroll bar is clicked. Activate/deactivate
3029 root control instead of contained scroll bar controls.
3030 (make_mac_terminal_frame): Use ThemeCursor constants.
3031
3032 * macterm.h (struct mac_output) [TARGET_API_MAC_CARBON]:
3033 New member hourglass_control.
3034 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): New defines.
3035 (activate_scroll_bars, deactivate_scroll_bars): Remove declarations.
3036
30372005-03-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3038
3039 * macterm.c (keycode_to_xkeysym_table): Change mapping so that it
3040 coincides with that in Apple X11 except `clear', `enter' on
3041 laptops, and fn + `enter' on laptops.
3042
30432005-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
3044
3045 * xmenu.c (ENCODE_MENU_STRING): Explicitly use string_make_unibyte.
3046 (list_of_panes, list_of_items, Fx_popup_menu): Use XCAR/XCDR.
3047 (digest_single_submenu, xmenu_show): Use ENCODE_MENU_STRING.
3048
3049 * xfns.c (xic_defaut_fontset): New constant.
3050 (xic_create_fontsetname): New function.
3051 Extracted from create_frame_xic. Try to generate a slightly
3052 better fontset.
3053 (xic_create_xfontset): Use it.
3054 (create_frame_xic): Simplify.
3055
30562005-03-11 Stefan Monnier <monnier@iro.umontreal.ca>
3057
3058 * fileio.c (Fmake_symbolic_link): Fix last change.
3059
30602005-03-11 Richard M. Stallman <rms@gnu.org>
3061
3062 * fileio.c (Frename_file, Fadd_name_to_file)
3063 (Fmake_symbolic_link): If NEWNAME or LINKNAME is a directory,
3064 expand the basename of FILE relative to it.
3065
30662005-03-11 Kenichi Handa <handa@m17n.org>
3067
3068 * fileio.c (Finsert_file_contents): Call Fcheck_coding_system
3069 before calling setup_coding_system so that autoloading of a coding
3070 system work.
3071
30722005-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3073
3074 * xfns.c (hourglass_started): New function.
3075
3076 * dispextern.h: Declare hourglass_started.
3077
3078 * keyboard.c (Fexecute_extended_command): Restart hourglass
3079 after call to Fcompleting_read if already started.
3080
3081 * gtkutil.c (xg_update_scrollbar_pos): Call x_sync so that the
3082 GTK main loop is entered in xterm.c, thus doing the redraw.
3083
30842005-03-10 Kim F. Storm <storm@cua.dk>
3085
3086 * xdisp.c (pos_visible_p): Fix X value in last line of buffer.
3087
30882005-03-08 Kenichi Handa <handa@m17n.org>
3089
3090 * frame.c (x_set_font): Call set_default_ascii_font if an
3091 available font is found.
3092
3093 * fontset.c (set_default_ascii_font): New function.
3094 (syms_of_fontset): Don't set FONTSET_ASCII (Vdefault_fontset) here.
3095
3096 * fontset.h (set_default_ascii_font): Extern it.
3097
30982005-03-07 Kim F. Storm <storm@cua.dk>
3099
3100 * xdisp.c (CLEAR_IMAGE_CACHE_COUNT): New const.
3101 (clear_image_cache_count): New var.
3102 (redisplay_internal): Don't clear face and image caches in the
3103 middle of redisplay; do it afterwards.
3104
3105 * blockinput.h (TOTALLY_UNBLOCK_INPUT): Avoid dangling else.
3106
3107 * xdisp.c (notice_overwritten_cursor): Check that phys_cursor.vpos
3108 is valid. If not, clear phys_cursor_on_p and return.
3109
31102005-03-07 Andreas Schwab <schwab@suse.de>
3111
3112 * blockinput.h (UNBLOCK_INPUT_TO): Always call UNBLOCK_INPUT.
3113
31142005-03-06 Richard M. Stallman <rms@gnu.org>
3115
3116 * keyboard.c (Ftop_level): Let Fthrow deal with UNBLOCK_INPUT.
3117
3118 * eval.c (unwind_to_catch): Use UNBLOCK_INPUT_TO.
3119 (Feval, Ffuncall): Use CHECK_CONS_LIST.
3120
3121 * lisp.h (CHECK_CONS_LIST): New macro (two definitions).
3122
3123 * blockinput.h (UNBLOCK_INPUT_TO): New macro.
3124 (TOTALLY_UNBLOCK_INPUT): Handle a pending signal if any.
3125
31262005-03-05 Juri Linkov <juri@jurta.org>
3127
3128 * emacs.c (USAGE1): Replace Info node name "command arguments"
3129 with "emacs invocation".
3130 (USAGE3): Fix usage of `--color=MODE' which actually doesn't
3131 allow arguments `--color' and `MODE' to be separated by space.
3132 Add --no-blinking-cursor, -nbc.
3133 (standard_args): Add -nbc, --no-blinking-cursor.
3134
31352005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
3136
3137 * s/vms.h: Define NO_HYPHENS_IN_FILENAMES.
3138 * s/vms4-4.h, s/vms5-5.h: Undefine NO_HYPHENS_IN_FILENAMES.
3139 * fileio.c (Fexpand_file_name) [VMS]:
3140 Use NO_HYPHENS_IN_FILENAMES, not VMS4_4.
3141 * doc.c (munge_doc_file_name) [VMS]: Likewise.
3142 (Fsnarf_documentation): Call munge_doc_file_name.
3143
31442005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
3145
3146 * s/vms.h (FILE_SYSTEM_CASE): New macro.
3147 * fileio.c (Fexpand_file_name) [VMS]: Don't upcase the name
3148 "manually"; this is now handled generally via FILE_SYSTEM_CASE.
3149
31502005-03-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3151
3152 * emacs.c (main): Change `#ifdef HAVE_CARBON' to `#if
3153 defined (MAC_OSX) && defined (HAVE_CARBON)'.
3154
3155 * image.c [!MAC_OSX && TARGET_API_MAC_CARBON]: Include QuickTime.h.
3156
3157 * mac.c [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
3158 [!MAC_OSX] (select) [TARGET_API_MAC_CARBON]: Use ReceiveNextEvent.
3159 (posix_pathname_to_fsspec, fsspec_to_posix_pathname): New functions.
3160 (mac_clear_font_name_table): Move extern to macterm.h.
3161
3162 * macfns.c (install_window_handler): Move extern to macterm.h.
3163 (Fx_file_dialog): Check STRINGP (default_filename) to see it is
3164 valid. Don't check !NILP (dir) because it is already checked with
3165 CHECK_STRING.
3166 (Fx_file_dialog) [!MAC_OSX]: Use FSSpec instead of FSRef for
3167 specifying the default location and obtaining the selected filename.
3168
3169 * macgui.h [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
3170
3171 * macmenu.c [TARGET_API_MAC_CARBON]: Don't include headers that
3172 are included via Carbon.h.
3173
3174 * macterm.c [TARGET_API_MAC_CARBON && !MAC_OSX]:
3175 Define USE_CARBON_EVENTS to 1.
3176 (qd) [__MRC__ && TARGET_API_MAC_CARBON]: Don't declare.
3177 (x_free_frame_resources): Call remove_window_handler for
3178 non-tooltip windows.
3179 [TARGET_API_MAC_CARBON]: Don't include headers that are included
3180 via Carbon.h.
3181 [TARGET_API_MAC_CARBON] (mac_do_track_dragUPP)
3182 (mac_do_receive_dragUPP): New variables.
3183 (mac_handle_service_event, init_service_handler): Put declarations
3184 and definitions in #ifdef MAC_OSX.
3185 (install_window_handler) [TARGET_API_MAC_CARBON]: Create UPPs for
3186 drag-and-drop handler functions and register them.
3187 (remove_window_handler): New function.
3188 (do_ae_open_documents, mac_do_receive_drag) [!MAC_OSX]:
3189 Use fsspec_to_posix_pathname.
3190 (main): Change #if !TARGET_API_MAC_CARBON to #ifdef MAC_OS8.
3191 (XTread_socket) [!MAC_OSX]: Don't pass keyboard events to TSM.
3192 [MAC_OS8] (make_mac_terminal_frame) [TARGET_API_MAC_CARBON]:
3193 Set default cursors.
3194 (mac_initialize) [USE_CARBON_EVENTS && !MAC_OSX] : Don't call
3195 init_service_handler or init_quit_char_handler.
3196 (mac_initialize) [!MAC_OSX]: Don't call MakeMeTheFrontProcess.
3197
3198 * macterm.h (install_window_handler, remove_window_handler)
3199 (posix_pathname_to_fsspec, fsspec_to_posix_pathname)
3200 (mac_clear_font_name_table): New externs.
3201
32022005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
3203
3204 * fileio.c (FILE_SYSTEM_CASE): Define macro if not already defined.
3205 (Ffile_name_directory): Use FILE_SYSTEM_CASE unconditionally.
3206 (Fexpand_file_name): Likewise.
3207
32082005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
3209
3210 * emacs.c (Fkill_emacs): Use EXIT_SUCCESS;
3211 no longer special-case VMS. Add bogus return value.
3212
32132005-03-02 Kim F. Storm <storm@cua.dk>
3214
3215 * dispextern.h (XASSERTS): Define to 0 if not already defined.
3216 (xassert) [!XASSERTS]: Define dummy version.
3217
32182005-03-02 Kim F. Storm <storm@cua.dk>
3219
3220 * xdisp.c (redisplay_window): YABX (yet another bogus xassert).
3221 Reported by David Kastrup.
3222
32232005-03-01 Ehud Karni <ehud@unix.mvs.co.il>
3224
3225 * xdisp.c (get_next_display_element): Fix control and escape
3226 glyph from display vector.
3227
32282005-03-01 Stefan Monnier <monnier@iro.umontreal.ca>
3229
3230 * keyboard.c (Fposn_at_x_y): Check integerness of X and Y.
3231
32322005-02-27 Richard M. Stallman <rms@gnu.org>
3233
3234 * xdisp.c (fast_find_position): Rename END to BEG.
3235 (syms_of_xdisp) <menu-bar-update-hook>: Doc fix.
3236
32372005-02-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3238
3239 * gtkutil.c (xg_resize_outer_widget): Remove unneeded call to
3240 gtk_window_resize and x_wm_set_size_hint.
3241
32422005-02-25 Kim F. Storm <storm@cua.dk>
3243
3244 * dispextern.h (OVERLAY_STRING_CHUNK_SIZE): Increase from 3 to 16.
3245
3246 * xdisp.c (init_from_display_pos): Don't read past end of
3247 it->overlay_strings array.
3248
32492005-02-25 Stephan Stahl <stahl@eos.franken.de> (tiny change)
3250
3251 * buffer.c (syms_of_buffer): Fix typo.
3252
32532005-02-23 Lute Kamstra <lute@gnu.org>
3254
3255 * buffer.c (Foverlay_buffer): Doc fix.
3256
32572005-02-22 Kim F. Storm <storm@cua.dk>
3258
3259 * minibuf.c (Ftry_completion, Fall_completions): Allow both string
3260 and symbol keys in alists and hash tables.
3261
3262 * xdisp.c (fast_find_position): Fix search for start of overlay.
3263
32642005-02-21 Kim F. Storm <storm@cua.dk>
3265
3266 * window.c (window_scroll_pixel_based): When scrolling backwards,
3267 handle partial visible line at end of window even when we hit PT.
3268
32692005-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
3270
3271 * keymap.h: Declare Fcurrent_active_maps, used in doc.c.
3272
32732005-02-21 Kim F. Storm <storm@cua.dk>
3274
3275 * xdisp.c (move_it_vertically_backward): Eliminate two xasserts.
3276 I think those asserts are bogus if buffer contains invisible text
3277 or images.
3278
32792005-02-21 David Kastrup <dak@gnu.org>
3280
3281 * gtkutil.c (xg_create_frame_widgets): UNBLOCK_INPUT on error.
3282
32832005-02-20 Kim F. Storm <storm@cua.dk>
3284
3285 * xdisp.c (pos_visible_p): Be sure to move to the specified
3286 position. Always get the full ascent / descent of the
3287 corresponding row, to return reliable rtop and rbot values.
3288 (back_to_previous_visible_line_start): Fix 2005-01-18 change.
3289 Must look one character back, as back_to_previous_line_start
3290 returns position after the newline.
3291 (move_it_vertically_backward): Fix heuristic for when to move further
3292 back in case line_height * 2/3 is larger than window height.
3293 (cursor_row_fully_visible_p): Rename make_cursor_line_fully_visible_p
3294 as it does not do anything anymore. Add arg current_matrix_p to
3295 use current matrix rather than desired matrix when set.
3296 (try_cursor_movement): Don't scroll to make cursor row fully
3297 visible if cursor didn't move. This avoids unexpected recentering
3298 in case of blinking cursor or accepting process output.
3299 Use current matrix to check cursor row visibility.
3300 (redisplay_window): Fix whether to recenter or move to top in case
3301 cursor line is taller than window height.
3302 (find_first_unchanged_at_end_row): Stop search if we reach a row
3303 which not enabled (instead of abort).
3304
33052005-02-18 Kim F. Storm <storm@cua.dk>
3306
3307 * xfaces.c (Finternal_set_lisp_face_attribute): Allow :color property
3308 to be nil in a :box attribute value list; customize prints that
3309 as lisp value when no box color is specified.
3310
3311 * .gdbinit (pitx, pit): Pretty print display iterator.
3312 (prowx, prow): Pretty print glyph row.
3313 (pcursorx, pcursor): Pretty print a window cursor.
3314 (pwinx, pwin): Pretty print struct window.
3315
33162005-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
3317
3318 * alloc.c (BLOCK_BYTES): Harmless typo.
3319
33202005-02-17 Andreas Schwab <schwab@suse.de>
3321
3322 * xfns.c (hack_wm_protocols): Use correct type for last parameter
3323 of XGetWindowProperty to avoid aliasing issues.
3324 (Fx_window_property): Likewise.
3325
3326 * xselect.c (Fx_disown_selection_internal): Use union of struct
3327 input_event and struct selection_input_event to avoid aliasing issues.
3328
3329 * xterm.c (handle_one_xevent): Use union of struct input_event and
3330 struct selection_input_event to avoid aliasing issues.
3331 (SET_SAVED_MENU_EVENT): Adapt reference to inev.
3332
33332005-02-17 Kim F. Storm <storm@cua.dk>
3334
3335 * dispextern.h (enum it_method): New enum.
3336 (GET_FROM_*): Its members.
3337 (struct it): Change member method from function pointer to enum.
3338
3339 * xdisp.c (check_it, init_from_display_pos, handle_stop)
3340 (setup_for_ellipsis, handle_single_display_spec)
3341 (handle_composition_prop, next_overlay_string)
3342 (get_overlay_strings, reseat_1, reseat_to_string)
3343 (next_element_from_ellipsis, BUFFER_POS_REACHED_P)
3344 (in_display_vector_p, display_line, get_next_display_element):
3345 Change it->method from function pointer to enum.
3346 (get_next_element): New array to map it->method to function.
3347 (get_next_display_element): Use it.
3348 (set_iterator_to_next): Use switch instead of if/else chain.
3349
33502005-02-15 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
3351
3352 * w32select.c: Summary: Thorough rework to implement Unicode
3353 clipboard operations and delayed rendering.
3354
3355 Drop last_clipboard_text and related code, keep track of
3356 ownership via clipboard_owner instead. Drop old #if0 sections.
3357
3358 (DEFAULT_LCID, ANSICP, OEMCP, QUNICODE, QANSICP, QOEMCP)
3359 (clipboard_owner, modifying_clipboard, cfg_coding_system)
3360 (cfg_codepage, cfg_lcid, cfg_clipboard_type, current_text)
3361 (current_coding_system, current_requires_encoding)
3362 (current_num_nls, current_clipboard_type, current_lcid):
3363 New static variables.
3364
3365 (convert_to_handle_as_ascii, convert_to_handle_as_coded)
3366 (render, render_all, run_protected, lisp_error_handler)
3367 (owner_callback, create_owner, setup_config)
3368 (enum_locale_callback, cp_from_locale, coding_from_cp):
3369 New local functions.
3370
3371 (term_w32select, globals_of_w32select): New global functions.
3372
3373 (Fw32_set_clipboard_data): Ignore parameter FRAME, use
3374 clipboard_owner instead. Use delayed rendering and provide
3375 all text formats. Provide CF_LOCALE if necessary.
3376
3377 (Fw32_get_clipboard_data): Handle CF_UNICODETEXT and
3378 CF_LOCALE. Fall back to CF_TEXT, if CF_UNICODETEXT is not
3379 available. Force DOS line-ends for decoding.
3380
3381 (Fx_selection_exists_p): Handle CF_UNICODETEXT.
3382
3383 (syms_of_w32select): Init and register new variables.
3384
3385 * w32.h: Add prototypes for globals_of_w32select and
3386 term_w32select. Make the neighboring K&R declarations into
3387 prototypes, too.
3388
3389 * emacs.c: Include w32.h to get function prototypes.
3390 (main): Call globals_of_w32select.
3391
3392 * w32.c (term_ntproc): Call term_w32select.
3393
3394 * s/ms-w32.h: Guard MSC-specific #pragmas with an #ifdef.
3395
33962005-02-16 Kim F. Storm <storm@cua.dk>
3397
3398 * xdisp.c (BUFFER_POS_REACHED_P): Return true if pos reached and
3399 at end of display vector.
3400
34012005-02-15 Richard M. Stallman <rms@gnu.org>
3402
3403 * xdisp.c (get_next_display_element): Fix escape-glyph criterion
3404 for mode and header lines.
3405
3406 * lread.c (syms_of_lread) <user-init-file>: Doc fix.
3407
3408 * keymap.h (describe_map_tree): Change decl.
3409
3410 * keyboard.c (command_loop_1): Always use safe_run_hooks
3411 to run Qdeferred_action_function.
3412
3413 * keymap.c (describe_map_tree): New arg MENTION_SHADOW. Calls changed.
3414 (describe_map, describe_vector): Likewise. When it's 1,
3415 don't omit shadowed bindings, instead mark them as shadowed.
3416
3417 * doc.c (Fsubstitute_command_keys): Compute list of shadowing maps
3418 for describe_map_tree. Pass 1 for MENTION_SHADOW.
3419
3420 * data.c (Fsetq_default): Allow no arg case.
3421
34222005-02-14 Kenichi Handa <handa@m17n.org>
3423
3424 * coding.c (encode_coding_string): Always return a unibyte string.
3425 If NOCOPY is nonzero and there's no need of encoding, make STR
3426 unibyte directly.
3427
3428 * xselect.c (lisp_data_to_selection_data): If OBJ is a non-ASCII
3429 multibyte string, signal an error instead of aborting.
3430
34312005-02-12 Dan Nicolaescu <dann@ics.uci.edu>
3432
3433 * keyboard.c: If HAVE_FCNTL_H include fcntl.h.
3434
34352005-02-12 Kim F. Storm <storm@cua.dk>
3436
3437 * xdisp.c (expose_window): Don't fix overlaps for mode lines.
3438
34392005-02-10 Kim F. Storm <storm@cua.dk>
3440
3441 * xdisp.c (try_window_id): Set first_unchanged_at_end_row to NULL
3442 if it moves outside window or it doesn't display text.
3443
34442005-02-09 Kim F. Storm <storm@cua.dk>
3445
3446 * undo.c (Fprimitive_undo): Check that undo function does not
3447 switch buffer.
3448
34492005-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3450
3451 * xselect.c (selection_data_to_lisp_data): For the special case
3452 type == XA_ATOM, data contains array of int, not array of Atom.
3453 (x_property_data_to_lisp, selection_data_to_lisp_data):
3454 Comment update: data must be array of int for format == 32.
3455
34562005-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
3457
3458 * undo.c (Fprimitive_undo): Check veracity of delta,start,end.
3459
34602005-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3461
3462 * xfns.c (Fx_change_window_property): Use long array when format is 32.
3463 (Fx_window_property): If format is 32 and long is bigger than 32 bits,
3464 convert long array returned from XGetWindowProperty to an int array.
3465 (x_set_tool_bar_lines): Check that width and height is greater than
3466 zero before clearing area.
3467
3468 * xselect.c (x_reply_selection_request): Pass long array to
3469 XChangeProperty so that 64 bit longs are handeled correctly.
3470 (x_get_window_property): If format is 32 and long is bigger than 32
3471 bits convert data from XGetWindowProperty from long array to int array.
3472 (lisp_data_to_selection_data): When the input is a vector and the
3473 format is 32, allocate a long array even if long is bigger than 32 bits.
3474 (x_fill_property_data): Use char, short and long as the man page
3475 for XChangeProperty specifies. This way the data returned is OK for
3476 both 32 and 64 bit machines.
3477 (x_handle_dnd_message): Calculate size correctly even for 64 bit
3478 machines.
3479 (Fx_send_client_event): Undo change from 2005-02-05,
3480 x_fill_property_data now handles that case.
3481
3482 * xfns.c (Fx_backspace_delete_keys_p): Add comment about the
3483 reason for the approach in the code.
3484
34852005-02-07 Kim F. Storm <storm@cua.dk>
3486
3487 * undo.c (Fprimitive_undo): Record max one dummmy apply element.
3488
34892005-02-06 Richard M. Stallman <rms@gnu.org>
3490
3491 * eval.c (Frun_hook_with_args)
3492 (Frun_hook_with_args_until_success)
3493 (Frun_hook_with_args_until_failure): Doc fixes.
3494
34952005-02-05 Andreas Schwab <schwab@suse.de>
3496
3497 * sysdep.c (sys_subshell): Properly terminate execlp argument list.
3498
34992005-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3500
3501 * xselect.c (Fx_send_client_event, x_handle_dnd_message): Handle
3502 the longs in a XClientMessageEvent correctly when long is 64 bits.
3503
35042005-02-05 Eli Zaretskii <eliz@gnu.org>
3505
3506 * xfaces.c (face_color_supported_p): Use HAVE_WINDOW_SYSTEM
3507 instead of HAVE_X_WINDOWS, for non-X windowed sessions.
3508
35092005-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3510
3511 * xmenu.c (menubar_selection_callback): Force out GTK buffered
3512 events so the menu event comes after them. This is to prevent sit-for
3513 from exiting on buffered events directly after a menu selection,
3514 lisp code for Help => About Emacs uses sit-for.
3515
3516 * gtkutil.c (create_menus): Connect selection-done event instead of
3517 the deactivate event to deactivate_cb. This will make the last
3518 leave event come before the call to deactivate_cb, so the leave
3519 event does not make sit-for exit after a menu selection.
3520
35212005-02-03 Kim F. Storm <storm@cua.dk>
3522
3523 * dispnew.c (build_frame_matrix_from_leaf_window)
3524 [!GLYPH_DEBUG]: Fix xassert.
3525
3526 * xfaces.c (x_free_gc) [!GLYPH_DEBUG]: Fix xassert.
3527
3528 * xfns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
3529
35302005-02-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3531
3532 * mac.c: Use MAC_OS_X_VERSION_MAX_ALLOWED to conditionalize by
3533 the compiling OS version.
3534
3535 * macfns.c (x_create_tip_frame): Likewise.
3536
3537 * macterm.c (mac_draw_string_common, x_make_frame_visible): Likewise.
3538
35392005-02-03 Richard M. Stallman <rms@gnu.org>
3540
3541 * xterm.c (x_error_quitter): On GCC 3 and up, specify noinline.
3542
3543 * xdisp.c (echo_area_display): Clear echo_message_buffer.
3544
3545 * buffer.c (Fbury_buffer): Doc fix.
3546
35472005-02-02 Steven Tamm <steventamm@mac.com>
3548
3549 * macfns.c (unwind_create_frame): Fix compile error due to
3550 xassert being uncondition, but predicate is.
3551 * dispnew.c (update_window): Fix compile error due to
3552 xassert being uncondition, but predicate is.
3553
35542005-02-02 Miles Bader <miles@gnu.org>
3555
3556 * dispextern.h (xassert): Enable unconditionally.
3557
35582005-02-02 Kim F. Storm <storm@cua.dk>
3559
3560 * undo.c (Fprimitive_undo): Fix dummy apply undo entry.
3561
35622005-02-02 Kenichi Handa <handa@m17n.org>
3563
3564 * casefiddle.c (casify_object): Enable changing characters of
3565 different byte length.
3566 (casify_region): Fix loop condition, args to replace_range_2, and
3567 update opoint_byte.
3568
3569 * insdel.c (replace_range_2): Fix bugs in adjusting markers and point.
3570
35712005-02-01 Kim F. Storm <storm@cua.dk>
3572
3573 * xdisp.c (back_to_previous_visible_line_start): Reset iterator
3574 stack before calling handle_display_prop.
3575
35762005-01-31 Kim F. Storm <storm@cua.dk>
3577
3578 * undo.c (Qapply): New lisp var.
3579 (syms_of_undo): Intern and staticpro it.
3580 (Fprimitive_undo): Support formats (apply FUNNAME . ARGS) and
3581 (apply DELTA BEG END FUNNAME . ARGS) instead of (FUNNAME . ARGS).
3582
3583 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
3584
35852005-01-30 Jesper Harder <harder@phys.au.dk>
3586
3587 * macterm.c (syms_of_macterm) <mac-reverse-ctrl-meta>
3588 <mac-emulate-three-button-mouse>: Fix docstring indentation.
3589
35902005-01-29 Luc Teirlinck <teirllm@auburn.edu>
3591
3592 * undo.c (syms_of_undo) <undo-outer-limit>: Doc update.
3593 Increase value to 3 Meg.
3594
35952005-01-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3596
3597 * xfns.c (show_hourglass): Use FRAME_X_WINDOW as parent for GTK,
3598 button events are not received otherwise.
3599
36002005-01-29 Richard M. Stallman <rms@gnu.org>
3601
3602 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
3603
3604 * undo.c (Fprimitive_undo): Handle (FUNNAME . ARGS) by calling FUNNAME.
3605
36062005-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
3607
3608 * keymap.c (access_keymap): YAILOM.
3609
36102005-01-27 Kim F. Storm <storm@cua.dk>
3611
3612 * xdisp.c (get_phys_cursor_geometry): New function to calculate
3613 phys cursor position and size for hollow cursor. Position is
3614 aligned with get_glyph_string_clip_rect and ensures that a hollow
3615 cursor is shown, even when the actual glyph is not visible.
3616
3617 * dispextern.h (get_phys_cursor_geometry): Add prototype.
3618
3619 * xterm.c (x_clip_to_row): Ensure y >= 0.
3620 (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
3621
3622 * w32term.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
3623
3624 * macterm.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
3625
36262005-01-27 Stefan Monnier <monnier@iro.umontreal.ca>
3627
3628 * xterm.c (x_error_quitter): Add a prototype. Make it static again.
3629
36302005-01-27 Kim F. Storm <storm@cua.dk>
3631
3632 * xdisp.c (get_glyph_string_clip_rect): Always show a cursor
3633 glyph, even when row is only partially visible and actual cursor
3634 position is not visible.
3635
36362005-01-24 Richard M. Stallman <rms@gnu.org>
3637
3638 * xterm.c (x_error_quitter): No longer static, and moved after
3639 x_error_handler.
3640
36412005-01-24 Kim F. Storm <storm@cua.dk>
3642
3643 * xdisp.c (move_it_by_lines): If we move forward after going too
3644 far back, cancel move if end position is same as start position.
3645
36462005-01-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3647
3648 * dispextern.h (struct glyph_string): New members clip_head and
3649 clip_tail.
3650
3651 * xdisp.c (get_glyph_string_clip_rect): Restrict horizontal clip
3652 region to the area between clip_head and clip_tail.
3653 (draw_glyphs): Record the area that need to be actually redrawn to
3654 the new variables clip_head and clip_tail when there are
3655 overhangs. Set values of these variables to the corresponding
3656 members in struct glyph_string. Refine x coordinates for
3657 notice_overwritten_cursor using clip_head and clip_tail.
3658
3659 * macgui.h (STORE_XCHARSETSTRUCT): New macro.
3660
3661 * macterm.c (mac_compute_glyph_string_overhangs): Implement with
3662 QDTextBounds.
3663 (x_draw_glyph_string): Don't fill the background of the successor
3664 of a glyph with a right overhang if the successor will draw a cursor.
3665 (XLoadQueryFont): Obtain font metrics using QDTextBounds.
3666 (x_redisplay_interface): Add entry for compute_glyph_string_overhangs.
3667
36682005-01-24 Kim F. Storm <storm@cua.dk>
3669
3670 * window.c (window_scroll_pixel_based): Fix scrolling in the wrong
3671 direction if window height was smaller than next-screen-context-lines.
3672 Now always scroll at least one line in the requested direction.
3673 Ensure that we actually do scroll backwards when requested to do so.
3674
3675 * xdisp.c (redisplay_window): Only try to make cursor line fully
3676 visible once (to avoid redisplay loop).
3677
36782005-01-23 Kim F. Storm <storm@cua.dk>
3679
3680 * window.c (Fpos_visible_in_window_p): Simplify return value for
3681 partially visible rows.
3682 (window_scroll_pixel_based): Adapt to that change.
3683
3684 * window.c (window_scroll_pixel_based): Force moving to next line
3685 if scrolling doesn't move start point, e.g. if looking at tall image.
3686
3687 * xdisp.c (pos_visible_p): Return 0 if non-interactive.
3688 Clear last_height before calling line_bottom_y to get real height.
3689 Fix calculation of y.
3690
36912005-01-22 Steven Tamm <steventamm@mac.com>
3692
3693 * s/darwin.h: Removed PTY_ITERATION from here.
3694 (DARWIN): Define.
3695
3696 * process.c (init_process): Default process-connection-type to
3697 nil on darwin 6 or less, t if it is 7 or higher. This way the
3698 broken pty behavior is still allowed on darwin 6 for interactive
3699 processes for people that know what they are doing.
3700
37012005-01-22 Kim F. Storm <storm@cua.dk>
3702
3703 * window.c (auto_window_vscroll_p): New boolean.
3704 (syms_of_window): DEFVAR_BOOL it.
3705 (Fpos_visible_in_window_p): Extend return value to include RTOP
3706 and RBOT values if FULLY is nil.
3707 (window_scroll_pixel_based): Adjust vscroll for partially visible
3708 rows if auto_window_vscroll_p is set.
3709 (Fset_window_vscroll): Do nothing if vscroll is not modified.
3710
3711 * xdisp.c (pos_visible_p): Replace FULLY arg by RTOP and RBOT args
3712 to return number of partially invisible pixels at top and bottom
3713 of the dislay row at POS.
3714
3715 * lisp.h (pos_visible_p): Fix prototype.
3716
37172005-01-21 Richard M. Stallman <rms@gnu.org>
3718
3719 * fileio.c (Fcopy_file): Doc fix.
3720
37212005-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3722
3723 * gtkutil.c (xg_tool_bar_detach_callback): Remove unused variable bw.
3724 (xg_get_file_name): Move declaration ofx_use_old_gtk_file_dialog to
3725 start of function for older compilers.
3726
37272005-01-20 Richard M. Stallman <rms@gnu.org>
3728
3729 * editfns.c (Fmessage): If arg is "", return "" (as before).
3730
3731 * keymap.c (access_keymap): Protect from bad value of meta_prefix_char.
3732
3733 * .gdbinit (xgetptr, xgetint, xgettype): Copy $arg0 into a temp
3734 variable.
3735
37362005-01-20 Steven Tamm <steventamm@mac.com>
3737
3738 * editfns.c (Voperating_system_release): Add.
3739 (init_editfns): Assign new variable operating-system-release
3740 based on call to uname if available.
3741 (get_operating_system_release): Add function to
3742 allow c-level access to operating system release.
3743
3744 * config.h: Regenerated.
3745
3746 * s/darwin.h (PTY_ITERATION): Don't allow PTYs on darwin 6 or less.
3747 (MIN_PTY_KERNEL_VERSION): Define minimum kernel version for
3748 using ptys as '7'.
3749
37502005-01-20 Kim F. Storm <storm@cua.dk>
3751
3752 * alloc.c (STRING_MARKED_P, VECTOR_MARKED_P): Return boolean.
3753
3754 * xterm.c (x_draw_glyph_string_box): Fix last_x for full width rows.
3755 Thanks to Chong Yidong <cyd@stupidchicken.com> for debugging this.
3756
3757 * macterm.c (x_draw_glyph_string_box): Likewise.
3758
3759 * w32term.c (x_draw_glyph_string_box): Likewise.
3760
3761 * indent.c (Fvertical_motion): Temporarily disable selective display.
3762
37632005-01-19 Kim F. Storm <storm@cua.dk>
3764
3765 * xdisp.c (note_mode_line_or_margin_highlight): Fix :pointer
3766 image property.
3767
3768 * fns.c (sweep_weak_table): Advance prev pointer when we keep a pair.
3769
37702005-01-18 Kim F. Storm <storm@cua.dk>
3771
3772 * xdisp.c (fast_find_position): Backtrack to find first row if
3773 charpos is inside a display overlay that spans multiple lines.
3774
37752005-01-18 Kenichi Handa <handa@m17n.org>
3776
3777 * coding.c (decode_coding_iso2022): Translate invalid codes if
3778 translation-table is specified.
3779
37802005-01-18 Kim F. Storm <storm@cua.dk>
3781
3782 * xdisp.c (back_to_previous_visible_line_start): Undo 2004-12-28
3783 change. If handle_display_prop indicates newline is replaced by
3784 image or text, move back to start of relevant overlay or interval
3785 and continue scan from there. Simplify.
3786
37872005-01-17 Kim F. Storm <storm@cua.dk>
3788
3789 * dispnew.c (mode_line_string, marginal_area_string):
3790 Fix off-by-one error in search for glyph.
3791
37922005-01-16 Kim F. Storm <storm@cua.dk>
3793
3794 * macterm.c (syms_of_macterm) <mac-allow-anti-aliasing>: Doc fix.
3795
37962005-01-16 Steven Tamm <steventamm@mac.com>
3797
3798 * macterm.c (mac_to_x_fontname): Remove spurious argument.
3799
38002005-01-16 Andreas Schwab <schwab@suse.de>
3801
3802 * macterm.c (mac_draw_string_common): Fix compilation on OSX 10.1.
3803
38042005-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3805
3806 * fringe.c (Fdefine_fringe_bitmap, init_fringe): When assigning
3807 fringe_faces, cast result from xmalloc/xrealloc to Lisp_Object *.
3808
38092005-01-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3810
3811 * keyboard.c (READABLE_EVENTS_DO_TIMERS_NOW)
3812 (READABLE_EVENTS_FILTER_EVENTS, READABLE_EVENTS_IGNORE_SQUEEZABLES):
3813 New flags for readable_events.
3814 (get_filtered_input_pending, readable_filtered_events): Remove.
3815 (tracking_off): Call readable_events and get_input_pending with
3816 flag READABLE_EVENTS_DO_TIMERS_NOW.
3817 (readable_events): Move code from old readable_filtered_events here,
3818 but check new READABLE_EVENTS_* in argument flags instead of previous
3819 two boolean arguments do_timers_now and filter_events.
3820 If we are doing mouse tracking and the mouse moved, return only if
3821 READABLE_EVENTS_IGNORE_SQUEEZABLES is not set in flags.
3822 (swallow_events): Call get_input_pending with flag
3823 READABLE_EVENTS_DO_TIMERS_NOW.
3824 (get_input_pending): Move code from old get_filtered_input_pending
3825 here. Replace boolean arguments do_timers_now, filter_events with
3826 flags, and pass flags to readable_events. Document new
3827 READABLE_EVENTS_* flags.
3828 (detect_input_pending_ignore_squeezables): New function.
3829 (detect_input_pending_run_timers): Call get_input_pending with flag
3830 READABLE_EVENTS_DO_TIMERS_NOW.
3831 (Finput_pending_p): Call get_input_pending with flags
3832 READABLE_EVENTS_DO_TIMERS_NOW and READABLE_EVENTS_FILTER_EVENTS.
3833
3834 * dispnew.c (update_window, update_frame_1): Replace calls to
3835 detect_input_pending with detect_input_pending_ignore_squeezables
3836 so that redisplay is not paused if the event queue contains only
3837 mouse movements.
3838
3839 * lisp.h: Declare detect_input_pending_ignore_squeezables.
3840
38412005-01-15 Steven Tamm <steventamm@mac.com>
3842
3843 * macterm.c (Vmac_use_core_graphics): Declare variable for
3844 mac-allow-anti-aliasing.
3845 (syms_of_macterm): DEFVAR_LISP and initialize it.
3846 (mac_draw_string_common): Use core graphics text rendering if
3847 mac-allow-anti-aliasing is enabled.
3848
3849 * macfns.c (Fx_file_dialog): Save As dialog includes only the
3850 file name in the text box.
3851
38522005-01-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3853
3854 * macfns.c (x_set_foreground_color, x_set_background_color):
3855 Sync with xfns.c.
3856 (mac_window, x_create_tip_frame): Use XSetWindowBackground.
3857 * macterm.c (XSetBackground, XSetWindowBackground): New functions.
3858 * macterm.h (XSetBackground, XSetWindowBackground): Add externs.
3859
38602005-01-14 Kim F. Storm <storm@cua.dk>
3861
3862 * keyboard.c (Fposn_at_x_y): Add optional arg WHOLE.
3863
38642005-01-13 Richard M. Stallman <rms@gnu.org>
3865
3866 * keymap.c (Fcurrent_active_maps): Ignore Voverriding_local_map
3867 if Voverriding_terminal_local_map is non-nil.
3868
3869 * keyboard.c (syms_of_keyboard): Doc fix.
3870
38712005-01-13 Kim F. Storm <storm@cua.dk>
3872
3873 * xdisp.c (Fformat_mode_line): Fix last change. Remove NO_PROPS arg
3874 (specify 0 for FACE instead). Reorder arg list. Doc fix.
3875
38762005-01-12 Richard M. Stallman <rms@gnu.org>
3877
3878 * xdisp.c (Fformat_mode_line): New arg FACE specifies a default
3879 face property for characters that don't specify one.
3880
3881 * fns.c (Frequire): Record in load-history unconditionally.
3882
38832005-01-10 Kim F. Storm <storm@cua.dk>
3884
3885 * dispextern.h (merge_faces): Rename from merge_into_realized_face.
3886
3887 * xfaces.c (merge_faces): Rename from merge_into_realized_face.
3888 Callers changed.
3889 Add support to merge with lisp face id too (if face_name is t).
3890
3891 * xdisp.c (get_next_display_element, next_element_from_display_vector):
3892 Don't lookup lface_id from display table glyphs here; instead use
3893 merge_faces to merge the lisp face id into current face.
3894
38952005-01-09 Kim F. Storm <storm@cua.dk>
3896
3897 * dispextern.h (struct it): New member dpvec_face_id.
3898 (merge_into_realized_face): Add prototype.
3899
3900 * xfaces.c (merge_into_realized_face): New function. Used to
3901 merge escape-glyph face or face from display table into current face.
3902
3903 * xdisp.c (Vshow_nonbreak_escape): New lisp var.
3904 (syms_of_xdisp): DEFVAR_LISP it.
3905 (escape_glyph_face): Remove var.
3906 (redisplay_window): Don't initialize it.
3907 (setup_for_ellipsis, get_next_display_element):
3908 Set it->dpvec_face_id to -1.
3909 (get_next_display_element): Test Vshow_nonbreak_escape.
3910 Do not setup escape_glyph_face.
3911 Properly merge escape-glyph face or face from display table with
3912 current face for escape and control characters.
3913 Set it->dpvec_face_id to relevant face id instead of adding it to each
3914 element of display vector.
3915 (next_element_from_display_vector): If it->dpvec_face_id is set,
3916 use that instead of lface_id from glyph itself.
3917
39182005-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3919
3920 * xterm.h (struct x_output): New member, toolbar_detached.
3921
3922 * gtkutil.c (xg_create_frame_widgets): Set initial tool bar height to
3923 38.
3924 (xg_tool_bar_detach_callback): Set toolbar_detached to 1.
3925 (xg_tool_bar_attach_callback): Set toolbar_detached to 0.
3926 (xg_create_tool_bar): Initialize toolbar_detached.
3927 (update_frame_tool_bar): Only set FRAME_TOOLBAR_HEIGHT (f) if
3928 toolbar_detached is zero.
3929
39302005-01-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3931
3932 * xmenu.c (create_and_show_popup_menu): Pass zero as button to
3933 gtk_menu_popup if not for_click, so callbacks for the menu are called.
3934
3935 * gtkutil.c (xg_gtk_scroll_destroy, xg_create_scroll_bar)
3936 (xg_tool_bar_callback, xg_tool_bar_help_callback)
3937 (update_frame_tool_bar): Cast to EMACS_INT to avoid compiler warning.
3938
3939 * xselect.c (x_get_foreign_selection, x_fill_property_data)
3940 (Fx_get_atom_name, Fx_send_client_event): Replace XFLOAT with
3941 XFLOAT_DATA to get extract number from Lisp object.
3942
39432005-01-07 Kim F. Storm <storm@cua.dk>
3944
3945 * xdisp.c (set_iterator_to_next): Fix 2004-12-13 change.
3946 Set stop_charpos to current charpos instead of 0.
3947
39482005-01-06 Nick Roberts <nickrob@snap.net.nz>
3949
3950 * xdisp.c (Fformat_mode_line): First arg now required.
3951
39522005-01-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3953
3954 * macterm.c (XLoadQueryFont): Correctly handle 0 size
3955 font widths that are returned from some Japanese fonts.
3956
39572005-01-06 Kim F. Storm <storm@cua.dk>
3958
3959 * fringe.c (fringe_faces): Change to Lisp_Object pointer.
3960 (draw_fringe_bitmap_1): Lookup user defined fringe faces here.
3961 (destroy_fringe_bitmap): Set fringe_faces element to nil.
3962 (Fdefine_fringe_bitmap, init_fringe): Change allocation of
3963 fringe_faces array and init elements to nil.
3964 (Fset_fringe_bitmap_face): Set fringe_faces to face name instead of
3965 non-persistent face id.
3966 (mark_fringe_data): New function for GC.
3967
3968 * alloc.c (mark_fringe_data): Declare extern.
3969 (Fgarbage_collect): Call mark_fringe_data.
3970
3971 * alloc.c (overrun_check_free): Invalidate freed memory if
3972 XMALLOC_CLEAR_FREE_MEMORY is defined.
3973
39742005-01-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3975
3976 * macfns.c: Include sys/param.h.
3977 [TARGET_API_MAC_CARBON] (mac_nav_event_callback): New declaration
3978 and function.
3979 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Use MAXPATHLEN for size
3980 of filename string. Set event callback function when creating
3981 dialog boxes. Add code conversions for filenames. Don't dispose
3982 of apple event descriptor record if failed to create it.
3983
3984 * macterm.c: Include sys/param.h.
3985 [USE_CARBON_EVENTS] (mac_handle_window_event): Add handler for
3986 kEventWindowUpdate.
3987 (install_window_handler) [USE_CARBON_EVENTS]: Register it.
3988 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Get FSRef instead
3989 of FSSpec from apple event descriptor record.
3990 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Use MAXPATHLEN for
3991 size of filename string.
3992 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Likewise.
3993 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Return error when a
3994 file dialog is in action.
3995 [TARGET_API_MAC_CARBON] (mac_do_track_drag): Likewise.
3996 Reject only when there are no filename items. Set background color
3997 before (un)highlighting the window below the dragged items.
3998 (XTread_socket) [USE_CARBON_EVENTS]: Don't call do_window_update.
3999
40002005-01-05 Romain Francoise <romain@orebokech.com>
4001
4002 * term.c (encode_terminal_code): Fix buffer size computation.
4003
40042005-01-04 Richard M. Stallman <rms@gnu.org>
4005
4006 * xdisp.c (Fformat_mode_line): Doc fix.
4007
40082005-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
4009
4010 * alloc.c (refill_memory_reserve): Move.
4011 (emacs_blocked_free, emacs_blocked_malloc, emacs_blocked_realloc)
4012 (reset_malloc_hooks, uninterrupt_malloc) [SYNC_INPUT]: Don't define.
4013
40142005-01-03 Richard M. Stallman <rms@gnu.org>
4015
4016 * window.c (window_scroll_pixel_based): Don't correct preserve_y
4017 for CURRENT_HEADER_LINE_HEIGHT when moving backwards.
4018
40192005-01-03 Jason Rumney <jasonr@gnu.org>
4020
4021 * w32bdf.c (w32_load_bdf_font): Set fontp->average_width and
4022 fontp->space_width to FONT_WIDTH so they are valid.
4023
4024 * w32fns.c (w32_load_system_font): Set FONT_WIDTH to maximum, not
4025 average width. Set fontp->average_width and fontp->space_width to
4026 their appropriate values.
4027
4028 * w32term.c (x_new_font): Set FRAME_COLUMN_WIDTH to
4029 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
4030 fontp->space_width.
4031
40322005-01-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4033
4034 * macterm.c (x_new_font): Set FRAME_SPACE_WIDTH.
4035 (x_font_min_bounds, XLoadQueryFont): Use the correct font width
4036 metrics for max and min bounds.
4037 (x_load_font): Correctly calculate average font width metrics.
4038
40392005-01-02 Richard M. Stallman <rms@gnu.org>
4040
4041 * alloc.c (Fgarbage_collect): Don't truncate_undo_list on dead buffers.
4042
40432004-12-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4044
4045 * xterm.c (handle_one_xevent): Clear area in expose event for GTK.
4046
40472004-12-31 Richard M. Stallman <rms@gnu.org>
4048
4049 * xdisp.c (setup_for_ellipsis, get_next_display_element):
4050 Set it->ellipsis_p to 1 or 0.
4051 (display_line): Record whether row ends in mid-ellipsis.
4052 (set_cursor_from_row): If ends in ellipsis, find start of it.
4053 (cursor_row_p): If PT's at the end of the ellipsis the row
4054 ends within, don't display cursor on this row.
4055
4056 * dispextern.h (struct it): New element ellipsis_p.
4057 (struct glyph_row): New element ends_in_ellipsis_p.
4058
4059 * xdisp.c (BUFFER_POS_REACHED_P): We haven't reached the specified
4060 position if we're reading from something other than the buffer.
4061
4062 * window.c (window_scroll_pixel_based): Only look at
4063 Vscroll_preserve_screen_position if the old PT can't be kept.
4064 (syms_of_window) <scroll-preserve-screen-position>: Doc fix.
4065
40662004-12-30 Kim F. Storm <storm@cua.dk>
4067
4068 * xdisp.c (get_line_height_property): New function extracted from
4069 original calc_line_height_property.
4070 (calc_line_height_property): Rework. Handle t and (nil . ratio).
4071 (x_produce_glyphs): Use them to handle line-height and
4072 line-spacing according to new height spec.
4073 (Qtotal): Remove.
4074 (syms_of_xdisp): Remove intern and staticpro for Qtotal.
4075
40762004-12-30 Kenichi Handa <handa@m17n.org>
4077
4078 * fileio.c (Finsert_file_contents): Don't use
4079 current_buffer->buffer_file_coding_system even if REPLACE is
4080 non-nil. Call Qafter_insert_file_set_coding with the second arg VISIT.
4081
4082 * fontset.h (struct font_info): New members space_width and
4083 average_width.
4084
4085 * frame.h (struct frame): New member space_width.
4086 (FRAME_SPACE_WIDTH): New macro.
4087
4088 * xterm.h (struct x_display_info): New member Xatom_AVERAGE_WIDTH.
4089
4090 * xterm.c (x_new_font): Set FRAME_COLUMN_WIDTH to
4091 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
4092 fontp->space_width.
4093 (x_load_font): Calculate fontp->space_width and fontp->average_width.
4094 (x_term_init): Initialize dpyinfo->Xatom_AVERAGE_WIDTH.
4095
4096 * xdisp.c (x_produce_glyphs): Calculate tab width by
4097 FRAME_SPACE_WIDTH, not FRAME_COLUMN_WIDTH.
4098
40992004-12-29 Sanghyuk Suh <han9kin@mac.com>
4100
4101 * macterm.c (SelectionRange): Add Xcode position apple event struct.
4102 (do_ae_open_documents): Handle Xcode-style file position open events.
4103
41042004-12-29 Luc Teirlinck <teirllm@auburn.edu>
4105
4106 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Correct typo.
4107
41082004-12-29 Richard M. Stallman <rms@gnu.org>
4109
4110 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Doc fix.
4111
41122004-12-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4113
4114 * macfns.c (install_window_handler): Modify extern to return OSErr
4115 value.
4116 (mac_window): Handle return value of install_window_handler.
4117
4118 * macterm.c (reflect_byte): Remove function.
4119 (mac_create_bitmap_from_bitmap_data): Don't call reflect_byte.
4120 Lookup table instead.
4121 (mac_do_font_lists): Simplify calculation of the longest
4122 nonspecial string.
4123 (init_mac_drag_n_drop): Remove function and declaration.
4124 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
4125 init_mac_drag_n_drop.
4126 (mac_do_track_drag): New function and declaration.
4127 (install_window_handler): Return OSErr value.
4128 (install_window_handler) [TARGET_API_MAC_CARBON]:
4129 Register handlers for tracking/receiving drag-and-drop items.
4130 (do_ae_open_documents): Generate unibyte strings for filenames.
4131 (mac_do_receive_drag) [TARGET_API_MAC_CARBON] : Likewise.
4132 Reject only non-filename items. Set event modifiers, and return value.
4133
41342004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
4135
4136 * coding.c (decode_coding): Fix previous change.
4137
41382004-12-28 Richard M. Stallman <rms@gnu.org>
4139
4140 * xdisp.c (back_to_previous_visible_line_start):
4141 Don't call handle_display_prop.
4142
41432004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
4144
4145 * coding.c (decode_coding_XXX, decode_composition_emacs_mule)
4146 (decode_coding_emacs_mule, encode_coding_emacs_mule)
4147 (decode_coding_iso2022, encode_designation_at_bol)
4148 (encode_coding_iso2022, decode_coding_sjis_big5, decode_eol)
4149 (decode_coding): Constify arguments and local vars.
4150
41512004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4152
4153 * xmenu.c (popup_get_selection): Only pop down dialogs
4154 on C-g and Escape.
4155 (popup_get_selection): Remove parameter down_on_keypress.
4156 (create_and_show_popup_menu, create_and_show_dialog):
4157 Remove parameter down_on_keypress to popup_get_selection.
4158
41592004-12-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4160
4161 * dispextern.h: Change HAVE_CARBON to MAC_OS.
4162 (struct glyph_string): Likewise.
4163
4164 * emacs.c (main) [MAC_OS8]: Call mac_term_init instead of
4165 mac_initialize.
4166
4167 * fileio.c (Fnext_read_file_uses_dialog_p, Fread_file_name):
4168 Change TARGET_API_MAC_CARBON to HAVE_CARBON.
4169
4170 * fns.c (vector): Change MAC_OSX to MAC_OS.
4171
4172 * frame.c (x_set_frame_parameters, x_report_frame_params)
4173 (x_set_fullscreen): Remove #ifndef HAVE_CARBON.
4174 (x_set_border_width, Vdefault_frame_scroll_bars):
4175 Change HAVE_CARBON to MAC_OS.
4176
4177 * image.c [MAC_OS]: Include sys/stat.h.
4178 [MAC_OS && !MAC_OSX]: Include sys/param.h, ImageCompression.h, and
4179 QuickTimeComponents.h.
4180
4181 * mac.c [!MAC_OSX] (mac_wait_next_event): Add extern.
4182 [!MAC_OSX] (select): Use mac_wait_next_event.
4183 [!MAC_OSX] (run_mac_command): Change EXEC_SUFFIXES to Vexec_suffixes.
4184 [!MAC_OSX] (select, run_mac_command): Change `#ifdef
4185 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
4186 (mac_clear_font_name_table): Add extern.
4187 (Fmac_clear_font_name_table): New defun.
4188 (syms_of_mac): Defsubr it.
4189 [MAC_OSX] (SELECT_POLLING_PERIOD_USEC): New define.
4190 [MAC_OSX] (select_and_poll_event): New function.
4191 [MAC_OSX] (sys_select): Use it.
4192 [MAC_OSX && SELECT_USE_CFSOCKET] (socket_callback): New function.
4193 [MAC_OSX && SELECT_USE_CFSOCKET]
4194 (SELECT_TIMEOUT_THRESHOLD_RUNLOOP, EVENT_CLASS_SOCK): New defines.
4195 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]: Use CFSocket and
4196 RunLoop for simultaneously monitoring two kinds of inputs, window
4197 events and process outputs, without periodically polling.
4198
4199 * macfns.c (mac_initialized): Remove extern.
4200 (stricmp): Put in #if 0. All callers changed to use xstricmp in
4201 xfaces.c.
4202 (strnicmp): Decrement `n' at the end of each loop, not the beginning.
4203 (check_mac): Use the term "Mac native windows" instead of "Mac OS".
4204 (check_x_display_info, x_display_info_for_name): Sync with xfns.c.
4205 (mac_get_rdb_resource): New function (from w32reg.c).
4206 (x_get_string_resource): Use it.
4207 (install_window_handler): Add extern.
4208 (mac_window): New function.
4209 (Fx_create_frame): Use it instead of make_mac_frame.
4210 Set parameter for Qfullscreen. Call x_wm_set_size_hint.
4211 (Fx_open_connection, Fx_close_connection): New defuns.
4212 (syms_of_macfns): Defsubr them.
4213 (x_create_tip_frame) [TARGET_API_MAC_CARBON]:
4214 Add kWindowNoUpdatesAttribute to the window attribute.
4215 (x_create_tip_frame) [!TARGET_API_MAC_CARBON]: Use NewCWindow.
4216 (x_create_tip_frame): Don't call ShowWindow.
4217 (Fx_show_tip): Call ShowWindow.
4218 (Fx_file_dialog): Change `#ifdef TARGET_API_MAC_CARBON' to `#if
4219 TARGET_API_MAC_CARBON'.
4220 (mac_frame_parm_handlers): Set handlers for Qfullscreen.
4221 (syms_of_macfns) [MAC_OSX]: Initialize mac_in_use to 0.
4222
4223 * macgui.h [!MAC_OSX]: Don't include Controls.h. Include Windows.h.
4224 (Window): Typedef to WindowPtr and move outside `#if
4225 TARGET_API_MAC_CARBON'.
4226 (XSizeHints): New struct.
4227
4228 * macterm.c (x_update_begin, x_update_end)
4229 [TARGET_API_MAC_CARBON]: Disable screen updates during update of a
4230 frame.
4231 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
4232 [MAC_OS8]: Use XDrawImageString/XDrawImageString16.
4233 (construct_mouse_click): Put in #if 0.
4234 (x_check_fullscreen, x_check_fullscreen_move): Remove decls.
4235 (x_scroll_bar_create, x_scroll_bar_handle_click): Change `#ifdef
4236 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
4237 (activate_scroll_bars, deactivate_scroll_bars)
4238 [!TARGET_API_MAC_CARBON]: Use ActivateControl/DeactivateControl.
4239 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Reposition window
4240 if the position is neither user-specified nor program-specified.
4241 (x_free_frame_resources): Free size_hints.
4242 (x_wm_set_size_hint): Allocate size_hints if needed. Set size_hints.
4243 (mac_clear_font_name_table): New function.
4244 (mac_do_list_fonts): Initialize font_name_table if needed.
4245 (x_list_fonts): Don't initialize font_name_table. Add BLOCK_INPUT
4246 around mac_do_list_fonts.
4247 (mac_unload_font): New function.
4248 (x_load_font): Add BLOCK_INPUT around XLoadQueryFont.
4249 (init_mac_drag_n_drop, mac_do_receive_drag): Enclose declarations
4250 and definitions with #if TARGET_API_MAC_CARBON.
4251 [USE_CARBON_EVENTS] (mac_handle_window_event): Add decl.
4252 (install_window_handler): Add decl.
4253 (do_window_update): Add BeginUpdate/EndUpdate for the tooltip
4254 window. Use UpdateControls. Get the rectangle that should be
4255 updated and restrict the target of expose_frame to it.
4256 (do_grow_window): Set minimum height/width according to size_hints.
4257 (do_grow_window) [TARGET_API_MAC_CARBON]: Use ResizeWindow.
4258 (do_zoom_window): Don't use x_set_window_size.
4259 [USE_CARBON_EVENTS] (mac_handle_window_event): New function.
4260 (install_window_handler): New function.
4261 [!USE_CARBON_EVENTS] (mouse_region): New variable.
4262 [!USE_CARBON_EVENTS] (mac_wait_next_event): New function.
4263 (XTread_socket) [USE_CARBON_EVENTS]: Move call to
4264 GetEventDispatcherTarget inside BLOCK_INPUT.
4265 (XTread_socket) [!USE_CARBON_EVENTS]: Use mac_wait_next_event.
4266 Update mouse_region when mouse is moved.
4267 (make_mac_frame): Remove.
4268 (make_mac_terminal_frame): Put in #ifdef MAC_OS8.
4269 Initialize mouse pointer shapes. Change values of f->left_pos and
4270 f->top_pos. Don't use make_mac_frame. Use NewCWindow.
4271 Don't call ShowWindow.
4272 (mac_initialize_display_info) [MAC_OSX]: Create mac_id_name from
4273 Vinvocation_name and Vsystem_name.
4274 (mac_make_rdb): New function (from w32term.c).
4275 (mac_term_init): Use it. Add BLOCK_INPUT. Error if display has
4276 already been opened. Don't pass argument to
4277 mac_initialize_display_info. Don't set dpyinfo->height/width.
4278 Add entries to x_display_list and x_display_name_list.
4279 (x_delete_display): New function.
4280 (mac_initialize): Don't call mac_initialize_display_info.
4281 (syms_of_macterm) [!MAC_OSX]: Don't call Fprovide.
4282
4283 * macterm.h (check_mac): Add extern.
4284 (struct mac_output): New member size_hints.
4285 (FRAME_SIZE_HINTS): New macro.
4286 (mac_unload_font): Add extern.
4287
4288 * xdisp.c (expose_window, expose_frame): Remove kludges for Mac.
4289
4290 * xfaces.c (clear_font_table) [MAC_OS]: Call mac_unload_font.
4291
42922004-12-27 Richard M. Stallman <rms@gnu.org>
4293
4294 * buffer.c (Fbuffer_disable_undo): Delete (move to simple.el).
4295 (syms_of_buffer): Don't defsubr it.
4296
4297 * process.c (list_processes_1): Set undo_list instead
4298 of calling Fbuffer_disable_undo.
4299
4300 * xdisp.c (single_display_spec_string_p): Rename from
4301 single_display_prop_string_p.
4302 (single_display_spec_intangible_p): Rename from
4303 single_display_prop_intangible_p.
4304 (handle_single_display_spec): Rename from handle_single_display_prop.
4305 Rewritten to be easier to understand.
4306
4307 Change in load-history format. Functions now get (defun . NAME),
4308 and variables get just NAME.
4309
4310 * data.c (Fdefalias): Use (defun . FN_NAME) in LOADHIST_ATTACH.
4311
4312 * eval.c (Fdefun, Fdefmacro): Use (defun . FN_NAME) in LOADHIST_ATTACH.
4313 (Fdefvaralias, Fdefvar, Fdefconst): Use just SYM in LOADHIST_ATTACH.
4314 (Qdefvar): Var deleted.
4315 (syms_of_eval): Don't initialze it.
4316
4317 * lread.c (syms_of_lread) <load-history>: Doc fix.
4318
43192004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4320
4321 * xmenu.c (popup_get_selection): Pop down on C-g.
4322 (set_frame_menubar): Install translations for Lucid/Motif/Lesstif that
4323 pops down menu on C-g.
4324 (xdialog_show): If dialog popped down and no button in the dialog was
4325 pushed, call Fsignal to quit.
4326 (xmenu_show): In no toolkit version, if menu returns NO_SELECT call
4327 Fsignal to quit.
4328
4329 * xfns.c (Fx_file_dialog): Motif/Lesstif version: Pop down on C-g.
4330
4331 * gtkutil.c (xg_initialize): Install bindings for C-g so that
4332 dialogs and menus pop down.
4333
43342004-12-27 Kenichi Handa <handa@m17n.org>
4335
4336 * coding.c (code_convert_region): Fix calculation of `ratio'.
4337
43382004-12-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4339
4340 * gtkutil.c (update_frame_tool_bar): Make the value of
4341 tool-bar-button-margin control margins of images in tool bar.
4342
4343 * alloc.c (check_depth): New variable.
4344 (overrun_check_malloc, overrun_check_realloc): Only add
4345 overhead and write check pattern if check_depth is 1 (to handle
4346 recursive calls). Increase/decrease check_depth in entry/exit.
4347 (overrun_check_free): Only check for overhead if check_depth is 1.
4348 Increase/decrease check_depth in entry/exit.
4349
43502004-12-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4351
4352 * keyboard.c (input_available_signal): Call SIGNAL_THREAD_CHECK
4353 before touching input_available_clear_time, to avoid accessing it
4354 from multiple threads.
4355
43562004-12-23 Jason Rumney <jasonr@gnu.org>
4357
4358 * image.c (__WIN32__) [HAVE_NTGUI]: Define for correct behaviour
4359 of JPEG library.
4360
43612004-12-22 Richard M. Stallman <rms@gnu.org>
4362
4363 * emacs.c (main): If batch mode, set Vundo_outer_limit to nil.
4364
4365 * lisp.h (Vundo_outer_limit): Fix decl.
4366
4367 * undo.c (Vundo_outer_limit): Replaces undo_outer_limit.
4368 Uses changed.
4369 (syms_of_undo): Initialize appropriately.
4370 (truncate_undo_list): If it's nil, there's no limit.
4371
43722004-12-22 Kenichi Handa <handa@m17n.org>
4373
4374 * xselect.c (Fx_get_cut_buffer_internal): Return a unibyte string.
4375
43762004-12-21 Richard M. Stallman <rms@gnu.org>
4377
4378 * eval.c (unwind_to_catch): Clear immediate_quit.
4379
4380 * xdisp.c (get_next_display_element): Display codes 8a0 and 8ad
4381 specially as `\ ' and `\-'.
4382
4383 * keyboard.c (kbd_buffer_store_event_hold):
4384 In the code for while-no-input, handle immediate_quit.
4385
4386 * alloc.c (Fgarbage_collect): Update call to truncate_undo_list.
4387 Call that at the very start.
4388 (undo_limit, undo_strong_limit, undo_outer_limit): Move to undo.c.
4389 (syms_of_alloc): Don't define undo-limit,
4390 undo-strong-limit and undo-outer-limit here.
4391
4392 * undo.c (truncate_undo_list): Return void.
4393 Take just one argument, the buffer.
4394 Make it current, and inhibit recursive GC.
4395 Access and update the undo list directly; return void.
4396 Refer to the undo...limit variables directly.
4397 Test undo_outer_limit only after counting the whole current command.
4398 When it's exceeded, call the function in undo-outer-limit-function.
4399 (undo_limit, undo_strong_limit, undo_outer_limit): From alloc.c.
4400 (Vundo_outer_limit_function): New variable.
4401 (syms_of_undo): Define undo-limit, undo-strong-limit
4402 and undo-outer-limit here, and undo-outer-limit-function.
4403 Doc fixes.
4404
4405 * lisp.h (truncate_undo_list): Update decl.
4406
44072004-12-21 Piet van Oostrum <piet@cs.uu.nl>
4408
4409 * fileio.c (Fread_file_name): Delete duplicates in
4410 file-name-history when history_delete_duplicates is true.
4411
44122004-12-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4413
4414 * macterm.c (mac_do_list_fonts): Fix memory leak
4415
44162004-12-20 Richard M. Stallman <rms@gnu.org>
4417
4418 * regex.c (re_match_2_internal) <symend, wordend>:
4419 Fix calls to UPDATE_SYNTAX_TABLE_FORWARD.
4420
44212004-12-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4422
4423 * macterm.c (endif, x_font_name_to_mac_font_name):
4424 Use maccentraleurroman instead of maccentraleuropean
4425 (mac_c_string_match, mac_do_list_fonts): Speed up font search by
4426 quickly finding a specific font without needing regexps.
4427
44282004-12-15 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4429
4430 * syssignal.h: Declare main_thread.
4431 (SIGNAL_THREAD_CHECK): New macro.
4432
4433 * keyboard.c (input_available_signal): Move thread checking code
4434 to macro SIGNAL_THREAD_CHECK and call that macro.
4435 (interrupt_signal): Call SIGNAL_THREAD_CHECK.
4436
4437 * alloc.c (uninterrupt_malloc): Move main_thread to emacs.c.
4438
4439 * emacs.c: Define main_thread.
4440 (main): Initialize main_thread.
4441 (handle_USR1_signal, handle_USR2_signal, fatal_error_signal)
4442 (memory_warning_signal): Call SIGNAL_THREAD_CHECK.
4443
4444 * floatfns.c (float_error): Call SIGNAL_THREAD_CHECK.
4445
4446 * dispnew.c (window_change_signal): Call SIGNAL_THREAD_CHECK.
4447
4448 * sysdep.c (select_alarm): Call SIGNAL_THREAD_CHECK.
4449
4450 * process.c (send_process_trap, sigchld_handler):
4451 Call SIGNAL_THREAD_CHECK.
4452
4453 * data.c (arith_error): Call SIGNAL_THREAD_CHECK.
4454
4455 * atimer.c (alarm_signal_handler): Call SIGNAL_THREAD_CHECK.
4456
4457 * xterm.c (xg_scroll_callback): Update XG_LAST_SB_DATA before
4458 returning when xg_ignore_gtk_scrollbar is true.
4459
44602004-12-14 Kim F. Storm <storm@cua.dk>
4461
4462 * keyboard.c (read_char): Save and restore echo_string when
4463 handling input method.
4464
44652004-12-13 Richard M. Stallman <rms@gnu.org>
4466
4467 * eval.c (syms_of_eval) <quit-flag>: Doc fix.
4468
4469 * keyboard.c (Vthrow_on_input): New variable.
4470 (syms_of_keyboard): Defvar and initialize it.
4471 (kbd_buffer_store_event_hold): Handle Vthrow_on_input.
4472
4473 * lisp.h (QUIT): Check for Vthrow_on_input.
4474 (Vthrow_on_input): Declare it.
4475
44762004-12-13 Kim F. Storm <storm@cua.dk>
4477
4478 * xdisp.c (set_iterator_to_next): Reset stop_charpos after display
4479 vector.
4480
44812004-12-12 Richard M. Stallman <rms@gnu.org>
4482
4483 * indent.c (Fvertical_motion): Call move_it_by_lines even if LINES = 0.
4484
4485 * minibuf.c (Fall_completions): Add var `zero' and use it in loop.
4486 (Ftry_completion): Really use outer `zero'; eliminate inner one.
4487
44882004-12-12 Kenichi Handa <handa@m17n.org>
4489
4490 * term.c (encode_terminal_code): Fix previous change.
4491
44922004-12-11 Stefan Monnier <monnier@iro.umontreal.ca>
4493
4494 * keyboard.c (handle_async_input): Remove pthread mutex handling.
4495 (input_available_signal): Move pthread thingy to !SYNC_INPUT branch.
4496
4497 * syntax.c (Fforward_word): Avoid non-idempotent side-effects
4498 in macro arguments.
4499
4500 * minibuf.c (Ftry_completion, Fall_completions): Don't use
4501 XFASTINT blindly.
4502
4503 * emacs.c (main, Fdump_emacs): Don't touch malloc hooks if SYNC_INPUT.
4504
45052004-12-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4506
4507 * w32term.c (x_calc_absolute_position): Remove calculation of
4508 difference between inner and outer window. Don't subtract difference
4509 for left and top calculations.
4510
4511 * xterm.c (x_calc_absolute_position): Don't subtract outer_pixel_diff
4512 for left and top calculations. Remove call to x_real_positions.
4513 [Bug report by Drew Adams in November]
4514 (x_check_expected_move): Do not set change_gravity to 1 when calling
4515 x_set_offset.
4516
45172004-12-08 Richard M. Stallman <rms@gnu.org>
4518
4519 * xdisp.c (get_next_display_element): Use `escape-glyph' for
4520 control chars and escaped octal codes.
4521 (Qescape_glyph): New variable.
4522 (syms_of_xdisp): Initialize it.
4523 (escape_glyph_face): New variable.
4524 (redisplay_window): Initialize it.
4525
45262004-12-07 Paul Eggert <eggert@cs.ucla.edu>
4527
4528 * image.c (our_fill_input_buffer, jpeg_load, CHECK_LIB_AVAILABLE)
4529 (init_image): Use 1 rather than TRUE. TRUE's not always defined.
4530
45312004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4532
4533 * emacs.c (Fdump_emacs): Add ! defined (SYSTEM_MALLOC) around
4534 reset_malloc_hooks.
4535
4536 * keyboard.c (handle_async_input, input_available_signal):
4537 Add ! defined (SYSTEM_MALLOC) around thread code.
4538
4539 * alloc.c: Add comment about the reason for (UN)BLOCK_INPUT_ALLOC.
4540
45412004-12-07 Stefan Monnier <monnier@iro.umontreal.ca>
4542
4543 * eval.c (init_eval_once): Increase max_specpdl_size to 1000.
4544
4545 * config.in: Regenerate.
4546
45472004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4548
4549 * xmenu.c (Fx_popup_menu): Correct documentation about position.
4550 (xmenu_show): Do not call XTranslateCoordinates. Adjust position
4551 if not given by a mouse click to correspond with x-popup-menu
4552 documentation.
4553
4554 * config.in: Regenerate.
4555
4556 * gtkutil.c: Include signal.h and syssignal.h.
4557 (xg_get_file_name): Block and unblock __SIGRTMIN if defined.
4558
4559 * alloc.c: If HAVE_GTK_AND_PTHREAD, include pthread.h,
4560 new variables main_thread and alloc_mutex,
4561 define (UN)BLOCK_INPUT_ALLOC to use alloc_mutex to protect
4562 emacs_blocked_* calls and only do (UN)BLOCK_INPUT in the main thread.
4563 If not HAVE_GTK_AND_PTHREAD, (UN)BLOCK_INPUT_ALLOC is the same as
4564 (UN)BLOCK_INPUT.
4565 (emacs_blocked_free, emacs_blocked_malloc)
4566 (emacs_blocked_realloc): Use (UN)BLOCK_INPUT_ALLOC.
4567 (uninterrupt_malloc): Initialize main_thread and alloc_mutex.
4568 (reset_malloc_hooks): New function.
4569
4570 * lisp.h: Declare reset_malloc_hooks.
4571
4572 * emacs.c (Fdump_emacs): Call reset_malloc_hooks.
4573
4574 * keyboard.c: Conditionally include pthread.h
4575 (handle_async_input, input_available_signalt): If not in the main
4576 thread, block signal, send signal to main thread and return.
4577
4578 * gtkutil.c (xg_get_file_with_chooser): Handle local files only.
4579 Set current folder in file chooser if default_filename is a directory.
4580
45812004-12-05 Stefan Monnier <monnier@iro.umontreal.ca>
4582
4583 * regex.c (GET_UNSIGNED_NUMBER): Signal an error when reaching the end.
4584 Remove redundant correctness checks.
4585 (regex_compile): Fix up error codes for \{..\} expressions.
4586
45872004-12-05 Richard M. Stallman <rms@gnu.org>
4588
4589 * regex.c (regex_compile): Fix end-of-pattern case for space.
4590
45912004-12-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4592
4593 * macterm.h (cfstring_create_with_utf8_cstring): Add prototype.
4594 * mac.c (cfstring_create_with_utf8_cstring): Add to prevent
4595 crashes with invalid characters.
4596 * macmenu.c (add_menu_item): Use it.
4597 * image.c (image_load_quartz2d): Likewise.
4598 * macfns.c (x_set_name, x_set_title): Likewise.
4599 (Fx_file_dialog): Likewise. Use constant CFRefs instead of
4600 creating them each time for labels.
4601
46022004-12-02 Richard M. Stallman <rms@gnu.org>
4603
4604 * config.in (RE_TRANSLATE_P): If make_number is not a macro,
4605 don't use it here.
4606
4607 * eval.c (Fcalled_interactively_p): Don't check INTERACTIVE.
4608 (interactive_p): Skip Scalled_interactively_p frames
4609 like Sinteractive_p frames.
4610 (unwind_to_catch): Clear handling_signal.
4611
4612 * data.c (Fmake_variable_buffer_local): Doc fix.
4613 (Fmake_local_variable): Doc fix.
4614
4615 * insdel.c (insert_from_string_before_markers)
4616 (insert_from_string): Don't modify buffer on empty insertion.
4617
4618 * window.c (Fget_lru_window, Fget_largest_window): Doc fixes.
4619
46202004-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4621
4622 * macmenu.c (add_menu_item): Fallback on MacRoman if encoding
4623 menu text as UTF8 fails.
4624
46252004-12-01 Kim F. Storm <storm@cua.dk>
4626
4627 * alloc.c: Add commentary for last change.
4628 (XMALLOC_PUT_SIZE, XMALLOC_GET_SIZE): New macros to handle
4629 sizeof(size_t) != 4.
4630 (overrun_check_malloc, overrun_check_realloc, overrun_check_free):
4631 Use them. Also clear header and trailer of freed memory.
4632 (GC_STRING_OVERRUN_COOKIE_SIZE): Rename from GC_STRING_EXTRA.
4633 (string_overrun_cookie): Rename from string_overrun_pattern.
4634 (GC_STRING_EXTRA): Define from GC_STRING_OVERRUN_COOKIE_SIZE.
4635
46362004-12-01 Andreas Schwab <schwab@suse.de>
4637
4638 * lisp.h: Declare string_to_multibyte.
4639
46402004-12-01 Kenichi Handa <handa@m17n.org>
4641
4642 * w32console.c (w32con_write_glyphs): Decide coding here.
4643 Adjusted for the change of encode_terminal_code.
4644
4645 * term.c (encode_terminal_code): Don't make it "static".
4646
46472004-11-30 Kenichi Handa <handa@m17n.org>
4648
4649 * term.c (encode_terminal_buf, encode_terminal_bufsize): New variables.
4650 (encode_terminal_code): Argument changed. Encode all
4651 characters at once, and return a pointer to the result of encoding.
4652 (write_glyphs): Decide coding here. Adjusted for the above change.
4653 (insert_glyphs): Likewise.
4654 (term_init): Initialize encode_terminal_bufsize to 0.
4655
4656 * coding.c (Vcode_conversion_workbuf_name): New variable.
4657 (syms_of_coding): Initialize and staticpro it.
4658 (set_conversion_work_buffer): New function.
4659 (run_pre_post_conversion_on_str): Use it.
4660 (run_pre_write_conversin_on_c_str): New function.
4661
4662 * coding.h (run_pre_write_conversin_on_c_str): Extern it.
4663
46642004-11-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4665
4666 * keyboard.c: Don't undef SIGIO
4667 * s/darwin.h (NO_SOCK_SIGIO): Define NO_SOCK_SIGIO on carbon
4668 * Makefile.in (mac.o): Depend on blockinput.h and atimer.h.
4669 (macfns.o): Don't depend on ccl.h.
4670 * macfns.c (mac_frame_parm_handlers): Set handlers for
4671 Qleft_fringe and Qright_fringe.
4672 * macterm.c (mac_fill_rectangle_to_pixmap)
4673 (mac_draw_rectangle_to_pixmap, mac_copy_area_to_pixmap)
4674 (mac_copy_area_with_mask_to_pixmap, x_draw_image_foreground_1):
4675 Put in #if 0.
4676 (mac_scroll_area) [TARGET_API_MAC_CARBON]: Use ScrollWindowRect.
4677 (x_flush) [TARGET_API_MAC_CARBON]: Don't traverse frames.
4678 (XFlush) [TARGET_API_MAC_CARBON]: Define to an empty replacement.
4679 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
4680 [!MAC_OS8]: Added ifdef'd out code for os8. Don't use
4681 XDrawImageString. Always draw background and foreground separately.
4682 (x_draw_image_foreground): Use clipping instead of computing the
4683 intersection rectangle.
4684 (x_draw_image_glyph_string): Don't draw an image with mask to a
4685 pixmap.
4686 (x_redisplay_interface): Set flush_display_optional member to 0.
4687 (XTread_socket): Correctly reset the TEConverter
4688 object.
4689
46902004-11-30 Kim F. Storm <storm@cua.dk>
4691
4692 * lisp.h: New defines to enable buffer overrun checking.
4693 (GC_CHECK_STRING_OVERRUN, GC_CHECK_STRING_FREE_LIST)
4694 (XMALLOC_OVERRUN_CHECK, GC_CHECK_CONS_LIST): Add.
4695
4696 * alloc.c: Add more checks for buffer overruns.
4697 (XMALLOC_OVERRUN_CHECK_SIZE, xmalloc_overrun_check_header)
4698 xmalloc_overrun_check_trailer, overrun_check_malloc)
4699 overrun_check_realloc, overrun_check_free): Add.
4700 (GC_STRING_EXTRA, string_overrun_pattern): Add.
4701 (check_sblock, allocate_string_data, compact_small_strings):
4702 Set and check string_overrun_pattern if GC_CHECK_STRING_OVERRUN.
4703 (check_cons_list): Condition on GC_CHECK_CONS_LIST.
4704 (check_string_free_list): Add.
4705 (allocate_string, sweep_strings): Call check_string_free_list.
4706
4707 * emacs.c (malloc_initialize_hook): Don't free malloc_state_ptr if
4708 XMALLOC_OVERRUN_CHECK to avoid crash during load.
4709
47102004-11-29 Kim F. Storm <storm@cua.dk>
4711
4712 * fns.c (concat): Use SAFE_ALLOCA.
4713
47142004-11-29 Stefan Monnier <monnier@iro.umontreal.ca>
4715
4716 * sysdep.c (emacs_write): Don't use QUIT.
4717
47182004-11-29 Kenichi Handa <handa@m17n.org>
4719
4720 * buffer.c (init_buffer): Set current_buffer->directory to a
4721 multibyte string made by string_to_multibyte.
4722
4723 * emacs.c (init_cmdargs): Set unibyte strings in Vcommand_line_args.
4724
47252004-11-27 Andreas Schwab <schwab@suse.de>
4726
4727 * alloc.c (mark_stack): Call GC_MARK_SECONDARY_STACK if defined.
4728
4729 * s/gnu-linux.h: Enable no-op gcpros on ia64.
4730 (GC_MARK_SECONDARY_STACK) [__ia64__]: Define.
4731
4732 * filelock.c (lock_file_1): Call get_boot_time early.
4733 Increase buffer size.
4734
47352004-11-27 Eli Zaretskii <eliz@gnu.org>
4736
4737 * lisp.h (DECL_ALIGN): Define non-trivially only if NO_DECL_ALIGN
4738 is not defined.
4739
47402004-11-27 Kim F. Storm <storm@cua.dk>
4741
4742 * search.c (syms_of_search) <search-spaces-regexp>: Move 'doc:'
4743 marker out of doc string.
4744
47452004-11-26 Stefan Monnier <monnier@iro.umontreal.ca>
4746
4747 * s/darwin.h (POSIX_SIGNALS): Undo the removal of 2002-08-25,
4748 which was not mentioned in the log.
4749
47502004-11-26 Kim F. Storm <storm@cua.dk>
4751
4752 * fringe.c (update_window_fringes): Prefer truncation bitmaps over
4753 angle bitmaps at top/bottom line.
4754
4755 * xdisp.c: Undo recent changes for restoring saved_face_id. Instead,
4756 set it when it->method is set to next_element_from_display_vector.
4757 (setup_for_ellipsis): Add LEN argument. Callers changed.
4758 Set it->saved_face_id.
4759 (get_next_display_element): Use loop instead of recursion.
4760 Set it->saved_face_id. Combine duplicate code for ctr chars.
4761 (next_element_from_display_vector): Do not set it->saved_face_id.
4762 (next_element_from_ellipsis): Use setup_for_ellipsis.
4763
47642004-11-26 Eli Zaretskii <eliz@gnu.org>
4765
4766 * eval.c (Fdefvar): Declare pdl from last change as `volatile' to
4767 prevent compiler warnings.
4768
47692004-11-25 Stefan Monnier <monnier@iro.umontreal.ca>
4770
4771 * keyboard.c (command_loop_1): Print a message describing the key
4772 the user just pressed when this key has no binding.
4773
4774 * sysdep.c (sys_signal): Don't use SA_RESTART if SYNC_INPUT is set.
4775 (emacs_open, emacs_read, emacs_write): Check QUIT when interrupted.
4776
4777 * lread.c (readchar): Check QUIT when `getc' is interrupted.
4778
47792004-11-24 Richard M. Stallman <rms@gnu.org>
4780
4781 * coding.c (run_pre_post_conversion_on_str): Bind Qinhibit_read_only.
4782
4783 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>: Doc fix.
4784
47852004-11-24 Kim F. Storm <storm@cua.dk>
4786
4787 * xdisp.c (move_it_in_display_line_to, display_line):
4788 Restore saved_face_id also when truncate-lines or hscrolled.
4789
47902004-11-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4791
4792 * gtkutil.c (xg_get_file_name): Rename use-old-gtk-file-dialog to
4793 x-use-old-gtk-file-dialog.
4794
4795 * xfns.c: Define x_use_old_gtk_file_dialog.
4796 (syms_of_xfns): Rename use-old-gtk-file-dialog to x-... Move it
4797 outside ifdef USE_GTK.
4798
47992004-11-23 Stefan Monnier <monnier@iro.umontreal.ca>
4800
4801 * coding.h (ENCODE_FILE, DECODE_FILE, ENCODE_SYSTEM, DECODE_SYSTEM):
4802 Don't use XFASTINT blindly.
4803
4804 * config.in (RE_TRANSLATE_P): Don't use XFASTINT blindly.
4805
4806 * indent.c (skip_invisible): Avoid non-idempotent side-effects
4807 in macro arguments.
4808
4809 * keymap.c (Flookup_key): Check INTEGERP before XINT.
4810
4811 * lread.c (oblookup): Don't use XFASTINT blindly.
4812
4813 * window.c (Fset_window_scroll_bars): Don't use XINT if it isn't int.
4814 (decode_next_window_args, window_loop): Don't use XFASTINT blindly.
4815
48162004-11-23 Kim F. Storm <storm@cua.dk>
4817
4818 * dispextern.h (MATRIX_ROW_ENDS_IN_MIDDLE_OF_CHAR_P)
4819 (MATRIX_ROW_STARTS_IN_MIDDLE_OF_CHAR_P): Not if dpvec_index is zero.
4820
4821 * xfaces.c (lookup_named_face): Add signal_p arg. Return -1 if
4822 signal_p is zero and face name is unknown.
4823 (Fx_list_fonts): Don't signal error in lookup_named_face.
4824 (Fface_font): Signal error in lookup_named_face.
4825 (ascii_face_of_lisp_face): Likewise.
4826
4827 * dispextern.h (lookup_named_face): Fix prototype.
4828
4829 * xdisp.c (handle_single_display_prop): Don't signal error in
4830 lookup_named_face for unknown fringe face name.
4831 (highlight_trailing_whitespace): Don't signal error in
4832 lookup_named_face if trailing-whitespace face unknown.
4833 (calc_line_height_property): Don't signal error in
4834 lookup_named_face if specified face name is unknown.
4835
4836 * fringe.c (update_window_fringes): Show top row indicator if
4837 window has header-line. Don't show arrow at bob and eob
4838 if the boundary indicators are not used.
4839 (Fset_fringe_bitmap_face): Signal error in lookup_named_face.
4840
4841 * window.c (set_window_buffer): Clear display_error_modiff.
4842
48432004-11-22 Kim F. Storm <storm@cua.dk>
4844
4845 * fringe.c (update_window_fringes): Provide sensible fall-back
4846 value for non-nil indicate-buffer-boundaries setting.
4847
48482004-11-22 Markus Rost <rost@ias.edu>
4849
4850 * minibuf.c (Fminibuffer_complete_and_exit): Fix previous change.
4851
48522004-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
4853
4854 * eval.c (Fdefvar): Warn when var is let-bound but globally void.
4855
48562004-11-21 Kim F. Storm <storm@cua.dk>
4857
4858 * xdisp.c (erase_phys_cursor): Clear hollow cursor inside TEXT_AREA.
4859
4860 * xterm.c (x_clip_to_row): Add area arg. Callers changed.
4861 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
4862
4863 * w32term.c (w32_clip_to_row): Add area arg. Callers changed.
4864 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
4865
4866 * macterm.c (x_clip_to_row): Add area arg. Callers changed.
4867 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
4868
4869 * xdisp.c (move_it_in_display_line_to, display_line):
4870 Restore saved_face_id if overflow-newline-into-fringe is enabled and
4871 line is continued before or in middle of element from display vector.
4872
4873 * indent.c (Fvertical_motion): Fix last change. Use another
4874 method to detect if iterator moved too far ahead after reseat.
4875
4876 * xdisp.c (IT_EXPAND_MATRIX_WIDTH): New macro. Do not
4877 expand matrix width for overflow in zero-width area.
4878 (append_glyph, append_composite_glyph, produce_image_glyph)
4879 (append_stretch_glyph): Use it to avoid loop in redisplay.
4880 (note_mode_line_or_margin_highlight): Don't let help-echo from
4881 string override help-echo from image map.
4882
48832004-11-20 Luc Teirlinck <teirllm@auburn.edu>
4884
4885 * fns.c (Fyes_or_no_p): Call Fread_from_minibuffer with extra argument.
4886 * callint.c (Fcall_interactively): Ditto.
4887
48882004-11-20 Stefan Monnier <monnier@iro.umontreal.ca>
4889
4890 * minibuf.c (Fminibuffer_complete_and_exit):
4891 Fixup the case of the completed value, for case-indep completion.
4892
48932004-11-20 Richard M. Stallman <rms@gnu.org>
4894
4895 * lisp.h (Fread_from_minibuffer): Add arg in decl.
4896
4897 * minibuf.c (read_minibuf): New arg KEEP_ALL. Callers changed.
4898 (Fread_from_minibuffer): New arg KEEP_ALL. Callers changed.
4899
4900 * search.c (Vsearch_spaces_regexp):
4901 Rename from Vsearch_whitespace_regexp. All uses changed.
4902
49032004-11-20 Thien-Thi Nguyen <ttn@gnu.org>
4904
4905 * eval.c (init_eval_once): Increase `max_specpdl_size' to 650.
4906
49072004-11-19 Richard M. Stallman <rms@gnu.org>
4908
4909 * search.c (Vsearch_whitespace_regexp): New variable.
4910 (syms_of_search): Defvar it.
4911 (compile_pattern_1): Call re_set_whitespace_regexp with it.
4912 (search_buffer): No regexp is trivial if Vsearch_whitespace_regexp
4913 is non-nil.
4914 (struct regexp_cache): New element whitespace_regexp.
4915 (syms_of_search): Initialize whitespace_regexp elements.
4916 (compile_pattern): Compare whitespace_regexp elements.
4917 (compile_pattern_1): Set whitespace_regexp elements.
4918
4919 * regex.c (regex_compile): Substitute whitespace_regexp
4920 for spaces, if it is nonzero.
4921 (whitespace_regexp): New variable.
4922 (re_set_whitespace_regexp): New function.
4923
49242004-11-19 Kim F. Storm <storm@cua.dk>
4925
4926 * indent.c (Fvertical_motion): Fix last change.
4927
49282004-11-18 Kim F. Storm <storm@cua.dk>
4929
4930 * indent.c (Fvertical_motion): Undo 2004-11-16 change.
4931 Instead, move back again if reseating moves too far ahead.
4932
49332004-11-17 Luc Teirlinck <teirllm@auburn.edu>
4934
4935 * xdisp.c (message3): Call clear_message.
4936
49372004-11-17 Kim F. Storm <storm@cua.dk>
4938
4939 * xdisp.c (erase_phys_cursor): Adjust cursor row visible height.
4940
49412004-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4942
4943 * gtkutil.c (xg_get_file_name): Typo in HAVE_GTK_FILE_SELECTION_NEW.
4944
4945 * xmenu.c (x_menu_in_use): Remove.
4946 (x_menu_set_in_use): Also set popup_activated_flag.
4947
4948 * xfns.c (Fx_file_dialog): Call popup_activated instead of
4949 x_menu_in_use. Call x_menu_set_in_use in Motif version also.
4950
4951 * xterm.h (x_menu_in_use): Remove.
4952
49532004-11-16 Richard M. Stallman <rms@gnu.org>
4954
4955 * keymap.c (Fmap_keymap): New arg SORT-FIRST.
4956 Use map-keymap-internal to implement that.
4957
4958 * indent.c (Fvertical_motion): In batch mode, use vmotion directly.
4959
49602004-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
4961
4962 * xdisp.c (get_glyph_string_clip_rect, init_glyph_string): Check it's
4963 a window before using XWINDOW.
4964
4965 * window.c (make_window, Fselect_window, make_dummy_parent)
4966 (save_window_save):
4967 * frame.c (make_frame):
4968 * fns.c (concat): Avoid side-effects inside XSETFASTINT's arguments.
4969
4970 * lisp.h (NILP): Use EQ rather than XFASTINT.
4971
49722004-11-16 Kim F. Storm <storm@cua.dk>
4973
4974 * fringe.c (Fdefine_fringe_bitmap): Always set 'h'. Simplify.
4975
4976 * indent.c (Fvertical_motion): Fix last change. Only reseat when
4977 moving backwards.
4978
49792004-11-16 Luc Teirlinck <teirllm@auburn.edu>
4980
4981 * dispextern.h: Extern reseat_at_previous_visible_line_start.
4982
49832004-11-16 Kenichi Handa <handa@m17n.org>
4984
4985 * xdisp.c (display_mode_element): Fix previous change (calculate
4986 end position of substring to display correctly).
4987
49882004-11-16 Kim F. Storm <storm@cua.dk>
4989
4990 * keyboard.c (Fposn_at_point): Remove extra */ after doc string.
4991 Reported by Andrew M. Scott.
4992
49932004-11-15 Kim F. Storm <storm@cua.dk>
4994
4995 * fns.c (Fsafe_plist_get): New defun.
4996 (syms_of_fns): Defsubr it.
4997
4998 * lisp.h (Fsafe_plist_get): Add EXFUN.
4999
5000 * xdisp.c (store_mode_line_string, produce_stretch_glyph):
5001 Use Fsafe_plist_get.
5002 (note_mode_line_or_margin_highlight, note_mouse_highlight):
5003 Fix image map element parsing. Use Fsafe_plist_get.
5004
50052004-11-15 Richard M. Stallman <rms@gnu.org>
5006
5007 * xdisp.c (get_next_display_element): Fix previous change.
5008
50092004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5010
5011 * window.c (shrink_windows): Handle special case of one window left
5012 when trying to shrink the final reminder. Grow windows if
5013 total_removed is less than total_shrink.
5014
5015 * xmenu.c (pop_down_menu): Remove global variable current_menu,
5016 extract pointer from arg with XSAVE_VALUE.
5017 (create_and_show_popup_menu, create_and_show_dialog, xmenu_show):
5018 Construct arg to record_unwind_protect with make_save_value.
5019
50202004-11-13 Richard M. Stallman <rms@gnu.org>
5021
5022 * xdisp.c (reseat_at_previous_visible_line_start): No longer static.
5023 (get_next_display_element): Fix previous change to apply only to \n.
5024
5025 * indent.c (Fvertical_motion): Scan to PT from start of line to
5026 make iterator consistent.
5027
5028 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
5029
50302004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5031
5032 * gtkutil.c (pop_down_file_dialog): Add BLOCK_INPUT.
5033
5034 * xfns.c (Fx_file_dialog): Call x_menu_in_use and x_menu_set_in_use.
5035 Record unwind with clean_up_file_dialog.
5036
5037 * xterm.h (x_menu_in_use, x_menu_set_in_use, x_menu_wait_for_event):
5038 Declare.
5039
5040 * xmenu.c (x_menu_in_use, x_menu_set_in_use): New functions.
5041
50422004-11-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5043
5044 * gtkutil.c (xg_file_sel_ok, xg_file_sel_cancel)
5045 (xg_file_sel_destroy): Remove.
5046 (xg_file_response_cb, pop_down_file_dialog)
5047 (xg_get_file_name_from_chooser, xg_get_file_name_from_selector):
5048 New functions.
5049 (xg_get_file_with_chooser, xg_get_file_with_selection):
5050 Take new arg func, set it to xg_get_file_name_from_chooser/selector.
5051 Move common code to xg_get_file_name. Return widget created.
5052 (xg_get_file_name): Set name, transient for, modal and destroy
5053 with parent here. Connect response signal to xg_file_response_cb,
5054 connect delete-event to gtk_true. Record pop_down_file_dialog
5055 for unwind. Do event loop and call x_menu_wait_for_event in loop.
5056 (xg_create_widget): Make dialogs modal.
5057
5058 * xmenu.c (unuse_menu_items, pop_down_menu): Arg is of type
5059 Lisp_Object.
5060 (popup_get_selection): Move unwind protect ...
5061 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
5062 Move destroy of widget to pop_down_menu.
5063 (popup_widget_loop): Move unwind protect ...
5064 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
5065 Move destroy of widget to pop_down_menu.
5066 (pop_down_menu): BLOCK_INPUT and destroy widget/window.
5067 (xmenu_show): Record unwind pop_down_menu. Move XMenuDestroy,
5068 x_mouse_leave and grabbed = 0 to pop_down_menu.
5069
50702004-11-13 Kim F. Storm <storm@cua.dk>
5071
5072 * xdisp.c (make_cursor_line_fully_visible_p): New variable.
5073 (syms_of_xdisp): DEFVAR_BOOL it.
5074 (make_cursor_line_fully_visible, try_cursor_movement)
5075 (try_window_id): Use it.
5076
50772004-11-12 Kim F. Storm <storm@cua.dk>
5078
5079 * dispextern.h (struct glyph_row): New member extra_line_spacing.
5080 (struct it): New member max_extra_line_spacing.
5081 (MR_PARTIALLY_VISIBLE, MR_PARTIALLY_VISIBLE_AT_TOP)
5082 (MR_PARTIALLY_VISIBLE_AT_BOTTOM): New helper macros.
5083 (MATRIX_ROW_PARTIALLY_VISIBLE_P): Fix to return false if invisible
5084 part of last line is only extra line spacing (so the text on the
5085 line is fully visible). Use helper macros.
5086 Add W arg (to use them). All callers changed.
5087 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_TOP_P)
5088 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_BOTTOM_P): Use helper macros.
5089
5090 * window.c (window_scroll_pixel_based, Frecenter):
5091 Use move_it_vertically_backward directly.
5092 (Frecenter): Fix calculation of new start pos for negative arg.
5093 Before, the new start pos was sometimes chosen too far back, so
5094 the last line became only partially visible, and thus would be
5095 either only semi-visible or automatically scrolled to the middle
5096 of the window by redisplay.
5097
5098 * xdisp.c (init_iterator): Clear it.max_extra_line_spacing.
5099 (move_it_vertically_backward): Don't recure to move further back.
5100 (move_it_vertically): Remove superfluous condition.
5101 (move_it_by_lines): Clear last_height when moved 0 lines.
5102 (resize_mini_window): Use it.max_extra_line_spacing.
5103 (display_tool_bar_line): Clear row->extra_line_spacing.
5104 (try_scrolling): Use move_it_vertically_backward directly.
5105 (redisplay_window): Likewise.
5106 (compute_line_metrics): Set row->extra_line_spacing.
5107 (display_line, display_string): Likewise.
5108 (x_produce_glyphs): Update it->max_extra_line_spacing.
5109
5110 * xmenu.c (pop_down_menu): Return nil.
5111
51122004-11-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5113
5114 * xmenu.c (x_menu_wait_for_event): New function.
5115 (popup_get_selection, popup_widget_loop): Call x_menu_wait_for_event
5116 to handle timers.
5117 (popup_widget_loop): Add argument do_timers.
5118 (create_and_show_popup_menu, create_and_show_dialog): Pass 1 for
5119 do_timers to popup_widget_loop.
5120 (xmenu_show): Call XMenuActivateSetWaitFunction so that
5121 x_menu_wait_for_event is called by XMenuActivate.
5122 (create_and_show_popup_menu): Pass 1 for do_timers to
5123 popup_get_selection.
5124 (pop_down_menu): New function.
5125 (popup_get_selection, popup_widget_loop): Unwind protect to
5126 pop_down_menu.
5127 (popup_widget_loop): Add argument widget.
5128 (create_and_show_popup_menu, create_and_show_dialog): Pass new
5129 argument widget to popup_widget_loop.
5130
51312004-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
5132
5133 * keymap.c (Fkeymap_prompt): Accept symbol keymaps.
5134
51352004-11-09 Kim F. Storm <storm@cua.dk>
5136
5137 * xselect.c: Include <sys/types.h> and <unistd.h> (for getpid).
5138 Fix various comments referring to XEvents instead of input events.
5139 (x_queue_event): Fix format strings.
5140 (x_stop_queuing_selection_requests): Likewise.
5141
5142 * xdisp.c (produce_image_glyph): Remove unused variable 'face_ascent'.
5143 (pint2hrstr): Add extra braces to silence compiler.
5144
5145 * print.c (print_object): Fix format string.
5146
5147 * lread.c (read1): Fix next_char matching.
5148
5149 * lisp.h (Fdelete): Add EXFUN.
5150 (replace_range_2): Add prototype.
5151
5152 * keyboard.c (read_avail_input): Remove unused variable 'discard'.
5153
5154 * intervals.h (NULL_INTERVAL_P): Add separate version when
5155 ENABLE_CHECKING is not defined to silence compiler.
5156 (compare_string_intervals): Add prototype.
5157
5158 * fringe.c (destroy_fringe_bitmap): Fix return type.
5159 (Ffringe_bitmaps_at_pos): Remove unused var 'old_buffer'.
5160
5161 * emacs.c (Fdump_emacs): Fix format string.
5162
5163 * doc.c: Include <ctype.h>.
5164 (Fsubstitute_command_keys): Remove unused variable 'firstkey'.
5165
5166 * data.c (store_symval_forwarding): Remove unused variables.
5167
5168 * callint.c (Fcall_interactively): Remove unused variable 'funcar'.
5169
51702004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5171
5172 * Makefile.in (stamp-oldxmenu): If HAVE_GTK, don't add dependencies
5173 to ${OLDXMENU}.
5174
51752004-11-09 Kim F. Storm <storm@cua.dk>
5176
5177 * process.c (Fmake_network_process): Remove kludge for interrupted
5178 connects on BSD. If connect is interrupted, just close socket and
5179 start over rather than sleeping and retry with same socket.
5180
51812004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5182
5183 * .cvsignore: Add buildobj.lst.
5184
5185 * doc.c: New variable Vbuild_files.
5186 (Fsnarf_documentation): If Vbuild_files is nil, populate it with
5187 file names from buildobj.lst. Only attach docstrings from files
5188 that are in Vbuild_files.
5189 (syms_of_doc): Defvar Vbuild_files.
5190
5191 * Makefile.in (SOME_MACHINE_OBJECTS): Add fringe.o, image.o
5192 and w32*.o.
5193 (temacs${EXEEXT}): Generate buildobj.lst when temacs is linked.
5194 (mostlyclean): Rm buildobj.lst
5195
5196 * makefile.w32-in ($(TEMACS)): Generate buildobj.lst when temacs
5197 is linked.
5198
51992004-11-09 Kim F. Storm <storm@cua.dk>
5200
5201 * fringe.c (update_window_fringes): Update fringe bitmaps if
5202 cur and row ends_at_zv_p differs. If bitmaps of a row is updated,
5203 also update previous row to get rid of misc. artifacts.
5204
52052004-11-08 Kim F. Storm <storm@cua.dk>
5206
5207 * xdisp.c (fast_find_position): Fix start pos if header line present.
5208 (note_mouse_highlight): Clear mouse face if we move out of text area.
5209
52102004-11-08 Eli Zaretskii <eliz@gnu.org>
5211
5212 * editfns.c: Move #include "systime.h" before <sys/resource.h>.
5213 Don't include <sys/time.h> explicitly.
5214 Include <stdio.h> unconditionally, not just on MacOS.
5215
52162004-11-08 Kenichi Handa <handa@m17n.org>
5217
5218 * fontset.c (fontset_pattern_regexp): Cancel my previous change;
5219 don't pay attention to '\' before '*'.
5220 (fontset_pattern_regexp): Change the meaning of the second arg.
5221 (Fnew_fontset): Call fs_query_fontset, not Fquery_fontset.
5222 (check_fontset_name): Try NAME as literal at first, and if it
5223 failes, try NAME as pattern.
5224
52252004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5226
5227 * emacs.c (Fdump_emacs): Only output warning on GNU/Linux.
5228
52292004-11-07 Andreas Schwab <schwab@suse.de>
5230
5231 * lisp.h (Fmsdos_downcase_filename): Declare.
5232 * dired.c (Fmsdos_downcase_filename): Don't declare here.
5233 * fileio.c: Likewise.
5234
52352004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5236
5237 * dosfns.c (Fdos_memget, Fdos_memput): Use integer variable offs in
5238 comparisons with integers instead of Lisp_Object address.
5239 (Fmsdos_set_keyboard): Declare argument allkeys.
5240
5241 * msdos.c (IT_set_frame_parameters): Use EQ, not ==, for Lisp_Object:s.
5242
5243 * dired.c (Fmsdos_downcase_filename): Declare extern on MSDOS to avoid
5244 int/Lisp_Object mixup.
5245
5246 * fileio.c: Ditto.
5247
52482004-11-06 Steven Tamm <steventamm@mac.com>
5249
5250 * editfns.c: Need to include sys/time.h before resource.h on darwin.
5251
52522004-11-06 Richard M. Stallman <rms@gnu.org>
5253
5254 * callint.c (Fcall_interactively): Avoid reusing EVENT for other data.
5255
5256 * xfaces.c (merge_named_face): GCPRO the face_name in the
5257 named_merge_point struct that we make.
5258 (merge_face_heights): Eliminate GCPRO arg. All callers changed.
5259
5260 * keyboard.c (command_loop_1): Change Vtransient_mark_mode
5261 before deciding whether to inactivate mark.
5262
52632004-11-06 Lars Brinkhoff <lars@nocrew.org>
5264
5265 * config.in: Regenerate (add HAVE_GETRUSAGE).
5266 * editfns.c (Fget_internal_run_time): New function.
5267 (syms_of_data): Defsubr it.
5268 * fns.c (sxhash): As far as possible, merge calculation of
5269 hash code for symbols and strings.
5270
52712004-11-06 Eli Zaretskii <eliz@gnu.org>
5272
5273 * frame.c (syms_of_frame): Fix the example in the doc string.
5274
52752004-11-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5276
5277 * eval.c (Feval): Remove check for INPUT_BLOCKED_P.
5278
5279 * xmenu.c (popup_get_selection, create_and_show_popup_menu)
5280 (create_and_show_dialog): Revert change from 2004-10-31.
5281
52822004-11-05 Luc Teirlinck <teirllm@auburn.edu>
5283
5284 * macros.c (syms_of_macros) <defining-kbd-macro>: Doc fix.
5285
52862004-11-05 Kim F. Storm <storm@cua.dk>
5287
5288 * print.c (print_object): Print Lisp_Misc_Save_Value objects.
5289
5290 * fileio.c (Ffile_modes): Doc fix.
5291 (auto_save_1): Check for Ffile_modes nil value.
5292
52932004-11-05 Kim F. Storm <storm@cua.dk>
5294
5295 * xselect.c (struct selection_event_queue, selection_queue)
5296 (x_queue_selection_requests, x_queue_event)
5297 (x_start_queuing_selection_requests)
5298 (x_stop_queuing_selection_requests): Add new queue for selection
5299 input events to replace previous XEvent queue in xterm.c.
5300 (queue_selection_requests_unwind): Adapt to new queue.
5301 (x_reply_selection_request): Adapt to new queue.
5302 Unexpect wait_object in case of x errors (memory leak).
5303 (x_handle_selection_request, x_handle_selection_clear): Make static.
5304 (x_handle_selection_event): New function. May queue selection events.
5305 (wait_for_property_change_unwind): Use save_value instead of cons.
5306 Clear property_change_reply_object.
5307 (wait_for_property_change): Abort if already waiting.
5308 Use save_value instead of cons for unwind data.
5309 (x_handle_property_notify): Skip events already arrived, but don't
5310 free them, as "arrived" field is checked by wait_for_property_change,
5311 and it will be freed by unwind or explicit unexpect_property_change.
5312 (x_get_foreign_selection): Add to new queue.
5313 (receive_incremental_selection): Don't unexpect wait_object when done
5314 as it has already been freed by previous wait_for_property_change.
5315
5316 * xterm.h (x_start_queuing_selection_requests)
5317 (x_stop_queuing_selection_requests, x_handle_selection_request)
5318 (x_handle_selection_clear): Remove prototypes.
5319 (x_handle_selection_event): Add prototype.
5320
5321 * xterm.c (handle_one_xevent): Don't queue X selection events
5322 here, it may be too late if we start queuing after we have already
5323 stored some selection events into the kbd buffer.
5324 (struct selection_event_queue, queue, x_queue_selection_requests)
5325 (x_queue_event, x_unqueue_events, x_start_queuing_selection_requests)
5326 (x_stop_queuing_selection_requests): Remove/move to xselect.c.
5327 (x_catch_errors_unwind): Block input around final XSync.
5328
5329 * keyboard.h (kbd_buffer_unget_event): Add prototype.
5330
5331 * keyboard.c (kbd_buffer_store_event_hold): Remove obsolete code.
5332 (kbd_buffer_unget_event): New function.
5333 (kbd_buffer_get_event, swallow_events): Combine SELECTION events
5334 and use x_handle_selection_event.
5335 (mark_kboards): Don't mark x and y of SELECTION_CLEAR_EVENT.
5336
53372004-11-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5338
5339 * xselect.c (TRACE3): New debug macro.
5340 (x_reply_selection_request): Use it.
5341 (receive_incremental_selection): In call to TRACE0, the name of
5342 a symbol is in xname.
5343
53442004-11-05 Kim F. Storm <storm@cua.dk>
5345
5346 * fontset.c (fontset_pattern_regexp): Use unsigned char.
5347
53482004-11-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5349
5350 * fileio.c (Fnext_read_file_uses_dialog_p): New function.
5351
5352 * gtkutil.h (use_old_gtk_file_dialog): Declare.
5353
5354 * gtkutil.c: Make use_old_gtk_file_dialog non-static.
5355 (xg_initialize): Move DEFVAR_BOOL for use_old_gtk_file_dialog ...
5356 * xfns.c (syms_of_xfns): ... to here.
5357
5358 * gtkutil.c (xg_get_file_with_chooser): Expand DEFAULT_FILENAME if
5359 it doesn't start with /.
5360
53612004-11-04 Kenichi Handa <handa@m17n.org>
5362
5363 * fontset.c (fontset_pattern_regexp): If '*' is preceded by '\',
5364 treat it as a literal character.
5365
53662004-11-03 Kim F. Storm <storm@cua.dk>
5367
5368 * .gdbinit (ppt): New function.
5369
53702004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5371
5372 * xterm.c (x_window_to_scroll_bar): Only call
5373 xg_get_scroll_id_for_window if toolkit scroll bars are used.
5374
5375 * gtkutil.c (xg_get_file_with_chooser): Use GTK_STOCK_OK instead
5376 of save.
5377
53782004-11-02 Andreas Schwab <schwab@suse.de>
5379
5380 * window.c (Fscroll_right): Fix last change.
5381
53822004-11-02 Kim F. Storm <storm@cua.dk>
5383
5384 * Makefile.in (callproc.o): Depend on blockinput.h atimer.h systime.h.
5385
53862004-11-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5387
5388 * callproc.c (Fcall_process): Block input around vfork.
5389
53902004-11-02 Kim F. Storm <storm@cua.dk>
5391
5392 * eval.c (Fcalled_interactively_p): Rename from Fcall_interactive_p.
5393 (syms_of_eval): Defsubr it.
5394
53952004-11-02 Richard M. Stallman <rms@gnu.org>
5396
5397 * insdel.c (replace_range_2): New function.
5398
5399 * casefiddle.c (casify_region): Handle changes in byte-length
5400 using replace_range_2.
5401
5402 * emacs.c (USAGE3): Delete --horizontal-scroll-bars, -hb.
5403
5404 * xdisp.c (back_to_previous_visible_line_start):
5405 Subtract 1 from pos when checking previous newline for invisibility.
5406
5407 * window.c (window_scroll_pixel_based): Update preserve_y
5408 for header line if any.
5409 (Fscroll_left, Fscroll_right): Don't call interactive_p;
5410 use a new second argument instead.
5411
5412 * eval.c (Fcall_interactive_p): New function.
5413 (interactive_p): Don't test INTERACTIVE here.
5414 (Finteractive_p): Doc fix.
5415
5416 * eval.c (Feval): Abort if INPUT_BLOCKED_P.
5417
54182004-11-02 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
5419
5420 * w32fns.c (w32_font_match): Use fast_string_match_ignore_case for
5421 comparing font names.
5422
54232004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5424
5425 * fileio.c (Fread_file_name): Pass Qt as fifth parameter to
5426 Fx_file_dialog if only directories should be read.
5427
5428 * lisp.h: Fx_file_dialog takes 5 parameters.
5429
5430 * xfns.c (Fx_file_dialog): Both Motif and GTK version:
5431 Add parameter only_dir_p.
5432 In Motif version, don't put DEFAULT_FILENAME in filter part of the
5433 dialog, just text field part. Do not add DEFAULT_FILENAME
5434 to list of files if it isn't there.
5435 In GTK version, pass only_dir_p parameter to xg_get_file_name.
5436
5437 * macfns.c (Fx_file_dialog): Add parameter only_dir_p.
5438 Check only_dir_p instead of comparing prompt to "Dired". When using
5439 a save dialog, add option kNavDontConfirmReplacement, change title
5440 to "Enter name", change text for save button to "Ok".
5441
5442 * w32fns.c (Fx_file_dialog): Add parameter only_dir_p.
5443 Check only_dir_p instead of comparing prompt to "Dired".
5444
5445 * gtkutil.c (xg_get_file_with_chooser)
5446 (xg_get_file_with_selection): New functions, only defined ifdef
5447 HAVE_GTK_FILE_CHOOSER_DIALOG_NEW and HAVE_GTK_FILE_SELECTION_NEW
5448 respectively.
5449 (xg_get_file_name): Add parameter only_dir_p.
5450 Call xg_get_file_with_chooser or xg_get_file_with_selection
5451 depending on HAVE_GTK_FILE* and the value of use_old_gtk_file_dialog.
5452 (xg_initialize): New DEFVAR_BOOL use_old_gtk_file_dialog.
5453
5454 * gtkutil.h (xg_get_file_name): Add parameter only_dir_p.
5455
5456 * config.in: Rebuild (added HAVE_GTK_FILE_*).
5457
54582004-11-01 Kim F. Storm <storm@cua.dk>
5459
5460 * process.c (connect_wait_mask, num_pending_connects):
5461 Only declare and use them if NON_BLOCKING_CONNECT is defined.
5462 (init_process): Initialize them if NON_BLOCKING_CONNECT defined.
5463 (IF_NON_BLOCKING_CONNECT): New helper macro.
5464 (wait_reading_process_output): Only declare and use local vars
5465 Connecting and check_connect when NON_BLOCKING_CONNECT is defined.
5466
54672004-11-01 Andy Petrusenco <Igrek@star-sw.com> (tiny change)
5468
5469 * w32term.c (x_scroll_run): Delete region objects after use.
5470
54712004-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5472
5473 * xmenu.c: Add prototypes for forward function declarations.
5474 (popup_get_selection): Remove parameter do_timers, remove call to
5475 timer_check.
5476 (create_and_show_popup_menu, create_and_show_dialog):
5477 Remove parameter do_timers from call to popup_get_selection.
5478
5479 * xdisp.c (update_tool_bar): Pass a copy of f->tool_bar_items to
5480 tool_bar_items and assign the result to f->tool_bar_items if
5481 not equal. Move BLOCK/UNBLOCK_INPUT from around call to
5482 tool_bar_items to assignment of result.
5483
5484 * atimer.c (alarm_signal_handler): Do not call set_alarm if
5485 pending_atmers is non-zero.
5486
54872004-10-31 Kim F. Storm <storm@cua.dk>
5488
5489 * dispnew.c (margin_glyphs_to_reserve): Don't use ncols_scale_factor.
5490
54912004-10-28 Will <will@glozer.net>
5492
5493 * macterm.c: Allow user to assign key modifiers to the Mac Option
5494 key via a 'mac-option-modifier' variable.
5495
54962004-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
5497
5498 * xselect.c (Vx_lost_selection_functions, Vx_sent_selection_functions):
5499 Rename from Vx_lost_selection_hooks and Vx_sent_selection_hooks.
5500 (x_handle_selection_request, x_handle_selection_clear)
5501 (x_clear_frame_selections, syms_of_xselect): Adjust accordingly.
5502
55032004-10-28 Richard M. Stallman <rms@gnu.org>
5504
5505 * w32fns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
5506
5507 * xfns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
5508
55092004-10-27 Stefan Monnier <monnier@iro.umontreal.ca>
5510
5511 * syntax.c (scan_sexps_forward): Give precedence to a 2-char
5512 comment-starter over a 1-char one.
5513
55142004-10-27 Richard M. Stallman <rms@gnu.org>
5515
5516 * xdisp.c (get_next_display_element): In mode lines,
5517 treat newline and tab like other control characters.
5518
5519 * editfns.c (Fmessage): Doc fix.
5520
5521 * indent.c (vmotion): When moving up, check the newline before.
5522 Make prevline an int, not a Lisp_Object.
5523
55242004-10-27 Kim F. Storm <storm@cua.dk>
5525
5526 * editfns.c (Fformat): Allocate discarded table with SAFE_ALLOCA.
5527 Only allocate info and discarded tables once.
5528
5529 * lisp.h (USE_SAFE_ALLOCA): Add and init sa_must_free integer.
5530 (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Increment it when malloc is used.
5531 (SAFE_FREE): Test it to determine if we need to unwind to free.
5532 Remove size arg. All users changed.
5533 (SAFE_FREE_LISP) Remove. All users changed to use SAFE_FREE.
5534
55352004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5536
5537 * gtkutil.c: Put empty line between comment and function body.
5538 (xg_destroy_widgets): Rename from remove_from_container.
5539 Just destroy all widgets in list. Argument wcont removed.
5540 (xg_update_menubar, xg_update_submenu): Call xg_destroy_widgets
5541 instead of remove_from_container.
5542 (xg_display_close, xg_create_tool_bar, update_frame_tool_bar)
5543 (free_frame_tool_bar): Add comment.
5544
5545 * xfns.c (xic_create_xfontset): Check that FRAME_XIC_BASE_FONTNAME
5546 is not NULL before strcmp.
5547
55482004-10-26 Kim F. Storm <storm@cua.dk>
5549
5550 * callint.c (Fcall_interactively): Add 'U' code to get the
5551 up-event discarded by a previous 'k' or 'K' argument.
5552
55532004-10-26 David Kastrup <dak@gnu.org>
5554
5555 * buffer.c (syms_of_buffer): Fix a few typos.
5556
55572004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5558
5559 * xsmfns.c: Put empty line between comment and function body.
5560 Use two spaces before comment end.
5561
55622004-10-25 Kenichi Handa <handa@m17n.org>
5563
5564 * fontset.c (fontset_pattern_regexp): Optimize for the case that
5565 PATTERN is full XLFD.
5566
55672004-10-24 Kenichi Handa <handa@m17n.org>
5568
5569 * regex.h (enum reg_errcode_t): New value REG_ERANGEX.
5570
5571 * regex.c (re_error_msgid): Add an entry for REG_ERANGEX.
5572 (regex_compile): Return REG_ERANGEX if appropriate.
5573
55742004-10-22 Kenichi Handa <handa@m17n.org>
5575
5576 * editfns.c (Ftranslate_region_internal): New function.
5577 (syms_of_editfns): Defsubr it.
5578
55792004-10-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5580
5581 * xfns.c (xic_create_xfontset): Initialize missing_list to NULL.
5582
55832004-10-21 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
5584
5585 * xterm.h (x_output): New member `xic_base_fontname'.
5586 (FRAME_XIC_BASE_FONTNAME): New macro.
5587 (xic_free_xfontset): Declare.
5588
5589 * xfns.c (xic_create_xfontset): Share fontsets between frames
5590 based on base_fontname.
5591 (xic_free_xfontset): New function.
5592 (free_frame_xic): Use it.
5593 (xic_set_xfontset): Ditto.
5594
5595 * xterm.c (xim_destroy_callback): Ditto.
5596
5597
55982004-10-20 B. Anyos <banyos@freemail.hu> (tiny change)
5599
5600 * w32term.c (x_draw_glyph_string): Use overline_color for overlines.
5601
56022004-10-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5603
5604 * xterm.h (XSync): If USE_GTK, define XSync as process_all and then
5605 XSync.
5606
5607 * emacs.c (my_heap_start, heap_bss_diff, MAX_HEAP_BSS_DIFF):
5608 New variables and constant.
5609 (main): Calculate heap_bss_diff. If we are dumping and the
5610 heap_bss_diff is greater than MAX_HEAP_BSS_DIFF, set PER_LINUX32
5611 and exec ourself again.
5612 (Fdump_emacs): If heap_bss_diff is greater than MAX_HEAP_BSS_DIFF
5613 print a warning.
5614
5615 * lastfile.c: Make my_endbss and my_endbss_static available on all
5616 platforms.
5617
5618 * Makefile.in (RUN_TEMACS): Remove @SETARCH@.
5619 * config.in (HAVE_PERSONALITY_LINUX32): Regenerate.
5620
56212004-10-19 Luc Teirlinck <teirllm@auburn.edu>
5622
5623 * data.c (Flocal_variable_if_set_p): Doc fix.
5624
56252004-10-19 Jason Rumney <jasonr@gnu.org>
5626
5627 * w32.c (init_environment): Set emacs_dir correctly when running
5628 emacs from the build directory.
5629
56302004-10-19 Richard M. Stallman <rms@gnu.org>
5631
5632 * editfns.c (Fdelete_and_extract_region):
5633 If region is empty, return null string.
5634
56352004-10-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5636
5637 * gtkutil.h (xg_update_scrollbar_pos): Remove arguments real_left
5638 and canon_width.
5639 (xg_frame_cleared): Remove.
5640
5641 * gtkutil.c (xg_frame_cleared, xg_fixed_handle_expose)
5642 (xg_find_top_left_in_fixed): Remove.
5643 (xg_create_scroll_bar): Put an event box widget between
5644 the scroll bar widget and the edit widget.
5645 (xg_show_scroll_bar): Show the parent widget (the event box).
5646 (xg_remove_scroll_bar): Destroy parent (the event box) also.
5647 (xg_update_scrollbar_pos): Remove arguments real_left and canon_width.
5648 Move the parent (the event box) widget inside the fixed widget.
5649 Move window clear to xterm.c.
5650
5651 * gtkutil.h (xg_frame_cleared): Remove.
5652
5653 * xterm.c (x_clear_frame): Remove call to xg_frame_cleared
5654 (x_scroll_bar_create, XTset_vertical_scroll_bar):
5655 Remove arguments left and width to xg_update_scrollbar_pos.
5656 (XTset_vertical_scroll_bar): Do x_clear_area for USE_GTK also.
5657
56582004-10-19 Kenichi Handa <handa@m17n.org>
5659
5660 * xdisp.c (display_mode_element): Fix display of wide chars.
5661
56622004-10-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5663
5664 * gtkutil.c (xg_update_scrollbar_pos): Change XClearWindow to
5665 gdk_window_clear and move gdk_window_process_all_updates after
5666 clear so events are sent to the X server in correct order.
5667
56682004-10-18 Kenichi Handa <handa@m17n.org>
5669
5670 * fontset.c (fs_load_font): Use fast_string_match_ignore_case for
5671 comparing font names.
5672 (fs_query_fontset): Use fast_string_match for comparing fontset names.
5673 (list_fontsets): Likewise.
5674
5675 * search.c (fast_string_match_ignore_case): New function.
5676
5677 * lisp.h (fast_string_match_ignore_case): Extern it.
5678
56792004-10-17 Kim F. Storm <storm@cua.dk>
5680
5681 * xdisp.c (overlay_arrow_at_row): Return overlay string rather
5682 than bitmap if there is not left fringe.
5683 (get_overlay_arrow_glyph_row): Also used on windows system.
5684 (display_line): Display overlay string if no left fringe.
5685
56862004-10-16 Jason Rumney <jasonr@gnu.org>
5687
5688 * w32fns.c (w32_font_match): Encode font name being matched.
5689
56902004-10-16 Richard M. Stallman <rms@gnu.org>
5691
5692 * window.c (Fspecial_display_p): Doc fix.
5693
56942004-10-15 Stefan Monnier <monnier@iro.umontreal.ca>
5695
5696 * doc.c (Fsubstitute_command_keys): Fix remap-handling.
5697 Don't ignore menus, because where-is-internal already does it for us.
5698
56992004-10-15 Kim F. Storm <storm@cua.dk>
5700
5701 * xdisp.c (redisplay_window): Only update fringes and vertical
5702 border on window frames.
5703
57042004-10-14 Andreas Schwab <schwab@suse.de>
5705
5706 * m/ia64.h (DATA_SEG_BITS): Don't define.
5707
57082004-10-14 Kim F. Storm <storm@cua.dk>
5709
5710 * xterm.h: Include Xutil.h after keysym.h to work around bug
5711 in some X versions.
5712
57132004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
5714
5715 * fns.c (map_char_table): Add missing gcpros.
5716
57172004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
5718
5719 * keymap.c (get_keymap): An autoload form is not a keymap.
5720
5721 * textprop.c (syms_of_textprop): Make `syntax-table' nonsticky.
5722
57232004-10-13 Kim F. Storm <storm@cua.dk>
5724
5725 * callproc.c (Fcall_process): Simplify handling of display arg.
5726 Resume `display_on_the_fly' once a coding system is determined.
5727
5728 * xdisp.c (redisplay_preserve_echo_area): Fix last change.
5729
57302004-10-12 Kim F. Storm <storm@cua.dk>
5731
5732 * xdisp.c (redisplay_preserve_echo_area): Flush display in case
5733 caller, such as call-process, is not going to poll for input.
5734 (calc_line_height_property): Handle case where it->object is nil.
5735
5736 * xterm.c (x_redisplay_interface): Fix flush_display_optional.
5737
57382004-10-12 Kenichi Handa <handa@m17n.org>
5739
5740 * xdisp.c (get_next_display_element):
5741 If unibyte_display_via_language_environment is zero, display 8-bit
5742 chars in octal in unibyte buffer.
5743
57442004-10-12 Kim F. Storm <storm@cua.dk>
5745
5746 * doc.c (Fsubstitute_command_keys): Ignore remappings unless there
5747 are no ordinary bindings.
5748
57492004-10-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5750
5751 * xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also.
5752
57532004-10-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5754
5755 * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow.
5756 (x_lower_frame): Add BLOCK_INPUT around SendBehind.
5757 (make_mac_frame): Add BLOCK_INPUT around the making of a
5758 terminal frame.
5759 (mac_initialize): Add BLOCK_INPUT around carbon initialization.
5760 * macgui.h (mktime): Use emacs_mktime.
5761 * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code.
5762 Make a cancel file-open dialog be like C-g.
5763 * mac.c (mktime): Use emacs_mktime.
5764 (Fdo_applescript): Add BLOCK_INPUT around do_applescript.
5765 (Fmac_paste_function): Add better error handling for carbon cut/paste.
5766
57672004-10-10 Kim F. Storm <storm@cua.dk>
5768
5769 * keyboard.c (timer_resume_idle): New function to resume idle
5770 timer without resetting timers on the idle list.
5771 (read_char): Use timer_resume_idle. Remove local var last_idle_start.
5772 (timer_start_idle, timer_stop_idle): Declare static.
5773 (read_key_sequence): Use timer_resume_idle instead of timer_start_idle.
5774
5775 * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes.
5776
57772004-10-08 Steven Tamm <steventamm@mac.com>
5778
5779 * config.in (HAVE_MALLOC_MALLOC_H): Regenerate.
5780 * macterm.c (mac_check_for_quit_char): Remove warning for using
5781 NULL where 0 should be used.
5782 * unexmacosx.c: Use malloc/malloc.h on Tiger instead of
5783 objc/malloc.h
5784 * mac.c: Include time.h for Tiger compatibility.
5785
57862004-10-07 Kim F. Storm <storm@cua.dk>
5787
5788 * xdisp.c (redisplay_window): Fix flicker on vertical line between
5789 windows. Update vertical line after drawing window fringes, but
5790 only if actually drawing any bitmaps--or there is no fringe.
5791
5792 * xterm.c (x_update_window_end): Likewise.
5793 * macterm.c (x_update_window_end): Likewise.
5794 * w32term.c (x_update_window_end): Likewise.
5795
5796 * fringe.c (draw_window_fringes): Return value now indicates if
5797 any fringe bitmaps were redrawn (or there are no fringes).
5798
5799 * dispextern.h (draw_window_fringes): Update prototype.
5800
58012004-10-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5802
5803 * macfns.c (mac_get_window_bounds): Add extern.
5804 (x_real_positions): Use mac_get_window_bounds.
5805
5806 * macmenu.c (update_submenu_strings): Apply 2004-09-07 change for
5807 xmenu.c (YAILOM).
5808
5809 * macterm.c [!MAC_OSX]: Include Windows.h.
5810 (front_emacs_window): Rename from mac_front_window. All uses
5811 changed. Return the frontmost non-tooltip emacs window.
5812 (mac_get_window_bounds): New function.
5813 (x_calc_absolute_position): Use the difference of width and height
5814 between the inner and outer window.
5815 (x_set_offset): Specify window position by the coordinae of the
5816 outer window. Adjust the position if the title bar is completely
5817 outside the screen.
5818 (app_is_suspended, app_sleep_time): Remove unused variables.
5819 (do_app_resume, do_app_suspend): Remove their contents because
5820 window-activate/deactivate events will do the job.
5821 (do_zoom_window): Remove unused variables. Make compliant to the
5822 standard way of zooming. Set f->left_pos and f->top_pos.
5823 (XTread_socket): Don't use argument `expected'. Don't use
5824 FrontWindow to determine the clicked window. Exclude unprocessed
5825 mouseUp cases in the early stage. Add parentheses to fix operator
5826 precedence.
5827 (XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area.
5828
58292004-10-05 Jan Dj\e,Ad\e(Brv. <jan.h.d@swipnet.se>
5830
5831 * config.in: Regenerate.
5832
5833 * Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of
5834 HAVE_EXECSHIELD.
5835
58362004-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5837
5838 * xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for
5839 a row if Alt or Meta has been found for that row. Also stop scanning
5840 for Keysyms for that row.
5841
58422004-10-04 Kim F. Storm <storm@cua.dk>
5843
5844 * fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons
5845 to list. Include overlay arrow bitmap in return value.
5846
5847 * xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll
5848 bars with fractional column width. If scroll bar separates two
5849 windows, move it towards the window it belongs to. Only update
5850 the padding area below the scroll bar widget when necessary,
5851 i.e. when scroll bar widget is created, moved, or resized.
5852
5853 * xdisp.c (define_frame_cursor1): Do not change frame cursor
5854 while tracking/dragging mouse.
5855 (x_draw_vertical_border): Do not draw line if frame has scroll bars.
5856
5857 * window.c (coordinates_in_window): Relax check for cursor
5858 on vertial border between mode lines.
5859 (Fset_window_fringes): Do not allow negative widths.
5860 (Fset_window_scroll_bars): Likewise.
5861
5862 * .gdbinit (pp): Shorthand for p ARG + pr.
5863 (ff): New command: flush frame updates (X only).
5864
58652004-10-03 Michael Albinus <michael.albinus@gmx.de>
5866
5867 * fileio.c (auto_save_1) Call Ffile_modes for remote files.
5868
58692004-09-30 Kenichi Handa <handa@m17n.org>
5870
5871 * process.c (send_process): Free composition data.
5872
5873 * fileio.c (Finsert_file_contents): Free composition data.
5874
5875 * coding.c (code_convert_region): Don't skip ASCIIs if there are
5876 compositions to encode.
5877 (encode_coding_string): Likewise. Free composition data.
5878
58792004-09-30 Florian Weimer <fw@deneb.enyo.de>
5880
5881 * coding.c (code_convert_region): Free composition data.
5882
58832004-09-29 Kim F. Storm <storm@cua.dk>
5884
5885 * fringe.c: Remove limit on number of bitmaps.
5886 (fringe_bitmaps, fringe_faces): Change to pointers.
5887 (max_fringe_bitmaps): New var.
5888 (Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces.
5889 (init_fringe): Allocate fringe_bitmaps and fringe_faces.
5890
5891 * dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps).
5892 (struct glyph_row): Reorder fringe_bitmap related fields.
5893 (struct it): Likewise.
5894
5895 * w32term.c (fringe_bmp): Change to pointer.
5896 (max_fringe_bmp): New var.
5897 (w32_define_fringe_bitmap): Expand fringe_bmp.
5898 (w32_draw_fringe_bitmap): Check max_fringe_bmp.
5899 (w32_destroy_fringe_bitmap): Likewise.
5900
59012004-09-29 Kim F. Storm <storm@cua.dk>
5902
5903 * fringe.c: Simplify last change.
5904 (lookup_fringe_bitmap): New function.
5905 (valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove.
5906 (Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap.
5907 Keep standard bitmaps in Vfringe_bitmaps.
5908 (Fdefine_fringe_bitmap): Use lookup_fringe_bitmap.
5909 (Fset_fringe_bitmap_face): Likewise.
5910
5911 * dispextern.h (lookup_fringe_bitmap): Add prototype.
5912 (valid_fringe_bitmap_p): Remove prototype.
5913
5914 * xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap.
5915
59162004-09-29 Kim F. Storm <storm@cua.dk>
5917
5918 * fringe.c (destroy_fringe_bitmap, init_fringe_bitmap)
5919 (w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif).
5920
5921 * dispextern.h (valid_fringe_bitmap_p): Fix prototype.
5922
5923 * fringe.c (Vfringe_bitmaps): New variable.
5924 (syms_of_fringe): DEFVAR_LISP it.
5925 (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p.
5926 Change arg to Lisp_Object and fail if not an integer.
5927 (get_fringe_bitmap_name, resolve_fringe_bitmap)
5928 (destroy_fringe_bitmap): New functions.
5929 (Fdestroy_fringe_bitmap): Change arg to bitmap symbol.
5930 Use destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and
5931 clear its fringe property.
5932 (init_fringe_bitmap): Use destroy_fringe_bitmap instead of
5933 Fdestroy_fringe_bitmap.
5934 (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing
5935 bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps
5936 and set fringe property. Signal error if no free slots.
5937 (Fset_fringe_bitmap_face): Change arg to bitmap symbol.
5938 (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers.
5939
5940 * xdisp.c (handle_single_display_prop): Fringe bitmaps are now
5941 symbols with a fringe property.
5942
59432004-09-27 Kim F. Storm <storm@cua.dk>
5944
5945 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>:
5946 Doc fix. Format may now be a symbol or alist, not a cons.
5947
5948 * fringe.c (update_window_fringes): Handle new formats of
5949 indicate-buffer-boundaries (symbol or alist). No longer
5950 allow a simple cons.
5951 (Ffringe_bitmaps_at_pos): Use nil value for no bitmap.
5952
59532004-09-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5954
5955 * config.in: Rebuild.
5956
59572004-09-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5958
5959 * config.in: Rebuild.
5960
5961 * Makefile.in: Run setarch i386 ./temacs if exec-shield is present.
5962
59632004-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
5964
5965 * xterm.c (x_term_init): Work around a bug in some X servers.
5966
59672004-09-18 Richard M. Stallman <rms@gnu.org>
5968
5969 * buffer.c (syms_of_buffer) <default-major-mode>: Doc fix.
5970
5971 * xdisp.c (try_window_reusing_current_matrix):
5972 Handle the case where we reach the old displayed text,
5973 out of sync with the old line boundary.
5974
59752004-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
5976
5977 * fileio.c (Finsert_file_contents): Fix case of replacement in a
5978 narrowed buffer.
5979
59802004-09-14 Kim F. Storm <storm@cua.dk>
5981
5982 * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT.
5983
5984 * xfaces.c (Qface_no_inherit): New var.
5985 (syms_of_xfaces): Intern and staticpro it.
5986 (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute)
5987 (Finternal_copy_lisp_face, update_face_from_frame_parameter):
5988 Don't increment face_change_count when face has non-nil
5989 face-no-inherit property.
5990
59912004-09-13 Stefan Monnier <monnier@iro.umontreal.ca>
5992
5993 * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC.
5994 (Fbyte_code): Remove dead code after `wrong_type_argument'.
5995
5996 * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl
5997 before doing the mark_stack_check_gcpros since they're not on the stack.
5998
59992004-09-12 Kim F. Storm <storm@cua.dk>
6000
6001 * editfns.c (Fformat): Handle format strings with multiple text
6002 properties. Reverse text property list from the format string,
6003 so the positions are in increasing order.
6004
60052004-09-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6006
6007 * xselect.c (x_reply_selection_request): XSync and UNBLOCK before
6008 x_uncatch_errors so that possible protocol errors are delivered.
6009
60102004-09-10 Eli Zaretskii <eliz@gnu.org>
6011
6012 * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and
6013 blockinput.h.
6014 (dosfns.o): Depend on blockinput.h, window.h, dispextern.h,
6015 charset.h, and coding.h
6016 (w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h.
6017 (term.o): Depend on window.h and keymap.h.
6018 (abbrev.o): Depend on syntax.h.
6019 (callint.o): Depend on keymap.h.
6020 (casefiddle.o): Depend on charset.h and keymap.h.
6021 (category.o): Depend on keymap.h.
6022 (coding.o): Depend on dispextern.h.
6023 (cmds.o): Depend on keyboard.h and keymap.h.
6024 (dispnew.o): Depend on indent.h and intervals.h.
6025 (doc.o): Depend on keymap.h.
6026 (editfns.o): Depend on frame.h.
6027 (emacs.o): Depend on dispextern.h.
6028 (fileio.o): Don't depend on ccl.h.
6029 (filelock.o): Depend on charset.h and coding.h.
6030 (frame.o): Depend on w32term.h and macterm.h.
6031 (insdel.o): Depend on region-cache.h.
6032 (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h.
6033 (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h.
6034 (search.o): Depend on $(INTERVALS_SRC).
6035 (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC).
6036 (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC),
6037 xterm.h, w32term.h, and macterm.h.
6038 (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h,
6039 w32term.h, and macterm.h.
6040 (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC),
6041 region-cache.h, xterm.h, w32term.h, and macterm.h.
6042 (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h.
6043 (data.o): Depend on frame.h.
6044 (fns.o): Depend on keymap.h, xterm.h, and blockinput.h.
6045 (print.o): Depend on termchar.h and $(INTERVALS_SRC).
6046 (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h.
6047 (intervals.o): Depend on keymap.h.
6048
6049 * msdos.c (msdos_set_cursor_shape, IT_display_cursor):
6050 Add debugging print-out to termscript.
6051
60522004-09-09 Richard M. Stallman <rms@gnu.org>
6053
6054 * xdisp.c (decode_mode_spec): Use current buffer for most purposes.
6055
60562004-09-08 Richard M. Stallman <rms@gnu.org>
6057
6058 * window.c (Fset_window_buffer): Doc fix.
6059
6060 * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use.
6061
60622004-09-08 Dan Nicolaescu <dann@ics.uci.edu>
6063
6064 * minibuf.c (history_delete_duplicates): New variable.
6065 (read_minibuf): Use it.
6066 (syms_of_minibuf): Create the corresponding lisp variable.
6067
60682004-09-08 Kim F. Storm <storm@cua.dk>
6069
6070 * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in
6071 overlay just before point.
6072
60732004-09-07 Luc Teirlinck <teirllm@auburn.edu>
6074
6075 * buffer.h (struct buffer): Add auto_save_file_format field.
6076 * buffer.c (reset_buffer, init_buffer_once):
6077 Handle auto_save_file_format field.
6078 (syms_of_buffer): Add DEFVAR_PER_BUFFER for
6079 `buffer-auto-save-file-format'.
6080 * fileio.c: Delete declaration for removed Vauto_save_file_format.
6081 (build_annotations): Adapt to replacement of
6082 `auto-save-file-format' with the new buffer-local variable
6083 `buffer-auto-save-file-format'.
6084 (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format.
6085
60862004-09-07 Jason Rumney <jasonr@gnu.org>
6087
6088 * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c.
6089
6090 * w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]:
6091 Handle Unicode menu titles.
6092
60932004-09-07 Kim F. Storm <storm@cua.dk>
6094
6095 * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor'
6096 property from text property or overlay strings at point.
6097
60982004-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
6099
6100 * xmenu.c (update_submenu_strings): YAILOM.
6101 (set_frame_menubar): Make sure last_i is initialized.
6102
61032004-09-03 Jason Rumney <jasonr@gnu.org>
6104
6105 * w32menu.c (_widget_value): Add lname and lkey.
6106 (digest_single_submenu): Set lname and lkey in widget_value
6107 instead of name and key.
6108 (update_submenu_strings): New function.
6109 (set_frame_menubar): Remove call to inhibit_garbage_collection,
6110 call update_submenu_strings.
6111
6112 * w32menu.c (globals_of_w32menu): Check for Unicode API.
6113 (digest_single_submenu, w32_menu_show): Encode menu strings as
6114 UTF-8 if Unicode API is available.
6115 (utf8to16): New function.
6116 (add_menu_item): Use it when calling Unicode API.
6117
61182004-09-03 Kim F. Storm <storm@cua.dk>
6119
6120 * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
6121 in overlay or text-property strings; set cursor on corresponding
6122 glyph rather than at end of the string.
6123
61242004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6125
6126 * macfns.c (x_real_positions): Save the current window port and
6127 set a new one before obtaining the global coordinate.
6128 Use FRAME_MAC_WINDOW.
6129 (x_set_name, x_set_title): Encode title to UTF8.
6130 Use SetWindowTitleWithCFString.
6131 (Fx_server_version): Get correct OS version.
6132
6133 * macmenu.c (add_menu_item): Remove unused variable `i'.
6134 Don't let separator items destroy refence constants of other menu items.
6135
6136 * macterm.c (x_update_end): Move SetPortWindowPort to inside
6137 BLOCK_INPUT.
6138 (x_set_offset): Use FRAME_MAC_WINDOW.
6139
6140 * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
6141 nontext_cursor if it is on a scroll bar.
6142
6143 * s/darwin.h (LIBS_CARBON): New define to specify libraries for
6144 Carbon support.
6145 (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++.
6146 Use LIBS_CARBON.
6147
61482004-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6149
6150 * xfns.c (x_set_name_internal): New function. Check if we shall call
6151 xfree before ENCODE_UTF_8.
6152 (x_set_name, x_set_title): Call x_set_name_internal.
6153
61542004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change)
6155
6156 * w32fns.c (w32_load_font): If a BDF font is already loaded, do not
6157 reload it.
6158
61592004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6160
6161 * macmenu.c (_widget_value): Add lname and lkey.
6162 (single_submenu): Set lname and lkey in widget_value
6163 instead of name and key.
6164 (update_submenu_strings): New function.
6165 (set_frame_menubar): Remove call to inhibit_garbage_collection,
6166 call update_submenu_strings.
6167
6168 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
6169 instead of name and key.
6170 (update_submenu_strings): New function.
6171 (set_frame_menubar): Remove call to inhibit_garbage_collection,
6172 call update_submenu_strings.
6173
6174 * gtkutil.h (_widget_value): Added lname and lkey.
6175
61762004-08-30 Steven Tamm <steventamm@mac.com>
6177
6178 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
6179 by using different names for inner loop variables.
6180
61812004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6182
6183 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
6184 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
6185
6186 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
6187 tool bar items is 0.
6188
61892004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6190
6191 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
6192 strings in menu items.
6193 (single_submenu): Use ENCODE_MENU_STRING
6194 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
6195 button release isn't passed to event loop
6196 (add_menu_item): Use SetMenuItemWithCFString
6197
61982004-08-26 Steven Tamm <steventamm@mac.com>
6199
6200 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
6201 tool-bar/menu click.
6202 * macfns.c (Fx_file_dialog): Implement using NavServices.
6203
62042004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6205
6206 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
6207
6208 * xfns.c (x_window_to_frame, x_any_window_to_frame)
6209 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
6210 (x_top_window_to_frame): Return 0 if wdesc is None.
6211
62122004-08-22 Richard M. Stallman <rms@gnu.org>
6213
6214 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
6215 HAVE_TERMIOS]: If there's no char for this signal, drop through
6216 and use system calls.
6217
6218 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
6219
62202004-08-20 Kim F. Storm <storm@cua.dk>
6221
6222 * process.c (wait_reading_process_output): Rename from
6223 wait_reading_process_input. All uses changed.
6224 (wait_reading_process_output_1): Rename from
6225 wait_reading_process_input_1. All uses changed.
6226
6227 * dispnew.c (Fsleep_for): Remove obsolete code.
6228
62292004-08-20 Kenichi Handa <handa@m17n.org>
6230
6231 * syntax.c (skip_chars): Fix for unibyte case.
6232
62332004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
6234
6235 * syntax.c (char_quoted): Mixup byte/char pos.
6236 (back_comment): Fixup globals in all cases.
6237
62382004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6239
6240 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
6241 passing it to gtk_window_set_title.
6242
62432004-08-19 Kim F. Storm <storm@cua.dk>
6244
6245 * process.c (wait_reading_process_input): Clean up.
6246 Add wait_for_cell, wait_proc, and just_wait_proc args
6247 to avoid overloading `read_kbd' and `do_display' args.
6248 Change read_kbd arg to int. All callers changed.
6249
6250 * process.c (process_send_signal): Use CDISABLE.
6251
6252 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
6253
62542004-08-18 Kim F. Storm <storm@cua.dk>
6255
6256 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
6257 forward to wait_reading_process_input via DO_DISPLAY arg.
6258 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
6259 object, only process output from that process; also inhibit
6260 running timers if DO_DISPLAY==-2.
6261
62622004-08-17 Kim F. Storm <storm@cua.dk>
6263
6264 * process.c (process_send_signal): Fix last change--use
6265 _POSIX_VDISABLE instead of CVDISABLE when available.
6266
62672004-08-16 Richard M. Stallman <rms@gnu.org>
6268
6269 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
6270 Set VQUIT and VINTR chars to the standard ones if they are unset.
6271 [AIX]: Don't do that here. And don't force VINTR to standard
6272 when SIGNALS_VIA_CHARACTERS.
6273
6274 * process.c (process_send_signal)
6275 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
6276 Do nothing if the character is CVDISABLE.
6277
6278 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
6279
6280 * intervals.c (move_if_not_intangible):
6281 Force POSITION to be between BEGV and ZV.
6282
62832004-08-14 John Paul Wallington <jpw@gnu.org>
6284
6285 * buffer.c (Frestore_buffer_modified_p): Doc fix.
6286
6287 * fileio.c (Fread_file_name): Doc fix.
6288
6289 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
6290
62912004-08-09 Luc Teirlinck <teirllm@auburn.edu>
6292
6293 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
6294
62952004-08-08 Luc Teirlinck <teirllm@auburn.edu>
6296
6297 * keyboard.c: Declare Qdisabled_command_function instead of
6298 Qdisabled_command_hook.
6299 (Fcommand_execute): Use Qdisabled_command_function instead of
6300 Qdisabled_command_hook.
6301 (syms_of_keyboard): Ditto.
6302
63032004-08-07 Luc Teirlinck <teirllm@auburn.edu>
6304
6305 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
6306 (syms_of_keymap) <key-translation-map>: Doc fixes.
6307
63082004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
6309
6310 * window.c (window_list_1): YAILOM.
6311
6312 * fileio.c (make_temp_name): Handle multibyte prefixes.
6313
63142004-08-06 Luc Teirlinck <teirllm@auburn.edu>
6315
6316 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
6317 Doc fix.
6318
63192004-08-03 Kenichi Handa <handa@m17n.org>
6320
6321 * coding.c (decode_coding_string): Adjust coding->consumed, and
6322 etc. with shrinked_bytes.
6323
63242004-08-03 Kim F. Storm <storm@cua.dk>
6325
6326 * indent.c (compute_motion): Fix check for full width window
6327 in non-window case. Do not count left truncation glyph on
6328 window systems.
6329
63302004-08-02 Luc Teirlinck <teirllm@auburn.edu>
6331
6332 * data.c (Finteractive_form): Doc fix.
6333
63342004-08-02 Kim F. Storm <storm@cua.dk>
6335
6336 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
6337 properly accounting for continuation glyph on non-window systems.
6338 (Fcompute_motion): Use actual window width if WIDTH is nil, and
6339 actual window width/height if TOPOS is nil, properly accounting for
6340 continuation glyphs on non-window systems, and optional header lines.
6341 (vmotion): Let compute_motion calculate actual window width.
6342
6343 * window.c (window_scroll_line_based): Let compute_motion
6344 calculate actual window width.
6345
63462004-08-02 Kim F. Storm <storm@cua.dk>
6347
6348 * process.c (read_process_output): Use whole read buffer.
6349 Don't trigger adaptive read buffering on errors.
6350
63512004-07-31 Luc Teirlinck <teirllm@auburn.edu>
6352
6353 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
6354
6355 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
6356
6357 * callint.c (Fcall_interactively): Doc fix.
6358
63592004-07-30 Richard M. Stallman <rms@gnu.org>
6360
6361 * abbrev.c (Fexpand_abbrev): Undo previous change.
6362
63632004-07-30 Kim F. Storm <storm@cua.dk>
6364
6365 * editfns.c (Fformat): Allocate extra (dummy) element in info.
6366
63672004-07-28 Luc Teirlinck <teirllm@auburn.edu>
6368
6369 * eval.c (Fdefvar, Fdefconst): Doc fixes.
6370
63712004-07-27 Kim F. Storm <storm@cua.dk>
6372
6373 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
6374 we have ensured that the glyph fits on the current line (or returned
6375 MOVE_LINE_CONTINUED otherwise).
6376
63772004-07-26 Kim F. Storm <storm@cua.dk>
6378
6379 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
6380 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
6381 if target position is at end of display line but char is not a newline.
6382
63832004-07-25 Richard M. Stallman <rms@gnu.org>
6384
6385 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
6386 instead of ON_VERTICAL_BORDER, when on scroll bar.
6387 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
6388
6389 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
6390
6391 * window.c (Fcoordinates_in_window_p):
6392 Take account of FRAME_INTERNAL_BORDER_WIDTH.
6393
6394 * alloc.c (check_cons_list): New function (contents commented out).
6395
63962004-07-24 Luc Teirlinck <teirllm@auburn.edu>
6397
6398 * xfaces.c (Fcolor_supported_p): Doc fix.
6399
6400 * frame.c (Fselect_frame, Fset_frame_selected_window)
6401 (Fframe_visible_p, Fraise_frame): Doc fixes.
6402
64032004-07-24 Richard M. Stallman <rms@gnu.org>
6404
6405 * keyboard.h (not_single_kboard_state): Declare.
6406
6407 * fileio.c (Fwrite_region): Doc fix.
6408
6409 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
6410
6411 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
6412 only when a real abbrev is present.
6413
6414 * xfns.c (x_icon_verify): New function.
6415 (Fx_create_frame): Use it.
6416
64172004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
6418
6419 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
6420
64212004-07-21 Kim F. Storm <storm@cua.dk>
6422
6423 * window.h (struct glyph_matrix): New members nrows_scale_factor
6424 and ncols_scale_factor.
6425
6426 * window.c (make_window): Initialize nrows_scale_factor and
6427 ncols_scale_factor members.
6428
6429 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
6430 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
6431 (required_matrix_height): Apply nrows_scale_factor.
6432 (required_matrix_width): Apply ncols_scale_factor.
6433
6434 * xdisp.c (display_line): Increment nrows_scale_factor and set
6435 fonts_changed_p if past last allocated row.
6436 (append_glyph, append_composite_glyph, produce_image_glyph)
6437 (append_stretch_glyph): Increment ncols_scale_factor and set
6438 fonts_changed_p if current area is full.
6439
64402004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6441
6442 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
6443
64442004-07-19 Luc Teirlinck <teirllm@auburn.edu>
6445
6446 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
6447 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
6448 (Fset_window_start, Fscroll_up, Fscroll_down)
6449 (Fother_window_for_scrolling, Fscroll_other_window)
6450 (Fsave_window_excursion, Fset_window_vscroll)
6451 (syms_of_window) <window-size-fixed>: Doc fixes.
6452
64532004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
6454
6455 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
6456 ENCODE_SYSTEM for filenames.
6457
64582004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6459
6460 * mac.c (sys_select): Block input around call to
6461 ReceiveNextEvent to prevent breakage. Correctly handle
6462 blocking on event queue only by calling ReceiveNextEvent
6463 instead of select (since GUI events aren't on an fd).
6464 (sys_read): Remove function
6465 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
6466
64672004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6468
6469 * mac.c (sys_select): Redo sys_select to use alarm-based
6470 polling instead of 1 sec timeouts (like solaris).
6471
6472 * macterm.c (x_make_frame_visible): Comment in polling on
6473 frame creation.
6474
6475 * keyboard.c: Undef SIGIO on Carbon
6476
6477 * atimer.c (alarm_signal_handler): Call alarm handlers after
6478 scheduling.
6479
6480 * eval.c (Feval): Remove quit_char test
6481
6482 * process.c (wait_reading_process_input): Remove clearing
6483 stdin for select call on process input.
6484
64852004-07-18 Luc Teirlinck <teirllm@auburn.edu>
6486
6487 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
6488 capitalization error in docstring.
6489
64902004-07-17 Juanma Barranquero <lektu@terra.es>
6491
6492 * keyboard.c (not_single_kboard_state): Do nothing unless
6493 MULTI_KBOARD is defined.
6494
64952004-07-17 Richard M. Stallman <rms@gnu.org>
6496
6497 * window.c (coordinates_in_window): Inside the window but outside
6498 its box to the L or R, return ON_VERTICAL_BORDER.
6499 (window_list_1): Rotate the list to start with WINDOW.
6500
6501 * print.c (print_preprocess): Test for print_depth at limit
6502 before entering in being_printed.
6503
6504 * keyboard.c (not_single_kboard_state): New function.
6505 (stuff_buffered_input): Now no-op only if no SIGTSTP.
6506
6507 * frame.c (Fdelete_frame): If we're in single_bboard_state on
6508 this kboard, and we delete its last frame, go to any_kboard_state.
6509
6510 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
6511
65122004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
6513
6514 * w32fns.c (Fx_file_dialog): Encode strings in system coding
6515 system before passing them to OS functions for display.
6516
65172004-07-15 David Kastrup <dak@gnu.org>
6518
6519 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
6520 Apparently fixes an abort condition.
6521
65222004-07-14 Luc Teirlinck <teirllm@auburn.edu>
6523
6524 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
6525 instead of a cons.
6526
65272004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
6528
6529 * keyboard.c (echo_dash): Do nothing if there already is a dash
6530 at the end of the echo string.
6531
65322004-07-12 Kim F. Storm <storm@cua.dk>
6533
6534 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
6535 if GC_MARK_STACK.
6536
65372004-07-10 Luc Teirlinck <teirllm@auburn.edu>
6538
6539 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
6540
6541 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
6542 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
6543 (Freplace_buffer_in_windows, Fset_window_buffer)
6544 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
6545 (syms_of_window): Expand docstring of `display-buffer-function'.
6546
65472004-07-09 Luc Teirlinck <teirllm@auburn.edu>
6548
6549 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
6550 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
6551 that time values of the type (HIGH . LOW) are considered obsolete.
6552
65532004-07-06 Luc Teirlinck <teirllm@auburn.edu>
6554
6555 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
6556 docstring.
6557
6558 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
6559
65602004-07-06 John Paul Wallington <jpw@gnu.org>
6561
6562 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
6563
6564 * fns.c (Fclear_string): Signal an error if STRING is not a string.
6565
65662004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6567
6568 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
6569 instead of CGMainDisplayID (only in OSX 10.2 and later).
6570
65712004-07-04 John Paul Wallington <jpw@gnu.org>
6572
6573 * fileio.c (read_file_name_completion_ignore_case): New variable.
6574 (syms_of_fileio): Declare and initialise it.
6575 (Fread_file_name): Bind `completion-ignore-case' to respect it.
6576
65772004-07-03 Eli Zaretskii <eliz@gnu.org>
6578
6579 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
6580 for event.x and event.y.
6581
65822004-07-01 Kenichi Handa <handa@m17n.org>
6583
6584 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
6585 after getting a new string by pre-write-conversion.
6586
65872004-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
6588
6589 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
6590 (x_calc_absolute_position): Remove unused var `child'.
6591
6592 * xfaces.c (x_supports_face_attributes_p)
6593 (Fdisplay_supports_face_attributes_p): YAILOM.
6594 (tty_supports_face_attributes_p): Remove unused var `i'.
6595
6596 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
6597 back_unibyte_ok.
6598
6599 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
6600
6601 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
6602
6603 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
6604
66052004-06-30 Andreas Schwab <schwab@suse.de>
6606
6607 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
6608 (Finit_image_library): Pass LIBRARIES through to
6609 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
6610 (lookup_image_type): Pass Qnil as second argument to
6611 Finit_image_library.
6612
6613 * lisp.h (Finit_image_library): Declare.
6614
66152004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6616
6617 * macterm.c (do_window_activate, do_window_deactivate): Remove.
6618 (XTread_socket): Send mouse button events to the toolbox
6619 dispatcher even when the mouse is grabbed. Don't process window
6620 activate events for non-Emacs windows. Replace function calls to
6621 do_window_activate and do_window_deactivate with their contents.
6622 Reset mouse grabbing status when a window is deactivated.
6623
66242004-06-29 Steven Tamm <steventamm@mac.com>
6625
6626 * macterm.c (mac_get_emulated_btn)
6627 (mac_event_to_emacs_modifiers): Fix emulated mouse button
6628 support to correctly mask out modifiers.
6629
66302004-06-29 David Kastrup <dak@gnu.org>
6631
6632 * search.c (Fset_match_data): Allow buffer before end of list
6633 which can happen if set-match-data is using a pre-consed list.
6634
66352004-06-28 Steven Tamm <steventamm@mac.com>
6636
6637 * macterm.c (XTread_socket): Correctly set the frame position
6638 after the window is moved.
6639
66402004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6641
6642 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
6643 gpix and gmask just before return to avoid memory leak.
6644 (xg_get_image_for_pixmap): Add workaround for monochrome displays
6645 so insensitive and activated icons look ok.
6646
66472004-06-27 Jason Rumney <jasonr@gnu.org>
6648
6649 * w32fns.c (file_dialog_callback): Disable edit control if set
6650 to directories only on CDN_INITDONE message.
6651 (Fx_file_dialog): Default to directories only when prompt starts
6652 with "Dired".
6653
66542004-06-25 Kim F. Storm <storm@cua.dk>
6655
6656 * alloc.c (allocate_misc): Update total_free_markers.
6657 (free_misc): New function.
6658 (safe_alloca_unwind, free_marker): Use it.
6659
6660 * lisp.h (free_misc): Add prototype.
6661
6662 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
6663
66642004-06-24 Richard M. Stallman <rms@gnu.org>
6665
6666 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
6667 (syms_of_emacs): Lisp variables deleted.
6668
66692004-06-23 David Kastrup <dak@gnu.org>
6670
6671 * search.c (Freplace_match): Adjust the match-data more thoroughly
6672 when replacing strings in the buffer.
6673 (Fmatch_data): When INTEGERS is non-nil and the last match was in
6674 a buffer, add the buffer as last element to the match data.
6675 (Fset_match_data): If an additional element of the match-data is a
6676 buffer, restore it to last_thing_searched.
6677 (save_search_regs): Save last_thing_searched as part of the match data.
6678 (restore_match_data): Restore it again.
6679
66802004-06-23 Luc Teirlinck <teirllm@auburn.edu>
6681
6682 * keymap.c (Ftext_char_description): Doc fix.
6683 * doc.c (Fsnarf_documentation): Doc fix.
6684
66852004-06-22 Kim F. Storm <storm@cua.dk>
6686
6687 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
6688
6689 * lisp.h (struct Lisp_Save_Value): New member dogc.
6690 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
6691 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
6692 (SAFE_FREE_LISP): New macro.
6693
6694 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
6695 (make_save_value): Init new dogc member.
6696 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
6697
6698 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
6699 SAFE_FREE_LISP macros.
6700
67012004-06-22 Kim F. Storm <storm@cua.dk>
6702
6703 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
6704 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
6705 in that memory area are unknown to GC. Add comments.
6706
6707 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
6708
67092004-06-21 Kim F. Storm <storm@cua.dk>
6710
6711 * lisp.h (MAX_ALLOCA): Define here.
6712 (safe_alloca_unwind): Add prototype.
6713 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
6714
6715 * alloc.c (safe_alloca_unwind): New function.
6716
6717 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
6718
6719 * charset.c (Fstring): Use SAFE_ALLOCA.
6720
6721 * coding.c (MAX_ALLOCA): Remove define.
6722
6723 * data.c (MAX_ALLOCA): Remove define.
6724 (Faset): Use SAFE_ALLOCA.
6725
6726 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
6727
6728 * fns.c (string_make_multibyte, string_to_multibyte)
6729 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
6730 (MAX_ALLOCA): Remove define.
6731 (Fbase64_encode_region, Fbase64_encode_string)
6732 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
6733 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
6734 memory leak if encoding fails.
6735
6736 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
6737
67382004-06-21 Eli Zaretskii <eliz@gnu.org>
6739
6740 * print.c (Fwith_output_to_temp_buffer): Doc fix.
6741
67422004-06-20 Richard M. Stallman <rms@gnu.org>
6743
6744 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
6745
6746 * search.c (match_limit): Cleaner err msg when no match data available.
6747
6748 * window.c (syms_of_window): Doc fix.
6749
6750 * keyboard.c (command_loop_1): Handle values `only' and `identity'
6751 for Vtransient_mark_mode.
6752
6753 * buffer.c (syms_of_buffer): Doc fix.
6754
67552004-06-21 David Kastrup <dak@gnu.org>
6756
6757 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
6758 and unbinding of `case-fold-search' according to
6759 `completion-ignore-case' around calls of string-match and
6760 predicates, respectively. Should give satisfactory performance
6761 in all relevant cases.
6762
67632004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6764
6765 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
6766 clip_x/y_origin.
6767
6768 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
6769
6770 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
6771
6772 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
6773 on Mac OSX.
6774
67752004-06-16 Luc Teirlinck <teirllm@auburn.edu>
6776
6777 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
6778
67792004-06-16 Kim F. Storm <storm@cua.dk>
6780
6781 * dispextern.h (Vimage_types): Remove extern.
6782
67832004-06-16 Miles Bader <miles@gnu.org>
6784
6785 * image.c (lookup_image_type): Initialize image type if necessary.
6786
67872004-06-15 Kim F. Storm <storm@cua.dk>
6788
6789 * xdisp.c (try_cursor_movement): Exclude header line from scroll
6790 margin at top of window.
6791 (try_window_reusing_current_matrix): Calculate proper cursor position
6792 after scrolling up with non-zero scroll margin, as the old cursor
6793 position corresponds to value of PT before executing this command.
6794 (try_window_id): Consider scroll margin at bottom of window too;
6795 otherwise we fail to scroll when hl-line-mode is enabled.
6796
6797 * syntax.c (skip_chars): Only recognize [:class:] when it has the
6798 proper format and class is a lower-case word.
6799
68002004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6801
6802 * gtkutil.c (xg_get_image_for_pixmap): New function.
6803 (xg_get_gdk_pixmap_and_mask): Remove.
6804 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
6805 xg_get_gdk_pixmap_and_mask.
6806
6807 * xterm.h (struct x_display_info): Typo in comment fixed.
6808
68092004-06-14 Juanma Barranquero <lektu@terra.es>
6810
6811 * dispextern.h (Vimage_types): Make it conditional on
6812 HAVE_WINDOW_SYSTEM.
6813
6814 * image.c (Vimage_types): Move from xdisp.c.
6815 (Vimage_type_cache): New variable.
6816 (define_image_type): New argument indicating whether an image
6817 library was loaded; cache loaded status and return t on success,
6818 nil otherwise.
6819 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
6820 (w32_delayed_load): New function to load an image library from a
6821 list of possible filenames.
6822 (init_xpm_functions, init_png_functions, init_jpeg_functions)
6823 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
6824 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
6825 (Finit_image_library): New function, extracted from `init_image'.
6826 Try to initialize an image library on demand and cache whether we
6827 were successful or not.
6828 (syms_of_image): Initialize `Vimage_types' and
6829 `Vimage_type_cache'. Add recognized image types to Vimage_types.
6830 Export `init-image-library'.
6831 (init_image): Remove initialization of all image types, except xbm
6832 and pbm.
6833
6834 * xdisp.c (Vimage_types): Delete (moved to image.c).
6835
68362004-06-14 Andreas Schwab <schwab@suse.de>
6837
6838 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
6839 Avoid calling specbind when completion-regexp-list is empty.
6840
68412004-06-13 Richard M. Stallman <rms@gnu.org>
6842
6843 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
6844 (re_wctype, re_iswctype, re_wctype_to_bit):
6845 Non-function definitions moved here from regex.c.
6846
6847 * regex.c (re_wctype, re_iswctype): Function defs longer static.
6848 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
6849 (re_wctype, re_iswctype, re_wctype_to_bit):
6850 Non-function definitions moved to regex.h.
6851
6852 * window.c (Fselect_window): Doc fix.
6853
6854 * syntax.c: Include regex.h.
6855 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
6856 If requested, make a list of classes, then check the scanned
6857 chars for membership in them.
6858 (in_classes): New function.
6859 Doc fix.
6860
6861 * keyboard.c (cmd_error): Don't call any_kboard_state
6862 if inside a recursive edit level.
6863
68642004-06-13 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
6865
6866 * keyboard.c (command_loop): Call any_kboard_state before
6867 command_loop_2 when at top level.
6868
68692004-06-13 Andreas Schwab <schwab@suse.de>
6870
6871 * print.c (print_object): Always use %ld for printing EMACS_INT.
6872
6873 * keyboard.c (cancel_hourglass_unwind): Return a value.
6874 (modify_event_symbol): Always use %ld for printing EMACS_INT.
6875 (Fexecute_extended_command): Likewise.
6876
6877 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
6878 avoid clashes.
6879 (SYNTAX): Likewise.
6880 (SYNTAX_WITH_FLAGS): Likewise.
6881 (SYNTAX_MATCH): Likewise.
6882
6883 * syntax.c (char_quoted): Avoid warning about undefined operation.
6884 (find_defun_start): Likewise.
6885 (scan_lists): Likewise.
6886 (INC_FROM): Likewise.
6887 (scan_sexps_forward): Likewise.
6888
6889 * image.c: Include <ctype.h>.
6890
6891 * xfaces.c (face_attr_equal_p): Declare parameters.
6892
68932004-06-13 Kenichi Handa <handa@m17n.org>
6894
6895 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
6896
68972004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
6898
6899 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
6900
69012004-06-12 Kenichi Handa <handa@m17n.org>
6902
6903 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
6904 ccl_prog_stack_struct and update it.
6905 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
6906 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
6907 ccl->eof_ic on EOF.
6908 (ccl_debug_hook): New function.
6909 (struct ccl_prog_stack): New member eof_ic.
6910 (ccl_driver): Handle EOF in subrountine call correctly.
6911
69122004-06-11 Kenichi Handa <handa@m17n.org>
6913
6914 * coding.c (encode_coding_string): Check CODING_FINISH_INTERRUPT.
6915
69162004-06-11 Kim F. Storm <storm@cua.dk>
6917
6918 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
6919
69202004-06-11 Juanma Barranquero <lektu@terra.es>
6921
6922 * keyboard.c (Fposn_at_point): Doc fix.
6923
69242004-06-11 David Kastrup <dak@gnu.org>
6925
6926 * search.c (match_limit): Don't flag an error if match-data
6927 exceeding the allocated search_regs.num_regs gets requested, just
6928 return Qnil.
6929
69302004-06-08 Miles Bader <miles@gnu.org>
6931
6932 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
6933
69342004-06-07 Juanma Barranquero <lektu@terra.es>
6935
6936 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
6937 (Fcurrent_time_string, Fcurrent_time_zone)
6938 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
6939
69402004-06-07 Miles Bader <miles@gnu.org>
6941
6942 * xfaces.c (struct named_merge_point): New type.
6943 (push_named_merge_point): New function.
6944 (merge_named_face): New function.
6945 (merge_face_ref, face_at_buffer_position, face_at_string_position):
6946 Use `merge_named_face'.
6947 (merge_face_inheritance): Function removed.
6948 (merge_face_ref): Rename from `merge_face_vector_with_property'.
6949 Add new `err_msgs' and `named_merge_points' args. Return error
6950 status. Only print error messages if ERR_MSGS is true. Don't try to
6951 do :inherit attribute validation.
6952 (merge_face_heights): Handle `unspecified' in both directions.
6953 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
6954 Call `merge_face_ref' instead of `merge_face_inheritance'.
6955 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
6956 (compute_char_face, face_at_buffer_position)
6957 (face_at_string_position): Call `merge_face_ref' instead of
6958 `merge_face_vector_with_property'.
6959
69602004-06-07 Kenichi Handa <handa@m17n.org>
6961
6962 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
6963 the necessary places.
6964
69652004-06-07 Kim F. Storm <storm@cua.dk>
6966
6967 * process.c (Fdelete_process): Undo 2004-05-28 change.
6968 Instead, call status_notify also for network process.
6969 (status_message): Use process instead of status as arg.
6970 Give messages "deleted" or "connection broken by remote peer" for
6971 an exited network process.
6972 (status_notify): Change call to status_message.
6973 (read_process_output): Increase readmax to 4096. Do not increase
6974 buffer size for datagram channels (default is now large enough).
6975
69762004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
6977
6978 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
6979 problem due to newly defined variable.
6980
69812004-06-06 Miles Bader <miles@gnu.org>
6982
6983 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
6984 immediately if non-interactive or not initialized.
6985
69862004-06-05 Richard M. Stallman <rms@gnu.org>
6987
6988 * minibuf.c (Fcompleting_read): Doc fix.
6989
69902004-06-05 Andreas Schwab <schwab@suse.de>
6991
6992 * macfns.c (x_create_tip_frame): Fix declaration after statement.
6993
69942004-06-05 Juanma Barranquero <lektu@terra.es>
6995
6996 * keymap.c (Fdescribe_vector): Fix docstring.
6997 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
6998
69992004-06-05 Miles Bader <miles@gnu.org>
7000
7001 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
7002 attributes have different values than the default face.
7003
70042004-06-04 Eli Zaretskii <eliz@gnu.org>
7005
7006 * xfaces.c (x_supports_face_attributes_p): Make this function
7007 conditional on HAVE_WINDOW_SYSTEM.
7008 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
7009 Don't call x_supports_face_attributes_p if it was not compiled in.
7010
70112004-06-04 Miles Bader <miles@gnu.org>
7012
7013 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
7014 from Ftty_supports_face_attributes_p.
7015 (x_supports_face_attributes_p): New function.
7016 (Ftty_supports_face_attributes_p): Function deleted.
7017 (Fdisplay_supports_face_attributes_p): New function.
7018 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
7019 (face_attr_equal_p): New function.
7020 (lface_equal_p): Use it.
7021
70222004-06-03 Juanma Barranquero <lektu@terra.es>
7023
7024 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
7025 (Vw32_color_map): Fix typo in docstring.
7026 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
7027 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
7028 Make argument names match their use in docstring.
7029
70302004-06-02 Juanma Barranquero <lektu@terra.es>
7031
7032 Work around bugs/problems with MinGW builds of graphics libraries
7033 called from MSVC builds of Emacs.
7034
7035 * image.c (lookup_image): Make pointer to img static.
7036 (png_read_from_memory): Disable "global" optimization.
7037
70382004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
7039
7040 * eval.c (Fcondition_case): Fix usage. Simplify.
7041
7042 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
7043
70442004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7045
7046 * macfns.c: Don't include ccl.h.
7047 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
7048 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
7049 TextUtils.h.
7050 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
7051 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
7052 display height/width.
7053 (compute_tip_xy, Vx_max_tooltip_size): Declare.
7054 (unwind_create_tip_frame, compute_tip_xy): New functions.
7055 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
7056 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
7057 and last_show_tip_args.
7058
7059 * macgui.h [!MAC_OSX]: Include Gestalt.h.
7060 (Cursor, No_Cursor): New defines.
7061 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
7062 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
7063
7064 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
7065
7066 * macterm.c: Don't include Gestalt.h.
7067 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
7068 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
7069 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
7070 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
7071 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
7072 (construct_mouse_click, XTmouse_position)
7073 (x_scroll_bar_report_motion, x_calc_absolute_position)
7074 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
7075 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
7076 (note_mouse_movement): Clear the mouse face and reset the pointer
7077 shape when the pointer goes outside the frame without grabbing.
7078 (mac_front_window): New function.
7079 (mac_window_to_frame): New macro.
7080 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
7081 (do_window_activate, do_window_deactivate, do_app_resume)
7082 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
7083 (do_zoom_window, mac_do_receive_drag, XTread_socket)
7084 (mac_check_for_quit_char): Use mac_front_window and/or
7085 mac_window_to_frame.
7086 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
7087 scroll-bar click event.
7088 (mac_define_frame_cursor): Change the pointer shape.
7089 (x_free_frame_resources): Reset tip_window to NULL when it is
7090 disposed of.
7091 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
7092 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
7093 (do_window_update): Don't do anything if the updated window is the
7094 tooltip window.
7095 (do_mouse_moved): Handle mouse movement events here (previously in
7096 XTread_socket). Clear the mouse face if
7097 dpyinfo->mouse_face_hidden is set.
7098 (do_os_event, do_events): Remove (now in XTread_socket).
7099 (XTread_socket): Immediately return if interrupt_input_blocked.
7100 Loop until all the events in the queue are processed.
7101 Rearrange codes for mouse grabbing. Add tooltip support. Include the
7102 contents of do_os_event and do_events. Remove mouse movement
7103 handling (now in do_mouse_moved). Add the case where
7104 Vmouse_highlight has an integer value.
7105 (NewMacWindow): Remove.
7106 (make_mac_frame): Do what NewMacWindow previously did. Don't do
7107 excess initializations.
7108 (make_mac_terminal_frame): Previous initializations in
7109 make_mac_frame are moved here.
7110 (mac_initialize_display_info):
7111 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
7112
7113 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
7114 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
7115
71162004-05-29 Richard M. Stallman <rms@gnu.org>
7117
7118 * lisp.h (truncate_undo_list): Update decl.
7119
7120 * alloc.c (undo_outer_limit): New variable.
7121 (syms_of_alloc): Defvar it.
7122 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
7123
7124 * undo.c (truncate_undo_list): New arg LIMITSIZE.
7125
7126 * alloc.c (lisp_align_malloc): Check for base == 0
7127 regardless of HAVE_POSIX_MEMALIGN.
7128 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
7129
71302004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
7131
7132 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
7133 (marker_blocks_pending_free): Remove.
7134 (Fgarbage_collect): Sweep after cleaning up undo-lists.
7135 Mark the undo lists after claning them up.
7136 Don't free block in marker_blocks_pending_free.
7137 (mark_buffer): Don't mark undo_list.
7138 (gc_sweep): Sweep hash-tables and strings first.
7139 Do free marker blocks that are empty.
7140
71412004-05-28 Jim Blandy <jimb@redhat.com>
7142
7143 * regex.c (print_partial_compiled_pattern): Add missing 'break'
7144 after 'case wordend'. For symbeg and symend, print to stderr,
7145 like the other cases.
7146
71472004-05-28 Noah Friedman <friedman@splode.com>
7148
7149 * process.c (Fdelete_process): Do not call remove_process.
7150
71512004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
7152
7153 * alloc.c (struct backtrace): Remove.
7154 (Fgarbage_collect): Use the new mark_backtrace.
7155
7156 * eval.c (mark_backtrace): New function.
7157
7158 * minibuf.c (run_exit_minibuf_hook): New function.
7159 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
7160 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
7161
71622004-05-27 Kim F. Storm <storm@cua.dk>
7163
7164 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
7165 over display properties, e.g. images, that replace buffer text.
7166
71672004-05-25 Kim F. Storm <storm@cua.dk>
7168
7169 * alloc.c (marker_blocks_pending_free): New var.
7170 (gc_sweep): Store free marker blocks on that list.
7171 (Fgarbage_collect): Free them after undo-list cleanup.
7172
7173 * process.c (wait_reading_process_input): Check connect_wait_mask
7174 before actually accepting connection in case it has already been
7175 accepted due to recursion.
7176
71772004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
7178
7179 * coding.c (Fset_safe_terminal_coding_system_internal):
7180 Set suppress_error in safe_terminal_coding, not terminal_coding.
7181
71822004-05-22 Richard M. Stallman <rms@gnu.org>
7183
7184 * alloc.c (Fmake_string): Doc fix.
7185
7186 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
7187 and the alist pairs too.
7188
7189 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
7190
7191 * emacs.c (main): Update copyright year.
7192
7193 * fileio.c (Fread_file_name): Expand DIR if not absolute.
7194
7195 * insdel.c (del_range_2, replace_range): Don't write an anchor
7196 if the gap is empty.
7197
7198 * xdisp.c (try_scrolling): If scroll-up-aggressively or
7199 scroll-down-aggressively is small but positive, put point
7200 near the screen edge.
7201
72022004-05-22 Juanma Barranquero <lektu@terra.es>
7203
7204 * keymap.c (Fdefine_key): Doc fix.
7205
72062004-05-22 Kim F. Storm <storm@cua.dk>
7207
7208 * alloc.c (struct backtrace): Add debug_on_exit member.
7209 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
7210 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
7211 the removed cons cells.
7212 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
7213 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
7214 any cons cells pointing to unallocated stings.
7215 Do not lisp_free any marker blocks, as there may still be pointers
7216 to them from buffer undo lists at this stage of GC.
7217
7218 * keyboard.c (struct backtrace): Add debug_on_exit member.
7219 (Fcommand_execute): Clear it.
7220
72212004-05-20 Luc Teirlinck <teirllm@auburn.edu>
7222
7223 * intervals.c (lookup_char_property): Do not prematurely return nil.
7224
72252004-05-19 Jim Blandy <jimb@redhat.com>
7226
7227 Add support for new '\_<' and '\_>' regexp operators, matching the
7228 beginning and end of symbols.
7229
7230 * regex.c (enum syntaxcode): Add Ssymbol.
7231 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
7232 (re_opcode_t): New opcodes `symbeg' and `symend'.
7233 (print_partial_compiled_pattern): Print the new opcodes properly.
7234 (regex_compile): Parse the new operators.
7235 (analyse_first): Skip sym(beg|end) (they match only the empty string).
7236 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
7237 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
7238 (re_match_2_internal): Match symbeg and symend.
7239
7240 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
7241
72422004-05-19 Kim F. Storm <storm@cua.dk>
7243
7244 * .gdbinit (xsymbol): Fix last change.
7245
72462004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
7247
7248 * .gdbinit (xprintstr): New fun.
7249 (xstring, xprintsym): Use it.
7250
7251 * w32proc.c (create_child): Use INTMASK.
7252
7253 * alloc.c (Fgarbage_collect): Do all the marking before flushing
7254 unmarked elements of the undo list.
7255
72562004-05-18 David Ponce <david@dponce.com>
7257
7258 * print.c (print): Reset print_depth before to call print_object.
7259
72602004-05-18 Jason Rumney <jasonr@gnu.org>
7261
7262 * w32console.c: Prefix RIF functions with w32con_ to avoid
7263 namespace clash with functions in term.c and w32term.c.
7264
7265 * w32menu.c (add_menu_item, w32_menu_display_help)
7266 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
7267
7268 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
7269
72702004-05-18 Eli Zaretskii <eliz@gnu.org>
7271
7272 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
7273
7274 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
7275 with make_number.
7276 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
7277 with XINT.
7278
72792004-05-18 Kim F. Storm <storm@cua.dk>
7280
7281 * blockinput.h (INPUT_BLOCKED_P): New macros.
7282
7283 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
7284 (Ftop_level): Unblock input if blocked.
7285
7286 * buffer.h (GET_OVERLAYS_AT): New macro.
7287 * msdos.c (IT_note_mouse_highlight): Use it.
7288 * textprop.c (get_char_property_and_overlay): Use it.
7289 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
7290 * xfaces.c (face_at_buffer_position): Use it.
7291
7292 * print.c (print_object): Increase buf size.
7293
72942004-05-17 Jason Rumney <jasonr@gnu.org>
7295
7296 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
7297 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
7298 Lisp_Object using i member.
7299 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
7300 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
7301 consistently.
7302
7303 * w32proc.c (create_child): Use make_number instead of masking pid.
7304
7305 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
7306 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
7307 Use EQ to compare Lisp_Objects.
7308 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
7309
7310 * w32term.c (w32_num_mouse_buttons): Rename from
7311 Vw32_num_mouse_buttons and make it an int.
7312
7313 * w32.c (init_environment): Use it.
7314
7315 * w32fns.c (w32_wnd_proc): Likewise.
7316
7317 * w32proc.c (w32_pipe_read_delay): Rename from
7318 Vw32_pipe_read_delay and make it an int.
7319
7320 * w32.c (_sys_read_ahead): Use it.
7321
7322 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
7323
7324 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
7325
7326 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
7327 (key_event): Don't mix Lisp_Object and int.
7328
7329 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
7330
7331 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
7332 modifiers in language change event.
7333
73342004-05-17 Kim F. Storm <storm@cua.dk>
7335
7336 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
7337 Such objects may be freed markers which still exist on an undo list.
7338
73392004-05-16 Juanma Barranquero <lektu@terra.es>
7340
7341 * data.c (Fset_default): Make argument names match their use in
7342 docstring.
7343
73442004-05-15 Andreas Schwab <schwab@suse.de>
7345
7346 * emacs.c (gdb_array_mark_flag): Define.
7347 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
7348
73492004-05-15 Eli Zaretskii <eliz@gnu.org>
7350
7351 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
7352 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
7353 defined for the MS-DOS build.
7354
73552004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
7356
7357 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
7358
73592004-05-14 Kenichi Handa <handa@m17n.org>
7360
7361 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
7362
73632004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7364
7365 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
7366 section to frame.c section.
7367 (Fxw_display_color_p, Fx_file_dialog): Declare if
7368 HAVE_WINDOW_SYSTEM defined.
7369
7370 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
7371
7372 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
7373
7374 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
7375 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
7376 (XTread_socket): Fix int/Lisp_Object mixup.
7377 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
7378
7379 * macterm.h (struct frame, struct face, struct image)
7380 (display_x_get_resource, Fx_display_color_p)
7381 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
7382 Add prototypes.
7383
73842004-05-14 Kim F. Storm <storm@cua.dk>
7385
7386 * process.c (wait_reading_process_input): Make reentrant.
7387 Make Available and Connecting non-static. Save and restore value
7388 of waiting_for_user_input_p.
7389
73902004-05-13 Kim F. Storm <storm@cua.dk>
7391
7392 * keyboard.c (mark_kboards): Don't mark x and y members
7393 that are overloaded in selection request events.
7394
73952004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
7396
7397 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
7398
73992004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
7400
7401 * window.c (Fdisplay_buffer, Fsplit_window)
7402 (split-height-threshold): Doc fix.
7403
74042004-05-13 Juanma Barranquero <lektu@terra.es>
7405
7406 * xfaces.c (Ftty_supports_face_attributes_p)
7407 (Finternal_copy_lisp_face): Fix typo in docstring.
7408 (Finternal_get_lisp_face_attribute): Fix docstring.
7409
74102004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7411
7412 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
7413
74142004-05-11 Steven Tamm <steventamm@mac.com>
7415
7416 * macfns.c (Fx_create_frame): Default to using tool-bar by
7417 setting tool-bar-lines to 1 in default-frame-alist.
7418
74192004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7420
7421 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
7422 (xpm_get_color_table_v, xpm_make_color_table_h)
7423 (xpm_put_color_table_h, xpm_get_color_table_h)
7424 (xpm_str_to_color_key, xpm_load_image, xpm_load)
7425 (syms_of_image): Support XPM on Carbon Emacs. Does not
7426 depend on libXpm, but only supports XPM version 3 without extensions.
7427
74282004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7429
7430 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
7431 instead of FRAME_X_P
7432
74332004-05-11 Kim F. Storm <storm@cua.dk>
7434
7435 * process.c (read_process_output): Grow decoding_buf when needed;
7436 this could cause a crash in allocate_string and compact_small_strings.
7437
74382004-04-29 Jim Blandy <jimb@redhat.com>
7439
7440 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
7441 against proper opcode.
7442
74432004-05-10 Juanma Barranquero <lektu@terra.es>
7444
7445 * process.c (Fstart_process): Fix docstring.
7446
7447 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
7448 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
7449 (Fsplit_char, Fchar_charset): Make argument names match their use
7450 in docstring.
7451
74522004-05-10 Richard M. Stallman <rms@gnu.org>
7453
7454 * print.c (print_preprocess): Use being_printed, loop_count and
7455 halftail to detect overdeep nesting and cyclic cdr chains.
7456
74572004-05-10 Andreas Schwab <schwab@suse.de>
7458
7459 * lisp.h (Fmake_symbolic_link): Declare.
7460
7461 * fileio.c (Frename_file): Remove extra argument in call to
7462 Fmake_symbolic_link.
7463
74642004-05-10 Kim F. Storm <storm@cua.dk>
7465
7466 * xdisp.c (calc_line_height_property): Use string position when
7467 object is a string.
7468
74692004-05-10 Kenichi Handa <handa@m17n.org>
7470
7471 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
7472 inhibit-modification-hooks to t temporarily before calling
7473 Ferase_buffer.
7474
7475 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
7476 inhibit-modification-hooks to t temporarily before calling
7477 Ferase_buffer.
7478
7479 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
7480 inhibit-modification-hooks to t temporarily before calling
7481 Ferase_buffer.
7482
7483 * fns.c (count_combining): Delete it.
7484 (concat): Don't check combining bytes.
7485
74862004-05-09 Jason Rumney <jasonr@gnu.org>
7487
7488 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
7489 (globals_of_w32fns): Set it.
7490
74912004-05-09 Piet van Oostrum <piet@cs.uu.nl>
7492
7493 * data.c (Fquo): Simplify.
7494
74952004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
7496
7497 * data.c (Fquo): If any argument is float, do the computation in
7498 floating point.
7499
75002004-05-08 Juanma Barranquero <lektu@terra.es>
7501
7502 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
7503 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
7504 Fix spelling of Emacs on docstring.
7505 (Fset_process_coding_system, Fprocess_coding_system)
7506 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
7507 Make argument names match their use in docstring.
7508 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
7509 Fix docstring.
7510
7511 * editfns.c (Finsert_buffer_substring): Make argument names match their
7512 use in docstring.
7513
7514 * syntax.c (Fmodify_syntax_entry): Fix docstring.
7515
75162004-05-07 Steven Tamm <steventamm@mac.com>
7517
7518 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
7519 around call to ReceiveEvent to avoid certain crashes.
7520
75212004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7522
7523 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
7524 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
7525 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
7526 Save/restore the current graphics port and device handle when
7527 drawing into an offscreen graphics world.
7528
7529 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
7530 (gif_load): Likewise.
7531
75322004-05-07 Juanma Barranquero <lektu@terra.es>
7533
7534 * window.c (Fset_window_buffer): Fix docstring.
7535
75362004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
7537
7538 * emacs.c (main) [VMS]: Fix var ref.
7539
75402004-05-06 Romain Francoise <romain@orebokech.com>
7541
7542 * data.c (Fsetq_default): Fix docstring.
7543
75442004-05-06 Jason Rumney <jasonr@gnu.org>
7545
7546 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
7547 to avoid name clash.
7548
75492004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7550
7551 * fileio.c (barf_or_query_if_file_exists): Use lstat.
7552 (Frename_file): Handle renaming of symlinks across file systems.
7553 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
7554
75552004-05-04 Kim F. Storm <storm@cua.dk>
7556
7557 * xdisp.c (Qtotal): New var.
7558 (syms_of_xdisp): Intern and staticpro it.
7559 (calc_line_height_property): New arg total. Set it if
7560 line-spacing property has format (total . VALUE).
7561 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
7562 Handle total line-spacing property.
7563
75642004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7565
7566 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
7567 "under" scroll bar when size/position changes.
7568
75692004-05-03 Jason Rumney <jasonr@gnu.org>
7570
7571 * makefile.nt: Remove.
7572
75732004-05-02 Eli Zaretskii <eliz@gnu.org>
7574
7575 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
7576 Avoid compiler warnings.
7577
7578 * Makefile.in (region-cache.o): Depend on config.h.
7579
75802004-05-02 Romain Francoise <romain@orebokech.com>
7581
7582 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
7583 with continuation lines, too.
7584
75852004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
7586
7587 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
7588
75892004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
7590
7591 * xdisp.c (calc_line_height_property): YAILOM (yet another
7592 int/Lisp_Object mixup).
7593
75942004-05-01 Eli Zaretskii <eliz@gnu.org>
7595
7596 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
7597 undo bad effect of pack(4) in some versions of system headers.
7598
75992004-05-01 Jason Rumney <jasonr@gnu.org>
7600
7601 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
7602
76032004-04-30 Kim F. Storm <storm@cua.dk>
7604
7605 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
7606 (syms_of_buffer) <cursor-type>: Doc fix.
7607
7608 * dispextern.h (struct it): Remove member use_default_face.
7609 Add members override_ascent, override_descent, override_boff.
7610
7611 * xdisp.c (init_iterator): Handle line-spacing float value.
7612 Initialize override_ascent member.
7613 (append_space_for_newline): Reset override_ascent.
7614 Remove use_default_face.
7615 (calc_line_height_property): New function to calculate value of
7616 line-height and line-spacing properties. Look at overlays, too.
7617 Set override_ascent, override_descent, override_boff members when
7618 using another face than the current face. Float values are now
7619 relative to the frame default font, by default; accept a cons
7620 of ratio and face name to specify value relative to a specific face.
7621 (x_produce_glyphs): Use calc_line_height_property.
7622 Use override_ascent etc. when set to handle different face heights.
7623 A negative line-spacing property value is interpreted as a total
7624 line height, rather than inter-line spacing.
7625 (note_mouse_highlight): Allocate room for 40 overlays initially.
7626
76272004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
7628
7629 * data.c (Fsubr_name): New fun.
7630 (syms_of_data): Defsubr it.
7631
76322004-04-29 Kim F. Storm <storm@cua.dk>
7633
7634 * xdisp.c (null_glyph_slice): New var.
7635 (append_glyph, append_composite_glyph, append_stretch_glyph):
7636 Use it to initialize glyph slice.
7637
76382004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
7639
7640 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
7641 (on_hot_spot_p): Make sure we always return a value.
7642 (Flookup_image_map): Remove unused var ix and iy.
7643 (note_mode_line_or_margin_highlight): Remove unused var `image'.
7644
76452004-04-27 Eli Zaretskii <eliz@gnu.org>
7646
7647 * msdos.c (init_environment): If one of the TMP... environment
7648 variables is set to a drive letter without a trailing slash,
7649 append a slash.
7650
76512004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
7652
7653 * editfns.c (lisp_time_argument): Provide externally.
7654
7655 * fileio.c (Fset_file_times): New function.
7656 (syms_of_fileio): Intern and staticpro it.
7657
76582004-04-27 Kim F. Storm <storm@cua.dk>
7659
7660 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
7661 header line strings.
7662
7663 * dispextern.h (struct it): New member use_default_face.
7664
7665 * xdisp.c (Qline_height): New variable.
7666 (syms_of_xdisp): Intern and staticpro it.
7667 (append_space_for_newline): Partially undo 2004-04-25 change;
7668 add default_face_p arg, and restore callers.
7669 Clear it->use_default_face after use.
7670 (x_produce_glyphs): Set default font for ascii char if
7671 it->use_default_font is set. Change line-spacing property to set
7672 just extra line spacing. Handle new line-height property.
7673
76742004-04-26 Andreas Schwab <schwab@suse.de>
7675
7676 * print.c (print_object): Print non-ascii characters in bool
7677 vector representation as octal escapes.
7678
7679 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
7680 * print.c (print_object): Use it instead of BITS_PER_CHAR for
7681 bool vectors.
7682 * lread.c (read1): Likewise.
7683 * alloc.c (Fmake_bool_vector): Likewise.
7684 * data.c (Faref, Faset): Likewise.
7685 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
7686 (mapcar1): Likewise.
7687
76882004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
7689
7690 * lread.c (init_lread): Fix typo in HAVE_CARBON test logic.
7691
76922004-04-26 Miles Bader <miles@gnu.org>
7693
7694 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
7695
76962004-04-26 Juanma Barranquero <lektu@terra.es>
7697
7698 * buffer.c (Fpop_to_buffer): Fix docstring.
7699
77002004-04-26 Steven Tamm <steventamm@mac.com>
7701
7702 * lread.c (init_lread): Don't display missing lisp directory
7703 warnings with Carbon Emacs because self-contained bundled Emacs
7704 may be built without correct installation path.
7705
77062004-04-25 Kim F. Storm <storm@cua.dk>
7707
7708 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
7709
7710 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
7711
7712 * xdisp.c (append_space_for_newline): Rename from append_space.
7713 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
7714 (x_produce_glyphs): Handle line-spacing property on newline char.
7715 If value is t, adjust ascent and descent to fit current row height.
7716 If value is an integer or float, set extra_line_spacing to integer
7717 value, or to float value x current line height.
7718
77192004-04-23 Kenichi Handa <handa@m17n.org>
7720
7721 * fontset.c (Finternal_char_font): If POSITION is nil, return
7722 font for displaying CH with the default face.
7723
77242004-04-23 Juanma Barranquero <lektu@terra.es>
7725
7726 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
7727
77282004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
7729
7730 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
7731 Don't make assumptions about the relative place of i and val.
7732 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
7733
77342004-04-21 Kim F. Storm <storm@cua.dk>
7735
7736 * dispextern.h (struct glyph_slice): New struct.
7737 (struct glyph): New member slice.
7738 (GLYPH_SLICE_EQUAL_P): New macro.
7739 (GLYPH_EQUAL_P): Use it.
7740 (struct glyph_string): New member slice.
7741 (struct it_slice): New struct.
7742 (struct it): New member slice, add member to stack too.
7743 New member constrain_row_ascent_descent_p.
7744 (image_ascent): Add prototype.
7745
7746 * dispnew.c (buffer_posn_from_coords): Return full image width
7747 and height even for image slices (posn is relative to full image).
7748 (marginal_area_string): Adjust x0,y0 for image slice.
7749
7750 * image.c (image_ascent): Add slice arg; calculate ascent for
7751 image slice (or full image).
7752
7753 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
7754 (syms_of_keyboard): Defsubr them.
7755
7756 * lisp.h (pos_visible_p): Fix prototype.
7757
7758 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
7759 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
7760 (x_draw_image_foreground, x_draw_image_relief)
7761 (x_draw_image_foreground_1, x_draw_image_glyph_string):
7762 Draw sliced images.
7763
7764 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
7765 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
7766 (x_draw_image_foreground, x_draw_image_relief)
7767 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
7768 Draw sliced images.
7769
7770 * w32term.h (image_ascent): Remove prototype.
7771
7772 * window.c (Fpos_visible_in_window_p): Return pixel position if
7773 PARTIALLY arg is non-nil. Simplify. Doc fix.
7774 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
7775 to return/set vscroll in pixels.
7776
7777 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
7778
7779 * xdisp.c (Qslice): New variable.
7780 (syms_of_xdisp): Intern and staticpro it.
7781 (pos_visible_p): Return pixel position in new x and y args.
7782 (init_iterator): Reset it->slice info.
7783 (handle_display_prop): Parse (slice ...) property.
7784 (push_it, pop_it): Save/restore slice info.
7785 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
7786 force repositioning of tall row if window is vscrolled, as that
7787 would reset vscroll.
7788 (append_space): Set it->constrain_row_ascent_descent_p to avoid
7789 increasing row height if row is non-empty.
7790 (fill_image_glyph_string): Copy slice info.
7791 (take_vertical_position_into_account): Simplify.
7792 (produce_image_glyph): Handle iterator slice info, setup glyph
7793 slice info. Do not force minimum line height.
7794 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
7795 do not increase height (ascent/descent) of non-empty row when
7796 adding normal character glyph; instead reduce glyph ascent/descent
7797 appropriately; if row is higher than current glyph, adjust glyph
7798 descent/ascent to reposition glyph within the existing row.
7799 Likewise, when char is newline, only set ascent/descent if row is
7800 currently empty.
7801 (note_mouse_highlight): Handle hotspots with sliced image.
7802
7803 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
7804 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
7805 (x_draw_image_foreground, x_draw_image_relief)
7806 (x_draw_image_foreground_1, x_draw_image_glyph_string):
7807 Draw sliced images.
7808
7809 * xterm.h (image_ascent): Remove prototype.
7810
78112004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
7812
7813 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
7814
78152004-04-20 John Paul Wallington <jpw@gnu.org>
7816
7817 * fns.c (Fassoc, Feql): Fix indentation.
7818
7819 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
7820
78212004-04-19 John Paul Wallington <jpw@gnu.org>
7822
7823 * fns.c (Feql): New function.
7824 (syms_of_fns): Defsubr it.
7825
78262004-04-18 Jason Rumney <jasonr@gnu.org>
7827
7828 * w32select.c (Fw32_set_clipboard_data): Get sequence number
7829 after closing the clipboard.
7830
78312004-04-16 Luc Teirlinck <teirllm@auburn.edu>
7832
7833 * buffer.c (Fbuffer_base_buffer): Doc fix.
7834
78352004-04-17 Kim F. Storm <storm@cua.dk>
7836
7837 * keymap.c (Fkey_description): Add optional PREFIX arg.
7838 Combine prefix with KEYS to make up the full key sequence to describe.
7839 Correlate meta_prefix_char and following (simple) key to describe
7840 as meta modifier. All callers changed.
7841 (describe_map): Rename arg `keys' to `prefix'. Remove local
7842 `elt_prefix' var. Use Fkey_description with prefix instead of
7843 elt_prefix combined with Fsingle_key_description.
7844 (describe_vector): Declare static. Replace arg `elt_prefix' with
7845 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
7846 if !KEYMAP_P. Use Fkey_description with prefix instead of
7847 Fsingle_key_description.
7848
7849 * keymap.h (Fkey_description): Fix prototype.
7850 (describe_vector): Remove prototype.
7851
7852 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
7853
7854 * image.c (PNG_BG_COLOR_SHIFT): Remove.
7855 (png_load): Fix calculation of transparent background color on X
7856 and W32 platforms.
7857
78582004-04-16 Juanma Barranquero <lektu@terra.es>
7859
7860 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
7861 not too large before computing how much to scroll.
7862
78632004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
7864
7865 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
7866
78672004-04-14 Luc Teirlinck <teirllm@auburn.edu>
7868
7869 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
7870 Add hyperlink to Elisp manual to the docstring.
7871
78722004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
7873
7874 * callint.c (fix_command): Use XDCR.
7875
78762004-04-14 Nick Roberts <nick@nick.uklinux.net>
7877
7878 * window.c (Fget_lru_window): Doc fix.
7879
78802004-04-14 Kim F. Storm <storm@cua.dk>
7881
7882 * editfns.c (Fformat): Fix allocation size of precision array.
7883
7884 * dispnew.c (update_window): Only set changed_p if
7885 scrolling_window actually did scroll.
7886 (scrolling_window): Only return 1 if we actually did scroll.
7887
7888 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
7889 height to glyph height when cursor row is not fully visible.
7890 (make_cursor_line_fully_visible): Add FORCE_P arg to return
7891 failure in case row is higher than window. Callers changed.
7892 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
7893 Try to scroll partially visible, higher-than-window cursor row.
7894 (redisplay_window): Always try to scroll partially visible,
7895 higher-than-window cursor row - both initially and again with
7896 centering_position = 0.
7897 Clear desired matrix before retrying with centering_position = 0.
7898
78992004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
7900
7901 * syntax.c (scan_lists): Simplify backward string scan.
7902 Fix off-by-one boundary check for string and comment fences.
7903
79042004-04-13 Joe Buehler <jbuehler@hekimian.com>
7905
7906 * sheap.c, unexcw.c: New files.
7907
79082004-04-12 Luc Teirlinck <teirllm@auburn.edu>
7909
7910 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
7911 base buffer has been killed. Correct the error message if the
7912 base buffer does not exist.
7913
79142004-04-12 Joe Buehler <jbuehler@hekimian.com>
7915
7916 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
7917 Cygwin itself. Add support for Xaw3d scrollbars.
7918
7919 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
7920
7921 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
7922
7923 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
7924 before Cygwin unexec.
7925
7926 * Makefile.in: Link changes for Cygwin unexec() support.
7927
79282004-04-12 Andreas Schwab <schwab@suse.de>
7929
7930 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
7931
79322004-04-11 Luc Teirlinck <teirllm@auburn.edu>
7933
7934 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
7935 IGNORE argument equals NAME. Doc fix.
7936
79372004-04-11 Masatake YAMATO <jet@gyve.org>
7938
7939 * buffer.c (fix_start_end_in_overlays): Make overlays
7940 empty if they are backwards.
7941
79422004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
7943
7944 * xfaces.c (face_color_supported_p): Fix compilation without X11.
7945
79462004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
7947
7948 * doc.c (Fsnarf_documentation): Ignore new file name entries.
7949
79502004-04-06 Kim F. Storm <storm@cua.dk>
7951
7952 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
7953 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
7954
7955 * w32term.c (w32_read_socket): Set mouse_face_hidden after
7956 clearing highlight.
7957
7958 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
7959
7960 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
7961 clearing highlight.
7962
7963 * indent.c (vmotion): Do not reserve one column for continuation
7964 marks on window frames.
7965
79662004-04-04 Eli Zaretskii <eliz@gnu.org>
7967
7968 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
7969 from GCC.
7970
79712004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
7972
7973 * .gdbinit-union: Remove.
7974
7975 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
7976 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
7977 ($nonvalbits): Remove.
7978 ($valmask): Set it by calling xreload to avoid redundancy.
7979
7980 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
7981 (gdb_emacs_intbits): Remove.
7982
79832004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7984
7985 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
7986
79872004-03-30 Kenichi Handa <handa@m17n.org>
7988
7989 * editfns.c (Fformat): Fix initialization of the array info.
7990
79912004-03-30 Kim F. Storm <storm@cua.dk>
7992
7993 * xterm.c (x_mouse_click_focus_ignore_position): New var.
7994 (syms_of_xterm): DEFVAR_BOOL it.
7995 (ignore_next_mouse_click_timeout): New var.
7996 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
7997 Use it to filter mouse clicks following focus event.
7998
79992004-03-29 David Ponce <david@dponce.com>
8000
8001 * callint.c (Fcall_interactively): Fix last change.
8002
80032004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
8004
8005 * eval.c (Fcommandp): Simplify.
8006
8007 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
8008 Extend to handle all kinds of functions.
8009
8010 * lisp.h (Finteractive_form): Declare.
8011
8012 * callint.c (Fcall_interactively): Use it.
8013
80142004-03-26 Kim F. Storm <storm@cua.dk>
8015
8016 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
8017 to catch errors in calc_pixel_width_or_height during redisplay.
8018
80192004-03-26 Masatake YAMATO <jet@gyve.org>
8020
8021 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
8022
8023 * lisp.h (fix_start_end_in_overlays): Likewise.
8024
8025 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
8026
8027 * editfns.c (Ftranspose_regions): Likewise.
8028
80292004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8030
8031 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
8032
80332004-03-19 Richard M. Stallman <rms@gnu.org>
8034
8035 * s/sol2-6.h: Delete previous change.
8036
80372004-03-19 Kim F. Storm <storm@cua.dk>
8038
8039 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
8040 to_charpos corresponds to newline in right fringe. Use local
8041 BUFFER_POS_REACHED_P macro.
8042
80432004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8044
8045 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
8046 to compile on non-window system.
8047
80482004-03-19 Kim F. Storm <storm@cua.dk>
8049
8050 * dispextern.h (calc_pixel_width_or_height): Add prototype.
8051
8052 * image.c (Qcenter): Move to xdisp.c.
8053
8054 * xdisp.c (Qcenter): Declare here.
8055 (syms_of_xdisp): Intern and staticpro it.
8056 (handle_single_display_prop): Allow space display property on all
8057 platforms.
8058 (display_mode_line): Set mode_line_p before displaying line.
8059 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
8060 handling. Remove complex cases for fringes and scroll-bars.
8061 Add left, right, and center alignment positions. Add text (area)
8062 width/height. Return width or height for image specs.
8063 (produce_stretch_glyph): Improve handling of :align-to. Is now
8064 relative to left of text area by default, but other base offsets
8065 can be specified -- also for text lines.
8066
8067 * term.c (produce_glyphs): Handle IT_STRETCH.
8068 (produce_stretch_glyph): New function to handle space width and
8069 align-to display properties on non-window systems.
8070
80712004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
8072
8073 * fileio.c (Fread_file_name): Set completion-ignore-case for
8074 case-insensitive systems.
8075
80762004-03-14 Masatake YAMATO <jet@gyve.org>
8077
8078 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
8079 when keymap and cursor are setup.
8080
80812004-03-14 Steven Tamm <steventamm@mac.com>
8082
8083 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
8084
80852004-03-14 Kim F. Storm <storm@cua.dk>
8086
8087 * dispextern.h (x_find_image_file): Add prototype.
8088
8089 * image.c (x_find_image_file): Make extern.
8090
8091 * xfns.c (x_find_image_file): Remove prototype.
8092
80932004-03-13 Eli Zaretskii <eliz@gnu.org>
8094
8095 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
8096
8097 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
8098
80992004-03-12 Richard M. Stallman <rms@gnu.org>
8100
8101 * fns.c (internal_equal): New arg PROPS controls comparing
8102 text properties. All callers changed.
8103 (Fequal_including_properties): New function.
8104 (syms_of_fns): defsubr it.
8105
81062004-03-12 Kim F. Storm <storm@cua.dk>
8107
8108 Fix image support on MAC. From YAMAMOTO Mitsuharu.
8109
8110 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
8111 (image_background, image_background_transparent): Fix prototypes.
8112
8113 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
8114
8115 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
8116 (x_query_font, x_find_ccl_program, x_set_window_size)
8117 (x_make_frame_visible, mac_initialize, XCreatePixmap)
8118 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
8119 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
8120
8121 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
8122 (x_query_font, x_find_ccl_program, x_set_window_size)
8123 (x_make_frame_visible, mac_initialize, XCreatePixmap)
8124 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
8125 (mac_draw_line_to_pixmap): Add prototypes.
8126
81272004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8128
8129 * macterm.c (XTread_socket): Fix mouse click on tool bar.
8130
81312004-03-11 Kim F. Storm <storm@cua.dk>
8132
8133 * dispextern.h: Move image related prototypes from xfns.c section
8134 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
8135 HAVE_X_WINDOWS.
8136
8137 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
8138 Move gtkutil.o to new GTK_OBJ list.
8139 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
8140 (GTK_OBJ) [USE_GTK]: New declaration.
8141 (obj): Add $(GTK_OBJ) to list.
8142
81432004-03-11 Steven Tamm <steventamm@mac.com>
8144
8145 * image.c [MAC_OSX]: Include sys/stat.h.
8146
8147 * macfns.c (syms_of_macfns): Remove definitions of things now
8148 defined in image.c.
8149
81502004-03-11 Kim F. Storm <storm@cua.dk>
8151
8152 The following changes consolidates the identical/similar image
8153 support code previously found in xfns.c, w32fns.c, and macfns.c
8154 into a new file image.c.
8155
8156 * makefile.w32-in (OBJ1): Add image.o.
8157 ($(BLD)/image.$(O)): Add dependencies.
8158
8159 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
8160 (image.o): Add dependencies.
8161
8162 * image.c: New file with consolidated image support code.
8163 (COLOR_TABLE_SUPPORT): New define to control whether
8164 color table support is available (X only).
8165 (Bitmap_Record): Common name for x_bitmap_record,
8166 w32_bitmap_record, and mac_bitmap_record.
8167 (XImagePtr): Common name for pointer to XImage or equivalent.
8168 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
8169 to XImagePtr on X+MAC, and to HDC on W32.
8170 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
8171 (NO_PIXMAP): Common name for "None" or equivalent.
8172 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
8173 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
8174 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
8175 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
8176 Define with suitable equivalents on W32 and MAC for code sharing.
8177 (XDrawLine): Define on MAC for code sharing.
8178 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
8179 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
8180 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
8181 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8182 (x_reference_bitmap, x_create_bitmap_from_data)
8183 (x_create_bitmap_from_file, x_destroy_bitmap)
8184 (x_destroy_all_bitmaps, x_create_bitmap_mask)
8185 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
8186 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
8187 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
8188 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
8189 (define_image_type, lookup_image_type, valid_image_p)
8190 (image_error, enum image_value_type, struct image_keyword)
8191 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
8192 (make_image, free_image, prepare_image_for_display, image_ascent)
8193 (four_corners_best, image_background, image_background_transparent)
8194 (x_clear_image_1, x_clear_image, x_alloc_image_color)
8195 (make_image_cache, free_image_cache, clear_image_cache)
8196 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
8197 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
8198 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
8199 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
8200 (init_image_func_pointer, image_load_quartz2d)
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): Consolidate image
8208 code from xfns.c, w32fns.c, and macfns.c.
8209 (syms_of_image): Consolidate image related symbol setup here.
8210 (init_image): Consolidate image related initializations here.
8211
8212 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
8213 and init_image. Remove call to init_xfns.
8214
8215 * macterm.h (struct mac_bitmap_record): Add file member.
8216 Not currently used, but simplifies code sharing.
8217
8218 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
8219 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8220 (x_reference_bitmap, x_create_bitmap_from_data)
8221 (x_create_bitmap_from_file, x_destroy_bitmap)
8222 (x_destroy_all_bitmaps, x_create_bitmap_mask)
8223 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
8224 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
8225 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
8226 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
8227 (define_image_type, lookup_image_type, valid_image_p)
8228 (image_error, enum image_value_type, struct image_keyword)
8229 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
8230 (make_image, free_image, prepare_image_for_display, image_ascent)
8231 (four_corners_best, image_background, image_background_transparent)
8232 (x_clear_image_1, x_clear_image, x_alloc_image_color)
8233 (make_image_cache, free_image_cache, clear_image_cache)
8234 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
8235 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
8236 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
8237 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
8238 (init_image_func_pointer, image_load_quartz2d)
8239 (struct ct_color, init_color_table, free_color_table)
8240 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
8241 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
8242 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
8243 (x_disable_image, x_build_heuristic_mask)
8244 (XBM support, XPM support, PBM support, PNG support, JPEG support)
8245 (TIFF support, GIF support, Ghostscript support): Merge with image
8246 code from xfns.c and macfns.c into image.c.
8247 (syms_of_xfns): Move image related symbols to image.c.
8248 (init_external_image_libraries, init_xfns): Remove; initialization
8249 moved to init_image in image.c.
8250
8251 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
8252 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8253 (x_reference_bitmap, x_create_bitmap_from_data)
8254 (x_create_bitmap_from_file, x_destroy_bitmap)
8255 (x_destroy_all_bitmaps, x_create_bitmap_mask)
8256 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
8257 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
8258 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
8259 (define_image_type, lookup_image_type, valid_image_p)
8260 (image_error, enum image_value_type, struct image_keyword)
8261 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
8262 (make_image, free_image, prepare_image_for_display, image_ascent)
8263 (four_corners_best, image_background, image_background_transparent)
8264 (x_clear_image_1, x_clear_image, x_alloc_image_color)
8265 (make_image_cache, free_image_cache, clear_image_cache)
8266 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
8267 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
8268 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
8269 (struct ct_color, init_color_table, free_color_table)
8270 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
8271 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
8272 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
8273 (x_disable_image, x_build_heuristic_mask)
8274 (XBM support, XPM support, PBM support, PNG support, JPEG support)
8275 (TIFF support, GIF support, Ghostscript support): Merge with image
8276 code from xfns.c and macfns.c into image.c.
8277 (syms_of_xfns): Move image related symbols to image.c.
8278 (init_external_image_libraries, init_xfns): Remove; initialization
8279 moved to init_image in image.c.
8280
8281 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
8282 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8283 (x_reference_bitmap, x_create_bitmap_from_data)
8284 (x_create_bitmap_from_file, x_destroy_bitmap)
8285 (x_destroy_all_bitmaps, x_create_bitmap_mask)
8286 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
8287 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
8288 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
8289 (define_image_type, lookup_image_type, valid_image_p)
8290 (image_error, enum image_value_type, struct image_keyword)
8291 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
8292 (make_image, free_image, prepare_image_for_display, image_ascent)
8293 (four_corners_best, image_background, image_background_transparent)
8294 (x_clear_image_1, x_clear_image, x_alloc_image_color)
8295 (make_image_cache, free_image_cache, clear_image_cache)
8296 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
8297 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
8298 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
8299 (struct ct_color, init_color_table, free_color_table)
8300 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
8301 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
8302 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
8303 (x_disable_image, x_build_heuristic_mask)
8304 (XBM support, XPM support, PBM support, PNG support, JPEG support)
8305 (TIFF support, GIF support, Ghostscript support): Merge with
8306 w32fns.c and macfns.c image code into image.c.
8307 (syms_of_xfns): Move image related symbols to image.c.
8308 (init_xfns): Remove; initialization moved to init_image in image.c.
8309
8310 * lisp.h (syms_of_image, init_image): Add protoypes.
8311 (init_xfns): Remove prototype.
8312
8313 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8314 (x_reference_bitmap, x_create_bitmap_from_data)
8315 (x_create_bitmap_from_file, x_destroy_bitmap)
8316 (x_create_bitmap_mask): Move prototypes from dispextern.h.
8317 (gamma_correct) [MAC_OS]: Add prototype.
8318
8319 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8320 (x_reference_bitmap, x_create_bitmap_from_data)
8321 (x_create_bitmap_from_file, x_destroy_bitmap)
8322 (x_create_bitmap_mask): Move prototypes to dispextern.h.
8323
83242004-03-09 Kenichi Handa <handa@etlken2>
8325
8326 * coding.c (decode_coding_emacs_mule): Handle insufficent source
8327 correctly.
8328
83292004-03-04 Richard M. Stallman <rms@gnu.org>
8330
8331 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
8332
8333 * window.c (Fdisplay_buffer): Doc fix.
8334
8335 * buffer.c (Fpop_to_buffer): Doc fix.
8336
83372004-03-03 Kim F. Storm <storm@cua.dk>
8338
8339 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
8340
83412004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
8342
8343 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
8344
83452004-03-02 Richard M. Stallman <rms@gnu.org>
8346
8347 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
8348
83492004-03-02 Kenichi Handa <handa@m17n.org>
8350
8351 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
8352
83532004-03-02 Kim F. Storm <storm@cua.dk>
8354
8355 * window.h (struct window): New member overlay_arrow_bitmap.
8356
8357 * window.c (make_window): Initialize overlay_arrow_bitmap.
8358
8359 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
8360 implement and integrate multiple overlay arrows with redisplay.
8361 (syms_of_xdisp): DEFVAR_LISP and initialize it.
8362 (last_arrow_position, last_arrow_string): Replace by properties.
8363 (Qlast_arrow_position, Qlast_arrow_string)
8364 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
8365 (syms_of_xdisp): Intern and staticpro them.
8366 (overlay_arrow_string_or_property, update_overlay_arrows)
8367 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
8368 (overlay_arrow_at_row): New functions for multiple overlay arrows.
8369 (redisplay_internal): Use them instead of directly accessing
8370 Voverlay_arrow_position etc. for multiple overlay arrows.
8371 (mark_window_display_accurate): Use update_overlay_arrows.
8372 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
8373 (try_window_id): Use overlay_arrows_changed_p.
8374 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
8375 (display_line): Use overlay_arrow_at_row to check multiple
8376 overlay arrows, and get relevant overlay-arrow-string and
8377 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
8378 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
8379 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
8380
8381 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
8382 (update_window_fringes): Remove unused code.
8383
83842004-03-01 Jason Rumney <jasonr@gnu.org>
8385
8386 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
8387
83882004-03-01 Juanma Barranquero <lektu@terra.es>
8389
8390 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
8391
8392 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
8393
83942004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8395
8396 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
8397 how many colors can be displayed.
8398
83992004-03-01 Kenichi Handa <handa@m17n.org>
8400
8401 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
8402 correctly.
8403
84042004-02-28 Kim F. Storm <storm@cua.dk>
8405
8406 * dispnew.c (update_window): Update header line also if there are
8407 no other changes in window (move code after set_cursor label).
8408
8409 * lisp.h (mark_window_display_accurate): Remove prototype.
8410
8411 * window.c (window_loop, Fforce_window_update): Force mode line
8412 updates by setting prevent_redisplay_optimizations_p and
8413 update_mode_lines.
8414
84152004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8416
8417 * xfns.c (x_window): Fix indentation.
8418
8419 * xterm.c (x_calc_absolute_position): Call x_real_positions
8420 to get WM window sizes and use those to calculate position.
8421 (x_set_offset): Remove code commented out.
8422
84232004-02-28 Miles Bader <miles@gnu.org>
8424
8425 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
8426
84272004-02-28 Kim F. Storm <storm@cua.dk>
8428
8429 * keyboard.c (kbd_buffer_store_event_hold): New function to store
8430 an event into kbd fifo, but with special handling of quit event;
8431 a quit event is saved for later, and further events are discarded
8432 until the saved quit event has been processed.
8433 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
8434 (gen_help_event): Store help event in kbd fifo.
8435 (NREAD_INPUT_EVENTS): Remove.
8436 (read_avail_input): Adapt to new read_socket_hook interface.
8437 Remove allocation and initialization of local input_event buffer,
8438 as read_socket_hook stores events directly in fifo. Allocate and
8439 initialize local hold_quit event to handle postponed quit event
8440 (and store it if set by kbd_buffer_store_event_hold).
8441
8442 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
8443 (gen_help_event): Fix prototype.
8444
8445 * macterm.c (XTread_socket): Remove bufp_r and
8446 numcharsp args. Add hold_quit arg.
8447 Rework to use just one, local, inev input_event. Store inev
8448 directly in fifo using kbd_buffer_store_event_hold.
8449
8450 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
8451 (read_input_waiting): Adapt to new read_socket_hook interface.
8452 Remove allocation and initialization of local input_event buffer,
8453 as read_socket_hook stores events directly in fifo. Allocate and
8454 initialize local hold_quit event to handle postponed quit event
8455 (and store it if set by kbd_buffer_store_event_hold).
8456
8457 * term.c (read_socket_hook): Fix arg list.
8458
8459 * termhooks.h (read_socket_hook): Fix prototype.
8460
8461 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
8462 numcharsp args. Add hold_quit arg.
8463 Rework to use just one, local, inev input_event. Store inev
8464 directly in fifo using kbd_buffer_store_event_hold.
8465
8466 * w32inevt.h (w32_console_mouse_position): Fix prototype.
8467
8468 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
8469 Add hold_quit arg. Rework to use just one, local, inev
8470 input_event. Store inev directly in fifo using
8471 kbd_buffer_store_event_hold. Update count in one place.
8472 Postpone call to gen_help_event until inev is stored; use new
8473 local do_help for this.
8474 Remove local emacs_event in handing of ButtonPress event; just use
8475 inev instead (so no reason to copy it later).
8476
8477 * xsmfns.c (x_session_check_input): Remove numchars arg.
8478
8479 * xterm.c (x_focus_changed, x_detect_focus_change):
8480 Remove numchars arg. Always store event into bufp arg.
8481 Return nothing. Callers changed accordingly.
8482 (glyph_rect): Simplify.
8483 (STORE_KEYSYM_FOR_DEBUG): New macro.
8484 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
8485 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
8486 (current_hold_quit) [USE_GTK]: Add.
8487 (event_handler_gdk): Adapt to new handle_one_xevent.
8488 (handle_one_xevent): Remove bufp_r and numcharsp args.
8489 Add hold_quit arg. Rework to use just one, local, inev
8490 input_event. Store inev directly in fifo using
8491 kbd_buffer_store_event_hold. Update count in one place.
8492 Postpone call to gen_help_event until inev is stored; use new
8493 local do_help for this.
8494 Simplify handling of keysyms (consolidate common code). Fix bug
8495 where count was updated with nchars instead of nbytes.
8496 Remove local emacs_event in handing of ButtonPress event; just use
8497 inev instead (so no reason to copy it later).
8498 Remove `out' label. Rename label `ret' to `done'; add various
8499 `goto done' to clarify code flow in deeply nested blocks.
8500 (x_dispatch_event): Simplify as handle_one_xevent now calls
8501 kbd_buffer_store_event itself.
8502 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
8503 arg. Call handle_one_xevent with new arglist. Store event from
8504 x_session_check_input in fifo.
8505 [USE_GTK]: Setup current_hold_quit.
8506 Decrement handling_signal before unblocking input.
8507 (x_initialize) [USE_GTK]: Initialize current_count.
8508
8509 * xterm.h (x_session_check_input): Fix prototype.
8510
85112004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8512
8513 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
8514
8515 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
8516 macgui.h).
8517
8518 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
8519
8520 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
8521 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
8522 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
8523 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
8524 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
8525 (Bitmap): Remove typedef.
8526 (Pixmap): Change int to GWorldPtr.
8527
8528 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
8529
8530 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
8531 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
8532 New #define to extract 16-bit depth color components from unsigned
8533 long representation.
8534 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
8535 colors used for masks.
8536 (struct mac_display_info): Add color_p. Remove n_cbits.
8537
8538 * macfns.c: Include sys/types.h and sys/stat.h.
8539 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
8540 Include QuickTime/QuickTime.h.
8541 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
8542 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
8543 functions defined in macterm.c.
8544 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
8545 (ZPixmap): New #define for compatibility with xfns.c.
8546 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
8547 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
8548 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
8549 New functions.
8550 (four_corners_best, x_create_x_image_and_pixmap)
8551 (x_destroy_x_image, unwind_create_frame, x_disable_image)
8552 (x_edge_detection, init_color_table, colors_in_color_table)
8553 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
8554 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
8555 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
8556 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
8557 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
8558 long mixup.
8559 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
8560 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
8561 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
8562 (x_set_cursor_type, Fxw_color_values, valid_image_p)
8563 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
8564 (x_alloc_image_color, clear_image_cache, lookup_image)
8565 (x_find_image_file, xbm_read_bitmap_file_data)
8566 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
8567 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
8568 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
8569 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
8570 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
8571 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
8572 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
8573 #if 0.
8574 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
8575 #if 0. Free white_relief.gc and black_relief.gc.
8576 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
8577 New functions (from xfns.c).
8578 (Fx_create_frame): Record unwind_create_frame.
8579 (Fxw_display_color_p): Use dpyinfo->color_p.
8580 (Fx_display_grayscale_p, Fx_display_planes): Don't use
8581 dpyinfo->n_cbits.
8582 (Fx_display_color_cells): Use dpyinfo->n_planes;
8583 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
8584 (Qheuristic, cross_disabled_images, emboss_matrix)
8585 (laplace_matrix): New variables (from xfns.c).
8586 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
8587 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
8588 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
8589 (image_background_transparent): New function (from xfns.c).
8590 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
8591 (image_load_quicktime): Add declaration.
8592 [MAC_OSX] (image_load_quartz2d): Likewise.
8593 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
8594 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
8595 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
8596 (xbm_load_image_from_file, x_laplace_read_row)
8597 (x_laplace_write_row, pbm_read_file): Remove functions.
8598 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
8599 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
8600 (colors_in_color_table): Sync with xfns.c (although not used).
8601 (lookup_rgb_color): Don't lookup color table. Just do gamma
8602 correction.
8603 (COLOR_INTENSITY): New #define (from xfns.c).
8604 (x_disable_image): New function (from xfns.c).
8605 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
8606 (x_build_heuristic_mask): Sync with xfns.c.
8607 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
8608 (HAVE_PBM): Remove #ifdef.
8609 (pbm_load): Sync with xfns.c. Set img->width and img->height
8610 before IMAGE_BACKGROUND.
8611 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
8612 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
8613 Don't enclose with #if HAVE_PNG.
8614 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
8615 symbol _CGImageCreateWithPNGDataProvider is defined.
8616 Otherwise use image_load_quicktime.
8617 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
8618 [HAVE_PNG] (png_load): Sync with xfns.c.
8619 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
8620 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
8621 HAVE_JPEG.
8622 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
8623 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
8624 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
8625 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
8626 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
8627 (tiff_image_p, tiff_load): Don't enclose declarations with #if
8628 HAVE_TIFF.
8629 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
8630 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
8631 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
8632 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
8633 New functions (from xfns.c).
8634 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
8635 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
8636 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
8637 Don't enclose with #if HAVE_GIF.
8638 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
8639 animated gif. Otherwise use image_load_quicktime.
8640 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
8641 gif_DrawText to avoid conflict with QuickdrawText.h.
8642 [HAVE_GIF] (gif_load): Sync with xfns.c.
8643 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
8644 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
8645 Ghostscript is not supported yet).
8646 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
8647 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
8648 cross_disabled_images (from xfns.c). Remove #if 0 for supported
8649 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
8650 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
8651 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
8652 HAVE_PNG. Call EnterMovies to support animated gifs.
8653 Call init_image_func_pointer to bind a symbol
8654 _CGImageCreateWithPNGDataProvider if it is defined.
8655
8656 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
8657 (x_draw_bar_cursor): Sync declaration with xterm.c.
8658 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
8659 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
8660 graphics).
8661 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
8662 (mac_draw_line_to_pixmap, XCreatePixmap)
8663 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
8664 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
8665 New functions.
8666 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
8667 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
8668 Cast bits to char *.
8669 (reflect_byte): New function (from w32fns.c).
8670 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
8671 due to byte alignment.
8672 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
8673 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
8674 (XSetForeground): Remove static (now used in macfns.c).
8675 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
8676 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
8677 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
8678 (x_draw_glyph_string_box, x_draw_image_foreground)
8679 (x_draw_image_foreground_1, x_draw_image_glyph_string)
8680 (x_draw_stretch_glyph_string, x_draw_glyph_string)
8681 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
8682 Sync with xterm.c.
8683 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
8684 than the xterm.c version when a strictly horizontal or vertical
8685 line is drawn.
8686 (XTset_terminal_window): Add static.
8687 (x_make_frame_visible): Add UNBLOCK_INPUT.
8688 (x_free_frame_resources): New funcion (from xterm.c).
8689 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
8690 occurs in tool bar area.
8691 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
8692 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
8693 Initialize image cache.
8694 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
8695 Enclose unused functions with #if 0.
8696 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
8697 (decode_mac_font_name): New function to apply code conversions
8698 from a mac font name to an XLFD font name according to its script code.
8699 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
8700 font name to a mac font name according to REGISTRY and ENCODING fields.
8701 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
8702 whose name starts with `.'.
8703 (init_font_name_table): Use decode_mac_font_name. Add both
8704 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
8705 of a font is smJapanese.
8706 (mac_do_list_fonts): New function to list fonts that match a given
8707 pattern.
8708 (x_list_fonts, XLoadQueryFont): Use it.
8709 (XLoadQueryFont): Set rbearing field for each variable width
8710 character to avoid needless redraw.
8711 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
8712
87132004-02-26 Kim F. Storm <storm@cua.dk>
8714
8715 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
8716 as read_socket_hook handler on X aborts if buffer is too small
8717 and W32 handler doesn't always check buffer limit.
8718
8719 * xdisp.c (handle_single_display_prop): Handle left-fringe and
8720 right-fringe similar to a display margin image. Specifically,
8721 the characters having the fringe prop are no longer shown, and
8722 we use IT_IMAGE/next_element_from_image with image_id = -1 to
8723 do this. Set fringe bitmap face_id in it->face_id.
8724 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
8725 still realize it->face (i.e. the fringe bitmap face).
8726
87272004-02-25 Miles Bader <miles@gnu.org>
8728
8729 * xdisp.c (check_it): Check string/string_pos consistency.
8730 (init_iterator): Initialize string-related fields properly.
8731
87322004-02-11 Miles Bader <miles@gnu.org>
8733
8734 * xdisp.c (produce_image_glyph): Force negative descents to zero.
8735
87362004-02-10 Miles Bader <miles@gnu.org>
8737
8738 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
8739 BLOCK_INPUT can be nested, so it doesn't make much sense.
8740
87412004-02-24 Michael Mauger <mmaug@yahoo.com>
8742
8743 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
8744 (xbm_read_bitmap_data): Use unsigned char for image data.
8745
87462004-02-23 Luc Teirlinck <teirllm@auburn.edu>
8747
8748 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
8749
87502004-02-22 Jason Rumney <jasonr@gnu.org>
8751
8752 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
8753 correctly over other bitmaps.
8754
87552004-02-21 Eli Zaretskii <eliz@gnu.org>
8756
8757 * emacs.c (USAGE1): Split into two halves.
8758 (USAGE2): Second half of the old USAGE1.
8759 (USAGE3): Rename from USAGE2.
8760 (USAGE4): Rename from USAGE3.
8761
87622004-02-21 Juri Linkov <juri@jurta.org>
8763
8764 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
8765 Fix --multibyte. Move --help, --version to USAGE2. Add alias
8766 --file. Fix -f, -l. Sort options. Untabify.
8767 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
8768
87692004-02-19 Luc Teirlinck <teirllm@auburn.edu>
8770
8771 * category.c (Fdefine_category, Fcategory_docstring)
8772 (Fget_unused_category, Fset_category_table)
8773 (Fcategory_set_mnemonics): Doc fixes.
8774
87752004-02-20 Kim F. Storm <storm@cua.dk>
8776
8777 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
8778 The following changes are relative to the 2004-01-21 revision.
8779 (NREAD_INPUT_EVENTS): Define as max number of input events to read
8780 in one call to read_socket_hook. Value is 8.
8781 (read_avail_input): Separate and rework handling of read_socket_hook
8782 and non-read_socket_hook cases. Use smaller input_event buffer
8783 in read_socket_hook case, and repeat if full buffer is read.
8784 Use new local variable 'discard' to skip input after C-g.
8785 In non-read_socket_hook case, just use a single input_event, and
8786 call kbd_buffer_store_event on the fly for each character.
8787
87882004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
8789
8790 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
8791 Remove unused `gu' alternative.
8792
87932004-02-19 Andreas Schwab <schwab@suse.de>
8794
8795 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
8796 warning.
8797
87982004-02-18 Kim F. Storm <storm@cua.dk>
8799
8800 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
8801 Fix last change.
8802
88032004-02-17 Kim F. Storm <storm@cua.dk>
8804
8805 * xdisp.c (fast_find_position): Fix return value of new version;
8806 it was inverted compared to the 21.1 version.
8807 (get_window_cursor_type): Don't look at glyph if NULL.
8808 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
8809
8810 * keyboard.c: Rework previous change; it didn't consider that the
8811 buf array was allocated on the stack.
8812 (prev_read): Remove variable.
8813 (read_avail_input_buf): New static event buffer array.
8814 (in_read_avail_input): New static variable to handle re-entrancy.
8815 (read_avail_input): Change buf to pinter to read_avail_input_buf.
8816 Use in_read_avail_input to handle re-entrance; when re-entered,
8817 fully initialize and use tmp_buf array instead of read_avail_input_buf.
8818 Do not initialize read_avail_input_buf in full here; instead assume it
8819 is always cleared on entry. To ensure that, we clear (just) the
8820 entries that were used before we return.
8821 (init_keyboard): Initialize read_avail_input_buf here.
8822
88232004-02-16 Jesper Harder <harder@ifa.au.dk>
8824
8825 * cmds.c (Fend_of_line): Doc fix.
8826
88272004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
8828
8829 * keyboard.c (prev_read): New static variable.
8830 (read_avail_input): Use it to zero out only those slots in buf[]
8831 that were used last time we were called.
8832
88332004-02-16 Eli Zaretskii <eliz@gnu.org>
8834
8835 * Makefile.in (obj): Move fringe.o from here...
8836 (XOBJ, MAC_OBJ): ...to here.
8837
88382004-02-16 Stephen Eglen <stephen@gnu.org>
8839
8840 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
8841
88422004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
8843
8844 * data.c (Fbyteorder):
8845 * fringe.c (Fdefine_fringe_bitmap):
8846 * xdisp.c (handle_single_display_prop):
8847 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
8848
88492004-02-16 Jason Rumney <jasonr@gnu.org>
8850
8851 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
8852
88532004-02-15 Steven Tamm <steventamm@mac.com>
8854
8855 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
8856 controlling emulation of a three button mouse with option and
8857 command keys.
8858 (Qreverse, mac_get_enumlated_btn): Handle the emulation.
8859 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
8860
88612004-02-15 Kim F. Storm <storm@cua.dk>
8862
8863 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
8864
8865 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
8866 Perform byte-swapping.
8867
88682004-02-14 Kim F. Storm <storm@cua.dk>
8869
8870 * dispextern.h (struct draw_fringe_bitmap_params): Change member
8871 bits from char to short to facilitate wider bitmaps.
8872 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
8873 member.
8874
8875 * fringe.c (struct fringe_bitmap): Change member bits from char to
8876 short to facilitate 16 bits wide bitmaps. Modify all standard
8877 bitmaps accordingly.
8878 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
8879 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
8880 (draw_fringe_bitmap): Ditto.
8881 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
8882 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
8883 handle up to 16 bits wide bitmaps.
8884 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
8885 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
8886
8887 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
8888 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
8889 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
8890
8891 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
8892 so it is no longer necessary to expand them here.
8893
8894 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
8895
88962004-02-12 Kim F. Storm <storm@cua.dk>
8897
8898 * window.c (Fwindow_fringes): Doc fix.
8899
89002004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8901
8902 * xselect.c (x_get_foreign_selection): Add new optional parameter
8903 time_stamp.
8904 (Fx_get_selection_internal): Ditto, pass time_stamp to
8905 x_get_foreign_selection.
8906
8907 * data.c (Fbyteorder): New function.
8908
89092004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8910
8911 * atimer.c: Move include stdio.h to same place as in other files.
8912
8913 * region-cache.c: Ditto.
8914
8915 * sysdep.c: Ditto.
8916
8917 * xfaces.c: Ditto.
8918
89192004-02-09 Sam Steingold <sds@gnu.org>
8920
8921 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
8922
89232004-02-09 Kim F. Storm <storm@cua.dk>
8924
8925 * fringe.c: New file. Move original fringe related declarations
8926 and code from dispextern.h and xdisp.c here.
8927 Rework code to support user defined fringe bitmaps, redefining
8928 standard bitmaps, ability to overlay user defined bitmap with
8929 overlay arrow bitmap, and add faces to bitmaps.
8930 (Voverflow_newline_into_fringe): Declare here.
8931 (enum fringe_bitmap_align): New enum.
8932 (..._bits): All bitmaps are now defined without bitswapping; that
8933 is now done in init_fringe_once (if necessary).
8934 (standard_bitmaps): New array with specifications for the
8935 standard fringe bitmaps.
8936 (fringe_faces): New array.
8937 (valid_fringe_bitmap_id_p): New function.
8938 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
8939 (draw_fringe_bitmap): New function which draws fringe bitmap,
8940 possibly overlaying bitmap with cursor in right fringe or the
8941 overlay arrow in the left fringe.
8942 (update_window_fringes): Do not handle overlay arrow here.
8943 Compare and copy fringe bitmap faces.
8944 (init_fringe_bitmap): New function.
8945 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
8946 define and destroy user defined fringe bitmaps.
8947 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
8948 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
8949 (syms_of_fringe): New function. Defsubr new DEFUNs.
8950 DEFVAR_LISP Voverflow_newline_into_fringe.
8951 (init_fringe_once, init_fringe): New functions.
8952 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
8953
8954 * Makefile.in (obj): Add fringe.o.
8955 (fringe.o): New dependencies.
8956
8957 * dispextern.h (FRINGE_ID_BITS): New definition for number of
8958 bits allocated to hold a fringe number. Increase number of bits
8959 from 4 to 8 to allow user defined fringe bitmaps.
8960 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
8961 left_user_fringe_face_id, right_user_fringe_bitmap,
8962 right_user_fringe_face_id.
8963 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
8964 Move to new file fringe.c.
8965 (MAX_FRINGE_BITMAPS): Define here.
8966 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
8967 and overlay_p. Change member which to int.
8968 (struct redisplay_interface): New members define_fringe_bitmap
8969 and destroy_fringe_bitmap.
8970 (valid_fringe_bitmap_id_p): Add prototype.
8971 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
8972
8973 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
8974 arrows.
8975 (update_frame): Do flush_display if force_flush_display_p to
8976 ensure display (specifically fringes) are updated in a timely
8977 manner when resizing the frame by dragging the mouse.
8978 (update_window_line): Update row if overlay arrow changed.
8979 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
8980 or overlay arrow changed.
8981
8982 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
8983 syms_of_fringe, and init_fringe.
8984
8985 * frame.h (struct frame): New member force_flush_display_p.
8986
8987 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
8988 Add prototypes.
8989
8990 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
8991 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
8992 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
8993 Use cursor color for displaying cursor in fringe.
8994 (x_redisplay_interface): Add null handlers for
8995 define_fringe_bitmap and destroy_fringe_bitmap functions.
8996
8997 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
8998 xterm.c to handle overlayed fringe bitmaps and to use cursor color
8999 for displaying cursor in fringe.
9000 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
9001 specific functions to define and destroy fringe bitmaps in fringe_bmp.
9002 (w32_redisplay_interface): Add them to redisplay_interface.
9003 (w32_term_init): Call w32_init_fringe instead of explicitly
9004 defining fringe bitmaps in fringe_bmp array.
9005 (x_delete_display): Call w32_reset_fringes instead of explicitly
9006 destroying fringe bitmaps in fringe_bmp array.
9007
9008 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
9009 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
9010 (continued_bits, continuation_bits, ov_bits, first_line_bits)
9011 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
9012 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
9013 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
9014 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
9015 Move fringe handling vars and code to new file fringe.c.
9016 (handle_display_prop): Handle left-fringe and right-fringe
9017 display properties; store user fringe bitmaps in iterator.
9018 (move_it_in_display_line_to): Handle cursor in fringe at eob.
9019 (clear_garbaged_frames): Set force_flush_display_p if resized.
9020 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
9021 (display_line): Handle cursor in fringe at eob.
9022 (display_line): Set row user fringe bitmaps from iterator.
9023
9024 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
9025 Use cursor color for displaying cursor in fringe.
9026 (x_redisplay_interface): Add null handlers for
9027 define_fringe_bitmap and destroy_fringe_bitmap functions.
9028
90292004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9030
9031 * macfns.c (Fx_change_window_property): Make doc string and
9032 parameters same as for X version.
9033
9034 * w32fns.c (Fx_change_window_property): Ditto.
9035
90362004-02-07 Kim F. Storm <storm@cua.dk>
9037
9038 * xdisp.c (hscroll_window_tree): Position cursor near to right
9039 margin in hscrolled window when jumping to end of line (rather
9040 than centering cursor).
9041
9042 * process.c (wait_reading_process_input): Don't do adaptive read
9043 buffering if waiting for a specific process.
9044
90452004-02-05 Luc Teirlinck <teirllm@auburn.edu>
9046
9047 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
9048 (Fread_minibuffer, Feval_minibuffer)
9049 (Fread_string, Fread_no_blanks_input)
9050 (Fcompleting_read): Doc fixes.
9051 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
9052 completion-regexp-list. Define Qcase_fold_search and staticpro it.
9053 (read_minibuf): Fix initial comment.
9054 (Ftry_completion, Fall_completions, Ftest_completion): Bind
9055 case-fold-search to the value of completion-ignore-case when
9056 checking completion-regexp-list.
9057 (Fdisplay_completion_list): Make it handle arguments that are
9058 symbols. Doc fix.
9059
90602004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9061
9062 * xterm.h: Add declaration of free_frame_menubar.
9063
9064 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
9065 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
9066 (Fx_change_window_property): Add declaration of parameters type and
9067 format. Remove unused variable cons.
9068
9069 * xselect.c: Include stdio,h.
9070
90712004-02-05 Kenichi Handa <handa@m17n.org>
9072
9073 * fns.c (Fset_char_table_range): Fix previous change.
9074
9075 * buffer.c (Fset_buffer_multibyte): Fix docstring.
9076
90772004-02-04 Luc Teirlinck <teirllm@auburn.edu>
9078
9079 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
9080
90812004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
9082
9083 * keymap.c (Vmouse_events): Rename from Vmenu_events.
9084 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
9085
90862004-02-04 Kenichi Handa <handa@m17n.org>
9087
9088 * fns.c (Fset_char_table_range): Handle charsets ascii,
9089 eight-bit-control, and eight-bit-graphic correctly.
9090
90912004-02-03 Jason Rumney <jasonr@gnu.org>
9092
9093 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
9094
9095 * w32fns.c (x_to_w32_font): Likewise.
9096
90972004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9098
9099 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
9100 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
9101
9102 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
9103 ClientMessages.
9104
9105 * xselect.c: Include termhooks.h and X11/Xproto.h
9106 (x_check_property_data, x_fill_property_data)
9107 (x_property_data_to_lisp, mouse_position_for_drop)
9108 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
9109 (Fx_send_client_event): Move here from xfns.c.
9110 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
9111
9112 * xfns.c (x-send-client-message): Move to xselect.c
9113 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
9114 OUTER_P.
9115 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
9116 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
9117 if vector_ret_p is true.
9118 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
9119
91202004-02-02 Eli Zaretskii <eliz@gnu.org>
9121
9122 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
9123 basename of FILE relative to it, not FILE itself.
9124
91252004-02-02 Kenichi Handa <handa@m17n.org>
9126
9127 * coding.c (coding_restore_composition): Check invalid
9128 composition data more rigidly.
9129
91302004-01-30 Luc Teirlinck <teirllm@auburn.edu>
9131
9132 * fileio.c (Fread_file_name_internal): Correctly handle the case
9133 where insert-default-directory is nil.
9134 (Fread_file_name): Always return an empty string if the user exits
9135 with an empty minibuffer. Adapt the docstring accordingly.
9136 (syms_of_fileio): Adapt the docstring of insert-default-directory
9137 to the change in Fread_file_name.
9138
91392004-01-29 Eli Zaretskii <eliz@gnu.org>
9140
9141 * alloca.c [!alloca]: Fix the prototype for xfree.
9142
91432004-01-29 Kenichi Handa <handa@m17n.org>
9144
9145 * fns.c (string_char_to_byte): Optimize for ASCII only string.
9146 (string_byte_to_char): Likewise.
9147
91482004-01-28 Peter Runestig <peter@runestig.com>
9149
9150 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
9151
91522004-01-27 Steven Tamm <steventamm@mac.com>
9153
9154 * unexmacosx.c (unexec_copy): Do not copy more than was
9155 requested to prevent overwriting during unexec.
9156
91572004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9158
9159 * process.c (sigchld_handler): Add comment about not calling malloc.
9160
9161 * process.h: Add extern to synch_process_termsig.
9162
91632004-01-27 Steven Tamm <steventamm@mac.com>
9164
9165 * macterm.c (make_mac_frame, make_mac_terminal_frame):
9166 Move setting of scroll bars from make_mac_frame to
9167 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
9168
91692004-01-26 Richard M. Stallman <rms@gnu.org>
9170
9171 * search.c (Freplace_match): Handle nonexistent
9172 back-references properly.
9173
91742004-01-03 Richard M. Stallman <rms@gnu.org>
9175
9176 * window.c (decode_any_window): New function.
9177 (Fwindow_height, Fwindow_width, Fwindow_edges)
9178 (Fwindow_pixel_edges, Fwindow_inside_edges)
9179 (Fwindow_inside_pixel_edges): Use decode_any_window.
9180
91812004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9182
9183 * process.h: synch_process_termsig new variable.
9184
9185 * callproc.c: Define synch_process_termsig.
9186 (Fcall_process): Initiate synch_process_termsig to zero and
9187 check if non-zero and get signal name after subprocess has ended.
9188
9189 * process.c (sigchld_handler): Set synch_process_termsig
9190 if terminated by a signal. synch_process_death setting removed.
9191
9192 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
9193
91942004-01-26 Andreas Schwab <schwab@suse.de>
9195
9196 * print.c (print_preprocess): Declare size as EMACS_INT to not
9197 lose bits.
9198 (print_object): Likewise.
9199 * alloc.c (Fpurecopy): Likewise.
9200
92012004-01-25 Luc Teirlinck <teirllm@auburn.edu>
9202
9203 * window.c (Fwindow_minibuffer_p): Doc fix.
9204
92052004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
9206
9207 * editfns.c (Fformat): Make both passes accept the same set of flags.
9208
92092004-01-23 Kenichi Handa <handa@m17n.org>
9210
9211 * fns.c (Fmd5): If OBJECT is a buffer different from the current
9212 one, set buffer to OBJECT temporarily.
9213
92142004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
9215
9216 * keyboard.c (kbd_buffer_gcpro): Remove.
9217 (kbd_buffer_store_event, clear_event, Fdiscard_input)
9218 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
9219 Don't initialize and/or maintain the variable any more. It was made
9220 redundant by my commit of 2003-06-15.
9221
9222 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
9223
92242004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9225
9226 * lisp.h: Add undef DECL_ALIGN.
9227
92282004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
9229
9230 * process.c (wait_reading_process_input) [SYNC_INPUT]:
9231 Check interrupt_input_pending explicitly.
9232
9233 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
9234
9235 * keyboard.c (handle_async_input): New fun,
9236 extracted from input_available_signal.
9237 (input_available_signal, reinvoke_input_signal): Use it.
9238
92392004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
9240
9241 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
9242
9243 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
9244 manipulation macros for when tags are in the lower bits.
9245 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
9246 (DECL_ALIGN): New macro.
9247 (DEFUN): Use it.
9248
9249 * lisp.h [ENABLE_CHECKING]: Don't force union type.
9250
9251 * s/darwin.h (__attribute__): Remove outdated workaround.
9252
9253 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
9254
9255 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
9256 Don't check range of malloc address.
9257 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
9258
9259 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
9260
9261 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
9262
92632004-01-19 Kenichi Handa <handa@m17n.org>
9264
9265 * fontset.c (fontset_font_pattern): Fix previous change.
9266
92672004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
9268
9269 * xdisp.c (Voverflow_newline_into_fringe)
9270 (move_it_in_display_line_to, redisplay_internal)
9271 (update_window_fringes, redisplay_window, display_line, window):
9272 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
9273 that it compiles without a window-system.
9274 * dispnew.c (direct_output_for_insert, update_window): Likewise.
9275
92762004-01-16 Kim F. Storm <storm@cua.dk>
9277
9278 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
9279
9280 * buffer.c (init_buffer_once): Set buffer_defaults and
9281 buffer_local_flags for indicate_buffer_boundaries.
9282 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
9283 default- variable for it.
9284
9285 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
9286 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
9287 New members exact_window_width_line_p and cursor_in_fringe_p for
9288 overflowing newlines into right fringe.
9289 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
9290 and indicate_bottom_line_p for buffer boundaries and scrolling.
9291 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
9292 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
9293 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
9294 and HOLLOW_SQUARE_BITMAP.
9295 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
9296 Add prototypes.
9297
9298 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
9299 instead of related indicator fields.
9300 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
9301 (direct_output_for_insert): Handle exact width lines like
9302 contined lines. Call update_window_fringes.
9303 (update_window): Call update_window_fringes.
9304 (scrolling_window): Don't skip desired rows with changed bitmaps.
9305 Check if fringe bitmaps changes when assigning scrolled rows.
9306
9307 * xdisp.c (Voverflow_newline_into_fringe): New variable.
9308 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
9309 (move_it_in_display_line_to): Overflow newline into fringe for
9310 rows that are exactly as wide as the window.
9311 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
9312 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
9313 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
9314 (fringe_bitmaps): Add new bitmaps.
9315 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
9316 Select proper bitmap for cursor in fringe when appropriate.
9317 Handle alignment of bitmap to top or bottom of row.
9318 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
9319 done by update_window_fringes.
9320 (update_window_fringes, draw_window_fringes): New functions.
9321 (redisplay_internal): Call update_window_fringes in case only
9322 cursor row is updated.
9323 (redisplay_window): Call update_window_fringes.
9324 Explicitly call draw_window_fringes if redisplay was done using
9325 the current matrix or the overlay arrow is in the window.
9326 (try_window_reusing_current_matrix): Mark scrolled rows for
9327 fringe update (to update buffer-boundaries / scrolling icons).
9328 (find_last_unchanged_at_beg_row): Handle exact width lines line
9329 continued lines.
9330 (display_line): Overflow newline into fringe for rows that are
9331 exactly as wide as the window. Don't append space for newline
9332 in this case.
9333 (notice_overwritten_cursor): Explicitly clear cursor bitmap
9334 in fringe as if it had been overwritten.
9335 (erase_phys_cursor): Erase cursor bitmap in fringe.
9336 (syms_of_xdisp): Mark show-trailing-whitespace and
9337 void-text-area-pointer as user options.
9338 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
9339
9340 * xterm.c (x_update_window_end): Call draw_window_fringes.
9341 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
9342 in row instead of actually drawing fringe bitmaps.
9343 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
9344 (x_draw_window_cursor): Draw cursor in fringe.
9345
9346 * w32term.c (x_update_window_end): Call draw_window_fringes.
9347 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
9348 in row instead of actually drawing fringe bitmaps.
9349 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
9350 (w32_draw_window_cursor): Draw cursor in fringe.
9351
9352 * macterm.c (x_update_window_end): Call draw_window_fringes.
9353 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
9354 in row instead of actually drawing fringe bitmaps.
9355 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
9356 (mac_draw_window_cursor): Draw cursor in fringe.
9357
93582004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9359
9360 * xterm.c (handle_one_xevent): Don't handle characters that are part
9361 of an old style (XLookupString) compose sequence.
9362
93632004-01-15 Kenichi Handa <handa@m17n.org>
9364
9365 * search.c (Freplace_match): Use make_multibyte_string or
9366 make_unibyte_string according to the buffer multibyteness.
9367
93682004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
9369
9370 * alloc.c (struct interval_block, struct string_block)
9371 (struct symbol_block, struct marker_block, live_string_p)
9372 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
9373 Better preserve alignment for objects in blocks.
9374 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
9375
9376 * lread.c (defvar_per_buffer): Remove dead declaration.
9377
9378 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
9379 space size.
9380
93812004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9382
9383 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
9384 if a key press should pop down. Only pop down if a key is pressed
9385 outside the menu/dialog.
9386 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
9387 popup_get_selection.
9388 (create_and_show_dialog): Pass 1 for down_on_keypress to
9389 popup_get_selection.
9390
93912004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9392
9393 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
9394 BLOCK/UNBLOCK_INPUT.
9395
93962004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9397
9398 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
9399 specified.
9400
94012004-01-08 Kenichi Handa <handa@m17n.org>
9402
9403 * editfns.c (Fformat): Fix '&' to '&&'.
9404
94052004-01-08 Andreas Schwab <schwab@suse.de>
9406
9407 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
9408 size if PSEUDOVECTOR_FLAG is set.
9409
94102004-01-07 Kenichi Handa <handa@m17n.org>
9411
9412 * charset.c (Fdeclare_equiv_charset): Fix docstring.
9413
9414 * fontset.c (fontset_ref_via_base): Fix previous change.
9415
94162004-01-07 Kim F. Storm <storm@cua.dk>
9417
9418 * process.c (read_process_output): Only activate adaptive
9419 buffering if we read less than 256 bytes at a time.
9420
94212004-01-06 Kim F. Storm <storm@cua.dk>
9422
9423 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
9424 object and image object. Return glyph width and height.
9425 (mode_line_string, marginal_area_string): Ditto.
9426
9427 * dispextern.h (buffer_posn_from_coords, mode_line_string)
9428 (marginal_area_string): Fix prototypes.
9429
9430 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
9431 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
9432 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
9433
9434 * keyboard.c (make_lispy_position): Use modified mode_line_string,
9435 buffer_posn_from_coords, and marginal_area_string functions to
9436 include both string object and image object in the lispy position.
9437 Also add actual glyph width and height to position.
9438 (read_key_sequence): Use real buffer position from mouse
9439 event to find keymap property even when click is in marginal area.
9440
9441 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
9442 mode_line_string and marginal_area_string functions to handle
9443 both string object and image object properties.
9444
94452004-01-06 Andreas Schwab <schwab@suse.de>
9446
9447 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
9448 character.
9449
94502004-01-02 Andreas Schwab <schwab@suse.de>
9451
9452 * macterm.c (emacs_options, x_initialized, same_x_server):
9453 Remove unused (and duplicated) definitions.
9454
94552004-01-02 Kim F. Storm <storm@cua.dk>
9456
9457 * process.h (struct Lisp_Process): New members for adaptive read
9458 buffering: adaptive_read_buffering, read_output_delay, and
9459 read_output_skip.
9460
9461 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
9462 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
9463 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
9464 (process_output_delay_count, process_output_skip): New vars.
9465 (Vprocess_adaptive_read_buffering): New variable.
9466 (make_process): Initialize adaptive read buffering members.
9467 (Fstart_process): Set adaptive_read_buffering member.
9468 (deactivate_process): Cleanup adaptive read buffering.
9469 (wait_reading_process_input): Temporarily omit delayed
9470 subprocesses from the set of file descriptors to read from;
9471 adjust the select timeout if we skipped any subprocesses.
9472 (read_process_output): Increase adaptive read buffering delay if
9473 we read less than a full buffer; reduce delay when we read a
9474 full buffer.
9475 (send_process): Simplify using local Lisp_Process var.
9476 Reset adaptive read buffering delay after write.
9477 (init_process): Initialize process_output_delay_count and
9478 process_output_skip.
9479 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
9480
94812004-01-01 Jason Rumney <jasonr@gnu.org>
9482
9483 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
9484
94852003-12-30 Luc Teirlinck <teirllm@auburn.edu>
9486
9487 * print.c (Ferror_message_string): Add hyperlink in the docstring
9488 to the definition of `signal' in the Elisp manual.
9489 * eval.c (Fsignal): Ditto.
9490
94912003-12-29 James Clark <jjc@jclark.com>
9492
9493 * fns.c (internal_equal): Return t for two NaN arguments.
9494
94952003-12-29 Richard M. Stallman <rms@gnu.org>
9496
9497 * data.c (store_symval_forwarding): Handle setting
9498 default-fill-column, etc., by changing the value in
9499 buffers that use the default.
9500
9501 * minibuf.c (Fset_minibuffer_window): Doc fix.
9502
9503 * fileio.c (choose_write_coding_system): Ignore auto_saving
9504 if using the visited file for auto saves.
9505 (Fwrite_region): Don't update SAVE_MODIFF
9506 if auto-saving in visited file.
9507
95082003-12-29 Kenichi Handa <handa@m17n.org>
9509
9510 * dispextern.h (face_font_available_p): Extern it.
9511
9512 * fontset.c (Voverriding_fontspec_alist): New variable.
9513 (lookup_overriding_fontspec): New function.
9514 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
9515 (fontset_font_pattern): Likewise.
9516 (regulalize_fontname): New function.
9517 (Fset_fontset_font): Call regulalize_fontname.
9518 (Fset_overriding_fontspec_internal): New function.
9519 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
9520 Defsubr Sset_overriding_fontspec_internal.
9521
9522 * xfaces.c (face_font_available_p): New function.
9523
95242003-12-28 Richard M. Stallman <rms@gnu.org>
9525
9526 * buffer.c (Fother_buffer): Don't crash if BUF is nil
9527 or if its name is nil.
9528
9529 * buffer.c (Fkill_buffer): Don't delete auto-save file
9530 if it's the same as the visited file.
9531
95322003-12-28 Luc Teirlinck <teirllm@auburn.edu>
9533
9534 * coding.c (Fcheck_coding_system): Doc fix.
9535
95362003-12-28 Kim F. Storm <storm@cua.dk>
9537
9538 * Makefile.in (eval.o): Depend on dispextern.h.
9539
9540 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
9541 image glyph using image's ascent.
9542 (mode_line_string): Return image glyph as object clicked on.
9543 Adjust y0 for image glyph using image's ascent.
9544
9545 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
9546 (struct glyph): New members, ascent and descent. Used to save
9547 this glyph's ascent and descent, instead of having.
9548 (struct glyph): Declare member face_id using FACE_ID_BITS.
9549 (find_hot_spot): Add prototype.
9550
9551 * keyboard.c (Qimage): Remove extern (now in lisp.h).
9552 (QCmap): Declare extern.
9553 (make_lispy_position): When position is inside image hot-spot,
9554 use hot-spot element's id as posn element.
9555
9556 * lisp.h (IMAGEP): New macro to test for image object type.
9557 (Qimage): Declare extern.
9558
9559 * macfns.c (Qimage): Remove extern (now in lisp.h).
9560 (valid_image_p, parse_image_spec): Use IMAGEP macro.
9561
9562 * macterm.c (Qface, Qmouse_face): Remove unused externs.
9563
9564 * w32fns.c (Qimage): Remove extern (now in lisp.h).
9565 (valid_image_p, parse_image_spec): Use IMAGEP macro.
9566
9567 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
9568
9569 * w32term.c (Qface, Qmouse_face): Remove unused externs.
9570
9571 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
9572 pointer types.
9573 (Qrelative_width, Qalign_to): Remove unused variables.
9574 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
9575 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
9576 image maps.
9577 (x_y_to_hpos_vpos): Return glyph relative coordinates through
9578 new dx and dy args.
9579 Remove buffer_only_p arg (always 0). Simplify code accordingly.
9580 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
9581 than row's ascent and height, to get sensible height on tall rows.
9582 (build_desired_tool_bar_string): Remove Qimage extern.
9583 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
9584 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
9585 image glyph is alone on the last line.
9586 (append_glyph, append_composite_glyph, produce_image_glyph)
9587 (append_stretch_glyph): Set glyph's ascent and descent.
9588 (on_hot_spot_p): New function to check if position is inside an
9589 rectangular, circular, or polygon-shaped image hot-spot,
9590 (find_hot_spot): New function to search for image hot-spot.
9591 (Flookup_image_map): New defun to search for image hot-spot.
9592 (define_frame_cursor1): New aux function to determine frame pointer.
9593 (note_mode_line_or_margin_highlight, note_mouse_highlight):
9594 Handle `pointer' text property and :pointer image property to
9595 control frame pointer shape. Detect image hot-spots for pointer
9596 and help_echo properties. Use define_frame_cursor1.
9597 (note_mouse_highlight): Use Vvoid_text_area_pointer.
9598 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
9599 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
9600
9601 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
9602
9603 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
9604 (Qimage): Remove extern (now in lisp.h).
9605 (valid_image_p, parse_image_spec): Use IMAGEP macro.
9606
9607 * xmenu.c (show_help_event): Remove unused code.
9608
9609 * xterm.c (Qface, Qmouse_face): Remove unused externs.
9610 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
9611 row's ascent and descent, to get a sensible height on tall rows.
9612
96132003-12-25 Luc Teirlinck <teirllm@auburn.edu>
9614
9615 * minibuf.c (Fcompleting_read): Undo previous change.
9616
96172003-12-25 Lars Hansen <larsh@math.ku.dk>
9618
9619 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
9620 Arguments GCPRO'ed in call to file name handler.
9621
96222003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
9623
9624 * termcap.c (tgetst1): Scan for "%pN"; if all
9625 N are continuous in [1,9], remove all "%pN".
9626
96272003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9628
9629 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
9630
9631 * xfaces.c (lface_fully_specified_p): Take into account that
9632 MAC OS always have unspecified stipple.
9633
96342003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
9635
9636 * tparam.c (tparam1): Add handling for `%pN', which
9637 means use param N for the next substitution.
9638
96392003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
9640
9641 * xfaces.c (Fcolor_gray_p): Fix omission bug:
9642 In case `frame' is nil, consult the selected frame.
9643 (Fcolor_supported_p): Likewise.
9644
96452003-12-23 Luc Teirlinck <teirllm@auburn.edu>
9646
9647 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
9648 Doc fixes.
9649
9650 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
9651 and an integer. Adapt the introductory comment accordingly.
9652 (Fread_from_minibuffer): Delete code moved into read_minibuf.
9653 Doc fix.
9654 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
9655 read_minibuf.
9656 (Fcompleting_read): Delete code moved into read_minibuf.
9657 (Ftest_completion): Make it handle obarrays and hash tables correctly.
9658
96592003-12-03 Kenichi Handa <handa@m17n.org>
9660
9661 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
9662 encoding sequence.
9663
96642003-12-01 Kenichi Handa <handa@m17n.org>
9665
9666 * composite.c (syms_of_composite): Don't make the compostion hash
9667 table week.
9668
96692003-11-30 Luc Teirlinck <teirllm@auburn.edu>
9670
9671 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
9672 * textprop.c (Fget_char_property_and_overlay): New function.
9673 (syms_of_textprop): Defsubr it.
9674
96752003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9676
9677 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
9678 to compile on terminal configuration.
9679
9680 * fileio.c (Fread_file_name): Check use_file_dialog also before
9681 calling Fx_file_dialog.
9682
9683 * fns.c (use_file_dialog): New variable.
9684 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
9685
96862003-11-29 Kim F. Storm <storm@cua.dk>
9687
9688 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
9689 (syms_of_msdos): Don't intern and staticpro them.
9690
96912003-11-27 Kim F. Storm <storm@cua.dk>
9692
9693 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
9694 coordinates relative to glyph at posn. If glyph is an image,
9695 return that as object at posn. Callers changed.
9696 (mode_line_string, marginal_area_string): Calculate and return
9697 pixel coordinates relative to glyph. Callers changed.
9698
9699 * dispextern.h (buffer_posn_from_coords, mode_line_string)
9700 (marginal_area_string): Fix prototypes.
9701 (window_box_left_offset, window_box_right_offset): Add prototypes.
9702
9703 * frame.h (get_specified_cursor_type, get_window_cursor_type):
9704 Remove prototypes.
9705
9706 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
9707
9708 * keyboard.c (make_lispy_position): Add x and y coordinates
9709 relative to the current glyph as 7th element of position.
9710 If glyph is an image, return it in the object element.
9711 (read_key_sequence): Skip checks for keymap property in cases
9712 where POSN_STRING is not a string (e.g. an image).
9713
9714 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
9715 (Vshow_text_cursor_in_void): New variable.
9716 (glyph_to_pixel_coords): Don't use negative hpos.
9717 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
9718 (append_stretch_glyph): Change ascent arg to be actual value
9719 in pixels rather than ratio to height. Callers changed.
9720 (calc_pixel_width_or_height): New aux function, implementing
9721 pixel based artihmetic for glyph widths and heights.
9722 (produce_stretch_glyph): Use calc_pixel_width_or_height for
9723 :width, :height, :align-to, and :ascent, thus allowing these to
9724 be specified in pixels as well as multiples of characters.
9725 Don't produce stretch glyphs with zero width or height.
9726 (get_specified_cursor_type): Declare static.
9727 (get_window_cursor_type): Declare static. Add glyph arg to be
9728 able to know when cursor is on an image; always substitute
9729 hollow-box cursor for filled-box cursor on images, to avoid
9730 negative images and flicker when blinking the cursor.
9731 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
9732 (note_mode_line_or_margin_highlight): Use non-text cursor rather
9733 than vertical scroll-bar cursor in display margins.
9734 (note_mouse_highlight): Use non-text cursor rather than text
9735 cursor in fringes and over images in the text area.
9736 Use non-text cursor when mouse pointer is outside editable text,
9737 i.e. in the void after end-of-line or end-of-buffer; this was
9738 already done for W32, but is now standard for all systems --
9739 user can toggle show-text-cursor-in-void to get old behaviour.
9740 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
9741 Vdisplay_pixels_per_inch.
9742
97432003-11-25 Andreas Schwab <schwab@suse.de>
9744
9745 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
9746 EMACS_INT to not lose bits.
9747 (Ffillarray): Don't set bits beyond the size of a bool vector.
9748
97492003-11-25 Kim F. Storm <storm@cua.dk>
9750
9751 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
9752 define this defun on systems that cannot use stderr as lvalue.
9753
97542003-11-24 Gerd Moellmann <gerd@gnu.org>
9755
9756 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
9757 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
9758 ld's default is incompatible with unexec.
9759
97602003-11-23 Kim F. Storm <storm@cua.dk>
9761
9762 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
9763 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
9764 (Fforce_window_update): New defun.
9765 (syms_of_window): Defsubr it.
9766 (Fset_window_margins, Fset_window_fringes): Doc fix.
9767
9768 * print.c (Fredirect_debugging_output): New defun.
9769 (syms_of_print): Defsubr it.
9770
97712003-11-22 Luc Teirlinck <teirllm@auburn.edu>
9772
9773 * fns.c (Fset_char_table_parent): Doc fix.
9774
97752003-11-22 Kim F. Storm <storm@cua.dk>
9776
9777 * dispnew.c (buffer_posn_from_coords): Return actual row/column
9778 for glyph clicked on, rather than (unused) pixel positions.
9779 (mode_line_string, marginal_area_string): Change X and Y args to
9780 pointers for returning actual row/column for glyph clicked on.
9781 Simplify and optimize loops.
9782
9783 * dispextern.h (mode_line_string, marginal_area_string):
9784 Update prototypes.
9785
9786 * keyboard.c (make_lispy_position): New function for generating
9787 mouse click positions from frame and pixel coordinates.
9788 Enhanced to return buffer position and actual row/column for
9789 events outside the text area using updated mode_line_string and
9790 marginal_area_string functions.
9791 Return left-fringe and right-fringe clicks as such, rather than
9792 clicks in text area.
9793 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
9794 pixel_to_glyph_coords, as we never use the results.
9795 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
9796 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
9797 Eliminate unused code in WHEEL_EVENT handling.
9798 (make_lispy_movement): Use make_lispy_position.
9799
9800 * window.c (coordinates_in_window): Remove redundant tests.
9801 Fix returned X pixel value for left-margin.
9802
9803 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
9804 mode_line_string and marginal_area_string parameters.
9805
98062003-11-22 Lars Hansen <larsh@math.ku.dk>
9807
9808 * w32.c (struct the_group, getgrgid): Add.
9809 * mac.c (struct my_group, getgrgid): Add.
9810
98112003-11-21 Luc Teirlinck <teirllm@auburn.edu>
9812
9813 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
9814
98152003-11-21 Lars Hansen <larsh@math.ku.dk>
9816
9817 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
9818 include in call to file name handler. Optionally translate numeric
9819 UID and GID to strings. Update docstring.
9820 (directory_files_internal): Add parameter ID-FORMAT.
9821 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
9822 include in call to file name handler and call to
9823 directory_files_internal. Update Docstring.
9824 (Fdirectory_files): Add dummy parameter in call to
9825 directory_files_internal.
9826 * lisp.h (Qinteger): Add.
9827 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
9828 (Ffile_attributes): Add parameter.
9829 * data.c (Qinteger): Export.
9830
98312003-11-21 Luc Teirlinck <teirllm@auburn.edu>
9832
9833 * fns.c (Freverse, Fnreverse): Doc fixes.
9834
98352003-11-19 Kim F. Storm <storm@cua.dk>
9836
9837 * xdisp.c (init_iterator): Initialize it->start to position
9838 before reseating (in case start position is invisible).
9839 (init_to_row_start): Set it->start to row-start.
9840 (redisplay_window): Accept optional_new_start if start position
9841 is invisible (in which case IT_CHARPOS overshoots PT).
9842 (display_line): Setup row->start from it->start (rather than
9843 it->current which is wrong if first char on line is invisible).
9844 When done, reseat it->start to it->current (= start of next row).
9845 (expose_area): Fix exposure of text area when first char (e.g. TAB)
9846 is only partially visible.
9847
9848 * dispextern.h (struct it): New member start.
9849
98502003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
9851
9852 * alloc.c (make_float, Fcons): Clear the markbit at init time.
9853 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
9854 of block_index outside of the macro call.
9855 (Fgarbage_collect): Remove null code.
9856
9857 * m/amdx86-64.h: Don't redefine XPNTR.
9858
9859 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
9860 of VALMASK.
9861
9862 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
9863 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
9864 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
9865
9866 * lisp.h (VALMASK): Only define for non-union type.
9867 (MARKBIT): Remove.
9868 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
9869 (XTYPE): Define unconditionally.
9870 (XSETTYPE): Remove one more remnant.
9871 (EQ): Define differently for the union and non-union cases.
9872 (INTMASK): New bit mask.
9873 (struct Lisp_Marker): Move down to prepare for upcoming patch.
9874 (GC_EQ): Delegate to EQ.
9875
9876 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
9877
98782003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9879
9880 * xterm.c (x_window_to_scroll_bar): Move check of display to
9881 where window_id is compared.
9882
98832003-11-17 Kim F. Storm <storm@cua.dk>
9884
9885 * dispextern.h (struct it): New member first_vpos.
9886
9887 * xdisp.c (start_display): Set it->first_vpos.
9888 (try_window_id): Use first_vpos to start display in first _text_
9889 line if no reusable lines at start of window with header line.
9890
98912003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9892
9893 * w32fns.c (XPutPixel):
9894 * w32bdf.c (w32_init_bdf_font):
9895 * sunfns.c (sel_read):
9896 * process.c (Fmake_network_process):
9897 * frame.c (store_frame_param):
9898 * fontset.c (Fset_fontset_font):
9899 * emacs.c (shut_down_emacs):
9900 * ccl.c (ccl_driver): Remove period at end of error message.
9901
9902 * config.in: Regenerate.
9903
9904 * xfns.c (x_window_to_frame, x_any_window_to_frame)
9905 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
9906 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
9907 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
9908 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
9909
9910 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
9911
9912 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
9913 (XTmouse_position, handle_one_xevent): Pass Display* to
9914 x_window_to_scroll_bar.
9915 (x_window_to_scroll_bar): Take a Display* argument.
9916 Check that display for frame is equal to Display* argument.
9917 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
9918 x_display_info_for_display instead. Use Display in xev instead
9919 of GDK_DISPLAY.
9920 (x_dispatch_event): Call x_display_info_for_display.
9921 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
9922 (x_connection_closed): Call xg_display_close for GTK.
9923 (x_term_init): Call xg_display_open for additional displays.
9924 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
9925 for GTK.
9926
9927 * xmenu.c (single_menu_item, mouse_position_for_popup)
9928 (x_activate_menubar): Formatting adjustments.
9929
9930 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
9931 adjustments.
9932
9933 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
9934 (xg_display_close, xg_create_default_cursor)
9935 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
9936 handling.
9937 (xg_left_ptr_cursor): Remove.
9938 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
9939 cursor here.
9940 (xg_win_to_widget): Take Display* argument, call
9941 gdk_xid_table_lookup_for_display.
9942 (xg_create_frame_widgets, xg_get_file_name, create_menus)
9943 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
9944 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
9945 in FRAME_X_DISPLAY_INFO.
9946 (xg_get_scroll_id_for_window): Take Display* argument.
9947 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
9948 (xg_initialize): Remove xg_left_ptr_cursor.
9949
9950 * gtkutil.h (xg_get_scroll_id_for_window, xg_win_to_widget): Add
9951 Display* argument.
9952 (xg_display_open, xg_display_close, xg_create_default_cursor): Declare.
9953
99542003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9955
9956 * xterm.c (x_detect_focus_change): Do not change focus frame for
9957 Enter/LeaveNotify if the current focus frame has explicit focus.
9958
99592003-11-14 Kim F. Storm <storm@cua.dk>
9960
9961 * dispnew.c (update_text_area): Fix redisplay error when hscroll
9962 is active and first glyph is only partially visible.
9963
99642003-11-13 Kenichi Handa <handa@m17n.org>
9965
9966 * xdisp.c (select_frame_for_redisplay): New function.
9967 (redisplay_internal): Record also selected_frame for
9968 unwind_redisplay. Call select_frame_for_redisplay before
9969 redrawing each frame.
9970 (unwind_redisplay): Argument changed to a cons.
9971
99722003-11-12 Luc Teirlinck <teirllm@auburn.edu>
9973
9974 * fns.c (Fstring_to_multibyte): Doc fix.
9975
99762003-11-11 Kenichi Handa <handa@m17n.org>
9977
9978 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
9979
99802003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9981
9982 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
9983 program specified positions.
9984
99852003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9986
9987 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
9988
99892003-11-08 Kenichi Handa <handa@m17n.org>
9990
9991 * Makefile.in (lisp): Add kannada.el.
9992 (shortlisp): Likewise.
9993
99942003-11-07 Kenichi Handa <handa@m17n.org>
9995
9996 * coding.c (coding_allocate_composition_data):
9997 Reset coding->composing to COMPOSITION_NO.
9998 (coding_restore_composition): Detect invalid composition data.
9999 Give Fstring and Fvector a Lispy integer, not C int.
10000
100012003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
10002
10003 * floatfns.c (Flogb): Don't use VALMASK.
10004
10005 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
10006 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
10007
10008 * lisp.h (XINT): Move the cast to clarify what is going on.
10009 (GCTYPEMASK, XSETTYPE): Remove.
10010 (XGCTYPE): Make it an alias of XTYPE.
10011
100122003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10013
10014 * xterm.c (x_term_init): Fix formatting.
10015
100162003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10017
10018 * gtkutil.h (xg_have_tear_offs): Declare.
10019 (xg_keep_popup, xg_did_tearoff): Remove.
10020
10021 * gtkutil.c: Remove variable xg_did_tearoff.
10022 (xg_have_tear_offs): New function.
10023 (tearoff_remove): Just decrease xg_detached_menus.
10024 (tearoff_activate): Increase xg_detached_menus and call
10025 tearoff_remove when tearoff is removed.
10026 (xg_keep_popup): Remove function.
10027 (create_menus): Give add_tearoff_p as argument to recursive
10028 call to create_menus.
10029 (xg_create_widget): Use variables instead of multiple
10030 strcmp. Tell create_menus to create tear off only for
10031 menu bar menus.
10032 (xg_update_menubar): Change title for a detached menu also.
10033 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
10034 of deep_p.
10035 (xg_initialize): Initialize xg_detached_menus, remove
10036 initialization of xg_did_tearoff.
10037
10038 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
10039 xg_have_tear_offs returns non-zero.
10040 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
10041 call to xg_keep_popup.
10042
100432003-11-01 Andrew Choi <akochoi@shaw.ca>
10044
10045 * macterm.c (XTread_socket): Handle menubar selection and grow
10046 window only for mouseDown events.
10047
100482003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10049
10050 * xterm.c (x_term_init): For GTK part, increase x_initialized
10051 to check for more than one display. Use error instead of return 0.
10052
100532003-10-31 Andrew Choi <akochoi@shaw.ca>
10054
10055 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
10056 (copy_dysymtab): Call it.
10057
100582003-10-31 Luc Teirlinck <teirllm@auburn.edu>
10059
10060 * eval.c (Fdefvaralias): Doc fix.
10061
100622003-10-26 Luc Teirlinck <teirllm@auburn.edu>
10063
10064 * data.c (Fsetplist): Doc fix.
10065
100662003-10-14 Lute Kamstra <lute@gnu.org>
10067
10068 * window.c (Fset_window_fringes): Clarify docstring.
10069
100702003-10-14 Kim F. Storm <storm@cua.dk>
10071
10072 * window.c (Fset_window_margins): Simplify arg checking.
10073
100742003-10-13 Richard M. Stallman <rms@gnu.org>
10075
10076 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
10077 (print_partial_compiled_pattern): Replace assert with a printout.
10078 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
10079
10080 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
10081
10082 * window.c (Fset_window_margins): Allow only integers as args.
10083 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
10084 Doc fixes.
10085
100862003-10-13 Lute Kamstra <lute@gnu.org>
10087
10088 * window.c (Fset_window_fringes): Elaborate docstring.
10089
100902003-10-12 Andrew Choi <akochoi@shaw.ca>
10091
10092 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
10093
10094 * s/darwin.h (GC_MARK_STACK): Define.
10095
100962003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10097
10098 * window.c (shrink_windows): New function.
10099 (size_window): Call shrink_windows to calculate window sizes when
10100 shrinking frame with more than one window.
10101
101022003-10-12 Kim F. Storm <storm@cua.dk>
10103
10104 * xdisp.c (compute_fringe_widths): Doc fix.
10105
101062003-10-08 Kenichi Handa <handa@m17n.org>
10107
10108 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
10109
101102003-10-07 Kenichi Handa <handa@m17n.org>
10111
10112 * coding.c (Qcoding_system_define_form): New variable.
10113 (syms_of_coding): Intern and staticpro it.
10114 (Fcheck_coding_system): Try to autoload the definition of
10115 CODING-SYSTEM.
10116
101172003-10-05 Luc Teirlinck <teirllm@auburn.edu>
10118
10119 * fns.c (Frequire): Doc fix.
10120
101212003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10122
10123 * xfns.c (Fx_send_client_event): New function as a base for
10124 manipulating extended window manager hints.
10125 (Fx_send_client_event): Remove unused variable s.
10126
10127 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
10128 that function is removed.
10129
10130 * xterm.c (x_set_offset): Use move_offset_left/top instead of
10131 x/y_pixels_outer_diff.
10132 (x_check_expected_move): Calculate move_offset_left/top.
10133
10134 * xterm.h (struct x_output): New members: move_offset_top/left.
10135
10136 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
10137 call x_set_offset directly.
10138
10139 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
10140
10141 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
10142
10143 * xterm.c (x_delete_display): Free font names and font_encoder
10144 in dpyinfo->font_table.
10145
10146 * xfns.c (Fx_close_connection): Only call XFreeFont here.
10147 Move xfree of font names to x_delete_display.
10148
10149 * xterm.h (struct x_display_info): New member, wm_type.
10150 (struct x_output): New members, expected_top/left and
10151 check_expected_move.
10152
10153 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
10154 is received.
10155 (handle_one_xevent): Rename x_check_expected_move from
10156 x_check_fullscreen_move.
10157 (x_set_offset): Only add WM decoration sizes to modified_top/left
10158 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
10159 (x_check_expected_move): Rename from x_check_fullscreen_move.
10160 Removed fullscreen specific code. Use check_expected_move,
10161 expected_left/top instead. Also, set wm_type.
10162 (x_term_init): Initialize wm_type to unknown.
10163
10164 * frame.c (x_fullscreen_move): Remove addition of WM decoration
10165 sizes to move_x/y.
10166
101672003-10-03 Kenichi Handa <handa@m17n.org>
10168
10169 * macterm.c (x_load_font): Clear all members of FONTP before start
10170 filling them.
10171
101722003-10-02 Kenichi Handa <handa@m17n.org>
10173
10174 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
10175 before calling find_ccl_program_func. Call find_ccl_program_func
10176 only when fontp->font_encoder is not NULL.
10177
10178 * xterm.c (x_load_font): Clear all members of FONTP before start
10179 filling them.
10180
101812003-10-03 John Paul Wallington <jpw@gnu.org>
10182
10183 * keymap.c (map_keymap): Don't abort when binding is a vector.
10184
101852003-10-02 Jason Rumney <jasonr@gnu.org>
10186
10187 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
10188 Sync dependencies with Makefile.in.
10189 (alloca.o): Remove.
10190
10191 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
10192 filling them.
10193
10194 * w32bdf.c (w32_load_bdf_font): Likewise.
10195
101962003-09-30 Richard M. Stallman <rms@gnu.org>
10197
10198 * term.c (set_tty_color_mode): Calculate current_mode_spec
10199 regardless of value of VAL.
10200
10201 * intervals.c (graft_intervals_into_buffer):
10202 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
10203 Handle over_used when splitting UNDER.
10204
102052003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10206
10207 * regex.c (regex_compile): Free the stack when returning from function.
10208
102092003-09-28 Kenichi Handa <handa@m17n.org>
10210
10211 * fontset.c (Finternal_char_font): Change return value to
10212 cons (FONT-NAME . GLYPH-CODE).
10213
102142003-09-28 Eli Zaretskii <eliz@gnu.org>
10215
10216 * term.c (tty_setup_colors): Treat any negative argument as -1.
10217
102182003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
10219
10220 * process.c (send_process): Delete unused temp_buf.
10221
102222003-09-26 Dave Love <fx@gnu.org>
10223
10224 * xterm.c (x_bitmap_mask): Declare.
10225
102262003-09-25 Dave Love <fx@gnu.org>
10227
10228 * Makefile.in (fns.o): Depend on md5.h.
10229
102302003-09-25 Kim F. Storm <storm@cua.dk>
10231
10232 * window.c (set_window_buffer): Fix redisplay problems when
10233 switching between buffers with different display margin widths.
10234
102352003-09-23 Kim F. Storm <storm@cua.dk>
10236
10237 * process.c (set_socket_option): Fix :bindtodevice option.
10238 (Fset_network_process_option): Update process contact list when
10239 setting option succeeds.
10240 (Fmake_network_process): Doc fix.
10241
102422003-09-23 Dave Love <fx@gnu.org>
10243
10244 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
10245
102462003-09-22 Eli Zaretskii <eliz@gnu.org>
10247
10248 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
10249 color mode is an integer number (it could be -1).
10250
102512003-09-22 Richard M. Stallman <rms@gnu.org>
10252
10253 * intervals.c (graft_intervals_into_buffer): Correct the main loop
10254 in the case where OVER is longer than UNDER.
10255
102562003-09-22 Masatake YAMATO <jet@gyve.org>
10257
10258 * window.c (Fset_window_scroll_bars): Validate the value of
10259 `vertical_type'.
10260
102612003-09-21 Kim F. Storm <storm@cua.dk>
10262
10263 * frame.c (Vdefault_frame_scroll_bars): New variable.
10264 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
10265 (syms_of_frame): DEFVAR_LISP it, and initialize according to
10266 window-system default scroll bar position.
10267
10268 * window.c (Fwindow_scroll_bars): Doc fix.
10269
102702003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10271
10272 * xterm.c (x_set_offset): Take window manager decorations into account.
10273
102742003-09-19 Richard M. Stallman <rms@gnu.org>
10275
10276 * atimer.h: Don't include lisp.h.
10277 (P_): Define it here (as well as elsewhere).
10278
10279 * print.c (Fprin1_to_string): Move the PRINTPREPARE
10280 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
10281
10282 * data.c (Fvariable_binding_locus): New function.
10283 (syms_of_data): defsubr it.
10284 (Flocal_variable_p): Delete duplicate call to indirect_variable.
10285
102862003-09-18 Dave Love <fx@gnu.org>
10287
10288 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
10289
10290 * process.c (Fnetwork_interface_info): Fix type error.
10291 (Fnetwork_interface_list): Doc fix.
10292 (read_process_output, read_process_output): Delete unused var.
10293
102942003-09-17 Kim F. Storm <storm@cua.dk>
10295
10296 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
10297 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
10298 (Fnetwork_interface_info): Check that ifreq struct has required
10299 fields before accessing them; this requires that those fields are
10300 defined as macros, which may be too restrictive on some platforms,
10301 but it is better than failing on other platforms.
10302 (syms_of_process): Only defsubr above fns when included.
10303
103042003-09-17 Dave Love <fx@gnu.org>
10305
10306 * unexalpha.c: Don't include varargs.h.
10307
103082003-09-17 Kim F. Storm <storm@cua.dk>
10309
10310 * process.c (Fset_process_sentinel): Add sentinel to childp plist
10311 for network process.
10312 (socket_options): Add `:' prefix to option names. Add optbit field.
10313 (set_socket_option): Remove no_error arg and special handling of s < 0.
10314 Return 1<<optbit for known option, 0 for unknown.
10315 Do not interpret 0 as false for boolean option (only nil).
10316 Pass failed option and value to report_file_error.
10317 (Fset_network_process_options): Replace by Fset_network_process_option.
10318 (Fset_network_process_option): New function to set just one option.
10319 (Fmake_network_process): Allow :coding arg to be a cons.
10320 Allow :server arg to be an integer specifying backlog size.
10321 Remove :options arg, and allow options to be specified directly
10322 as :KEY, VALUE pairs. Parse these options before binding socket.
10323 As before, :reuseaddr t is default for a server process, but this
10324 can now be disabled by specifying :reuseaddr nil.
10325 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
10326 (init_process): Availability of network options is now checked with
10327 simpler syntax (featurep 'make-network-process :OPTION); use loop to
10328 setup features.
10329 (syms_of_process): Fix defsubr's for the replaced functions.
10330
103312003-09-16 Dave Love <fx@gnu.org>
10332
10333 * Makefile.in: Depend on coding.h.
10334
103352003-09-14 Kim F. Storm <storm@cua.dk>
10336
10337 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
10338 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
10339 (syms_of_process): Defsubr them.
10340
10341 * config.in: Regenerate.
10342
103432003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
10344
10345 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
10346 * m/news-r6.h (XUNMARK): Remove.
10347 * m/mips.h (XUNMARK): Remove.
10348 * m/mips-siemens.h (XUNMARK): Remove.
10349 * m/iris4d.h (XUNMARK): Remove.
10350 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
10351
103522003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
10353
10354 * lisp.h (VALBITS): Don't remove 1 for the markbit.
10355 (union Lisp_Object): Use unsigned int for types. Remove markbit.
10356 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
10357 (XTYPE): Use unsigned right-shift.
10358 (XMARKBIT, XMARK, XUNMARK): Remove.
10359
10360 * alloc.c (init_intervals, init_symbol, init_marker):
10361 Don't preallocate anything.
10362 (Fgarbage_collect, mark_object): Ignore the markbit.
10363
10364 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
10365
103662003-09-08 Lute Kamstra <lute@gnu.org>
10367
10368 * xdisp.c (pint2hrstr): New function.
10369 (decode_mode_spec): Add `%i' and `%I' specs.
10370 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
10371 for `mode-line-format'.
10372
103732003-09-07 Andreas Schwab <schwab@suse.de>
10374
10375 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
10376 avoid warning.
10377
103782003-09-07 Eli Zaretskii <eliz@gnu.org>
10379
10380 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
10381
103822003-09-03 Kim F. Storm <storm@cua.dk>
10383
10384 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
10385 change (superseded by 2002-08-30 change); the default blink-off
10386 cursor is now again "no cursor".
10387
103882003-09-01 Jason Rumney <jasonr@gnu.org>
10389
10390 * makefile.w32-in (alloca.o): Remove.
10391 (coding.o): Depend on intervals.h
10392 (emacs.o, bytecode.o): Depend on window.h
10393
103942003-09-01 Dave Love <fx@gnu.org>
10395
10396 * Makefile.in (alloca.o): Remove commands.
10397 (coding.o): Depend on intervals.h composite.h window.h.
10398 (emacs.o): Depend on window.h keyboard.h keymap.h.
10399 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
10400 (bytecode.o): Depend on window.h.
10401
104022003-08-31 Jason Rumney <jasonr@gnu.org>
10403
10404 * w32term.c (w32_per_char_metric): Allow cached metrics to be
10405 returned even when font_type is unknown.
10406
10407 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
10408
104092003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10410
10411 * xterm.c (x_term_init): Initialize new fields in x_display_info.
10412
10413 * xterm.h (struct x_display_info): Add red/green/blue_bits and
10414 *_offset.
10415
10416 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
10417 calculate pixel value.
10418
104192003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
10420
10421 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
10422 Don't tell redisplay display is accurate when it's actually been
10423 paused for pending input.
10424
104252003-08-29 Richard M. Stallman <rms@gnu.org>
10426
10427 * dispnew.c (adjust_glyph_matrix): Call window_box
10428 whenever W is nonzero.
10429
10430 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
10431 (Fkill_local_variable, Fmake_variable_frame_local)
10432 (Flocal_variable_p, Flocal_variable_if_set_p):
10433 Use indirect_variable to trace thru variable aliases.
10434
10435 * config.in: Updated.
10436
10437 * callint.c (Fcall_interactively): Save and restore
10438 Vthis_command, Vthis_original_command, real_this_command,
10439 and current_kboard->Vlast_command.
10440
10441 * abbrev.c (Fexpand_abbrev): Insert before deleting.
10442
104432003-08-29 Gerd Moellmann <gerd@gnu.org>
10444
10445 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
10446
104472003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
10448
10449 * coding.c (decode_coding_iso2022): Initialize local variable c2.
10450 (decode_coding_sjis_big5): Likewise.
10451
104522003-08-27 Jason Rumney <jasonr@gnu.org>
10453
10454 * w32.c (sys_pipe): Protect against file descriptor overflow.
10455
10456 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
10457
10458 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
10459
104602003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
10461
10462 * xfns.c (Vgtk_version_string): New variable.
10463 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
10464
104652003-08-24 Eli Zaretskii <eliz@gnu.org>
10466
10467 * term.c (term_init): Remove `const' from buffer_size's declaration.
10468
10469 * Makefile.in (msdos.o): Depend on intervals.h.
10470
10471 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
10472
104732003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10474
10475 * xterm.h (struct x_display_info): New fields: client_leader_window
10476 and Xatom_wm_client_leader.
10477
10478 * xterm.c (x_initialize): Move call to x_session_initialize to ...
10479 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
10480
10481 * xsmfns.c (create_client_leader_window): New function.
10482 (x_session_initialize): Call create_client_leader_window, take
10483 dpyinfo as argument.
10484
10485 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
10486
10487 * Makefile.in (xsmfns.o): Add more depenedencies.
10488
104892003-08-21 Dave Love <fx@gnu.org>
10490
10491 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
10492
104932003-08-21 Kenichi Handa <handa@m17n.org>
10494
10495 * term.c (term_init): Fix previous change; don't rely on the
10496 length of `buffer' if TERMINFO is defined.
10497
104982003-08-20 Dave Love <fx@gnu.org>
10499
10500 * atimer.h: Include lisp.h.
10501
10502 * lisp.h (EMACS_LISP_H): New.
10503 (popup_activated_flag): Don't declare.
10504
10505 * alloca.c: Some merging with gnulib. Change logic and doc
10506 concerning (x)malloc/(x)free -- no longer Emacs-specific.
10507 [DO_BLOCK_INPUT]: Don't include lisp.h.
10508 (xmalloc, xfree): Declare.
10509 (malloc): Don't declare.
10510
10511 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
10512 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
10513 atimer.h, blockinput.h.
10514
10515 * alloc.c (lisp_align_malloc): Change type of `aligned'.
10516
10517 * alloca.s: Remove.
10518
105192003-08-19 Gerd Moellmann <gerd@gnu.org>
10520
10521 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
10522 use -lncurses.
10523
10524 * term.c (term_init): Use a buffer of size 4096 for tgetent since
10525 FreeBSD returns something longer than 2044. Abort if the end of
10526 the buffer is overwritten.
10527
105282003-08-19 Miles Bader <miles@gnu.org>
10529
10530 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
10531
105322003-08-19 Gerd Moellmann <gerd@gnu.org>
10533
10534 * alloc.c (lisp_align_malloc): Check for memory full when
10535 allocating ablocks, which also avoids freeing a pointer into an
10536 ablocks structure.
10537
10538 * puresize.h (BASE_PURESIZE): Increase to 1100000.
10539
10540 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
10541
105422003-08-16 Richard M. Stallman <rms@gnu.org>
10543
10544 * editfns.c (Fencode_time): Doc fix.
10545
105462003-08-16 David Ponce <david@dponce.com>
10547
10548 * fileio.c (Fwrite_region): Fix conditional expression to issue
10549 the right message.
10550
105512003-08-16 Juri Linkov <juri@jurta.org>
10552
10553 * syntax.c (Fforward_word): Argument changed to optional.
10554 Set default value to 1.
10555
105562003-08-15 Kenichi Handa <handa@m17n.org>
10557
10558 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
10559 what autoscaled.
10560 (best_matching_font): Once we find a better scalable font, set
10561 non_scalable_has_exact_height_p to 1.
10562 (try_font_list): Call try_alternative_families to try any family
10563 with the given registry.
10564
105652003-08-09 Andreas Schwab <schwab@suse.de>
10566
10567 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
10568
10569 * print.c (print_string): Fix printing of multibyte string with
10570 nontrivial printcharfun.
10571
105722003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10573
10574 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
10575
10576 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
10577
105782003-07-31 Kenichi Handa <handa@m17n.org>
10579
10580 * process.c (read_process_output): Return the actually read bytes
10581 instead of the result of decoding.
10582
105832003-07-31 Kenichi Handa <handa@m17n.org>
10584
10585 * xterm.h (struct x_bitmap_record): New member have_mask.
10586
10587 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
10588 to 0.
10589 (x_create_bitmap_from_file): Likewise.
10590 (x_destroy_bitmap): Check have_mask member before freeing a mask.
10591 (x_destroy_all_bitmaps): Likewise.
10592 (x_create_bitmap_mask): Set have_mask member to 1.
10593
105942003-07-30 Richard M. Stallman <rms@gnu.org>
10595
10596 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
10597
105982003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10599
10600 * gtkutil.c (xg_mark_data): Update calls to mark_object.
10601
106022003-07-29 Richard M. Stallman <rms@gnu.org>
10603
10604 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
10605 Conditionalize XIM code on HAVE_XIM.
10606
10607 * fns.c (Fclear_string): New function.
10608 (syms_of_fns): defsubr it.
10609
106102003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
10611
10612 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
10613
106142003-07-22 Stefan Monnier <monnier@cs.yale.edu>
10615
10616 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
10617
10618 * buffer.c (delete_all_overlays): New function.
10619 * buffer.h (delete_all_overlays): Declare.
10620 * coding.c (run_pre_post_conversion_on_str):
10621 * print.c (temp_output_buffer_setup):
10622 * fileio.c (Finsert_file_contents):
10623 * minibuf.c (get_minibuffer): Use it.
10624
106252003-07-22 Andrew Choi <akochoi@shaw.ca>
10626
10627 * unexmacosx.c (unexec_regions_sort_compare):
10628 (unexec_regions_merge): New functions. Sort and merge unexec
10629 regions before dumping them.
10630
106312003-07-22 Dave Love <fx@gnu.org>
10632
10633 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
10634
106352003-07-21 Stefan Monnier <monnier@cs.yale.edu>
10636
10637 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
10638 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
10639 MARKBIT as the gcmarkbit for strings.
10640
106412003-07-21 Richard M. Stallman <rms@gnu.org>
10642
10643 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
10644
10645 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
10646 (syms_of_fns): Corresponding change.
10647
10648 * alloc.c (syms_of_alloc): Doc fixes.
10649
106502003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
10651
10652 * s/netbsd.h: Use -Wl syntax.
10653
106542003-07-17 Richard M. Stallman <rms@gnu.org>
10655
10656 * xterm.c (xim_initialize): Redo 6/24 change.
10657
106582003-07-15 Stefan Monnier <monnier@cs.yale.edu>
10659
10660 * buffer.c (copy_overlays): Use EMACS_INT for positions.
10661 (Fswitch_to_buffer): Don't signal an error when switching to the same
10662 buffer in a dedicated window.
10663
10664 * alloc.c: Use bitmaps for cons, as was done for floats.
10665 (init_float, init_cons): Let the normal code allocate the first block.
10666 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
10667 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
10668 New macros.
10669 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
10670 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
10671 (live_cons_p): Check the pointer is not past the `conses' array.
10672 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
10673 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
10674 (survives_gc_p): Use CONS_MARKED_P and simplify.
10675 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
10676
106772003-07-13 Paul Eggert <eggert@twinsun.com>
10678
10679 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
10680 puts it into BSS instead, at least on Solaris 8 and 9.
10681 This is a valid optimization, and it may occur on other platforms,
10682 so Emacs should not assume that initializing a static variable to
10683 zero puts it into data.
10684 * alloc.c (pure, staticvec):
10685 Initialize these arrays to nonzero, so that they're not
10686 put into BSS by that optimization.
10687
106882003-07-13 Stefan Monnier <monnier@cs.yale.edu>
10689
10690 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
10691 (lisp_align_malloc): Use posix_memalign is available.
10692 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
10693 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
10694 for consistency. Update users.
10695
106962003-07-13 Richard M. Stallman <rms@gnu.org>
10697
10698 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
10699
107002003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
10701
10702 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
10703 and use the Gtk+ function gtk_window_icon_from_file if available.
10704
10705 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
10706 handle mask of bitmaps.
10707 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
10708 mask property.
10709 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
10710
10711 * xterm.h (xg_set_icon): New function.
10712
107132003-07-12 Paul Eggert <eggert@twinsun.com>
10714
10715 * unexelf.c (unexec): Consider a section to precede the .bss
10716 section if its addresses overlap that of .bss.
10717
107182003-07-12 Richard M. Stallman <rms@gnu.org>
10719
10720 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
10721
10722 * config.in (HAVE_CRTIN): Add #undef.
10723 (INLINE): Really inline only if OPTIMIZE is defined.
10724
10725 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
10726 END_FILES_1.
10727 (START_FILES_1, END_FILES_1): New macros (conditional).
10728 (LD_SWITCH_SYSTEM_TEMACS): Define.
10729
10730 * s/openbsd.h: Don't include bsd4-3.h.
10731 (TERMINFO): Define.
10732 (LIBS_TERMCAP): Define.
10733 (LD_SWITCH_SYSTEM): Define (two definitions).
10734
10735 * xfns.c: Include libpng/png.h instead of png.h.
10736
107372003-07-11 Andreas Schwab <schwab@suse.de>
10738
10739 * buffer.c (modify_overlay): Update prototype.
10740 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
10741 Likewise.
10742
107432003-07-09 Stefan Monnier <monnier@cs.yale.edu>
10744
10745 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
10746 (struct interval): Move to intervals.h.
10747 (struct Lisp_Marker): Use EMACS_INT for position info.
10748 (forward_point): Remove prototype of defunct function.
10749 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
10750 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
10751 (syms_of_textprop, set_text_properties): Remove prototypes that are
10752 already in intervals.h.
10753
10754 * intervals.h (struct interval): Move from lisp.h.
10755 Use EMACS_INT for position and size info.
10756
10757 * coding.c: Include intervals.h for Fset_text_properties.
10758
10759 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
10760 position and length information.
10761
107622003-07-09 Stefan Monnier <monnier@cs.yale.edu>
10763
10764 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
10765 position and length information.
10766
107672003-07-09 Stefan Monnier <monnier@cs.yale.edu>
10768
10769 Change overlays_after and overlays_before so the overlays themselves
10770 are linked into lists, rather than using cons cells. After all each
10771 Lisp_Misc already occupies 5 words, so we can add a `next' field to
10772 Lisp_Overlay for free and save up one cons cell per overlay (not
10773 to mention one indirection when traversing the list of overlay).
10774
10775 * lisp.h (struct Lisp_Overlay): New field `next'.
10776
10777 * buffer.h (struct buffer): Change overlays_before and overlays_after
10778 from Lisp lists of overlays to pointers to overlays.
10779
10780 * buffer.c (overlay_strings, recenter_overlay_lists):
10781 Fix typo in eassert in last commit.
10782 (unchain_overlay): New function.
10783 (add_overlay_mod_hooklist): Use AREF.
10784 (copy_overlays, reset_buffer, overlays_at, overlays_in)
10785 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
10786 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
10787 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
10788 (report_overlay_modification, evaporate_overlays, init_buffer_once):
10789 Adjust to new type of overlays_(before|after).
10790
10791 * alloc.c (mark_object): Mark the new `next' field of overlays.
10792 (mark_buffer): Manually mark the overlays_(after|before) fields.
10793
10794 * coding.c (run_pre_post_conversion_on_str):
10795 * editfns.c (overlays_around):
10796 * xdisp.c (load_overlay_strings):
10797 * fileio.c (Finsert_file_contents):
10798 * indent.c (current_column):
10799 * insdel.c (signal_before_change, signal_after_change):
10800 * intervals.c (set_point_both):
10801 * print.c (temp_output_buffer_setup): Use new type for
10802 overlays_(before|after).
10803
108042003-07-08 Stefan Monnier <monnier@cs.yale.edu>
10805
10806 * buffer.c (report_overlay_modification): Don't run hooks while
10807 traversing the list of overlays.
10808
10809 * buffer.h (struct buffer): Use an int for overlay_center.
10810 (overlays_at, evaporate_overlays, recenter_overlay_lists)
10811 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
10812
10813 * buffer.c (reset_buffer, recenter_overlay_lists)
10814 (adjust_overlays_for_insert, adjust_overlays_for_delete)
10815 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
10816 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
10817 (overlays_at, evaporate_overlays, recenter_overlay_lists)
10818 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
10819
10820 * xdisp.c (fast_find_position): Remove unused var.
10821
10822 * cmds.c (Qexpand_abbrev): New sym.
10823 (syms_of_cmds): Initialize it.
10824 (internal_self_insert): Use it to call expand-abbrev.
10825
108262003-07-09 Kim F. Storm <storm@cua.dk>
10827
10828 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
10829 was configured with --without-xim.
10830 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
10831
108322003-07-07 Richard M. Stallman <rms@gnu.org>
10833
10834 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
10835
10836 * alloc.c (Fgarbage_collect): Doc fix.
10837
108382003-07-07 Nozomu Ando <nand@mac.com>
10839
10840 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
10841
108422003-07-06 Stefan Monnier <monnier@cs.yale.edu>
10843
10844 * minibuf.c (read_minibuf): UNGCPRO before returning.
10845 (Ftry_completion, Fall_completions): Doc fix.
10846
10847 * alloc.c (live_float_p): Check that p is not past the `floats' array,
10848 now that `floats' is not the last element of the struct any more.
10849
108502003-07-06 Jason Rumney <jasonr@gnu.org>
10851
10852 * w32term.h (ClipboardSequence_Proc): New type.
10853
10854 * w32fns.c (clipboard_sequence_fn): New variable.
10855 (globals_of_w32fns): Initialize it.
10856
10857 * w32select.c (last_clipboard_sequence_number): New variable.
10858 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
10859 number if possible.
10860
108612003-07-06 Stefan Monnier <monnier@cs.yale.edu>
10862
10863 * m/amdx86-64.h (MARKBIT):
10864 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
10865 MARKBIT and ARRAY_MARK_FLAG any more.
10866
10867 * m/hp800.h (XSETMARKBIT):
10868 * m/sr2k.h (XSETMARKBIT):
10869 * lisp.h (XSETMARKBIT): Remove unused macro.
10870
10871 * lisp.h (mark_object): Change prototype.
10872
10873 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
10874 (last_marked): Change accordingly.
10875 (mark_interval, mark_maybe_object, mark_maybe_pointer)
10876 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
10877 (mark_buffer): Update calls to mark_object.
10878
10879 * bytecode.c (mark_byte_stack):
10880 * fns.c (sweep_weak_table):
10881 * keyboard.c (mark_kboards): Update calls to mark_object.
10882
108832003-07-06 Jason Rumney <jasonr@gnu.org>
10884
10885 * alloc.c (struct ablock): Only include padding when there is some.
10886
108872003-07-04 Stefan Monnier <monnier@cs.yale.edu>
10888
10889 * alloc.c (ALIGN): Add casts to simplify usage.
10890 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
10891 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
10892 (struct ablock, struct ablocks): New types.
10893 (free_ablock): New global var.
10894 (lisp_align_malloc, lisp_align_free): New functions.
10895 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
10896 (struct float_block): Reorder and add gcmarkbits.
10897 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
10898 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
10899 (init_float, make_float): Use lisp_align_malloc.
10900 (free_float, live_float_p): Don't use `type' any more.
10901 (make_float): Use FLOAT_UNMARK to access to mark bit.
10902 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
10903 Use FLOAT_MARKED_P to access the mark bit.
10904 (pure_alloc): Simplify use of ALIGN.
10905 (mark_object): Use FLOAT_MARK to access the mark bit.
10906 (gc_sweep): Use new macros to access the float's mark bit.
10907 (init_alloc_once): Init free_ablock.
10908
10909 * lisp.h (struct Lisp_Float): Remove unused field `type'.
10910
109112003-06-27 Stefan Monnier <monnier@cs.yale.edu>
10912
10913 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
10914 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
10915 (allocate_buffer): Move.
10916 (string_bytes): Don't mask markbit of `size_byte'.
10917 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
10918 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
10919 Use the `size' field of buffers (rather than the `name' field) for
10920 the mark bit, as is done for all other vectorlike objects.
10921 Use the new macros to access the mark bit of vectorlike objects.
10922
109232003-06-26 Richard M. Stallman <rms@gnu.org>
10924
10925 * puresize.h (BASE_PURESIZE): Increment base size.
10926
10927 * xdisp.c (fast_find_position): Enable Gerd's new definition.
10928
10929 * xterm.c (xim_initialize): Undo previous change.
10930
109312003-06-26 Stefan Monnier <monnier@cs.yale.edu>
10932
10933 * alloc.c (survives_gc_p): Simplify.
10934
10935 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
10936
10937 * window.c (Fset_window_dedicated_p): Simplify.
10938 (display_buffer_1): Don't raise the win from which minibuf was entered.
10939 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
10940 (Fminibuffer_selected_window): Simplify.
10941
10942 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
10943
10944 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
10945 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
10946
10947 * insdel.c (check_markers, adjust_markers_for_delete)
10948 (adjust_markers_for_insert, adjust_markers_for_replace)
10949 (prepare_to_modify_buffer, RESTORE_VALUE):
10950 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
10951 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
10952 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
10953 * alloc.c (Fmake_marker, free_marker, gc_sweep):
10954 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
10955 * editfns.c (save_excursion_restore, transpose_markers):
10956 * window.c (delete_window):
10957 * xdisp.c (message_dolog): Update for new types.
10958
109592003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10960
10961 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
10962 (realize_default_face): Use default_face_done_p for the force_p
10963 argument to set_lface_from_font_name. Set default_face_done_p to one.
10964
10965 * frame.c (make_frame): Initialize default_face_done_p.
10966
10967 * frame.h (struct frame): Add default_face_done_p.
10968
10969 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
10970 will be defined.
10971
109722003-06-25 Stefan Monnier <monnier@cs.yale.edu>
10973
10974 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
10975 Initialize the new field `gcmarkbit'.
10976 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
10977 (mark_interval_tree): Don't mark the tree separately from the nodes.
10978 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
10979 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
10980 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
10981
10982 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
10983 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
10984 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
10985 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
10986 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
10987
109882003-06-24 Dave Love <fx@gnu.org>
10989
10990 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
10991
10992 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
10993 from gnulib.
10994
109952003-06-21 Richard M. Stallman <rms@gnu.org>
10996
10997 * fileio.c (Fwrite_region): Alternate messages
10998 for append and partial write.
10999
11000 * keyboard.c (read_key_sequence): When converting upcase fn key to
11001 downcase, update fkey and keytran so `backspace' gets translated.
11002
11003 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
11004
11005 * process.c (wait_reading_process_input): Don't signal SIGIO
11006 in batch mode.
11007
110082003-06-17 Kenichi Handa <handa@m17n.org>
11009
11010 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
11011 composite.h.
11012
11013 * xselect.c: Don't include charset.h, coding.h, composite.h.
11014 (Qforeign_selection): New variable.
11015 (syms_of_xselect): Intern and static it.
11016 (selection_data_to_lisp_data): Return a unibyte string made from
11017 data with `foreign-selection' text property.
11018
110192003-06-15 Stefan Monnier <monnier@cs.yale.edu>
11020
11021 * termhooks.h (EVENT_INIT): New macro.
11022
11023 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
11024
11025 * alloc.c (mark_kboards): Move to keyboard.c.
11026
11027 * keyboard.c (record_asynch_buffer_change, read_avail_input):
11028 * xterm.c (x_dispatch_event):
11029 * xmenu.c (find_and_call_menu_selection):
11030 * xdisp.c (handle_tool_bar_click):
11031 * w32menu.c (menubar_selection_callback):
11032 * sysdep.c (kbd_input_ast, read_input_waiting):
11033 * msdos.c (dos_rawgetc):
11034 * macterm.c (mac_check_for_quit_char):
11035 * macmenu.c (menubar_selection_callback):
11036 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
11037 data to kbd_buffer_store_event.
11038
110392003-06-15 Kim F. Storm <storm@cua.dk>
11040
11041 * xdisp.c (x_fix_overlapping_area): Always use area relative X
11042 to fix redisplay problem with tall characters (such as \e,AC\e(B).
11043
110442003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
11045
11046 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
11047
110482003-06-12 Kenichi Handa <handa@m17n.org>
11049
11050 * fileio.c (Fwrite_region): Save and restore restriction.
11051
110522003-06-12 Dave Love <fx@gnu.org>
11053
11054 * alloca.c (alloca): Declare arg as size_t.
11055
11056 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
11057 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
11058
110592003-06-11 Dave Love <fx@gnu.org>
11060
11061 * search.c (shrink_regexp_cache): Use xrealloc.
11062 (syms_of_search): Use xmalloc.
11063
110642003-06-10 Kim F. Storm <storm@cua.dk>
11065
11066 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
11067 Adjust phys_cursor.x to be relative to window box, rather than
11068 text area before checking -- to ensure cursor is redrawn when
11069 exposing window.
11070 Note: This also fixes a similar (older) bug if display margins
11071 are present.
11072
110732003-06-06 Kenichi Handa <handa@m17n.org>
11074
11075 * coding.c (encoding_buffer_size): If coding->type is
11076 coding_type_ccl, double magnification on CRLF encoding.
11077
110782003-06-06 Jason Rumney <jasonr@gnu.org>
11079
11080 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
11081 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
11082
11083 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
11084 Mac too.
11085
110862003-06-05 Dave Love <fx@gnu.org>
11087
11088 * strftime.c: Merge changes from gnulib.
11089
11090 * mktime.c (__mktime_internal): Merge changes from gnulib
11091 involving year 69 and dst2.
11092
11093 Changes to merge with gnulib version and be consistent with the
11094 autoconf test:
11095
11096 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
11097 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
11098 [HAVE_LOCALE_H]: Include locale.h.
11099 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
11100
111012003-06-05 Kim F. Storm <storm@cua.dk>
11102
11103 * window.c (coordinates_in_window): Convert X and Y to window
11104 relative coordinates inside mode-line and header-line parts.
11105 Convert X and Y to margin area relative coordinates inside left
11106 and right display margin parts.
11107
111082003-06-05 Jason Rumney <jasonr@gnu.org>
11109
11110 * w32fns.c (add_system_logical_colors_to_map): New function.
11111 (Fx_open_connection): Use it.
11112
111132003-06-04 Stefan Monnier <monnier@cs.yale.edu>
11114
11115 * process.c (allocate_pty): Revert part of the previous patch.
11116 (Faccept_process_output): Simplify.
11117
111182003-06-04 Jason Rumney <jasonr@gnu.org>
11119
11120 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
11121
11122 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
11123 (lispy_mouse_wheel_names): Remove.
11124 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
11125 Always define drag_and_drop_syms.
11126
11127 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
11128 WHEEL_EVENT events.
11129
111302003-06-03 Stefan Monnier <monnier@cs.yale.edu>
11131
11132 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
11133
11134 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
11135
111362003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11137
11138 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
11139 menu item label.
11140
111412003-06-03 Richard M. Stallman <rms@gnu.org>
11142
11143 * window.c (Fwindow_edges): Doc fix.
11144 (Fwindow_pixel_edges, Fwindow_inside_edges)
11145 (Fwindow_inside_pixel_edges): New functions.
11146 (syms_of_window): defsubr them.
11147
11148 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
11149 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
11150
111512003-06-02 Stefan Monnier <monnier@cs.yale.edu>
11152
11153 * dispnew.c (Fsit_for): Don't lie about the number of args.
11154
111552003-06-02 Dave Love <fx@gnu.org>
11156
11157 * callproc.c: Use HAVE_FCNTL_H, not USG5.
11158 (syms_of_callproc) <process-environment>: Doc fix.
11159
11160 * doc.c: Use HAVE_FCNTL_H, not USG5.
11161
11162 * xfaces.c (font_rescale_ratio): Fix for K&R.
11163
11164 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
11165
11166 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
11167
11168 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
11169
11170 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
11171 (xg_create_frame_widgets): Use ENCODE_UTF_8.
11172
11173 * xterm.c (Qutf_8): Move to coding.c
11174
11175 * xmenu.c (ENCODE_MENU_STRING): New.
11176 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
11177 Use it.
11178
11179 * coding.h (ENCODE_UTF_8): New.
11180 (Qutf_8): Declare.
11181
11182 * coding.c (Qutf_8): New.
11183 (syms_of_coding): Intern it.
11184
11185 * fns.c: Doc fixes.
11186
111872003-06-02 Kenichi Handa <handa@m17n.org>
11188
11189 * buffer.c (Fset_buffer_multibyte): Fix previous change.
11190
111912003-06-01 Stefan Monnier <monnier@cs.yale.edu>
11192
11193 * lread.c (openp): Make sure STR is a string.
11194
111952003-06-01 David Ponce <david@dponce.com>
11196
11197 * termhooks.h (enum event_kind): Add new WHEEL_EVENT event.
11198 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
11199
11200 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
11201 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
11202 (discard_mouse_events): Discard WHEEL_EVENT events too.
11203 (lispy_wheel_names, wheel_syms): New.
11204 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
11205 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX defined.
11206 (make_lispy_event): Add WHEEL_EVENT handler.
11207
11208 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
11209 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
11210 WHEEL_EVENT events.
11211
112122003-05-31 John Paul Wallington <jpw@gnu.org>
11213
11214 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
11215 timer are in lisp/emacs-lisp.
11216
112172003-05-31 Kenichi Handa <handa@m17n.org>
11218
11219 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
11220 region when a buffer is changed to unibyte.
11221
11222 * charset.h (VALID_LEADING_CODE_P): New macro.
11223 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
11224
11225 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
11226 is nonzero, accept multibyte form of eight-bit-control chars.
11227 (decode_composition_emacs_mule): Likewise.
11228 (decode_coding_emacs_mule): Likewise.
11229 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
11230 multibyte form of eight-bit-control chars.
11231
11232 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
11233 (Finsert_file_contents): If coding-system-for-read is bound to
11234 Qauto_save_coding, use the coding system emacs-mule with special
11235 setting for recovering a file.
11236 (choose_write_coding_system): On auto saving, use the coding
11237 system emacs-mule with special setting for auto saving.
11238 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
11239
112402003-05-30 Kenichi Handa <handa@m17n.org>
11241
11242 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
11243 properly before calling ccl_driver.
11244
11245 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
11246
11247 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is nonzero.
11248 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
11249 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
11250
112512003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
11252
11253 * xfaces.c (realize_default_face): Do not abort if lface is
11254 non-existent - reverts change from 2003-05-19.
11255
112562003-05-29 Kenichi Handa <handa@m17n.org>
11257
11258 * coding.c (decode_coding_iso2022): Pay attention to the byte
11259 sequence of CTEXT extended segment, and retain those bytes as is.
11260
112612003-05-28 Kenichi Handa <handa@m17n.org>
11262
11263 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjust for the name change
11264 of CODING_REPLACEMENT_CHARACTER.
11265 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
11266 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
11267 check this flag on encoding.
11268 (encode_coding_sjis_big5):
11269 Check CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
11270 (Fset_terminal_coding_system_internal):
11271 Set CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
11272 instead of setting CODING_FLAG_ISO_SAFE flag in terminal_coding.flags.
11273
11274 * coding.h (CODING_REPLACEMENT_CHARACTER): Rename from
11275 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
11276 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
11277
112782003-05-28 Richard M. Stallman <rms@gnu.org>
11279
11280 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
11281
11282 * eval.c (unbind_to): Move init of this_binding to separate statement.
11283
112842003-05-28 Kim F. Storm <storm@cua.dk>
11285
11286 * xdisp.c (expose_window): Fix error in calculation of
11287 window relative coordinates of area to redisplay.
11288
112892003-05-27 Jason Rumney <jasonr@gnu.org>
11290
11291 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
11292
112932003-05-27 David Ponce <david@dponce.com>
11294
11295 Handle W32 mouse wheel events as mouse click events, like in X.
11296
11297 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
11298 MOUSE_WHEEL_EVENT anymore.
11299
11300 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
11301 Scrolling down/up the mouse wheel is respectively mapped to mouse
11302 button 4 and 5.
11303 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
11304 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
11305 WM_MOUSEWHEEL events.
11306
113072003-05-27 Andreas Schwab <schwab@suse.de>
11308
11309 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
11310
11311 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
11312 partially visible line.
11313
11314 * alloc.c (Fgarbage_collect): Fix last change.
11315
113162003-05-26 John Paul Wallington <jpw@gnu.org>
11317
11318 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
11319
113202003-05-25 Stefan Monnier <monnier@cs.yale.edu>
11321
11322 * window.c (Fset_window_buffer): Add type of `keep_margins'.
11323 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
11324
11325 * window.h (window_box_text_cols): Declare.
11326
11327 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
11328 (x_draw_vertical_border): Remove unused var `f'.
11329
11330 * xfaces.c (build_scalable_font_name): Remove `unused var
11331 pixel_size' warning.
11332
11333 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
11334
11335 * unexelf.c (unexec): Remove `unused var n' warning.
11336
11337 * strftime.c (my_strftime_localtime_r): Remove `defined but
11338 unused' warning.
11339
11340 * process.c (allocate_pty): Remove `unused var stb' and
11341 `cp might be used uninitialized' warnings.
11342
11343 * dispnew.c (mode_line_string): Remove unused var `f'.
11344
11345 * coding.c (find_safe_codings): Remove unused var `i'.
11346
11347 * bytecode.c (Fbyte_code): Remove `unused val' warning.
11348
11349 * buffer.c (Fkill_buffer): Remove unused var `list'.
11350
11351 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
11352
113532003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11354
11355 * frame.c (make_frame): Condition want_fullscreen with
11356 HAVE_WINDOW_SYSTEM.
11357
113582003-05-25 Juanma Barranquero <lektu@terra.es>
11359
11360 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
11361 (Fwindow_scroll_bars): Fix typo in docstring.
11362
113632003-05-24 Kim F. Storm <storm@cua.dk>
11364
11365 The following changes serve several purposes:
11366
11367 1) Swap the position of fringes and display margins in windows, i.e.
11368 the fringes are now displayed between the margins and the text area
11369 (by default).
11370
11371 2) Allow fringe and scroll bar parameters to be set per-buffer and
11372 per-window (like display margins). Such settings are now stored
11373 in window configurations, preserved when frames are resized, and
11374 copied when windows are split vertically or horizontally.
11375 Several bugs related to display margins have been fixed.
11376
11377 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
11378
11379 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
11380 rather than FRAME_WIDTH (FRAME_FONT (f)).
11381
11382 5) Introduce a consistent naming of variables, members and macros
11383 depending on whether their value is measured in pixels or in
11384 canonical columns/lines. Pixel dimensions are named *_width and
11385 *_height, while canonical columns/lines are named *_cols and
11386 *_lines. Pixel positions are named *_x and *_y, while column/line
11387 positions are named *_col and *_line.
11388
11389 6) Consolidate more of the X, W32, and MAC gui code by moving
11390 common data into struct frame, and generalize it for the non-gui
11391 case by using suitable defaults.
11392
11393 7) Cleanup and consolidate the macros controlling frame and window
11394 layout into frame.h and window.h, and generalize the use of the
11395 various window_box_* functions (enhanced to handle the new fringe
11396 position and the per-window fringe and scroll bar settings).
11397
11398 * frame.h (struct frame): Rename members height to text_lines,
11399 width to text_cols, window_height to total_lines, window_width to
11400 total_cols, new_height to new_text_lines, new_width to
11401 new_text_cols. All uses changed.
11402 (struct frame): New members which consolidate common members of
11403 x_output, w32_output, and mac_output structures: left_pos,
11404 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
11405 win_gravity, size_hint_flags, border_width, internal_border_width,
11406 line_height, fringe_cols, left_fringe_width, right_fringe_width,
11407 want_fullscreen. All uses changed.
11408 (struct frame): New member column_width contaning the canonical
11409 column width, analogue to line_height. All uses changed.
11410 (struct frame): Rename members scroll_bar_pixel_width to
11411 config_scroll_bar_width, and scroll_bar_cols to
11412 config_scroll_bar_cols. All uses changed.
11413 (struct frame): New member scroll_bar_actual_width which
11414 consolidates and renames the vertical_scroll_bar_extra member of
11415 x_output, w32_output, and mac_output structures. All uses changed.
11416 (FRAME_PIXEL_HEIGHT): Rename from PIXEL_HEIGHT and moved
11417 from x/w32/macterm.h files. All uses changed. Also change code
11418 which referred to f->output_data...->pixel_height.
11419 (FRAME_PIXEL_WIDTH): Rename from PIXEL_WIDTH and moved
11420 from x/w32/macterm.h files. All uses changed. Also change code
11421 which referred to f->output_data...->pixel_width.
11422 (FRAME_LINES): Rename from FRAME_HEIGHT. All uses changed.
11423 Also change code which referred to f->height.
11424 (FRAME_COLS): Rename from FRAME_WIDTH. All uses changed.
11425 Also change code which referred to f->width.
11426 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
11427 to update new_text_lines and new_text_cols members directly.
11428 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Rename from
11429 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
11430 (FRAME_CONFIG_SCROLL_BAR_COLS): Rename from
11431 FRAME_SCROLL_BAR_COLS. All uses changed.
11432 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
11433 Rename from FRAME_LEFT_SCROLL_BAR_WIDTH and
11434 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
11435 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
11436 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
11437 (FRAME_TOTAL_COLS): Rename from FRAME_WINDOW_WIDTH.
11438 (SET_FRAME_COLS): Rename from SET_FRAME_WIDTH.
11439 (FRAME_TOTAL_COLS_ARG): Rename from FRAME_WINDOW_WIDTH_ARG.
11440 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
11441 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
11442 (FRAME_LINE_HEIGHT): Rename from CANON_Y_UNIT.
11443 Unconditionally return line_height member (it now has proper value
11444 also for non-window frames).
11445 (FRAME_COLUMN_WIDTH): Rename from CANON_X_UNIT. Unconditionally
11446 return new column_width member (rather than the default font width).
11447 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
11448 (FRAME_RIGHT_FRINGE_WIDTH): Rename from FRAME_X_... and moved
11449 from x/w32/macterm.h files. Unconditionally return corresponding
11450 member of frame structure (they now have proper values also for
11451 non-window frames).
11452 (FRAME_TOTAL_FRINGE_WIDTH): Rename from FRAME_FRINGE_WIDTH.
11453 Calculate return value from left and right widths.
11454 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
11455 internal_border_width member (has proper value for non-window frame).
11456 (FRAME_PIXEL_X_FROM_CANON_X): Rename from PIXEL_X_FROM_CANON_X.
11457 (FRAME_PIXEL_Y_FROM_CANON_Y): Rename from PIXEL_Y_FROM_CANON_Y.
11458 (FRAME_CANON_X_FROM_PIXEL_X): Rename from CANON_X_FROM_PIXEL_X.
11459 (FRAME_CANON_Y_FROM_PIXEL_Y): Rename from CANON_Y_FROM_PIXEL_Y.
11460 (FRAME_LINE_TO_PIXEL_Y): Rename from CHAR_TO_PIXEL_ROW,
11461 consolidated from xterm.h, macterm.h, and w32term.h.
11462 (FRAME_COL_TO_PIXEL_X): Rename from CHAR_TO_PIXEL_COL,
11463 consolidated from xterm.h, macterm.h, and w32term.h.
11464 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Rename from
11465 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
11466 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Rename from
11467 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
11468 (FRAME_PIXEL_Y_TO_LINE): Rename from PIXEL_TO_CHAR_ROW
11469 consolidated from x/mac/w32term.h.
11470 (FRAME_PIXEL_X_TO_COL): Rename from PIXEL_TO_CHAR_COL
11471 consolidated from x/mac/w32term.h.
11472 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Rename from
11473 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
11474 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Rename from
11475 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
11476
11477 * window.h (struct window): Rename members left to left_col,
11478 top to top_line, height to total_lines, width to total_cols,
11479 left_margin_width to left_margin_cols, right_margin_width to
11480 right_margin_cols, orig_height to orig_total_lines, orig_top to
11481 orig_top_line. All uses changed.
11482 (struct window): New members left_fringe_width, right_fringe_width,
11483 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
11484 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
11485 New macros primarily used to simplify other macros.
11486 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
11487 referred to XINT (w->width).
11488 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
11489 referred to XINT (w->height).
11490 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
11491 referred to XINT (w->width) * canon_x_unit.
11492 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
11493 referred to XINT (w->height) * canon_y_unit.
11494 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
11495 referred to XINT (w->left).
11496 (WINDOW_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_EDGE. Change
11497 all uses and code that referred to XINT (w->left) + XINT (w->width).
11498 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
11499 referred to XINT (w->top).
11500 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
11501 referred to XINT (w->top) + XINT (w->height).
11502 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
11503 referred to XINT (w->left) * canon_x_unit.
11504 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
11505 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
11506 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
11507 referred to XINT (w->top) * canon_y_unit.
11508 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
11509 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
11510 (WINDOW_LEFTMOST_P): New macro.
11511 (WINDOW_BOX_LEFT_EDGE_COL): Rename from WINDOW_LEFT_MARGIN.
11512 All uses changed.
11513 (WINDOW_BOX_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_MARGIN.
11514 All uses changed.
11515 (WINDOW_BOX_LEFT_EDGE_X): Rename from
11516 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
11517 Do not exclude left fringe width.
11518 (WINDOW_BOX_RIGHT_EDGE_X): Rename from
11519 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
11520 Do not exclude fringe widths.
11521 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
11522 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
11523 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
11524 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
11525 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
11526 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
11527 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
11528 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
11529 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
11530 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
11531 New macros. Change code which referenced corresponding
11532 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
11533 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
11534 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
11535 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
11536 allow per-window scroll-bar settings.
11537 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
11538 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
11539 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
11540 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
11541 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
11542 FRAME_SCROLL_BAR_WIDTH.
11543 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
11544 (WINDOW_SCROLL_BAR_AREA_X): New macros.
11545 (WINDOW_HEADER_LINE_HEIGHT): Rename from
11546 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
11547 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Rename from
11548 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
11549 (WINDOW_BOX_TEXT_HEIGHT): Rename from
11550 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
11551 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
11552 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
11553 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Move here from dispextern.h.
11554 (WINDOW_LEFT_MARGIN_WIDTH): Rename from
11555 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
11556 (WINDOW_RIGHT_MARGIN_WIDTH): Rename from
11557 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
11558 (window_from_coordinates): Update prototype.
11559 (Fset_window_buffer): Update EXFUN.
11560 (set_window_buffer): Update prototype.
11561
11562 * dispextern.h (struct glyph_matrix): Rename members window_left_x
11563 to window_left_col, window_top_y to window_top_line. All uses
11564 changed.
11565 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
11566 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
11567 internal_border_width is now set to 0 for non-window frames.
11568 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
11569 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
11570 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
11571 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
11572 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
11573 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
11574 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
11575 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
11576 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
11577 Move to window.h and renamed [see window.h changes].
11578 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
11579 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
11580 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
11581 Use WINDOW_TOTAL_LINES.
11582 (frame_update_line_height): Remove prototype.
11583
11584 * buffer.h (struct buffer): Rename members measured in columns:
11585 left_margin_width to left_margin_cols, right_margin_width to
11586 right_margin_cols. All uses changed.
11587 New members left_fringe_width, right_fringe_width,
11588 fringes_outside_margins for per-buffer fringe settings.
11589 New members scroll_bar_width and vertical_scroll_bar_type for
11590 per-buffer scroll bar settings.
11591
11592 * buffer.c (init_buffer_once): Set buffer_defaults and
11593 buffer_local_flags for new buffer-local variables
11594 left_fringe_width, right_fringe_width, fringes_outside_margins,
11595 scroll_bar_width, and vertical_scroll_bar_type.
11596 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
11597 default-* variables for them.
11598
11599 * dispnew.c: Make (many) trivial substitutions for renamed and
11600 new macros in dispextern.h, frame.h and window.h.
11601 (mode_line_string): No need to adjust width for mode lines, as it
11602 is already adjusted by the caller.
11603 (marginal_area_string): Handle fringes inside/outside margins.
11604
11605 * frame.c: Make (many) trivial substitutions for renamed and
11606 new macros in dispextern.h, frame.h and window.h.
11607 (make_frame): Initialize left_fringe_width, right_fringe_width,
11608 fringe_cols, scroll_bar_actual_width, border_width,
11609 internal_border_width, column_width, line_height, x_pixels_diff,
11610 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
11611 members with values suitable for a non-window frames.
11612
11613 * gtkutil.c: Make (many) trivial substitutions for renamed and
11614 new macros in dispextern.h, frame.h and window.h.
11615
11616 * indent.c: Make (few) trivial substitutions for renamed and
11617 new macros in dispextern.h, frame.h and window.h.
11618
11619 * keyboard.c: Make (many) trivial substitutions for renamed and
11620 new macros in dispextern.h, frame.h and window.h.
11621 (make_lispy_event): Use window positions returned from
11622 window_from_coordinates when constructing the lisp event for
11623 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
11624 (incorrect) values locally.
11625 (make_lispy_movement): Use window positions returned from
11626 window_from_coordinates when constructing the lisp event, rather
11627 than calculating (incorrect) values locally.
11628
11629 * scroll.c: Make (some) trivial substitutions for renamed and
11630 new macros in dispextern.h, frame.h and window.h.
11631
11632 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
11633 scroll-bars.
11634
11635 * sysdep.c: Make (few) trivial substitutions for renamed and
11636 new macros in dispextern.h, frame.h and window.h.
11637
11638 * term.c: Make (some) trivial substitutions for renamed and
11639 new macros in dispextern.h, frame.h and window.h.
11640
11641 * widget.c: Make (few) trivial substitutions for renamed and
11642 new macros in dispextern.h, frame.h and window.h.
11643
11644 * window.c: Make (many) trivial substitutions for renamed and
11645 new macros in dispextern.h, frame.h and window.h.
11646 (make_window): Initialize new members
11647 left_margin_cols, right_margin_cols, left_fringe_width,
11648 right_fringe_width, fringes_outside_margins, scroll_bar_width,
11649 and vertical_scroll_bar_type.
11650 (coordinates_in_window): Adapt to new fringe/margin positions
11651 and per-window fringes and scroll-bars.
11652 Fix bug related to incorrectly adjusting coordinates by
11653 frame's internal_border_width (the effect normally negible since
11654 the internal_border_width is typically 0 or 1 pixel, but very
11655 noticeable for an internal_border_width of e.g. 25 pixels).
11656 Upon successful return (other than ON_NOTHING), the coordinates
11657 are now always properly converted to window relative for the
11658 given display element.
11659 (window_from_coordinates): Add new parameters wx and wy to
11660 return the window relative x and y position in the returned
11661 window and part. A null arg means, don't return the position.
11662 All callers changed.
11663 (adjust_window_margins): New function which may reduce the width
11664 of the display margins if a window's text area is too small after
11665 resizing or splitting windows.
11666 (size_window): Fix bug that did not account for display margin
11667 widths when checking the minimum width of a window; use
11668 adjust_window_margins.
11669 (set_window_buffer): Call Fset_window_fringes and
11670 Fset_window_scroll_bars to setup per-window elements.
11671 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
11672 existing display margin, fringe widths, and scroll bar settings
11673 (e.g. after splitting a window or resizing the frame).
11674 All callers changed.
11675 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
11676 (Fsplit_window): Duplicate original window's display margin,
11677 fringe, and scroll-bar settings; then call Fset_window_buffer with
11678 KEEP_MARGINS non-nil. This fixes a bug which caused a split
11679 window to only preserve the display margins in one of the windows.
11680 When splitting horizontally, call adjust_window_margins on both
11681 windows to ensure that the text area of the new windows is non too
11682 narrow. This fixes a bug which could cause Emacs to trap if the
11683 width of the split window was less than the width of the display
11684 margins.
11685 (window_box_text_cols): Rename from window_internal_width.
11686 All uses changed. Adapt to per-window fringes and scroll bars.
11687 Fix bug that caused vertical separator to be subtracted also on
11688 window frames. Fix another bug that did not reduce the returned
11689 value by the columns used for display margins.
11690 (window_scroll_line_based): Fix bug related to scrolling too much
11691 when display margins are present (implicitly fixed by the fix to
11692 window_box_text_cols).
11693 (scroll_left, scroll_right): Fix bug related to scrolling too far
11694 by default when display margins are present (implicitly fixed by
11695 the fix to window_box_text_cols).
11696 (struct saved_window): Rename members left to left_col, top to
11697 top_line, width to total_cols, height to total_lines, orig_top to
11698 orig_top_line, orig_height to orig_total_lines. All uses changed.
11699 New members left_margin_cols, right_margin_cols,
11700 left_fringe_width, right_fringe_width, fringes_outside_margins,
11701 scroll_bar_width, and vertical_scroll_bar_type for saving
11702 per-window display elements.
11703 (Fset_window_configuration): Restore display margins, fringes,
11704 and scroll bar settings. This fixes a bug which caused display
11705 margins to be discarded when saving and restoring a window
11706 configuration.
11707 (save_window_save): Save display margins, fringes, and scroll bar
11708 settings. This fixes a bug which caused display margins to be
11709 discarded when saving and restoring a window configuration.
11710 (Fset_window_margins): Do nothing if display margins are not
11711 really changed. Otherwise, call adjust_window_margins to ensure
11712 the text area doesn't get too narrow. This fixes a bug which
11713 could cause Emacs to trap if setting display margins wider than
11714 the width of the window.
11715 (Fset_window_fringes): New defun to allow user to specifically set
11716 this window's fringe widths and position vs. display margins.
11717 (Fwindow_fringes): New defun to return window's actual fringe settings.
11718 (Fset_window_scroll_bars): New defun to allow user to specifically
11719 set this window's scroll bar width and position.
11720 (Fwindow_scroll_bars): New defun to return window's actual scroll
11721 bar settings.
11722 (compare_window_configurations): Also compare display margins,
11723 fringes, and scroll bar settings.
11724 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
11725
11726 * xdisp.c: Make (many) trivial substitutions for renamed and
11727 new macros in dispextern.h, frame.h and window.h.
11728 (window_box_width): Adapt to per-window fringes and scroll bars,
11729 and new fringe vs. display margin position. Note that returned
11730 value is no longer guaranteed to be a whole multiple of the frame
11731 column width, since per-window fringes may now be any width.
11732 (window_box_left_offset): New function like window_box_left, but
11733 value is relative to left border of window (rather than frame).
11734 (window_box_right_offset): New function like window_box_right,
11735 but value is relative to left border of window.
11736 (window_box_left): Adapt to per-window fringes and scroll bars,
11737 and new fringe vs. display margin position. Simplify by using
11738 WINDOW_LEFT_EDGE_X and window_box_left_offset.
11739 (window_box): Allow null args for unnecessary return values;
11740 change/simplify relevant callers.
11741 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
11742 and new fringe vs. display margin position.
11743 Use window_box_left_offset and window_box_right_offset
11744 (get_glyph_string_clip_rect): Adapt to per-window fringes and
11745 scroll bars, and new fringe vs. display margin position.
11746 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
11747 (draw_fringe_bitmap): Rework to handle per-window fringes and new
11748 fringe vs. display margin position.
11749 (hscroll_window_tree): Use window_box_width instead of window_box.
11750 (redisplay_window): Adapt to per-window scroll bars.
11751 (draw_glyphs): Rework to handle per-window fringes and scroll
11752 bars, and new fringe vs. display margin position.
11753 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
11754 (x_clear_end_of_line): Adapt to per-window fringes and scroll
11755 bars, and new fringe vs. display margin position. Fix bug which
11756 increased total width of full_width rows by width of scroll bars
11757 although window's total width already includes that.
11758 (x_fix_overlapping_area): Simplify using window_box_left_offset.
11759 (expose_area): Simplify using window_box_left_offset.
11760 (x_draw_vertical_border): Handle per-window scroll bar settings,
11761 mixing windows with left, right and no scroll bars.
11762
11763 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
11764 where it's used in x_list_fonts (for clarity).
11765 (frame_update_line_height): Remove unused function; functionality
11766 is now done directly when setting the default font in x_set_font.
11767
11768 * xfns.c: Make (many) trivial substitutions for renamed and
11769 new macros in dispextern.h, frame.h and window.h.
11770
11771 * xmenu.c: Make (some) trivial substitutions for renamed and
11772 new macros in dispextern.h, frame.h and window.h.
11773
11774 * xterm.h (struct x_output): Move members left_pos, top_pos,
11775 border_width, pixel_height, pixel_width, line_height,
11776 internal_border_width, vertical_scroll_bar_extra,
11777 left_fringe_width, right_fringe_width, fringe_cols,
11778 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
11779 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
11780 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
11781 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
11782 (PIXEL_WIDTH, PIXEL_HEIGHT)
11783 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
11784 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
11785 frame.h and renamed [see frame.h changes].
11786 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
11787 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
11788 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
11789 and renamed [see frame.h changes].
11790
11791 * xterm.c: Make (several) trivial substitutions for renamed and
11792 new macros in dispextern.h, frame.h and window.h.
11793 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
11794 (scroll_run): Adapt to new fringe position.
11795 (glyph_rect): Use window coordinates returned from
11796 window_from_coordinates rather than frame_to_window_pixel_xy.
11797 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
11798 scroll-bars.
11799 (handle_one_xevent): Simplify a USE_GTK conditional.
11800 (x_clip_to_row): Remove superfluous whole_line_p arg and code
11801 (fringes are now inside margins, i.e. always in the clipping area).
11802 All callers changed.
11803 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
11804 directly, then call compute_fringe_widths. Don't call
11805 frame_update_line_height.
11806
11807 * w32term.h (struct w32_output): Move members left_pos, top_pos,
11808 border_width, pixel_height, pixel_width, line_height,
11809 internal_border_width, vertical_scroll_bar_extra,
11810 left_fringe_width, right_fringe_width, fringe_cols,
11811 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
11812 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
11813 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
11814 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
11815 (PIXEL_WIDTH, PIXEL_HEIGHT)
11816 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
11817 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
11818 frame.h and renamed [see frame.h changes].
11819 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
11820 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
11821 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
11822 and renamed [see frame.h changes].
11823
11824 * w32term.c: Make (several) trivial substitutions for renamed and
11825 new macros in dispextern.h, frame.h and window.h.
11826 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
11827 (glyph_rect): Use window coordinates returned from
11828 window_from_coordinates rather than frame_to_window_pixel_xy.
11829 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
11830 scroll-bars.
11831 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
11832 (fringes are now inside margins, i.e. always in the clipping area).
11833 All callers changed.
11834 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
11835 directly, then call compute_fringe_widths. Don't call
11836 frame_update_line_height.
11837
11838 * w32console.c: Make (few) trivial substitutions for renamed and
11839 new macros in dispextern.h, frame.h and window.h.
11840
11841 * w32fns.c: Make (many) trivial substitutions for renamed and
11842 new macros in dispextern.h, frame.h and window.h.
11843
11844 * w32menu.c: Make (few) trivial substitutions for renamed and
11845 new macros in dispextern.h, frame.h and window.h.
11846
11847 * macterm.h (struct mac_output): Move members left_pos, top_pos,
11848 border_width, pixel_height, pixel_width, line_height,
11849 internal_border_width, vertical_scroll_bar_extra,
11850 left_fringe_width, right_fringe_width, fringe_cols,
11851 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
11852 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
11853 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
11854 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
11855 (PIXEL_WIDTH, PIXEL_HEIGHT)
11856 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
11857 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
11858 frame.h and renamed [see frame.h changes].
11859 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
11860 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
11861 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
11862 and renamed [see frame.h changes].
11863
11864 * macterm.c: Make (several) trivial substitutions for renamed and
11865 new macros in dispextern.h, frame.h and window.h.
11866 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
11867 (glyph_rect): Use window coordinates returned from
11868 window_from_coordinates rather than frame_to_window_pixel_xy.
11869 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
11870 scroll-bars.
11871 (x_clip_to_row): Remove superfluous whole_line_p arg and code
11872 (fringes are now inside margins, i.e. always in the clipping area).
11873 All callers changed.
11874 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
11875 directly, then call compute_fringe_widths. Don't call
11876 frame_update_line_height.
11877
11878 * macfns.c: Make (several) trivial substitutions for renamed and
11879 new macros in dispextern.h, frame.h and window.h.
11880 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
11881
11882 * macmenu.c: Make (few) trivial substitutions for renamed and
11883 new macros in dispextern.h, frame.h and window.h.
11884
11885 * msdos.h (struct x_output): Remove members left_pos, top_pos,
11886 and line_height, and use corresponding new members in struct
11887 frame. All uses changed.
11888 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
11889 superseeded by corresponding macros in frame.h.
11890
11891 * msdos.c: Make (several) trivial substitutions for renamed and
11892 new macros in dispextern.h, frame.h and window.h.
11893 (IT_note_mouse_highlight): Use updated window coordinates returned
11894 by window_from_coordinates, rather than adjusting them locally.
11895 (internal_terminal_init): No need to initialize line_height here;
11896 it now defaults to 1.
11897
118982003-05-24 Stefan Monnier <monnier@cs.yale.edu>
11899
11900 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
11901 dropping `down' events.
11902
119032003-05-24 Andreas Schwab <schwab@suse.de>
11904
11905 * coding.c (find_safe_codings): Fix last change.
11906
119072003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
11908
11909 * xfns.c (x_window): Fix typo from 2003-05-21 change.
11910
119112003-05-23 Stefan Monnier <monnier@cs.yale.edu>
11912
11913 * xdisp.c (display_mode_element): Increase max depth.
11914 Simplify the error handling code. Use a different error string
11915 for the case where we hit the depth limit.
11916
11917 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
11918
11919 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
11920
119212003-05-21 Stefan Monnier <monnier@cs.yale.edu>
11922
11923 * intervals.c (get_local_map): Don't get char-property of previous
11924 point any more: get_pos_property already does it and better.
11925
119262003-05-21 Dave Love <fx@gnu.org>
11927
11928 [Merged from unicode branch.]
11929
11930 * xfns.c (x_window, x_window): Use use_xim.
11931
11932 * xterm.c (use_xim): Initialize.
11933 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
11934 (x_term_init): Maybe set use_xim.
11935
11936 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
11937
119382003-05-21 Jason Rumney <jasonr@gnu.org>
11939
11940 * unexw32.c (_start): Remove _fmode initialization.
11941
11942 * emacs.c (main) [WINDOWSNT]: Move it here.
11943
119442003-05-20 Dave Love <fx@gnu.org>
11945
11946 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
11947
119482003-05-19 Richard M. Stallman <rms@gnu.org>
11949
11950 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
11951 as value for QCfont attribute.
11952 (realize_default_face): lface should already exist; crash if not.
11953 Specify 0 for FORCE_P when calling set_lface_from_font_name.
11954
11955 * frame.c (Fignore_event): Doc fix.
11956
119572003-05-19 Kenichi Handa <handa@m17n.org>
11958
11959 * coding.c (decode_coding_string): Handle post-read-conversion
11960 even if the coding doesn't require decoding.
11961
119622003-05-18 Richard M. Stallman <rms@gnu.org>
11963
11964 * callproc.c (Fcall_process_region): Doc fix.
11965
119662003-05-17 Stefan Monnier <monnier@cs.yale.edu>
11967
11968 * lread.c (Fload): Print a message if package is obsolete.
11969
11970 * window.c (Fselect_window): Add optional `norecord' arg.
11971 (select_window_1): Fold into Fselect_window.
11972 (select_window_norecord): New function.
11973 (temp_output_buffer_show): Use it. Preserve current buffer.
11974
11975 * window.h (Fselect_window): Update declaration.
11976
11977 * window.c (delete_window, Fother_window, Fset_window_configuration):
11978 * minibuf.c (read_minibuf):
11979 * macterm.c (x_new_focus_frame):
11980 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
11981 * callint.c (Fcall_interactively):
11982 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
11983
11984 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
11985
119862003-05-17 David Kastrup <dak@gnu.org>
11987
11988 * process.c (read_process_output): Back out change from 2003-03-09.
11989
119902003-05-17 Stefan Monnier <monnier@cs.yale.edu>
11991
11992 * editfns.c (get_pos_property): Don't assume that `object' = nil.
11993
11994 * textprop.c (text_property_stickiness): New arg `buffer'.
11995
11996 * intervals.h (text_property_stickiness): New arg `buffer'.
11997 (get_pos_property): Declare.
11998
11999 * intervals.c (get_local_map): Use get_pos_property, to obey
12000 stickiness and empty overlays.
12001 (create_root_interval, graft_intervals_into_buffer): Use BEG.
12002 (merge_properties, intervals_equal, merge_properties_sticky):
12003 Use XCAR, XCDR.
12004 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
12005
120062003-05-17 Richard M. Stallman <rms@gnu.org>
12007
12008 * minibuf.c (read_minibuf): If buffer is empty, record the default
12009 in the history.
12010 (Fminibuffer_complete_word): When deleting the overlap, take account
12011 of its real position.
12012
12013 * fns.c (map_char_table): Fix previous change.
12014
12015 * syntax.c (find_defun_start):
12016 When open_paren_in_column_0_is_defun_start,
12017 return beginning of buffer.
12018
12019 * lisp.h (map_char_table): Declare added arg.
12020
12021 * fns.c (map_char_table): New arg TABLE gets the master table.
12022 All calls changed.
12023 Process default and inheritance, resorting to Faref if necessary.
12024
12025 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
12026 (Faccessible_keymaps): Pass new arg to map_char_table.
12027
12028 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
12029
12030 * casetab.c (set_case_table): Pass new arg to map_char_table.
12031
12032 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
12033
12034 * lisp.h (specbinding_func): New typedef.
12035 (struct specbinding): Use specbinding_func, to put the `volatile'
12036 in the right place.
12037
12038 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
12039 to avoid GCC warning.
12040
120412003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org>
12042
12043 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
12044
120452003-05-15 Stefan Monnier <monnier@cs.yale.edu>
12046
12047 * keyboard.c (apply_modifiers): Don't fill the other cache.
12048
120492003-05-14 Stefan Monnier <monnier@cs.yale.edu>
12050
12051 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
12052
12053 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
12054 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
12055 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
12056 (Fset_window_configuration, Fcurrent_window_configuration)
12057 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
12058 (Fpos_visible_in_window_p, mark_window_cursors_off)
12059 (window_internal_height, window_internal_width, Frecenter)
12060 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
12061 (replace_buffer_in_all_windows, init_window_once, init_window)
12062 (syms_of_window, keys_of_window): Move from lisp.h.
12063 * lisp.h: Move window.c declarations to window.h.
12064
12065 * bytecode.c: Include window.h.
12066 * emacs.c: Include window.h.
12067
12068 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
12069 (keyremap): Add `parent' field.
12070 (keyremap_step): Use it. Remove `parent' argument.
12071 (read_key_sequence): Setup and use the new `parent' field.
12072
120732003-05-11 Stefan Monnier <monnier@cs.yale.edu>
12074
12075 * keyboard.c (adjust_point_for_property): Ensure termination.
12076
120772003-05-10 Stefan Monnier <monnier@cs.yale.edu>
12078
12079 * keyboard.c (follow_key): Remove dead variable `did_meta'.
12080 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
12081 duplicated handling of function-key-map and key-translation-map
12082 in read_key_sequence.
12083 (read_key_sequence): Use them.
12084
12085 * keyboard.c (adjust_point_for_property): Try harder to move point
12086 to the non-sticky end of an invisible property.
12087
12088 * xdisp.c (single_display_prop_intangible_p): Make `space' display
12089 property intangible as well.
12090
120912003-05-10 Andreas Schwab <schwab@suse.de>
12092
12093 * xmenu.c (single_menu_item): Change last parameter to void* to
12094 avoid warning.
12095
120962003-05-09 Richard M. Stallman <rms@gnu.org>
12097
12098 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
12099 Bind Qinhibit_modification_hooks to t so there will be no GC.
12100 Rename local `tem' to `save_deactivate_mark'.
12101
12102 * eval.c (specpdl_ptr): Declare volatile.
12103 (unbind_to): Copy the whole binding and decrement specpdl_ptr
12104 before doing the work of unbinding it.
12105
12106 * lisp.h (struct specbinding): Declare elements volatile.
12107 (specpdl_ptr): Declare volatile.
12108
12109 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
12110
12111 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
12112 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
12113
121142003-05-08 Dave Love <fx@gnu.org>
12115
12116 * coding.c (Vlast_coding_system_used): Doc fix.
12117
121182003-05-07 Jason Rumney <jasonr@gnu.org>
12119
12120 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
12121 when system does not support them.
12122
121232003-05-05 Stefan Monnier <monnier@cs.yale.edu>
12124
12125 * fileio.c (Qwrite_region_annotate_functions): New var.
12126 (build_annotations): Use it to process the global part of the hook.
12127 (syms_of_fileio): Init and staticpro it.
12128
12129 * keyboard.c (safe_run_hooks_error): Display a message instead of
12130 silently ignoring the error.
12131
121322003-05-03 Stefan Monnier <monnier@cs.yale.edu>
12133
12134 * keyboard.c (input_available_signal): Mark static.
12135 (menu_bar_items): Use map_keymap.
12136 (menu_bar_one_keymap): Remove.
12137 (menu_bar_item): Adjust arglist (for use in map_keymap).
12138 Properly hide a second binding when not both are keymaps.
12139
12140 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
12141 (single_keymap_panes): Use it and map_keymap.
12142 (single_menu_item): Use skp as well.
12143
12144 * keymap.h (map_keymap_function_t): New type.
12145 (map_keymap): Declare.
12146
12147 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
12148 (map_keymap_call, Fmap_keymap): New functions.
12149 (syms_of_keymap): Defsubr map-keymap.
12150
121512003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12152
12153 * gtkutil.c (create_dialog, make_widget_for_menu_item)
12154 (make_menu_item, create_menus, xg_update_menu_item): Don't call
12155 ..._with_mnemonic functions for menu items.
12156
121572003-05-01 Kenichi Handa <handa@m17n.org>
12158
12159 * coding.c (coding_system_accept_latin_extra_p): Delete this
12160 function.
12161 (find_safe_codings): Pay attention to
12162 the property tranlsation-table-for-encode of each codings.
12163 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
12164
121652003-05-01 Stefan Monnier <monnier@cs.yale.edu>
12166
12167 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
12168
121692003-04-30 Stefan Monnier <monnier@cs.yale.edu>
12170
12171 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
12172
12173 * lisp.h (CHECK): Wrap args in parenthesis.
12174 (specbind): Fix doc: symbol = Qnil is not supported any more.
12175
12176 * bytecode.c (Fbyte_code) <unwind-protect>:
12177 Use Fprogn rather than 0 and Qnil.
12178
12179 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
12180 `double', and `triple' modifiers as well.
12181
121822003-04-30 Richard M. Stallman <rms@gnu.org>
12183
12184 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
12185
12186 * alloc.c (abort_on_gc): New variable.
12187 (Fgarbage_collect): Abort if abort_on_gc is set.
12188
12189 * lisp.h (abort_on_gc): Add decl.
12190
12191 * eval.c (Fsignal): Clear abort_on_gc.
12192
12193 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
12194 Reinit FORMAT_START and END before second scan.
12195
12196 * xdisp.c (move_it_vertically_backward): Do the final big else
12197 even if nlines is 0.
12198
12199 * xdisp.c (redisplay_internal): Finish the per-frame loop
12200 even if redisplay is suspended by input.
12201
122022003-04-24 Andrew Choi <akochoi@shaw.ca>
12203
12204 * macterm.c (x_list_fonts): Return all fonts that match if
12205 maxnames = -1.
12206
122072003-04-25 Kenichi Handa <handa@m17n.org>
12208
12209 * syntax.c (skip_chars): Fix previous change.
12210
122112003-04-24 Kenichi Handa <handa@m17n.org>
12212
12213 * syntax.c (skip_chars): Make the code faster by using the common
12214 technique of *p, *stop, and *endp.
12215
122162003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12217
12218 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
12219 tool_bar_items so GTK tool bar expose callback does not access items
12220 being updated.
12221
122222003-04-19 Stefan Monnier <monnier@cs.yale.edu>
12223
12224 * eval.c (Fapply): Undo last change and add a comment about why.
12225
122262003-04-18 Miles Bader <miles@gnu.org>
12227
12228 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
12229 pickier PARSE_MULTIBYTE_SEQ.
12230
122312003-04-17 Stefan Monnier <monnier@cs.yale.edu>
12232
12233 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
12234 Use XCDR, XCAR, CONSP.
12235 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
12236 (Fapply): Remove unnecessary GCPRO.
12237
12238 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
12239
12240 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
12241
12242 * buffer.h: Don't hardcode BEG==1.
12243
12244 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
12245
122462003-04-16 Richard M. Stallman <rms@gnu.org>
12247
12248 * xdisp.c (try_window, try_window_reusing_current_matrix):
12249 When at end of window, set window_end_pos to Z-ZV.
12250
12251 * buffer.c (Foverlay_recenter): Doc fix.
12252
122532003-04-14 Stefan Monnier <monnier@cs.yale.edu>
12254
12255 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
12256
122572003-04-14 Andrew Choi <akochoi@shaw.ca>
12258
12259 * macterm.c (mac_check_for_quit_char): Don't check more often than
12260 once a second.
12261
122622003-04-11 Stefan Monnier <monnier@cs.yale.edu>
12263
12264 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
12265 specially, so that they can't hide an implicit switch-frame event.
12266 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
12267 (head_table): Use switch-frame as event_kind for select-window.
12268 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
12269
12270 * editfns.c (Fformat): Lisp_Object/int mixup.
12271 (format2): Remove unused var numargs.
12272
122732003-04-11 Kenichi Handa <handa@m17n.org>
12274
12275 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
12276 (Qafter_insert_file_set_coding): New variable.
12277 (syms_of_fileio): Initialize and staticpro it. Delete declaration
12278 for after-insert-file-adjust-coding-function.
12279 (Finsert_file_contents): Call Qafter_insert_file_set_coding
12280 instead of Vafter_insert_file_adjust_coding_function.
12281
122822003-04-11 Kenichi Handa <handa@m17n.org>
12283
12284 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
12285
12286 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
12287 string. Callers changed.
12288
122892003-04-10 Kenichi Handa <handa@m17n.org>
12290
12291 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
12292 (syms_of_fileio): Declare it as a lisp variable.
12293 (Finsert_file_contents):
12294 Call Vafter_insert_file_adjust_coding_function before calling
12295 decode-format.
12296
122972003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12298
12299 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
12300 get GtkAdjustment as widget now is a GtkRange.
12301
12302 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
12303 GtkRange to avoid memory leak.
12304
123052003-04-09 Kenichi Handa <handa@m17n.org>
12306
12307 * xfaces.c (Vface_font_rescale_alist): New variable.
12308 (struct font_name): New member rescale_ratio.
12309 (font_rescale_ratio): New function.
12310 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
12311 (better_font_p): On comparing point sized, pay attention to
12312 recale_ratio member of fonts.
12313 (build_scalable_font_name): Reflect font->rescale_ratio in the
12314 font name.
12315 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
12316
12317 * lread.c (read1): Before calling index, check if the 2nd
12318 arguemnt is in ASCII range.
12319
123202003-04-08 Richard M. Stallman <rms@gnu.org>
12321
12322 * fileio.c (Ffile_symlink_p): Doc fix.
12323
12324 * editfns.c (Fformat): Translate positions of text properties
12325 in the format string to apply them to the result.
12326
12327 * fileio.c (Finsert_file_contents): Doc fix.
12328 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
12329
123302003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
12331
12332 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
12333
123342003-04-08 Steven Tamm <steventamm@mac.com>
12335
12336 * mac.c (init_mac_osx_environment): Switch libexec and bin so
12337 that self-contained application finds libexec files.
12338
123392003-04-08 Kenichi Handa <handa@m17n.org>
12340
12341 * coding.c (code_convert_region_unwind):
12342 Set Vlast_coding_system_used to the argument.
12343 (code_convert_region): If post-read-conversion function changed
12344 the value of last-coding-sytem, keep the new value in
12345 coding->symbol so that it won't be overridden.
12346 (run_pre_post_conversion_on_str): Likewise.
12347 (coding_system_accept_latin_extra_p): New function.
12348 (find_safe_codings): Pay attention to characters registered in
12349 latin-extra-code-table.
12350
123512003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
12352
12353 * Makefile.in (md5.o): Add missing dependency info.
12354
123552003-04-06 Richard M. Stallman <rms@gnu.org>
12356
12357 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
12358
12359 * marker.c (verify_bytepos): New function.
12360
12361 * intervals.c (set_intervals_multibyte_1): When becoming
12362 multibyte, adjust right and left child sizes to a whole set of
12363 characters. If an interval gets zero total-length, delete it.
12364 If an interval consists of just its children, delete one of them.
12365
12366 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
12367 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
12368
12369 * alloc.c (VALIDATE_LISP_STORAGE): Macro deleted.
12370 All calls deleted.
12371 (lisp_malloc): Do the work here directly.
12372
123732003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
12374
12375 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
12376 char tables.
12377
123782003-04-04 Kenichi Handa <handa@m17n.org>
12379
12380 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
12381 destructively change "%S" to "%s".
12382
123832003-04-03 Miles Bader <miles@gnu.org>
12384
12385 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
12386 always set.
12387
123882003-04-01 Dave Love <fx@gnu.org>
12389
12390 * xfns.c (xpm_lookup_color): Grok "opaque".
12391
123922003-03-31 Andrew Choi <akochoi@shaw.ca>
12393
12394 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
12395 parent window ID.
12396
12397 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
12398
12399 * macterm.h (struct mac_output): Define x_pixels_diff and
12400 y_pixels_diff.
12401
124022003-03-31 Juanma Barranquero <lektu@terra.es>
12403
12404 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
12405 blockinput.h and files included from it.
12406
124072003-03-31 Kim F. Storm <storm@cua.dk>
12408
12409 The following changes consolidates the common code related to
12410 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
12411 files into frame.c.
12412
12413 * frame.c: Include blockinput.h.
12414 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
12415 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
12416 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
12417 related vars here.
12418 (struct frame_parm_table, frame_parms): New table for describing
12419 frame parameters and their associated Q-variable.
12420 The order of the parameters corresponds to the sequence of the
12421 frame_parm_handlers table in redisplay_interface.
12422 (x_fullscreen_move, x_set_frame_parameters)
12423 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
12424 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
12425 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
12426 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
12427 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
12428 Generic functions for processing of frame parameters.
12429 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
12430 (display_x_get_resource, x_get_resource_string): Functions for
12431 generic access to X resources.
12432 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
12433 (x_default_parameter, Fx_parse_geometry): Functions for generic
12434 access to frame parameters.
12435 (x_figure_window_size): Generic calculation of frame size.
12436 Fixed to add space needed for tool bar. Also setup size_hint_flags.
12437 (syms_of_frame): Intern and staticpro frame parameter variables.
12438 Defvar_lisp Vx_resource_class and Vx_resource_name here.
12439 Defsubr Sx_get_resource and Sx_parse_geometry.
12440
12441 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
12442 parameter related vars defined in frame.c.
12443 (EMACS_CLASS): Define here.
12444 (enum FULLSCREEN_*): Define here.
12445 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
12446 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
12447 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
12448 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
12449 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
12450 (x_set_visibility, x_set_autoraise, x_set_autolower)
12451 (x_set_unsplittable, x_set_vertical_scroll_bars)
12452 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
12453 (x_figure_window_size): Add prototypes.
12454
12455 * dispextern.h (frame_parm_handler): New typedef.
12456 (struct redisplay_interface): New member frame_parm_handlers.
12457 (enum resource_types): Move declaration here.
12458 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
12459 (x_default_parameter): Add prototypes.
12460
12461 * window.c: Remove extern decl for frame parameter vars.
12462 (change_window_heights): New generic function;
12463 replaces x_change_window_heights. All users changed.
12464
12465 * window.h (change_window_heights): Add prototype.
12466
12467 * xfaces.c: Remove extern decl for frame parameter vars.
12468
12469 * xterm.h (EMACS_CLASS): Remove. Use generic define.
12470 (struct w32_display_info): Fix type of xrdb member.
12471 (enum FULLSCREEN_*): Remove.
12472 Remove prototypes for generic functions (in frame.h).
12473
12474 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
12475 parameters now defined in frame.h and frame.c.
12476 (Vx_resource_name): Remove. Use generic var.
12477 (enum x_frame_parms): Remove (bogus, unused enum).
12478 (check_x_display_info): Make non-static (for frame.c).
12479 (struct x_frame_parm_table, x_frame_parms): Remove.
12480 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
12481 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
12482 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
12483 (x_change_window_heights, x_set_autoraise, x_set_autolower)
12484 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
12485 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
12486 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
12487 Remove. Use generic functions instead.
12488 (enum resource_types): Remove.
12489 (x_set_scroll_bar_default_width): New global function (for frame.c).
12490 (Fx_create_frame): Depend on x_figure_window_size to add space for
12491 toolbar and setup size_hint_flags.
12492 (x_frame_parm_handlers): New table for redisplay_interface.
12493 (syms_of_xfns): Don't intern/staticpro removed vars.
12494
12495 * xterm.c: Remove unnecessary extern declarations.
12496 (x_fullscreen_adjust): Remove. Use generic instead.
12497 (x_redisplay_interface): Add x_frame_parm_handlers member.
12498
12499 * w32gui.h (XrmDatabase): New (dummy) typedef.
12500
12501 * w32term.h (EMACS_CLASS): Remove. Use generic define.
12502 (struct w32_display_info): Fix type of xrdb member.
12503 (enum FULLSCREEN_*): Remove.
12504 (x_fullscreen_adjust): Remove prototype.
12505
12506 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
12507 parameters now defined in frame.h and frame.c.
12508 (Vx_resource_name): Remove. Use generic var.
12509 (enum x_frame_parms): Remove (bogus, unused enum).
12510 (check_x_display_info): Make non-static (for frame.c).
12511 (struct x_frame_parm_table, x_frame_parms): Remove.
12512 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
12513 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
12514 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
12515 (x_change_window_heights, x_set_autoraise, x_set_autolower)
12516 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
12517 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
12518 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
12519 Remove. Use generic functions instead.
12520 (enum resource_types): Remove.
12521 (x_set_scroll_bar_default_width): New global function (for frame.c).
12522 (Fx_create_frame): Depend on x_figure_window_size to add space for
12523 toolbar and setup size_hint_flags.
12524 (w32_frame_parm_handlers): New table for redisplay_interface.
12525 (syms_of_w32fns): Don't intern/staticpro removed vars.
12526
12527 * w32term.c: Remove unnecessary extern declarations.
12528 (x_fullscreen_adjust): Remove. Use generic instead.
12529 (x_redisplay_interface): Add w32_frame_parm_handlers member.
12530
12531 * w32reg.c (x_get_string_resource): Use XrmDatabase.
12532
12533 * macgui.h (XrmDatabase): New (dummy) typedef.
12534
12535 * macterm.h (EMACS_CLASS): Remove.
12536 (struct mac_display_info): Add xrdb member.
12537 (struct mac_output): Add want_fullscreen member.
12538
12539 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
12540 parameters now defined in frame.h and frame.c.
12541 (Vx_resource_name): Remove. Use generic var.
12542 (check_x_display_info): Make non-static (for frame.c).
12543 (struct x_frame_parm_table, x_frame_parms): Remove.
12544 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
12545 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
12546 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
12547 (x_change_window_heights, x_set_autoraise, x_set_autolower)
12548 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
12549 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
12550 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
12551 Remove. Use generic functions instead.
12552 (enum resource_types): Remove.
12553 (x_set_scroll_bar_default_width): New global function (for frame.c).
12554 (mac_frame_parm_handlers): New table for redisplay_interface.
12555 (syms_of_macfns): Don't intern/staticpro removed vars.
12556
12557 * macterm.c: Remove unnecessary extern declarations.
12558 (x_redisplay_interface): Add mac_frame_parm_handlers member.
12559
12560 * Makefile.in (frame.o): Add dependency on blockinput.h and files
12561 included from it (atimer.h and systime.h).
12562
125632003-03-30 Andreas Schwab <schwab@suse.de>
12564
12565 * xdisp.c (x_insert_glyphs): Fix swapped width and height
12566 parameters for shift_glyphs_for_insert.
12567
12568 * macterm.c (x_redisplay_interface): Add missing entry for
12569 draw_vertical_window_border.
12570
125712003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
12572
12573 * fileio.c (Fexpand_file_name): In the no-handler case, after
12574 expanding, look again for a handler and invoke it. This is needed
12575 for filenames like "/foo/../user@host:/bar/../baz" -- the first
12576 expansion produces "/user@host:/bar/../baz" which needs to be
12577 expanded again for the finame result "/user@host:/baz".
12578
125792003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12580
12581 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
12582 of area to be redrawn for better performance.
12583
125842003-03-28 Stefan Monnier <monnier@cs.yale.edu>
12585
12586 * xterm.c (take_vertical_position_into_account): Remove.
12587 (xt_action_hook): Call set_vertical_scroll_bar if needed.
12588 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
12589 (xm_scroll_callback, x_create_toolkit_scroll_bar)
12590 (x_set_toolkit_scroll_bar_thumb): Simplify.
12591 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
12592 (XTread_socket): Remove unused var.
12593 (x_make_frame_invisible): Replace goto with else.
12594
12595 * xdisp.c (set_vertical_scroll_bar): New fun.
12596 (redisplay_window): Use it.
12597
125982003-03-26 Richard M. Stallman <rms@gnu.org>
12599
12600 * xdisp.c (update_tool_bar): Recompute tool bar if
12601 update_mode_lines is set. Set w->update_mode_line
12602 only if the tool bar contents actually change.
12603 (update_menu_bar): Undo previous change.
12604
126052003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12606
12607 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
12608 (xg_frame_set_char_size): Calculate scroll bar width before frame
12609 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
12610 (xg_separator_p): Check for all documented separator types.
12611 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
12612 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
12613
12614 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
12615 so tool bar gets updated.
12616
126172003-03-26 Stefan Monnier <monnier@cs.yale.edu>
12618
12619 * data.c (store_symval_forwarding): Re-instate part of the code
12620 that was deleted with too much enthusiasm.
12621
126222003-03-25 Stefan Monnier <monnier@cs.yale.edu>
12623
12624 * data.c (store_symval_forwarding): Delete special read-only
12625 hack for type == -1, since we now use ->constant instead.
12626 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
12627
12628 * buffer.c (overlays_in): Declare static.
12629 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
12630 `constant' field rather than the variable's `type' field.
12631
126322003-03-24 Andrew Choi <akochoi@shaw.ca>
12633
12634 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
12635
12636 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
12637
12638 * fns.c [MAC_OSX]: Do not redefine vector.
12639
12640 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
12641
12642 * macgui.h: Remove definition of No_Cursor.
12643
12644 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
12645
12646 * xdisp.c: Define No_Cursor.
12647 (x_write_glyphs, notice_overwritten_cursor)
12648 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
12649 (note_mouse_highlight): Remove Mac-specific code.
12650 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
12651
126522003-03-24 John Paul Wallington <jpw@gnu.org>
12653
12654 * xdisp.c (redisplay_window): If mini window's buffer is not
12655 empty, then redisplay it like other windows.
12656
126572003-03-23 Kim F. Storm <storm@cua.dk>
12658
12659 * w32term.c (w32_draw_window_cursor): Fix last change.
12660
126612003-03-23 Kenichi Handa <handa@m17n.org>
12662
12663 * alloc.c (make_string_from_bytes, make_specified_string):
12664 Add `const' for the arg CONTENTS.
12665
12666 * lisp.h (make_string_from_bytes, make_specified_string):
12667 Prototypes adjusted.
12668
126692003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12670
12671 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
12672
12673 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
12674 (XG_SB_RANGE): New define.
12675
12676 * gtkutil.c (xg_fixed_handle_expose): New function.
12677 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
12678 expose events.
12679 (xg_update_scrollbar_pos): Take two more arguments, left and width
12680 of scroll bar including borders.
12681 Clear left and right part outside scroll bar separately as some
12682 themes have bars that are not an even number of pixels.
12683 Don't set reallocate_redraws, don't call
12684 gdk_window_process_all_updates.
12685 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
12686 so no need to change it. Calculate size and value with XG_SB_RANGE.
12687
12688 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
12689 Pass left and width of scroll bar including borders to
12690 xg_update_scrollbar_pos.
12691
126922003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
12693
12694 * Makefile.in: Make sure space precedes end-of-line backslashes.
12695
126962003-03-22 Kim F. Storm <storm@cua.dk>
12697
12698 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
12699 Add generic versions here. Remove system specific versions
12700 defined elsewhere.
12701
12702 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
12703 Add prototypes.
12704
12705 * xterm.h (STORE_NATIVE_RECT): New macro.
12706
127072003-03-21 Kim F. Storm <storm@cua.dk>
12708
12709 * xdisp.c (get_glyph_string_clip_rect):
12710 Use FRAME_INTERNAL_BORDER_WIDTH.
12711
12712 * dispextern.h (struct redisplay_interface): Add active_p
12713 argument to draw_window_cursor member. All uses changed.
12714
127152003-03-21 Kim F. Storm <storm@cua.dk>
12716
12717 The following changes consolidate code related to writing and
12718 inserting glyphs, exposing frame, the tool bar, the mouse face,
12719 the output cursor, and help echo from xterm.c, w32term.c and
12720 macterm.c into xdisp.c. It also generalizes the use of the
12721 window_part enum instead of using numeric values throughout.
12722
12723 * xdisp.c: Consolidate gui-independent code here.
12724 Include keymap.h.
12725 (Qhelp_echo): Import.
12726 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
12727 (help_echo_string, help_echo_window, help_echo_object)
12728 (previous_help_echo_string, help_echo_pos): Declare here.
12729 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
12730 (estimate_mode_line_height): Define here. Handle windowing
12731 systems directly (without using estimate_mode_line_height_hook).
12732 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
12733 (update_window_cursor, update_cursor_in_window_tree)
12734 (fast_find_position, fast_find_string_pos)
12735 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
12736 (expose_area, expose_line, expose_overlaps, expose_window)
12737 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
12738 declared static as they are only used locally in xdisp.c.
12739 (draw_glyphs): Rename from x_draw_glyphs and make static.
12740 (tool_bar_item_info, notice_overwritten_cursor): Make static.
12741 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
12742 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
12743 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
12744 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
12745 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
12746 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
12747 (note_mouse_highlight, x_clear_window_mouse_face)
12748 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
12749 (x_intersect_rectangles): New generic functions for use by xdisp.c
12750 and GUI front-ends.
12751 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
12752 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
12753
12754 * dispextern.h (Display_Info): Generic typedef for *_display_info.
12755 (NativeRectangle): Generic typedef for rectangle type.
12756 (enum window_part): Move here from window.c.
12757 (struct redisplay_interface): New members flush_display_optional,
12758 define_frame_cursor, clear_frame_area, draw_window_cursor,
12759 draw_vertical_window_border, shift_glyphs_for_insert.
12760 Rename member clear_mouse_face to clear_window_mouse_face.
12761 (estimate_mode_line_height_hook): Remove hook.
12762 (auto_raise_tool_bar_buttons_p): Don't declare extern.
12763 (tool_bar_item_info): Remove prototype.
12764 (help_echo_string, help_echo_window, help_echo_object)
12765 (previous_help_echo_string, help_echo_pos)
12766 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
12767 (x_stretch_cursor_p, output_cursor): Declare extern.
12768 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
12769 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
12770 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
12771 (display_and_set_cursor, set_output_cursor, x_cursor_to)
12772 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
12773 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
12774 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
12775 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
12776 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
12777 Add prototypes.
12778 (mode_line_string, marginal_area_string): Fix prototypes.
12779
12780 * window.c (enum window_part): Move to dispextern.h.
12781 (coordinates_in_window): Use enum window_part member names
12782 instead of numbers to describe return value.
12783 (struct check_window_data): Change part member to window_part.
12784 (check_window_containing): Return window_part unaltered.
12785 (window_from_coordinates): Change part arg from int to enum
12786 window_part. Allow part arg to be null. All users changed.
12787
12788 * window.h (window_from_coordinates): Fix prototype.
12789
12790 * term.c (estimate_mode_line_height): Move to xdisp.c.
12791
12792 * keyboard.c (make_lispy_event): Use enum window_part.
12793
12794 * dispnew.c (mode_line_string, marginal_area_string): Use enum
12795 window_part instead of int in arg list. Users changed.
12796
12797 * xterm.h (No_Cursor): Declare as None for X.
12798 (struct mac_output): Replace member cross_cursor by hand_cursor.
12799
12800 * xterm.c: Remove consolidated defines and code.
12801 (BETWEEN): Remove unused macro.
12802 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
12803 (x_define_frame_cursor, x_clear_frame_area)
12804 (x_draw_window_cursor): New X-specific functions for RIF.
12805 (x_redisplay_interface): Add new members.
12806
12807 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
12808
12809 * w32term.h (struct w32_output): Remove cross_cursor member.
12810
12811 * w32term.c: Remove consolidated defines and code.
12812 (BETWEEN): Remove unused macro.
12813 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
12814 (w32_define_frame_cursor, w32_clear_frame_area)
12815 (w32_draw_window_cursor): New W32-specific functions for RIF.
12816 (w32_redisplay_interface): Add new members.
12817
12818 * w32gui.h (No_Cursor): Define as 0 for W32.
12819 (XRectangle): Add X compatible rectangle type.
12820 (NativeRectangle): Declare as RECT for W32.
12821 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
12822
12823 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
12824
12825 * w32console.c: Remove consolidated defines and code.
12826
12827 * msdos.h (Display_Info): Add generic typedef.
12828
12829 * msdos.c: Remove consolidated defines and code.
12830 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
12831
12832 * macterm.h (struct mac_output): Replace member cross_cursor by
12833 hand_cursor.
12834 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
12835
12836 * macterm.c: Remove consolidated defines and code.
12837 (BETWEEN): Remove unused macro.
12838 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
12839 (mac_define_frame_cursor, mac_clear_frame_area)
12840 (mac_draw_window_cursor): New Mac-specific functions for RIF.
12841 (x_redisplay_interface): Add new members.
12842
12843 * macgui.h (No_Cursor): Define as 0 for Mac.
12844 (XRectangle): Add X compatible rectangle type.
12845 (NativeRectangle): Declare as Rect for Mac.
12846 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
12847
12848 * macfns.c (x_set_mouse_color): Setup hand_cursor.
12849 (x_set_cursor_color): Use x_display_and_set_cursor.
12850
12851 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
12852 included from it. Add dependency on keymap.h.
12853
12854 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
12855
128562003-03-21 Kenichi Handa <handa@m17n.org>
12857
12858 * fileio.c (Fexpand_file_name): Fix previous change.
12859
128602003-03-19 Kenichi Handa <handa@m17n.org>
12861
12862 * fileio.c (Ffile_name_directory): Reconstruct file name by
12863 make_specified_string.
12864 (Ffile_name_nondirectory, Ffile_name_as_directory)
12865 (Fdirectory_file_name, Fexpand_file_name)
12866 (Fsubstitute_in_file_name): Likewise.
12867 (Fread_file_name): Compare decoded homedir with DIR and
12868 DEFAULT_FILENAME.
12869
12870 * alloc.c (make_specified_string): If NCHARS is negative, count
12871 the number of characters.
12872
128732003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12874
12875 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
12876 all widgets.
12877
12878 * gtkutil.h: Removed xg_ignore_next_thumb.
12879
128802003-03-18 Kenichi Handa <handa@m17n.org>
12881
12882 * coding.c (Vchar_coding_system_table): Remove this variable.
12883 (Vcoding_system_safe_chars): New variable.
12884 (intersection): Remove this function.
12885 (find_safe_codings): Don't use Vchar_coding_system_table, but try
12886 all codings in SAFE_CODINGS.
12887 (Ffind_coding_systems_region_internal): Adjust for the change of
12888 find_safe_codings. Get generic coding systems from
12889 Vcoding_system_safe_chars.
12890 (Fdefine_coding_system_internal): New function.
12891 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
12892 Initialize and staticpro Vcoding_system_safe_chars.
12893
128942003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12895
12896 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
12897 equal old values before updating.
12898
12899 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
12900
12901 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
12902
129032003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12904
12905 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
12906 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
12907 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
12908 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
12909 (xg_create_scroll_bar): Pass bar to button event callback.
12910 (xg_find_top_left_in_fixed): New function.
12911 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
12912 whole scroll bar area. Get old position with
12913 xg_find_top_left_in_fixed, calculate and only clear needed areas.
12914 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
12915 dragging is in progress. Calculate whole as for Motif.
12916 Remove code that saved last values. Call gtk_range functions to
12917 set scroll bar sizes.
12918
12919 * gtkutil.h: Removed xg_ignore_next_thumb.
12920
129212003-03-17 Juanma Barranquero <lektu@terra.es>
12922
12923 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
12924 and files included from it.
12925
129262003-03-18 Stefan Monnier <monnier@cs.yale.edu>
12927
12928 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
12929 multiple occurrences of the same keymap under different prefixes.
12930 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
12931
129322003-03-16 Jason Rumney <jasonr@gnu.org>
12933
12934 * w32gui.h: Use HDC for Display.
12935
12936 * w32term.c (w32_encode_char): Prevent double-byte chars from
12937 crashing Emacs.
12938
12939 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
12940 as binary.
12941
129422003-03-16 Juanma Barranquero <lektu@terra.es>
12943
12944 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
12945
129462003-03-16 Kim F. Storm <storm@cua.dk>
12947
12948 The following changes consolidate some of the gui-independent
12949 parts of the processing and drawing of "glyph strings" from
12950 xterm.c, w32term.c, and macterm.c into xdisp.c.
12951
12952 * dispextern.h (struct glyph): Reduce face_id member from 22 to
12953 21 bits (this reduces number of faces from 4M to 2M).
12954 Replace W32 specific w32_font_type member (2 bits) by generic
12955 font_type member (3 bits) for portability.
12956 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
12957 (enum draw_glyphs_face): Define here.
12958 (struct glyph_string): Define here. Merge W32 and X versions.
12959 (struct redisplay_interface): New members per_char_metric,
12960 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
12961 (VCENTER_BASELINE_OFFSET): Define here.
12962 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
12963 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
12964
12965 * xdisp.c: Consolidate gui-independent "glyph string" code here.
12966 (dump_glyph_string): Moved here.
12967 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
12968 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
12969 (fill_composite_glyph_string, fill_glyph_string)
12970 (fill_image_glyph_string, fill_stretch_glyph_string)
12971 (left_overwritten, left_overwriting, right_overwritten)
12972 (right_overwriting, get_char_face_and_encoding)
12973 (set_glyph_string_background_width, compute_overhangs_and_x)
12974 (append_glyph, append_composite_glyph, produce_image_glyph)
12975 (take_vertical_position_into_account, append_stretch_glyph)
12976 (produce_stretch_glyph): New generic functions (based on X version).
12977 Call platform specific functions through rif.
12978 (INIT_GLYPH_STRING): New macro, hides W32 details.
12979 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
12980 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
12981 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
12982 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
12983 (notice_overwritten_cursor):
12984 Generic functions exported to platform modules. Users changed.
12985
12986 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
12987 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
12988 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
12989 New macros for consolidated code.
12990
12991 * xterm.c: Remove consolidated defines and code.
12992 (x_per_char_metric, x_encode_char)
12993 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
12994 (x_redisplay_interface): Add new members.
12995
12996 * w32gui.h (Display): Add dummy typedef for consolidation.
12997 (XChar2b): Define alias for wchar_t for consolidation.
12998 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
12999
13000 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
13001 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
13002 New macros for consolidation.
13003
13004 * w32term.c: Remove consolidated defines and code.
13005 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
13006 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
13007 (w32_per_char_metric): Change font_type arg to int for RIF.
13008 (w32_encode_char): Return int according to RIF requirements.
13009 (w32_compute_glyph_string_overhangs): Adapt to RIF.
13010 (w32_get_glyph_overhangs): New function for RIF. Uses generic
13011 x_get_glyph_overhangs.
13012 (w32_redisplay_interface): Add new members.
13013
13014 * macgui.h (XChar2b): Move typedef here for consolidation.
13015 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
13016
13017 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
13018 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
13019 consolidation.
13020
13021 * macterm.c: Remove consolidated defines and code.
13022 (mac_per_char_metric): New function for RIF.
13023 (mac_encode_char): Adapt to new RIF requirements.
13024 (mac_compute_glyph_string_overhangs): Adapt for RIF.
13025 (x_redisplay_interface): Add new members.
13026
130272003-03-15 Stefan Monnier <monnier@cs.yale.edu>
13028
13029 * keymap.c (Vmenu_events): New var.
13030 (syms_of_keymap): Initialize it.
13031 (where_is_internal): Check more carefully what is a menu event.
13032
130332003-03-14 Richard M. Stallman <rms@gnu.org>
13034
13035 * lread.c (read1): After #!, exit loop on eof.
13036
130372003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13038
13039 * gtkutil.h: Add declaration for xg_frame_cleared.
13040
13041 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
13042
13043 * gtkutil.c (struct xg_last_sb_pos): New structure.
13044 (handle_fixed_child): New function.
13045 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
13046 and force a redraw on them.
13047 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
13048 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
13049 so we can avoid unneeded redraws.
13050 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
13051 and force a redraw on the scroll bar.
13052 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
13053 if xg_last_sb_pos shows the positions are up to date.
13054 (xg_frame_cleared): New function.
13055
130562003-03-13 Kenichi Handa <handa@m17n.org>
13057
13058 * coding.c (Fdetect_coding_region): Fix docstring.
13059 (Fdetect_coding_string): Fix docstring.
13060
130612003-03-13 Andreas Schwab <schwab@suse.de>
13062
13063 * gtkutil.c: Add prototype for create_menus.
13064
13065 * data.c (long_to_cons): Fix type of top.
13066
13067 * xselect.c (selection_data_to_lisp_data): Use int instead of
13068 long for an integer of size 4.
13069
13070 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
13071 (xg_tool_bar_help_callback): Likewise.
13072
130732003-03-12 Andreas Schwab <schwab@suse.de>
13074
13075 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
13076
130772003-03-12 Kim F. Storm <storm@cua.dk>
13078
13079 The following changes consolidate the fringe handling from
13080 xterm.c, w32term.c, and macterm.c into xdisp.c.
13081
13082 * xdisp.c: Consolidate fringe handling code here.
13083 (left_bits, right_bits, continued_bits, continuation_bits)
13084 (ov_bits, zv_bits): Define fringe bitmaps.
13085 (fringe_bitmaps): New array holding fringe bitmaps.
13086 (draw_fringe_bitmap): Draw a specific bitmap; call display
13087 specific drawing routine via rif->draw_fringe_bitmap.
13088 (draw_row_fringe_bitmaps): Generic replacement for
13089 x_draw_row_fringe_bitmaps; all callers changed.
13090 (compute_fringe_widths): Generic replacement for
13091 x_compute_fringe_widths; all callers changed.
13092
13093 * dispextern.h (enum fringe_bitmap_type): Define here.
13094 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
13095 (fringe_bitmaps): Declare extern.
13096 (struct redisplay_interface): New member draw_fringe_bitmap.
13097 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
13098
13099 * xterm.c: Remove generic fringe code.
13100 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
13101 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
13102
13103 * w32term.c: Remove generic fringe code.
13104 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
13105 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
13106
13107 * macterm.c: Remove generic fringe code.
13108 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
13109 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
13110
131112003-03-11 Stefan Monnier <monnier@cs.yale.edu>
13112
13113 * print.c (Fprin1_to_string): Return unibyte string if possible.
13114
131152003-03-09 David Kastrup <dak@gnu.org>
13116
13117 * process.c (read_process_output): We have allocated enough space
13118 for readmax and carryover, so actually use the alloted space.
13119
131202003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13121
13122 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
13123 toolkit scrollbar click.
13124
13125 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
13126 for USE_GTK.
13127 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
13128 also.
13129 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
13130 scrollbar and control is pressed, call x_scroll_bar_handle_click.
13131
13132 * gtkutil.h (xg_get_scroll_id_for_window): Declare.
13133
13134 * gtkutil.c (xg_get_scroll_id_for_window): New function.
13135 (xg_tool_bar_item_expose_callback): New function.
13136 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
13137 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
13138 on the tool bar widget.
13139 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
13140 to expose on the tool bar item widgets.
13141
131422003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13143
13144 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
13145 struct image* when deciding to update (struct image* may have been
13146 deleted from the image cache).
13147
13148 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
13149 the event isn't for a frame (i.e. for dialogs).
13150
131512003-03-07 Kenichi Handa <handa@m17n.org>
13152
13153 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
13154 composition components reaches the limit, terminate composing.
13155 (COMPOSITION_OK): New macro.
13156 (detect_coding_iso2022): Use it if an escape sequence for
13157 composition is found.
13158 (coding_restore_composition): Adjust the number of composition
13159 components if it is not sane.
13160
131612003-03-06 Juanma Barranquero <lektu@terra.es>
13162
13163 * w32term.h (struct w32_display_info): Add xrdb member to support
13164 passing resources via -xrm on Windows.
13165
13166 * w32term.c (w32_make_rdb): New function.
13167 (w32_term_init): Use it to initialize xrdb member of w32_display_info
13168 struct. Delete leftover code.
13169
13170 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
13171 for resources passed on the command line.
13172
13173 * w32reg.c (w32_get_rdb_resource): New function.
13174 (x_get_string_resource): Use it, so resources passed with -xrm
13175 supercede the ones in the registry.
13176
131772003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13178
13179 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
13180 instead of x_top_window_to_frame.
13181
131822003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13183
13184 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
13185 when restarting Emacs.
13186
131872003-03-03 Richard M. Stallman <rms@gnu.org>
13188
13189 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
13190 to run kill-buffer-query-functions.
13191 (Qkill_buffer_query_functions): New var.
13192 (syms_of_buffer): Init and staticpro it.
13193
131942003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13195
13196 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
13197
131982003-02-25 Kim F. Storm <storm@cua.dk>
13199
13200 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
13201 If centering point failed to make whole line visible and vscroll
13202 is non-zero, disable vscroll and try centering point again.
13203
13204 * lread.c (read1): Accept `single space' syntax like (? x).
13205
132062003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13207
13208 * keyboard.c (cancel_hourglass_unwind): Surround with
13209 #ifdef HAVE_X_WINDOWS
13210
132112003-02-25 Kenichi Handa <handa@m17n.org>
13212
13213 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
13214 process only when "subprocesses" is defined.
13215
132162003-02-24 Stefan Monnier <monnier@cs.yale.edu>
13217
13218 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
13219
132202003-02-24 Juanma Barranquero <lektu@terra.es>
13221
13222 * callint.c (fix_command): Declare as static void and move before
13223 Fcall_interactively.
13224
13225 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
13226 (syms_of_xdisp): Don't initialize Qwhen.
13227
132282003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13229
13230 * keyboard.c (cancel_hourglass_unwind): New function.
13231 (command_loop_1): Cancel hourglass with unwind-protect.
13232
132332003-02-23 Richard M. Stallman <rms@gnu.org>
13234
13235 * callint.c (fix_command): New subroutine, from Fcall_interactively.
13236 Detect (when ... (region-beginning)) etc.
13237 (Fcall_interactively): Call fix_command.
13238 (Qif, Qwhen): New variables.
13239 (syms_of_callint): Init and staticpro them.
13240
13241 * regex.c (print_partial_compiled_pattern): Output to stderr.
13242
132432003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
13244
13245 * dired.c (directory_files_internal): Don't expand directory.
13246 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
13247 instead. From Lars Hansen <larsh@math.ku.dk>.
13248
132492003-02-22 Stefan Monnier <monnier@cs.yale.edu>
13250
13251 * fns.c (string_to_multibyte): Remove unused var i.
13252 (Flanginfo): Fix int/Lisp_Object mixup.
13253 (void_call2): New fun.
13254 (Fmap_char_table): Use it in place of call2.
13255
13256 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
13257
13258 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
13259
13260 * keymap.c (copy_keymap_1): Make it static.
13261
13262 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
13263
132642003-02-22 David Ponce <david@dponce.com>
13265
13266 * lread.c (Fload): Don't check STRING_MULTIBYTE.
13267
132682003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13269
13270 * process.h: Removed subtty field from struct Lisp_Process.
13271
13272 * process.c (create_process): Remove setting of subtty.
13273 (emacs_get_tty_pgrp): New function.
13274 (Fprocess_running_child_p, process_send_signal):
13275 Call emacs_get_tty_pgrp instead of ioctl.
13276 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
13277
132782003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
13279
13280 * keymap.c (Fdefine_key): Doc fix.
13281
132822003-02-21 Juanma Barranquero <lektu@terra.es>
13283
13284 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
13285
13286 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
13287 POLLING_PROBLEM_IN_SELECT.
13288
13289 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
13290 Delete #undef of POLLING_PROBLEM_IN_SELECT.
13291
13292 * s/hpux10-20.h: New file.
13293
13294 * process.c (wait_reading_process_input):
13295 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
13296
132972003-02-20 Kenichi Handa <handa@m17n.org>
13298
13299 * fontset.c (check_fontset_name): If NAME is nil, return the
13300 default fontset.
13301 (override_font_info): New function.
13302 (Fset_fontset_font): Document that NAME nil means the default fontset.
13303 (Ffontset_info): If FONTSET is not the default fontset, merge
13304 FONTSET onto the copy of the default fontset, and work on that
13305 copy. Document that NAME nil means the default fontset.
13306 (Ffontset_font): Document that NAME nil means the default fontset.
13307
13308 * process.c (setup_process_coding_systems): If the process's
13309 in/out descriptor is -1, do nothing.
13310
133112003-02-19 Andreas Schwab <schwab@suse.de>
13312
13313 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
13314 Add prototypes.
13315
133162003-02-19 Kenichi Handa <handa@m17n.org>
13317
13318 * xfaces.c (try_alternative_families): Try all scalable fonts if
13319 Vscalable_fonts_allowed is not Qt.
13320
133212003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13322
13323 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
13324
133252003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13326
13327 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
13328 names.
13329
13330 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
13331 (sorted_font_list): Move allocation of struct font_name to
13332 x_face_list_fonts.
13333 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
13334 (Fx_list_fonts): Set maxnames to -1 to get all font names.
13335
133362003-02-18 Kim F. Storm <storm@cua.dk>
13337
13338 * lread.c (read1): Fix last change.
13339 "`" is not always special. Allow "?" after a character constant.
13340
133412003-02-18 Andrew Choi <akochoi@shaw.ca>
13342
13343 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
13344
133452003-02-18 Andreas Schwab <schwab@suse.de>
13346
13347 * window.c (window_scroll_pixel_based): Move outside a
13348 multi-glyph character before setting new window start.
13349
13350 * xdisp.c (in_display_vector_p): New function.
13351 * dispextern.h (in_display_vector_p): Declare.
13352
133532003-02-18 Kim F. Storm <storm@cua.dk>
13354
13355 * lread.c (read1): Fix and relax read syntax.
13356 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
13357 Only recognize "," after dotted-pair dot if inside backquote.
13358 Never include "`" or "," (inside backquote) in a symbol.
13359 Allow dotted-pair dot after a character constant.
13360 Allow "`" and "," (inside backquote) after a character constant.
13361
133622003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13363
13364 * gtkutil.c (xg_tool_bar_expose_callback): New function.
13365 (xg_create_tool_bar): Force style of tool bar to be horizontal with
13366 icons. Set name of tool bar to emacs-toolbar.
13367 (update_frame_tool_bar): Connect expose event to
13368 xg_tool_bar_expose_callback.
13369
133702003-02-17 Richard M. Stallman <rms@gnu.org>
13371
13372 * keyboard.c (this_command_key_count_reset): New variable.
13373 Initiatize to 0 where this_command_key_count is set.
13374 (read_char): Save and restore this_command_key_count_reset
13375 around input method code.
13376 (read_char): If this_command_key_count_reset, echo reread commands.
13377 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
13378
133792003-02-17 Kenichi Handa <handa@m17n.org>
13380
13381 * fns.c (string_to_multibyte): Always return a multibyte string.
13382
133832003-02-16 Jason Rumney <jasonr@gnu.org>
13384
13385 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
13386 Negative max_fonts parameter means list all.
13387
133882003-02-14 Dave Love <fx@gnu.org>
13389
13390 * fns.c (Flanginfo): Doc fix.
13391
133922003-02-13 Kim F. Storm <storm@cua.dk>
13393
13394 * lread.c (read_escape): Interpret \s as a SPACE character, except
13395 for \s-X in a character constant which still is the super modifier.
13396 (read1): Signal an `invalid read syntax' error if a character
13397 constant is immediately followed by a digit or symbol character.
13398
13399 * search.c (Fmatch_data): Doc fix. Explicitly state that
13400 match-data is undefined if last search failed.
13401
13402 * keymap.c (Fcommand_remapping): Rename from Fremap_command.
13403 All uses changed.
13404
134052003-02-12 Juanma Barranquero <lektu@terra.es>
13406
13407 * eval.c (Fdefmacro): Fix typo.
13408
134092003-02-12 Kim F. Storm <storm@cua.dk>
13410
13411 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
13412 macro is a string, convert meta modifiers in string when copying
13413 the string into a vector.
13414
134152003-02-11 Kim F. Storm <storm@cua.dk>
13416
13417 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
13418
134192003-02-11 Kenichi Handa <handa@m17n.org>
13420
13421 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
13422
134232003-02-10 Kim F. Storm <storm@cua.dk>
13424
13425 * process.c: Doc fixes.
13426 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
13427
134282003-02-10 Kenichi Handa <handa@m17n.org>
13429
13430 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
13431
13432 * process.c (QCfilter_multibyte): New variable.
13433 (setup_process_coding_systems): New function.
13434 (Fset_process_buffer, Fset_process_filter):
13435 Call setup_process_coding_systems.
13436 (Fstart_process): Initialize the member `filter_multibyte' of
13437 struct Lisp_Process.
13438 (create_process): Call setup_process_coding_systems.
13439 (Fmake_network_process): New keyward `:filter-multibyte'.
13440 Initialize the member `filter_multibyte' of struct Lisp_Process.
13441 Call setup_process_coding_systems.
13442 (server_accept_connection): Call setup_process_coding_systems.
13443 (read_process_output): If the process has a filter, decide the
13444 multibyteness of a string to given to the filter by
13445 `filter_multibyte' member of the process. If the process doesn't
13446 have a filter and the result of conversion is unibyte, use
13447 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
13448 multibyte form.
13449 (Fset_process_coding_system): Call setup_process_coding_systems.
13450 (Fset_process_filter_multibyte): New function.
13451 (Fprocess_filter_multibyte_p): New function.
13452 (syms_of_process): Intern and staticpro QCfilter_multibyte.
13453 Defsubr Sset_process_filter_multibyte and
13454 Sprocess_filter_multibyte_p.
13455
13456 * process.h (struct Lisp_Process): New member filter_multibyte.
13457
13458 * lisp.h (setup_process_coding_systems): Add prototype.
13459
13460 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
13461 process, update coding systems for the process.
13462
134632003-02-09 Kenichi Handa <handa@m17n.org>
13464
13465 * fns.c (string_to_multibyte): New function.
13466 (Fstring_to_multibyte): New function.
13467 (syms_of_fns): Defsubr it.
13468
134692003-02-08 Andreas Schwab <schwab@suse.de>
13470
13471 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
13472 instead of the substitution.
13473
134742003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13475
13476 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
13477
13478 * xmenu.c (menu_position_func): Adjust menu popup position so that
13479 the menu is fully visible.
13480
134812003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13482
13483 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
13484 (x_make_frame_invisible, x_wm_set_icon_position):
13485 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
13486
13487 * xfns.c (x_set_name, x_set_title): Ditto.
13488
134892003-02-04 Richard M. Stallman <rms@gnu.org>
13490
13491 * keyboard.c (echo_now): Update before_command_echo_length.
13492 (Freset_this_command_lengths): Reset this_command_key_count etc.
13493 immediately rather than arranging to do it later.
13494 (before_command_key_count_1, before_command_echo_length_1)
13495 (before_command_restore_flag): Vars deleted.
13496 (add_command_key): Don't handle before_command_restore_flag.
13497 (read_char, record_menu_key): Don't update before_command_key_count or
13498 before_command_echo_length.
13499 (read_char): Don't handle before_command_restore_flag.
13500
13501 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
13502 in direct-output clauses if it wouldn't be called in the ordinary case.
13503
135042003-02-04 Kim F. Storm <storm@cua.dk>
13505
13506 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
13507
135082003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13509
13510 * gtkutil.c (remove_from_container): Copying list is not needed.
13511 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
13512 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
13513 on list returned from gtk_container_get_children to avoid memory leak.
13514
135152003-02-01 Jason Rumney <jasonr@gnu.org>
13516
13517 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
13518 local malloc.
13519 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
13520 definitions in xpm.h.
13521 (init_xpm_functions): New function.
13522 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
13523 (init_external_image_libraries): Try to load libXpm.dll.
13524
13525 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
13526 timestamp.
13527
135282003-01-31 Dave Love <fx@gnu.org>
13529
13530 * syntax.c (Fskip_chars_forward)
13531 (open-paren-in-column-0-is-defun-start): Doc fix.
13532
135332003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
13534
13535 * fileio.c: Support // at start of name for Cygwin (just added proper
13536 preprocessor tests).
13537
13538 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
13539
13540 * Makefile.in: Use @EXEEXT@ for Cygwin.
13541
13542 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
13543
13544 * s/cygwin.h: Added for Cygwin port.
13545
135462003-01-31 Juanma Barranquero <lektu@terra.es>
13547
13548 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
13549 when including gif_lib.h.
13550 (init_gif_functions, init_tiff_functions): New functions.
13551 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
13552 Windows. Disable color table lookups. Call library functions
13553 through pointers determined at runtime.
13554 (init_external_image_libraries): Try to load libungif.dll and
13555 libtiff.dll.
13556
135572003-01-31 Kenichi Handa <handa@m17n.org>
13558
13559 * xdisp.c (SKIP_GLYPHS): New macro.
13560 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
13561
135622003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13563
13564 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
13565
135662003-01-30 Dave Love <fx@gnu.org>
13567
13568 * alloc.c (Vgc_elapsed, gcs_done): New variables.
13569 (Fgarbage_collect): Use them.
13570 (init_alloc, syms_of_alloc): Set them up.
13571
135722003-01-30 Juanma Barranquero <lektu@terra.es>
13573
13574 * w32fns.c (init_external_image_libraries): Add missing operator.
13575
135762003-01-29 Jason Rumney <jasonr@gnu.org>
13577
13578 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
13579 an alternative name for jpeg.dll.
13580
135812003-01-29 Kenichi Handa <handa@m17n.org>
13582
13583 * xdisp.c (set_cursor_from_row): Pay attention to string display
13584 properties.
13585
135862003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
13587
13588 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
13589 <escape>.
13590 (keycode_to_xkeysym_table): Reformat and add more comments.
13591 (XTread_socket): Drop special case for backspace.
13592
135932003-01-28 Andrew Choi <akochoi@shaw.ca>
13594
13595 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
13596 values in old-style RGB specs.
13597
135982003-01-27 Juanma Barranquero <lektu@terra.es>
13599
13600 * w32fns.c (init_external_image_libraries): Try alternate names for the
13601 jpeg dll.
13602
136032003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13604
13605 * gtkutil.c (create_dialog, xg_separator_p)
13606 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
13607 before calling strcmp or strlen.
13608
136092003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13610
13611 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
13612 and handle image load failure.
13613
136142003-01-26 Jason Rumney <jasonr@gnu.org>
13615
13616 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
13617 New functions.
13618 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
13619 Disable color table lookups. Call jpeg library functions
13620 through pointers determined at runtime.
13621 (init_external_image_libraries): Try to load jpeg.dll.
13622
136232003-01-25 Richard M. Stallman <rms@gnu.org>
13624
13625 * lisp.h: Declare format2 instead of format1.
13626
13627 * fileio.c (barf_or_query_if_file_exists):
13628 Call format2 instead of format1.
13629
13630 * editfns.c (format2): New function, replaces format1
13631 but takes exactly two Lisp Objects as format args.
13632
13633 * buffer.c (Fkill_buffer): Call format2 instead of format1.
13634
136352003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13636
13637 * xterm.h: Change to return value of x_dispatch_event to int.
13638
13639 * xterm.c (x_filter_event): New function.
13640 (event_handler_gdk, XTread_socket): Call x_filter_event.
13641 (x_dispatch_event): Change to return value of finish.
13642 (event_handler_gdk): Use return value from x_dispatch_event.
13643
13644 * xfns.c (x_window): Call create_frame_xic for GTK version to
13645 initialize input methods.
13646
13647 * gtkutil.h: Add (void) prototypes.
13648
13649 * gtkutil.c (create_menus): Remove code that puts the help menu to
13650 the right.
13651
136522003-01-25 Jason Rumney <jasonr@gnu.org>
13653
13654 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
13655 [HAVE_PNG]: Sync with xfns.c version.
13656 (png_load): Adjust colors for Windows. Use Windows
13657 bitmaps. Disable color table lookups.
13658 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
13659 (init_png_functions): New function.
13660 (png_read_from_memory, png_load): Call png library functions
13661 through pointers determined at runtime.
13662 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
13663 (init_external_image_libraries): New function.
13664 (init_xfns): Call it.
13665
136662003-01-24 Andreas Schwab <schwab@suse.de>
13667
13668 * minibuf.c (Fminibuffer_message): Verify type of parameter.
13669
136702003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13671
13672 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
13673 of static initializer.
13674
136752003-01-24 Dave Love <fx@gnu.org>
13676
13677 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
13678 architectures.
13679
13680 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
13681 Use __alignof__.
13682
136832003-01-24 Kenichi Handa <handa@m17n.org>
13684
13685 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
13686 It it is nonzero, don't pretend that an invisible area doesn't exist.
13687 (command_loop_1): Call adjust_point_for_property with proper
13688 second arg.
13689
136902003-01-22 Jason Rumney <jasonr@gnu.org>
13691
13692 Sync changes with xterm.c and xfns.c.
13693
13694 * w32term.c (x_draw_glyph_string_foreground)
13695 (x_draw_composite_glyph_string_foreground): Implement overstriking.
13696
13697 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
13698 phys_cursor's hpos is overwritten. This is still not completely
13699 correct, as it doesn't really make sense to use hpos at all to
13700 get the cursor glyph (as that is relative to the width of the
13701 characters on the line, which may have changed during the update).
13702
13703 * w32term.c (notice_overwritten_cursor): Handle the special case
13704 of the cursor being in the first blank non-text line at the
13705 end of a window.
13706
13707 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
13708 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
13709 Compute from the x position returned by x_draw_glyphs.
13710
13711 (x_display_and_set_cursor): Don't set phys_cursor_width here,
13712 except for NO_CURSOR and system caret, to make phys_cursor_width
13713 contain what its name suggests.
13714 (notice_overwritten_cursor): Consider the cursor image erased if
13715 the output area intersects the cursor image in y-direction.
13716
13717 * w32term.c (note_mode_line_or_margin_highlight): Rename from
13718 note_mode_line_highlight and extend.
13719
13720 * w32term.c (last_window): New variable.
13721 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
13722 (note_mouse_movement): Remove reimplemented code in #if 0.
13723
13724 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
13725 not update_mode_lines, and always set it to 1.
13726
137272003-01-21 Jason Rumney <jasonr@gnu.org>
13728
13729 * w32fns.c (IDC_HAND): Define it if system headers don't.
13730
137312003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
13732
13733 * w32term.h (struct w32_output): New member hand_cursor.
13734 (WM_EMACS_SETCURSOR): New message definition.
13735
13736 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
13737 function w32_define_cursor.
13738 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
13739 position, change member name output_data.x to output_data.w32 and
13740 add function w32_define_cursor.
13741 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
13742 and change member name output_data.x to output_data.w32.
13743 (w32_initialize_display_info):
13744 Setup dpyinfo->vertical_scroll_bar_cursor.
13745
13746 * w32fns.c (Vx_hand_shape): New variable.
13747 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
13748 WM_EMACS_SETCURSOR.
13749 (x-create-frame): Setup Cursor types.
13750
137512003-01-21 David Ponce <david@dponce.com>
13752
13753 * w32term.c (w32_encode_char): For DIM=1 charset, set
13754 ccl->reg[2] to -1 before calling ccl_driver.
13755 (Sync. with xterm.c x_encode_char change by Kenichi Handa
13756 <handa@m17n.org> on 2002-09-30.)
13757 (w32_draw_relief_rect): Declare all args.
13758 (w32_define_cursor): New.
13759
13760 * w32fns.c (w32_load_cursor): New function.
13761 (w32_init_class): Use it.
13762 (x_put_x_image): Declare all args.
13763
137642003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk>
13765
13766 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
13767
137682003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13769
13770 * gtkutil.c: Must include stdio.h before termhooks.h
13771
137722003-01-21 Dave Love <fx@gnu.org>
13773
13774 * alloc.c (Fgc_status): Print zombie list.
13775 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
13776 Fix assignment of zombies.
13777 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
13778 Don't take car of non-cons.
13779
13780 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
13781
13782 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
13783
137842003-01-20 David Ponce <david@dponce.com>
13785
13786 * w32menu.c (digest_single_submenu): Declare all args.
13787
13788 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
13789 changes in xmenu.c:
13790
13791 (parse_single_submenu): Use individual keymap's prompt
13792 string as pane name, if there is one.
13793 (set_frame_menubar): Save menu_items_n_panes from each call to
13794 parse_single_submenu and use it when calling digest_single_submenu.
13795
137962003-01-20 Steven Tamm <steventamm@mac.com>
13797
13798 * macterm.c (XTread_socket): Check for valid, visible window
13799 before sending a scroll-wheel event.
13800
138012003-01-20 Richard M. Stallman <rms@gnu.org>
13802
13803 * xdisp.c (redisplay_window): If mini window's buffer is not
13804 a minibuffer, then redisplay it like other windows.
13805
138062003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13807
13808 * gtkutil.c (xg_create_frame_widgets): Check if there is an
13809 external tool bar before setting tool bar height.
13810
138112003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13812
13813 * xterm.c (handle_one_xevent): Surround popup_activated
13814 with #ifdef:s for non-toolkit version.
13815
13816 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
13817 (gtkutil.o): New file.
13818 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
13819 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
13820
13821 * gtkutil.c: New file for GTK version.
13822
13823 * gtkutil.h: New file for GTK version.
13824
13825 * xterm.h: Add xt_or_gtk_widget.
13826 Include gtk files for USE_GTK.
13827 (struct x_output): Add toolbar_height.
13828 (struct x_output): Add GTK widgets and Gdk size_hints.
13829 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
13830 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
13831 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
13832
13833 * xterm.c: Include gtkutil.h for USE_GTK.
13834 (free_frame_menubar): Declare extern void for USE_GTK.
13835 (note_mouse_highlight): Check popup_activated for USE_GTK.
13836 (xt_action_hook): Don't compile if USE_GTK.
13837 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
13838 (xg_scroll_callback): New function.
13839 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
13840 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
13841 for USE_GTK.
13842 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
13843 xg_show_scroll_bar for USE_GTK.
13844 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
13845 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
13846 (event_handler_gdk): New function for USE_GTK.
13847 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
13848 (handle_one_xevent): Make sure widget is mapped before
13849 calling x_real_positions for USE_GTK.
13850 (XTread_socket): Add GTK event loop for USE_GTK.
13851 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
13852 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
13853 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
13854 (x_iconify_frame): Add code for USE_GTK.
13855 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
13856 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
13857 is in gtkutil.c.
13858 (x_term_init): Add initialization for GTK.
13859 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
13860
13861 * xmenu.c: Include gtkutil.h for USE_GTK.
13862 (Fx_popup_menu): Use current position if x and y is NIL.
13863 (single_menu_item, single_menu_item, Fx_popup_dialog):
13864 Check for USE_GTK.
13865 (popup_widget_loop): New function for USE_GTK.
13866 (x_activate_menubar): Add code for USE_GTK.
13867 (popup_activate_callback, popup_deactivate_callback)
13868 (menu_highlight_callback, menubar_selection_callback):
13869 Add USE_GTK versions.
13870 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
13871 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
13872 (free_frame_menubar): Only compile if not USE_GTK. GTK version
13873 is in gtkutil.c.
13874 (popup_selection_callback): New version for USE_GTK.
13875 (create_and_show_popup_menu): New fuction, one USE_GTK version and
13876 one USE_X_TOOLKIT version.
13877 (xmenu_show): Call create_and_show_popup_menu.
13878 (dialog_selection_callback): New version for USE_GTK.
13879 (create_and_show_dialog): New fuction, one USE_GTK version and
13880 one USE_X_TOOLKIT version.
13881 (xdialog_show): Call create_and_show_dialog.
13882
13883 * xfns.c: Include gtkutil for USE_GTK.
13884 (x_window_to_frame, x_any_window_to_frame)
13885 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
13886 (x_top_window_to_frame): Add code for USE_GTK.
13887 (x_set_background_color): Call xg_set_background_color for GTK.
13888 (x_set_menu_bar_lines): Check for USE_GTK.
13889 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
13890 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
13891 (x_window): Call xg_create_frame_widgets for USE_GTK.
13892 (Fx_create_frame): Check for USE_GTK
13893 (Fx_file_dialog): New implementation for USE_GTK.
13894
13895 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
13896 (update_menu_bar): Add check for USE_GTK.
13897 (update_tool_bar): Add check for USE_GTK and external tool bar.
13898 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
13899 (redisplay_internal): Add check for USE_GTK and popup_activated.
13900 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
13901 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
13902 (display_menu_bar): Add check for USE_GTK
13903
13904 * lisp.h (Vx_resource_name): Declare extern.
13905
13906 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
13907 for USE_GTK.
13908 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
13909
13910 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
13911 (FRAME_EXTERNAL_TOOL_BAR): New macro.
13912 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
13913
13914 * fileio.c (Fread_file_name): Add check for USE_GTK.
13915
13916 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
13917 Add check for USE_GTK.
13918
13919 * config.in: Added HAVE_GTK
13920
13921 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
13922
139232003-01-18 Stefan Monnier <monnier@cs.yale.edu>
13924
13925 * charset.h (Funibyte_char_to_multibyte): Export.
13926
139272003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13928
13929 * xmenu.c (mouse_position_for_popup): New function.
13930 (Fx_popup_menu): Call mouse_position_for_popup for X and
13931 mouse_position_hook for others.
13932
139332003-01-17 Kim F. Storm <storm@cua.dk>
13934
13935 * editfns.c (Finsert): Mention `string-make-multibyte' and
13936 `string-as-multibyte' in doc string.
13937
139382003-01-17 Kenichi Handa <handa@m17n.org>
13939
13940 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
13941
13942 * editfns.c (Fformat): Convert an unibyte char argument that is
13943 formatted by "%c" to multibyte if the total result must be a
13944 multibyte string.
13945
139462003-01-16 Kim F. Storm <storm@cua.dk>
13947
13948 * process.c (set-process-filter): Document unibyte/multibyte-ness
13949 of string argument.
13950
139512003-01-16 Kenichi Handa <handa@m17n.org>
13952
13953 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
13954
13955 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
13956 (re_search_2): Likewise.
13957
139582003-01-15 Kenichi Handa <handa@m17n.org>
13959
13960 * xdisp.c (message_dolog): Fix bug of the case that *Message*
13961 buffer is unibyte.
13962
139632003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
13964
13965 * fns.c (Fsubstring): Clarify doc string.
13966
13967 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
13968 (Fprevious_char_property_change)
13969 (Fnext_single_char_property_change)
13970 (Fprevious_single_char_property_change, Fnext_property_change)
13971 (Fnext_single_property_change, Fprevious_property_change)
13972 (Fprevious_single_property_change, Fadd_text_properties)
13973 (Fput_text_property, Fset_text_properties)
13974 (Fremove_text_properties, Fremove_list_of_text_properties)
13975 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
13976
139772003-01-14 Kim F. Storm <storm@cua.dk>
13978
13979 * process.h (struct Lisp_Process): New member plist replaces old
13980 member private_vars. All uses changed.
13981
13982 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
13983 (QCplist): Rename from QCvars. Change all uses.
13984 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
13985 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
13986 (syms_of_process): Intern, staticpro, defsubr these.
13987 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
13988
139892003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
13990
13991 * m/delta.h: Remove (obsolete).
13992
139932003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
13994
13995 * fileio.c (Fdelete_directory, Fdelete_file): Document the
13996 behaviour in front of symlinks.
13997 (Fdelete_file): Raise an error on directories.
13998
139992003-01-13 Dave Love <fx@gnu.org>
14000
14001 * fns.c (Freverse): Use QUIT.
14002
140032003-01-13 Richard M. Stallman <rms@gnu.org>
14004
14005 * minibuf.c (minibuffer_completion_contents):
14006 Error if point is inside prompt.
14007
14008 * keyboard.c (command_loop_1): Don't redisplay directly
14009 if there's a post-command-hook.
14010
14011 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
14012 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
14013
140142003-01-12 Kim F. Storm <storm@cua.dk>
14015
14016 * process.h (struct Lisp_Process): New member private_vars.
14017
14018 * process.c (QCvars): New variable.
14019 (syms_of_process): Intern and staticpro it.
14020 (Fset_process_contact): Removed function.
14021 (Fprocess_variable, Fset_process_variable): New functions.
14022 (syms_of_process): Defsubr them.
14023 (Fstart_process): Initialize private_vars plist to nil.
14024 (Fmake_network_process): New arg :vars to setup the private
14025 variables for new network process.
14026 (server_accept_connection): Copy server's private variables to
14027 client process.
14028
14029 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
14030 crashes). Code rewritten and simplified. Now directly aligns the
14031 pointer and recalculates pure_bytes_used, rather than aligning the
14032 size and adjusting the pointer.
14033
140342003-01-11 Kim F. Storm <storm@cua.dk>
14035
14036 * process.c (Fset_process_contact): New function.
14037 (syms_of_process): defsubr it.
14038 (make-network-process): Update doc.
14039
140402003-01-10 Andreas Schwab <schwab@suse.de>
14041
14042 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
14043 Reported by Berthold Gunreben <b.gunreben@web.de>.
14044
140452003-01-10 Dave Love <fx@gnu.org>
14046
14047 * composite.c (syms_of_composite): Make composition_hash_table weak.
14048
140492003-01-09 Kim F. Storm <storm@cua.dk>
14050
14051 * process.c (Fmake_network_process): Convert new port number
14052 to host byte order for `:service t' case. From Mario Lang.
14053
140542003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14055
14056 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
14057 instead of XtAppProcessEvent.
14058
14059 * xterm.c (handle_one_xevent): New function.
14060 (x_dispatch_event): New function.
14061 (XTread_socket): Call handle_one_xevent.
14062
14063 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
14064
14065 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
14066 call XQueryPointer to get coordinates.
14067 (popup_get_selection): Do not set popup_activated_flag to zero,
14068 let popup_deactivate_callback do that. Needed for Motif.
14069 Call x_dispatch_event instead of XtDispatchEvent.
14070 (xmenu_show): Calculate root coordinate from frame top/left position.
14071
140722003-01-08 Kim F. Storm <storm@cua.dk>
14073
14074 * process.c (server_accept_connection): Fix recording of new
14075 connection's local address in :local property of contact info.
14076 (Fmake_network_process): Record local network address for new
14077 client processes in :local property of contact info.
14078 (format-network-address): Add arg OMIT-PORT. Change callers.
14079
140802003-01-07 Dave Love <fx@gnu.org>
14081
14082 * Makefile.in (fns.o): Depend on coding.h.
14083
140842003-01-07 Markus Rost <rost@math.ohio-state.edu>
14085
14086 * minibuf.c (Fread_variable): Doc fix.
14087
14088 * eval.c (Fuser_variable_p): Doc change. For custom variables,
14089 use the same test as for custom-variable-p.
14090
140912003-01-05 Richard M. Stallman <rms@gnu.org>
14092
14093 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
14094 Count LAST_LINE_MISFIT in scroll margin for end of window.
14095 Move label too_near_end before setting SCROLL_MARGIN_POS.
14096 Set LAST_LINE_MISFIT before jumping there.
14097
14098 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
14099 scroll_conservatively case. If scrolling that much doesn't change
14100 STARTP, move it down one line.
14101
14102 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
14103 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
14104
14105 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
14106 selected frame.
14107
14108 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
14109 (syms_of_keymap): Staticpro them.
14110 (Fapropos_internal): Initialize them and clear them out.
14111 Don't GCPRO them.
14112
14113 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
14114 Doc fixes.
14115
14116 * lisp.h: New misc type Lisp_Save_Value.
14117 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
14118 (XSAVE_VALUE): New macro.
14119 (struct Lisp_Save_Value): New data type.
14120 (union Lisp_Misc): Add u_save_value alternative.
14121 (make_save_value): Declare.
14122
14123 * alloc.c (make_save_value): New function.
14124
14125 * xterm.c (x_catch_errors): Save dpy using make_save_value.
14126 (x_catch_errors_unwind): Call XSync.
14127
141282003-01-01 Richard M. Stallman <rms@gnu.org>
14129
14130 * window.c (window_scroll_pixel_based): Partially undo last change.
14131
14132 * keyboard.c (command_loop_1): Call adjust_point_for_property
14133 in direct action cases for Qforward_char and Qbackward_char.
14134 Set already_adjusted so it won't be done twice.
14135
141362002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk>
14137
14138 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
14139 type definition of size_t.
14140
141412003-01-02 Steven Tamm <steventamm@mac.com>
14142
14143 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
14144 distinguish Carbon GUI builds from X11 builds on darwin.
14145
141462002-12-30 Steven Tamm <steventamm@mac.com>
14147
14148 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
14149 to default to t.
14150
141512002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
14152
14153 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
14154
141552002-12-28 Steven Tamm <steventamm@mac.com>
14156
14157 * Makefile.in (macosx-bundle): Fix Mac OS X/Carbon port to
14158 allow building in a different directory than source. Uses some
14159 GNU Make extensions, but there is no other make on Mac OS X.
14160
141612002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
14162
14163 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
14164 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
14165 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
14166 (Fstring_to_number): Mention the returned value in the doc strings.
14167
141682002-12-23 Richard M. Stallman <rms@gnu.org>
14169
14170 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
14171 <scroll-down-aggressively>: Doc fix.
14172
14173 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
14174 string as pane name, if there is one.
14175 (set_frame_menubar): Save menu_items_n_panes from each call to
14176 parse_single_submenu and use it when calling digest_single_submenu.
14177
14178 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
14179 Don't try to make last line fully visible if it is past end of window.
14180
141812002-12-22 Steven Tamm <steventamm@mac.com>
14182
14183 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
14184 (mac_menu_show): Add support for hierarchical popup menus.
14185 (add_menu_item): Remove indentation support.
14186 (fill_submenu, fill_menu): Create hierarchical menus
14187 instead of using indentation.
14188
141892002-12-22 Richard M. Stallman <rms@gnu.org>
14190
14191 * xdisp.c (try_cursor_movement): Don't call try_window here.
14192 (redisplay_window): Never redisplay minibuffer when inactive.
14193
14194 * window.c (select_window_1): Undo 9/21 change.
14195
141962002-12-22 Steven Tamm <steventamm@mac.com>
14197
14198 * macterm.c (XTread_socket): Call KeyTranslate for control and
14199 meta to deal correctly shifted non-alpha characters, like C-S-5
14200 being treated like C-%. Do not look for shift key to deal
14201 with masking off control-key with mac-reverse-ctrl-meta.
14202
142032002-12-21 Richard M. Stallman <rms@gnu.org>
14204
14205 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
14206 If it is non-nil, run timers. Use an unwind-protect to requeue
14207 the events that were read ahead.
14208 (popup_get_selection_unwind): New subroutine.
14209 (popup_get_selection_queue): File-scope variable now holds that queue.
14210 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
14211 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
14212 Use an unwind-protect to pop down the dialog box.
14213 (xdialog_show_unwind): New subroutine implements that.
14214
14215 * xdisp.c (row_containing_pos): Change exit test using last_y.
14216 (try_window_id): Abort if row_containing_pos returns null.
14217
14218 * lread.c (load_error_handler): New function.
14219 (Fload): Handle errors in Fsubstitute_in_file_name.
14220 Don't expect Fsignal to return.
14221
14222 * eval.c: Errors and throws work right with interrupt blocking.
14223 (struct catchtag): New elt interrupt_input_blocked.
14224 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
14225 (internal_catch, Fcondition_case, internal_condition_case)
14226 (internal_condition_case_1, internal_condition_case_2): Save it.
14227 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
14228
14229 * editfns.c (Fformat): Add parens.
14230
14231 * dired.c (file_name_completion): Fix that change.
14232 Delete special quit-handling code; just use QUIT.
14233
142342002-12-21 Tak Ota <Takaaki.Ota@am.sony.com>
14235
14236 * dired.c (file_name_completion): Close directory on error
14237 just as in directory_files_internal.
14238
142392002-12-19 David Kastrup <David.Kastrup@t-online.de>
14240
14241 * window.c (Fset_window_configuration): Set old_point to correct
14242 value when new_current_buffer == current_buffer.
14243
142442002-12-17 Ben Key <bkey1@tampabay.rr.com>
14245
14246 Revisited my earlier fix for the following entry in etc/PROBLEMS:
14247 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
14248 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
14249
14250 These changes were in part based upon suggestions made by Peter
14251 'Luna' Runestig [peter@runestig.com].
14252
14253 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token)
14254 (g_b_init_get_token_information, g_b_init_lookup_account_sid)
14255 (g_b_init_get_sid_identifier_authority ): Add several static
14256 global variables.
14257
14258 * w32.c (globals_of_w32): New function. Used to initialize those
14259 global variables that must always be initialized on startup even
14260 when the global variable initialized is non zero. Its primary
14261 purpose at this time is to set the global variables
14262 g_b_init_is_windows_9x, g_b_init_open_process_token,
14263 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
14264 g_b_init_get_sid_identifier_authority to 0 on startup.
14265 Called from main.
14266
14267 * w32.c (is_windows_9x): Perform initialization only if
14268 g_b_init_is_windows_9x is equal to 0. On initialization set
14269 g_b_init_is_windows_9x equal to 1.
14270
14271 * w32.c (open_process_token): Perform initialization only if
14272 g_b_init_open_process_token is equal to 0. On initialization set
14273 g_b_init_open_process_token equal to 1.
14274
14275 * w32.c (get_token_information): Perform initialization only if
14276 g_b_init_get_token_information is equal to 0. On initialization
14277 set g_b_init_get_token_information equal to 1.
14278
14279 * w32.c (lookup_account_sid): Perform initialization only if
14280 g_b_init_lookup_account_sid is equal to 0. On initialization
14281 set g_b_init_lookup_account_sid equal to 1.
14282
14283 * w32.c (get_sid_identifier_authority): Perform initialization
14284 only if g_b_init_get_sid_identifier_authority is equal to 0.
14285 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
14286
14287 * w32fns.c (globals_of_w32fns): New function. Used to initialize
14288 those global variables that must always be initialized on startup
14289 even when the global variable initialized is non zero.
14290 Its primary purpose at this time is to initialize the global variable
14291 track_mouse_event_fn.
14292
14293 * w32fns.c (w32_wnd_proc): Remove initialization of
14294 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
14295
14296 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
14297
14298 * w32menu.c (globals_of_w32menu): New function. Used to
14299 initialize those global variables that must always be initialized
14300 on startup even when the global variable initialized is non zero.
14301 Its primary purpose at this time is to initialize the global
14302 variables get_menu_item_info and set_menu_item_info.
14303
14304 * w32menu.c (initialize_frame_menubar): Remove initialization of
14305 get_menu_item_info and set_menu_item_info.
14306
14307 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
14308
14309 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
14310 Declare them.
14311
14312 * emacs.c (main): Call globals_of_w32 prior to calling
14313 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
14314 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
14315 is defined.
14316
14317 * w32term.c (x_update_window_begin): Fix Windows API error
14318 detected by BoundsChecker. Test to determine if
14319 w32_system_caret_hwnd is NULL prior to attempting to use
14320 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
14321
14322 * w32term.c (x_update_window_end): Fix Windows API error
14323 detected by BoundsChecker. Test to determine if
14324 w32_system_caret_hwnd is NULL prior to attempting to use
14325 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
14326
143272002-12-17 Kenichi Handa <handa@m17n.org>
14328
14329 * coding.c (coding_system_require_warning): New variable.
14330 (syms_of_coding): DEFVAR it.
14331
14332 * coding.h (coding_system_require_warning): Extern it.
14333
14334 * fileio.c (choose_write_coding_system): Even if
14335 Vcoding_system_for_write is non-nil, if
14336 coding_system_require_warning is nonzero, call
14337 Vselect_safe_coding_system_function.
14338
143392002-12-17 Markus Rost <rost@math.ohio-state.edu>
14340
14341 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
14342 (lisp): Add font-core.
14343
143442002-12-13 Stefan Monnier <monnier@cs.yale.edu>
14345
14346 * textprop.c (text_read_only): New arg `propval'.
14347 (get_char_property_and_overlay): Remove unused var `next_overlay'.
14348 (verify_interval_modification): Use text_read_only's new arg.
14349
143502002-12-13 Kenichi Handa <handa@m17n.org>
14351
14352 * coding.c (Funencodable_char_position): Set pend correctly.
14353
143542002-12-12 Jason Rumney <jasonr@gnu.org>
14355
14356 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
14357 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
14358 Be more careful about when help_events are generated.
14359
143602002-12-12 Steven Tamm <steventamm@mac.com>
14361
14362 * macterm.c (mac_check_for_quit_char): Correctly set the
14363 modifiers of the event to 0.
14364 * mac.c (sys_select): Duplicate rfds before calling select to
14365 ensure that rfds survive the while loop.
14366
143672002-12-11 Kim F. Storm <storm@cua.dk>
14368
14369 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
14370 row_containing_pos returned NULL.
14371
143722002-12-10 Steven Tamm <steventamm@mac.com>
14373
14374 * mac.c (sys_read): Fix sys_read to not call select if IO is
14375 non-blocking.
14376 (sys_select): Fix sys_select to not use a timeout larger than
14377 the one given.
14378
143792002-12-10 Juanma Barranquero <lektu@terra.es>
14380
14381 * editfns.c (Fformat): Use alloca, not _alloca.
14382
143832002-12-09 Richard M. Stallman <rms@gnu.org>
14384
14385 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
14386 as the last thing.
14387
143882002-12-09 Dave Love <fx@gnu.org>
14389
14390 * s/sol2-8.h: Removed. (Not necessary.)
14391
143922002-12-09 Matthew Swift <swift@alum.mit.edu>
14393
14394 * editfns.c (Fformat): Handle precision in string conversion
14395 specifiers like libc functions do (ie, print at most that many
14396 characters).
14397
143982002-12-08 Richard M. Stallman <rms@gnu.org>
14399
14400 * xdisp.c (row_containing_pos): Check more carefully
14401 whether charpos is really in the row before returning it.
14402
144032002-12-07 Steven Tamm <steventamm@mac.com>
14404
14405 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
14406
14407 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
14408 each stack frame. This may change as it could be time consuming.
14409
14410 * macterm.c (mac_check_for_quit_char, quit_char_comp)
14411 (init_quit_char_handler, mac_determine_quit_char_modifiers)
14412 (mac_initialize): Add code to check for pressing of quit_char
14413 in the OS event queue.
14414
14415 * mac.c (sys_select): Call mac_check_for_quit_char every second
14416 while blocking on select.
14417
14418 * mac.c (sys_read): Use sys_select to test for input first
14419 before calling read, to allow C-g to break.
14420
144212002-12-07 Richard M. Stallman <rms@gnu.org>
14422
14423 * minibuf.c (Fcompleting_read): Doc fix.
14424
14425 * lread.c (syms_of_lread) <load-history>: Doc fix.
14426
14427 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
14428
14429 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
14430 autoload.
14431
14432 * data.c (Fdefalias): Record in load-history redefining an autoload.
14433
14434 * alloca.c: Undo ifdef change accidentally made on 12-04.
14435
144362002-12-06 Francesco Potorti` <pot@gnu.org>
14437
14438 * xfns.c (png_load): Avoid double gamma correction for PNG images.
14439
144402002-12-04 Richard M. Stallman <rms@gnu.org>
14441
14442 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
14443
14444 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
14445
14446 * alloca.c: Don't use #error.
14447
144482002-12-03 Dave Love <fx@gnu.org>
14449
14450 * buffer.c (Qucs_set_table_for_input): New.
14451 (Fget_buffer_create): Use it.
14452 (Qset_buffer_major_mode_hook): Deleted.
14453 (Fset_buffer_major_mode): Revert previous change.
14454 (init_buffer_once): Intern ucs-set-table-for-input.
14455 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
14456 Add &Qucs_set_table_for_input.
14457
144582002-12-03 Andreas Schwab <schwab@suse.de>
14459
14460 * callint.c (Fcall_interactively): Use next_event only if less
14461 than key_count.
14462
144632002-12-02 Andrew Choi <akochoi@shaw.ca>
14464
14465 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
14466 names to 255 characters.
14467
14468 * macterm.c (XTread_socket): If all frames have been collapsed,
14469 expand the first one before handling drag-and-drop events.
14470
14471 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
14472 which is detected by autoconf.
14473
144742002-12-01 Steven Tamm <steventamm@mac.com>
14475
14476 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
14477 offset in two hints table to allow prebinding to be redone and
14478 allow the executable to be stripped.
14479
144802002-11-29 Dave Love <fx@gnu.org>
14481
14482 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
14483 already provided.
14484
144852002-11-29 Richard M. Stallman <rms@gnu.org>
14486
14487 * xdisp.c (start_display): Check more intelligently for
14488 whether the line is continued.
14489 (move_it_vertically_backward): Clear it->continuation_lines_width.
14490
144912002-11-28 Dave Love <fx@gnu.org>
14492
14493 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
14494 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
14495
144962002-11-27 Steven Tamm <steventamm@mac.com>
14497
14498 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
14499 more descriptive error output from lread.c:Fload upon most require
14500 cycles during boostrapping.
14501
145022002-11-27 Jason Rumney <jasonr@gnu.org>
14503
14504 * fileio.c (Finsert_file_contents): Give a more appropriate error
14505 for files bigger than 2Gb when off_t is 32 bit.
14506
14507 * dired.c (Ffile_attributes): Don't return negative file sizes for
14508 files bigger than 2Gb when off_t is 32 bit.
14509
145102002-11-27 Dave Love <fx@gnu.org>
14511
14512 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
14513
14514 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
14515 Test GETPGRP_VOID instead.
14516 [BSD_TERMIOS]: Remove definitions (never used).
14517
14518 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
14519 Don't define.
14520 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
14521
14522 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
14523
145242002-11-25 Jason Rumney <jasonr@gnu.org>
14525
14526 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
14527 supported.
14528
145292002-11-25 Dave Love <fx@gnu.org>
14530
14531 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
14532
14533 * Makefile.in (TEMACS_LDFLAGS): Update last change.
14534
145352002-11-25 Andreas Schwab <schwab@suse.de>
14536
14537 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
14538
145392002-11-24 Steven Tamm <steventamm@mac.com>
14540
14541 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
14542 determine the size of pointers alloced in unexed space instead
14543 of using possibly invalid emacs_zone pointers. This fixes the
14544 binary incompatibility problems caused by updates to libSystem.B.
14545
145462002-11-24 Richard M. Stallman <rms@gnu.org>
14547
14548 * search.c (Fstring_match): Doc fix.
14549
14550 * callint.c (Fcall_interactively): If a command fails because
14551 `*' detects a read-only buffer, but RECORD_FLAG is set,
14552 record it anyway if the args don't actually do tty input.
14553
145542002-11-22 Dave Love <fx@gnu.org>
14555
14556 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
14557
14558 * keyboard.c (interrupt_signal): Provide forward declaration.
14559 (kbd_buffer_store_event): Don't declare interrupt_signal.
14560
14561 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
14562
145632002-11-21 Richard M. Stallman <rms@gnu.org>
14564
14565 * eval.c (interactive_p): Skip any number of bytecode
14566 and special form frames, in any order.
14567
145682002-11-20 Jason Rumney <jasonr@gnu.org>
14569
14570 * w32fns.c (convert_mono_to_color_image): New function.
14571 (xbm_load, xbm_load_image): Use it when foreground or background
14572 is explicitly set.
14573
145742002-11-19 Dave Love <fx@gnu.org>
14575
14576 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
14577
145782002-11-18 Jason Rumney <jasonr@gnu.org>
14579
14580 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
14581 (XPutPixel): Swap blue and red.
14582 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
14583 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
14584 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
14585 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
14586
145872002-11-18 Dave Love <fx@gnu.org>
14588
14589 * m/orion105.h (HAVE_ALLOCA): Don't define.
14590
14591 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
14592
14593 * m/intel386.h: Don't include alloca.h or define alloca.
14594
14595 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
14596 malloc, realloc, calloc.
14597
14598 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
14599 (bcmp): Don't define.
14600
14601 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
14602
14603 * m/amdahl.h: Don't define LIB_STANDARD.
14604
14605 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
14606
14607 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
14608
14609 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
14610 Don't include alloca.h.
14611
14612 * s/aix3-2.h (HAVE_FSYNC): Don't define.
14613
14614 * regex.c (_GNU_SOURCE): Don't define.
14615
14616 * process.c (_GNU_SOURCE): Don't define.
14617
14618 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
14619
146202002-11-18 Markus Rost <rost@math.ohio-state.edu>
14621
14622 * s/sol2-8.h: Include sol2-6.h.
14623
146242002-11-18 Miles Bader <miles@gnu.org>
14625
14626 * dispextern.h (struct face): Add `overstrike' field.
14627 * xterm.c (x_draw_glyph_string_foreground)
14628 (x_draw_composite_glyph_string_foreground): Implement overstriking.
14629 * xfaces.c (load_face_font): Set `face->overstrike' based on
14630 result from choose_face_font.
14631 (best_matching_font, choose_face_font): Add `needs_overstrike'
14632 argument, and use it to return whether overstriking is desirable
14633 for this face/font combo.
14634 (set_font_frame_param: Pass new argument to choose_face_font.
14635
146362002-11-17 Ben Key <BKey1@tampabay.rr.com>
14637
14638 This change is my fix for the following entry in etc/PROBLEMS:
14639 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
14640 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
14641
14642 * w32.c: Added wrapper functions around the win32 API functions
14643 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
14644 GetSidIdentifierAuthority. These wrapper functions serve two
14645 purposes:
14646 1. They ensure that the wrapped function can never be called
14647 when Emacs is running on an operating system on which they are
14648 not supported (Microsoft Windows 95 / 98 / ME).
14649 2. They call the wrapped functions via function pointers rather
14650 than calling them directly. This avoids taking advantage of the
14651 undocumented fact that although these functions are not supported
14652 in the 9x branch of Microsoft Windows, the functions do exist in
14653 the version of advapi32.dll that is found in the 9x branch of
14654 Microsoft Windows.
14655
14656 * w32.c (init_user_info): Replace the calls to the win32 API
14657 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
14658 and GetSidIdentifierAuthority with calls to the newly added
14659 wrapper functions.
14660
14661 * w32.h: Added extern declarations for the following functions:
14662 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
14663 syms_of_w32menu, and void syms_of_fontset.
14664
14665 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
14666 function pointer track_mouse_event_fn in the handler for the
14667 WM_SETFOCUS message.
14668
14669 * w32menu.c (initialize_frame_menubar): Add code to
14670 reinitialize the function pointers set_menu_item_info and
14671 get_menu_item_info.
14672
146732002-11-17 Ben Key <BKey1@tampabay.rr.com>
14674
14675 * sound.c: Added a partial implementation of play-sound-internal
14676 for Microsoft Windows. Added various #ifdef / #else / #endif
14677 code blocks to separate the code that will compile under
14678 Microsoft Windows from the code that is specific to GNU/Linux.
14679 Moved several blocks of code around to make this separation of code
14680 into Windows compatible and GNU/Linux compatible code blocks easier.
14681
14682 * makefile.w32-in: Include sound.c and link with WinMM.lib.
14683
14684 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
14685 added support for play-sound-internal under Windows would be
14686 included in the build of Emacs.
14687
146882002-11-16 Jason Rumney <jasonr@gnu.org>
14689
14690 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
14691
14692 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
14693
146942002-11-15 Stefan Monnier <monnier@cs.yale.edu>
14695
14696 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
14697 (adjust_point_for_property): Move out of display and invisible even if
14698 we were already inside before (in case a property was added while
14699 we weren't looking). Be more careful when handling invisible props.
14700 Skip invisible text as if it really wasn't there at all.
14701
147022002-11-15 Jason Rumney <jasonr@gnu.org>
14703
14704 * w32term.c (x_draw_image_foreground)
14705 (w32_draw_image_foreground_1): Use standard copy and invert
14706 operations to draw images.
14707
14708 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
14709 depth of 1.
14710 (xbm_read_bitmap_data): Invert bits as xbm is read in.
14711 (XPutPixel): Don't invert bits here.
14712
147132002-11-15 Jason Rumney <jasonr@gnu.org>
14714
14715 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
14716 (w32_draw_image_foreground_1): Handle image masks.
14717 (x_draw_image_glyph_string): Don't BitBlt transparently.
14718
14719 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
14720 (x_from_xcolors): Adjust RGB values for W32.
14721 (image_background, image_background_transparent)
14722 (postprocess_image, x_to_xcolors, x_disable_image)
14723 (x_build_heuristic_mask): Adapt for W32 and enable.
14724 (x_create_x_image_and_pixmap): Mark images with palettes as such.
14725 (xbm_load): Remove unused variable.
14726
147272002-11-14 Richard M. Stallman <rms@gnu.org>
14728
14729 * buffer.c (syms_of_buffer): Doc fix.
14730
147312002-11-14 Dave Love <fx@gnu.org>
14732
14733 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
14734
14735 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
14736 * xmenu.c (unuse_menu_items, digest_single_submenu):
14737 * xfns.c (x_put_x_image):
14738 * xdisp.c (message2_nolog, set_message):
14739 * undo.c (record_point):
14740 * terminfo.c (tparam):
14741 * syntax.c (scan_sexps_forward):
14742 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
14743 * composite.c (update_compositions):
14744 * cm.c (calccost, cmgoto):
14745 * charset.c (c_string_width): Declare all args (per C99).
14746
14747 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
14748
14749 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
14750 Don't declare.
14751
14752 * emacs.c (main) [!VMS]: Avoid third arg.
14753
14754 * fns.c (Fcopy_sequence): Doc fix.
14755 (Fmap_char_table): Cast `call2'.
14756
147572002-11-14 Francesco Potorti` <pot@gnu.org>
14758
14759 * s/sol2-8.h: New file.
14760
147612002-11-14 Kim F. Storm <storm@cua.dk>
14762
14763 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
14764 dependency on `risky-local-variable' and the :propertize form.
14765
147662002-11-12 Stefan Monnier <monnier@cs.yale.edu>
14767
14768 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
14769
14770 * syntax.c (scan_sexps_forward): Undo last patch.
14771 Use a more obvious fix: check eob before updating the syntax table.
14772
147732002-11-09 Stefan Monnier <monnier@cs.yale.edu>
14774
14775 * syntax.c (scan_sexps_forward): Update syntax table before reading
14776 a char rather than after so we don't update the table past eob.
14777
147782002-11-09 Dave Love <fx@gnu.org>
14779
14780 * buffer.c (Fset_buffer_major_mode): Fix last change.
14781
14782 * regex.c (regexec): Fix pmatch declaration.
14783
14784 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
14785
14786 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
14787 to self-inserting characters.
14788 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
14789
14790 * coding.c (Vtranslation_table_for_input): New.
14791 (syms_of_coding): DEFVAR it.
14792
147932002-11-08 Juanma Barranquero <lektu@terra.es>
14794
14795 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
14796 window.
14797
147982002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14799
14800 * process.c (Fformat_network_address): Remove unused locals p,
14801 cp, and i.
14802
148032002-11-06 Dave Love <fx@gnu.org>
14804
14805 * buffer.c (Qset_buffer_major_mode_hook): New.
14806 (Fset_buffer_major_mode): Use it.
14807
148082002-11-06 Richard M. Stallman <rms@gnu.org>
14809
14810 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
14811 and stop_polling.
14812
14813 * process.c (wait_reading_process_input):
14814 Test POLLING_PROBLEM_IN_SELECT, not hpux.
14815 Avoid initialization for auto Lisp_Object var.
14816
14817 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
14818
14819 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
14820
148212002-11-05 Richard M. Stallman <rms@gnu.org>
14822
14823 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
14824
14825 * callint.c (Fcall_interactively): New local filter_specs.
14826 (Fcall_interactively): Check for progn as well as let.
14827 Add a gcpro.
14828 (Qprogn): New variable.
14829 (syms_of_callint): Staticpro and init Qprogn.
14830
148312002-11-04 John Paul Wallington <jpw@shootybangbang.com>
14832
14833 * lread.c (Feval_buffer): Doc fix.
14834
148352002-11-04 Dave Love <fx@gnu.org>
14836
14837 * keyboard.c (read_char): Always translate iff
14838 Vkeyboard_translate_table is a char table and c is valid.
14839
14840 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
14841 and fix C types.
14842
148432002-11-03 Stefan Monnier <monnier@cs.yale.edu>
14844
14845 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
14846
14847 * editfns.c (get_pos_property): Don't hardcode Qfield.
14848
14849 * keyboard.c (adjust_point_for_property): Handle `display' prop on
14850 overlays. Also handle `invisible' prop.
14851
148522002-11-02 Stefan Monnier <monnier@cs.yale.edu>
14853
14854 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
14855 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
14856
148572002-11-01 Andreas Schwab <schwab@suse.de>
14858
14859 * editfns.c (Fmessage): Revert last change to properly handle %%.
14860
148612002-11-01 Stefan Monnier <monnier@cs.yale.edu>
14862
14863 * xmenu.c (unuse_menu_items): New fun.
14864 (menu_items_inuse): New var.
14865 (syms_of_xmenu): Initialize it.
14866 (init_menu_items): Use it to detect re-entrance.
14867 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
14868 (Fx_popup_menu): Remove spurious XSETFRAME.
14869
14870 * editfns.c (find_field): Make an exception for nil fields.
14871
148722002-11-01 Dave Love <fx@gnu.org>
14873
14874 * m/gec63.h: Deleted.
14875
148762002-10-31 Dave Love <fx@gnu.org>
14877
14878 * xterm.c (XTread_socket): Fix last change.
14879 (xaw_scroll_callback): Cast call_data to long to avoid warning.
14880
148812002-10-31 Stefan Monnier <monnier@cs.yale.edu>
14882
14883 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
14884
148852002-10-30 Stefan Monnier <monnier@cs.yale.edu>
14886
14887 * editfns.c (overlays_around, get_pos_property): New funs.
14888 (find_field): Use them.
14889 Also be careful not to modify POS before its last use.
14890 (Fmessage): Don't Fformat if there's nothing to format.
14891
148922002-10-30 Dave Love <fx@gnu.org>
14893
14894 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
14895 [HAVE_PTY_H]; Include pty.h.
14896
14897 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
14898
14899 * xterm.c (Qeql): Declare.
14900 (Vx_keysym_table): New.
14901 (syms_of_xterm): Initialize it.
14902 (XTread_socket): Use it. Deal with ASCII keysyms.
14903 (XSetIMValues) [HAVE_X11R6]: Prototype.
14904
14905 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
14906 (lispy_kana_keys): Comment out.
14907 (make_lispy_event) [XK_kana_A]: Comment out.
14908 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
14909 Fix sprintf call.
14910
14911 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
14912 regexp.h change).
14913 (TERMINFO, LIBS_TERMCAP): Define.
14914
14915 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
14916 (bcmp): Define conditional on HAVE_BCMP.
14917 (NO_SIOCTL_H): Don't define.
14918 (TIOCSIGSEND): Don't make conditional on IRIX6.
14919
14920 * s/sol2-5.h: Don't include strings.h.
14921 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
14922
14923 * s/irix6-0.h (IRIX6): Don't define.
14924 (bcopy, bcmp, bzero): Don't undef.
14925
14926 * s/irix6-5.h: Don't include strings.h.
14927 (IRIX6): Don't define.
14928 (bcopy, bcmp, bzero): Don't undef.
14929
14930 * syntax.c (Fforward_comment): Doc fix.
14931
149322002-10-29 Kim F. Storm <storm@cua.dk>
14933
14934 * process.c (Fsignal_process): Allow PROCESS to be specified by
14935 name in addition to pid (as integer or string).
14936
149372002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
14938
14939 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
14940 environments.
14941
149422002-10-27 Kim F. Storm <storm@cua.dk>
14943
14944 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
14945
14946 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
14947
14948 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
14949
14950 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
14951
149522002-10-26 Richard M. Stallman <rms@gnu.org>
14953
14954 * editfns.c (Fformat): Detect invalid format letters for floats.
14955
149562002-10-25 Kenichi Handa <handa@m17n.org>
14957
14958 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
14959 (x_set_title): Likewise.
14960
149612002-10-25 Juanma Barranquero <lektu@terra.es>
14962
14963 * macgui.h:
14964 * w32gui.h: Remove definition of XColor.
14965
14966 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
14967
149682002-10-24 Kim F. Storm <storm@cua.dk>
14969
14970 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
14971 Callers changed (supply dummy arg).
14972
14973 * lisp.h (get_window_cursor_type): Update prototype.
14974
14975 * w32term.c (x_display_and_set_cursor): Get active_cursor from
14976 get_window_cursor_type to track system caret.
14977
149782002-10-24 Kim F. Storm <storm@cua.dk>
14979
14980 * process.c (Fformat_network_address): New function.
14981 (syms_of_process): Defsubr it.
14982 (list_processes_1): Use it to format :local/:remote address if
14983 service/host is not set; before Emacs would crash in that case.
14984 (Fmake_network_process): Don't use Ffind_operation_coding_system
14985 to setup coding system if host or service is not set.
14986
149872002-10-23 Juanma Barranquero <lektu@terra.es>
14988
14989 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
14990
14991 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
14992 COLORREF.
14993
14994 * macgui.h:
14995 * w32gui.h: Add definition of XColor.
14996
14997 * macfns.c:
14998 * w32fns.c:
14999 * xfaces.c: Remove definition of XColor.
15000
150012002-10-22 Stefan Monnier <monnier@cs.yale.edu>
15002
15003 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
15004
15005 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
15006 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
15007 window if it is dedicated.
15008 (Fshrink_window): Add preserve_before as was done for enlarge_window.
15009 (Vspecial_display_function): Update docstring.
15010
15011 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
15012 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
15013 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
15014
150152002-10-21 Stefan Monnier <monnier@cs.yale.edu>
15016
15017 * casefiddle.c (casify_region): Don't treat a prefix char as part
15018 of a word when at the beginning.
15019
150202002-10-17 Juanma Barranquero <lektu@terra.es>
15021
15022 * lread.c (syms_of_lread): Fix typos.
15023
150242002-10-17 Dave Love <fx@gnu.org>
15025
15026 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
15027
150282002-10-16 Richard M. Stallman <rms@gnu.org>
15029
15030 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
15031
150322002-10-14 Juanma Barranquero <lektu@terra.es>
15033
15034 * w16select.c (syms_of_win16select): Fix docstring for
15035 `selection-coding-system'.
15036
15037 * w32select.c (syms_of_w32select): Likewise.
15038
150392002-10-14 Stefan Monnier <monnier@cs.yale.edu>
15040
15041 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
15042 a backslash-quoted char.
15043 (scan_lists, scan_sexps_forward): Pacify the compiler.
15044
150452002-10-13 Richard M. Stallman <rms@gnu.org>
15046
15047 * window.c (window_scroll): Set immediate_quit.
15048
15049 * print.c (print): When backquote form is the car of a list,
15050 output in old style. Use old_backquote_output to output all
15051 comma forms inside it in old style too.
15052
15053 * buffer.h (struct buffer): Move `undo_list' down below `name'.
15054
150552002-10-11 Markus Rost <rost@math.ohio-state.edu>
15056
15057 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
15058 batch mode).
15059
15060 * lread.c (Fload): Doc fix (load-suffixes).
15061
150622002-10-10 Steven Tamm <steventamm@mac.com>
15063
15064 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
15065 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
15066 Also switch the default to Qnil from Qt.
15067
150682002-10-08 Kenichi Handa <handa@m17n.org>
15069
15070 * coding.c (code_convert_region): When we need more GAP for
15071 conversion, pay attention to the case that coding->produced is not
15072 greater than coding->consumed.
15073
150742002-10-07 Richard M. Stallman <rms@gnu.org>
15075
15076 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
15077
150782002-10-06 Andrew Choi <akochoi@shaw.ca>
15079
15080 * macmenu.c (mac_menu_show): Add j to count menu items; match
15081 menu_item_selection to it to find selected item.
15082
150832002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15084
15085 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
15086 cases. The correct fix is to pass ReparentNotify to Xt.
15087 The shell widget interprets ConfigureNotify differently depending
15088 on if it has been reparented or not.
15089
150902002-10-05 Markus Rost <rost@math.ohio-state.edu>
15091
15092 * editfns.c (Fformat_time_string): Doc fix.
15093
150942002-10-05 John Paul Wallington <jpw@shootybangbang.com>
15095
15096 * fns.c (Flength): Doc fix.
15097
150982002-10-04 Stefan Monnier <monnier@cs.yale.edu>
15099
15100 * keyboard.c (keyremap): New struct.
15101 (read_key_sequence): Use it: globally replace keytran_foo with
15102 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
15103 keytran_next and fkey_next to just `next'.
15104
151052002-10-04 Steven Tamm <steventamm@mac.com>
15106
15107 * macterm.c (keycode_to_xkeysym_table): Change return to be
15108 treated like an X keysym.
15109
151102002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15111
15112 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
15113 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
15114 This is to also handle x/y changes that occur because of a resize.
15115
151162002-10-02 John Paul Wallington <jpw@shootybangbang.com>
15117
15118 * frame.c (Vdelete_frame_functions): New variable.
15119 (syms_of_frame): Initialize and defvar it.
15120 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
15121 it when frame's `tooltip' parameter is non-nil.
15122
15123 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
15124
15125 * w32fns.c (x_create_tip_frame): Likewise.
15126
15127 * macfns.c (x_create_tip_frame): Likewise.
15128
151292002-09-30 Kenichi Handa <handa@m17n.org>
15130
15131 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
15132 -1 before calling ccl_driver.
15133
15134 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
15135 Only when it is non-nil, handle composition sequence.
15136 (setup_coding_system) <0>: Don't force composition handling.
15137
15138 * Makefile.in (lisp, shortlisp): Add utf-16.elc
15139
151402002-09-29 Richard M. Stallman <rms@gnu.org>
15141
15142 * search.c (Freplace_match): Adjust match data for the substitution
15143 just made in the buffer.
15144
15145 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
15146 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
15147
151482002-09-27 Richard M. Stallman <rms@gnu.org>
15149
15150 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
15151 (read_char): Use them. Do all exits thru the end of the function.
15152
151532002-09-27 Kenichi Handa <handa@etl.go.jp>
15154
15155 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
15156 is nil.
15157
151582002-09-26 Richard M. Stallman <rms@gnu.org>
15159
15160 * regex.h (__restrict_arr): Don't define if already defined.
15161
15162 * coding.c (run_pre_post_conversion_on_str):
15163 Save and restore Vdeactivate_mark.
15164
151652002-09-26 John Paul Wallington <jpw@shootybangbang.com>
15166
15167 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
15168
151692002-09-26 Kenichi Handa <handa@etl.go.jp>
15170
15171 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
15172 nonzero, try face's family at first. Otherwise try FAMILY at first.
15173 (choose_face_font): If C is a single byte char or latin-1, call
15174 try_font_list with PREFER_FACE_FAMILY 1.
15175
151762002-09-21 Richard M. Stallman <rms@gnu.org>
15177
15178 * window.c (select_window_1): Don't select frame.
15179 Set frame's selected window only when frame itself is selected.
15180 (Fselect_window): Doc fix.
15181
151822002-09-18 Kim F. Storm <storm@cua.dk>
15183
15184 * process.c (make-network-process): Doc fix (there is no
15185 network-server-log-function hook).
15186
151872002-09-18 Richard M. Stallman <rms@gnu.org>
15188
15189 * print.c (print): Clear out the unused parts of Vprint_number_table.
15190 (syms_of_print): Doc fix for `print-number-table'.
15191
15192 * unexelf.c (unexec): Undo previous change.
15193
151942002-09-17 Andreas Schwab <schwab@suse.de>
15195
15196 * m/alpha.h [LINUX]: Don't define DATA_START.
15197
151982002-09-16 Dave Love <fx@gnu.org>
15199
15200 * unexelf.c (unexec): Deal with .got, reinstating change from
15201 25-08-1999.
15202
152032002-09-13 Richard M. Stallman <rms@gnu.org>
15204
15205 * s/sol2-6.h (UNEXEC): Comment out definition.
15206
15207 * unexsol.c (unexec): Don't downcase first letter of error msg.
15208
15209 * xfaces.c (Fcolor_supported_p): Just one arg is required.
15210
152112002-09-12 Markus Rost <rost@math.ohio-state.edu>
15212
15213 * unexsol.c: Include buffer.h, charset.h, coding.h.
15214
152152002-09-11 Richard M. Stallman <rms@gnu.org>
15216
15217 * unexsol.c: Don't use report_file_error; do it by hand
15218 using dlerror.
15219
15220 * process.c (wait_reading_process_input, both versions):
15221 Before calling turn_on_atimers, call stop_polling.
15222
15223 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
15224
15225 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
15226 we go to too_near_end, call clear_glyph_matrix.
15227 (redisplay_window): After make_cursor_line_fully_visible,
15228 call clear_glyph_matrix and bypass `goto done'.
15229
15230 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
15231 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
15232
152332002-09-10 Richard M. Stallman <rms@gnu.org>
15234
15235 * fileio.c (Fdo_auto_save): Catch error making directory.
15236 Only call push_message if we need to.
15237 At the same time, make an unwind-protect to pop it.
15238 Rename local message_p to old_message_p.
15239 (do_auto_save_make_dir, do_auto_save_eh): New functions.
15240 (do_auto_save_unwind): Don't call pop_message.
15241
15242 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
15243
15244 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
15245
15246 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
15247
15248 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
15249
152502002-09-10 Stefan Monnier <monnier@cs.yale.edu>
15251
15252 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
15253 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
15254 (re_match_2_internal): Be more careful with infinite loops.
15255
152562002-09-10 Kim F. Storm <storm@cua.dk>
15257
15258 * macros.c (end_kbd_macro): New function.
15259 (Fend_kbd_macro): Use it.
15260
15261 * macros.h (end_kbd_macro): Declare extern.
15262
15263 * keyboard.c (Fdiscard_input): If defining keyboard macro,
15264 end and save it instead of discarding it.
15265
152662002-09-09 Markus Rost <rost@math.ohio-state.edu>
15267
15268 * s/sol2-6.h: Fix typo. Add comment.
15269
152702002-09-09 Richard M. Stallman <rms@gnu.org>
15271
15272 * regex.c (regnum_t): Use signed int, not unsigned int.
15273
15274 * s/sol2-6.h: New file.
15275
15276 * s/sol2-5.h (UNEXEC): Definition deleted.
15277
152782002-09-08 Kim F. Storm <storm@cua.dk>
15279
15280 * macros.c (executing_macro_index): Change type to EMACS_INT.
15281 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
15282
15283 * macros.h (executing_macro_index): Change type to EMACS_INT.
15284
152852002-09-06 Richard M. Stallman <rms@gnu.org>
15286
15287 * casetab.c (set_case_table): Make canon table point to eqv table.
15288
152892002-09-06 Juanma Barranquero <lektu@terra.es>
15290
15291 * coding.c (syms_of_coding): Fix spacing.
15292
15293 * composite.c (Fcompose_region_internal)
15294 (Fcompose_string_internal): Likewise.
15295
15296 * data.c (Flsh): Likewise.
15297
15298 * fontset.c (Fset_fontset_font): Likewise.
15299
15300 * macfns.c (Fx_server_max_request_size): Likewise.
15301
15302 * w16select.c (syms_of_win16select): Likewise.
15303
15304 * w32select.c (syms_of_w32select): Likewise.
15305
15306 * xselect.c (syms_of_xselect): Likewise.
15307
153082002-09-05 Richard M. Stallman <rms@gnu.org>
15309
15310 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
15311 call EXTEND_RANGE_TABLE and return a proper value.
15312 (set_image_of_range): Don't call set_image_of_range_1
15313 if no TRANSLATE or if range includes all of Latin-1.
15314 Only call it for the Latin-1 part of the range.
15315 For other cases, make two separate ranges,
15316 one for the original specified characters and one for
15317 their case-conversions.
15318
153192002-09-04 Richard M. Stallman <rms@gnu.org>
15320
15321 * s/sol2-5.h (UNEXEC): Use unexsol.o.
15322
15323 * window.c (displayed_window_lines): Correct for one-off bug
15324 in HEIGHT on non-window displays.
15325
15326 * regex.c (set_image_of_range_1): New function.
15327 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
15328 Return a value to indicate running out of memory.
15329 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
15330 (extend_range_table_work_area): New subroutine.
15331 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
15332 Different calling conventions, and used from set_image_of_range{,_1}.
15333 (IMMEDIATE_QUIT_CHECK): Definitions moved.
15334
153352002-09-04 Juanma Barranquero <lektu@terra.es>
15336
15337 * makefile.w32-in: All dependencies updated.
15338
153392002-09-01 Richard M. Stallman <rms@gnu.org>
15340
15341 * unexsol.c: New file.
15342
15343 * xfns.c (Qbox): Declare external, don't define.
15344
15345 * xdisp.c (redisplay_window) <force-start case>:
15346 If point is on semi-visible last line, reposition
15347 it at previous line.
15348
15349 * alloc.c (display_malloc_warning): Use display-warning.
15350 (malloc_warning_1): Function deleted.
15351
15352 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
15353
15354 * lread.c (read1): Handle #! by skipping the line.
15355
153562002-08-31 Richard M. Stallman <rms@gnu.org>
15357
15358 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
15359 Don't include LDFLAGS.
15360 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
15361
153622002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
15363
15364 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
15365 member of x_display_info unless we compile for some window system.
15366
153672002-08-31 Kim F. Storm <storm@cua.dk>
15368
15369 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
15370 (get_window_cursor_type): Don't use them.
15371 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
15372
153732002-08-30 Kenichi Handa <handa@etl.go.jp>
15374
15375 * xdisp.c (get_next_display_element): Fix previous change.
15376
153772002-08-30 Andrew Choi <akochoi@shaw.ca>
15378
15379 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
15380 (expose_window): Use it to fix the display of overlapping
15381 rows (merge code from xterm.c).
15382
15383 * macfns.c (Qbox): Add extern declaration.
15384
153852002-08-30 Juanma Barranquero <lektu@terra.es>
15386
15387 * w32fns.c (Qbox): Make extern.
15388 (syms_of_w32fns): Remove initialization of Qbox.
15389
153902002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
15391
15392 * xfns.c (Fx_open_connection): Fix error message.
15393
153942002-08-30 Kim F. Storm <storm@cua.dk>
15395
15396 The following changes consolidates the handling of the cursor
15397 type in xdisp.c, moving duplicate code and functionality from
15398 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
15399
15400 * frame.h (enum text_cursor_kinds): Consolidated here.
15401 Added DEFAULT_CURSOR value.
15402 (struct frame) <desired_cursor, cursor_width>
15403 <blink_off_cursor, blink_off_cursor_width>: New fields.
15404 Consolidated from output_x, output_w32 and output_mac structs.
15405 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
15406 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
15407
15408 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
15409 Variables consolidated here.
15410 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
15411 (Vcursor_in_non_selected_windows): Renamed from
15412 cursor_in_non_selected_windows and changed to Lisp_Object.
15413 (syms_of_xdisp): Define and staticpro new and moved variables.
15414 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
15415 consolidated here. Recognize Qhollow setting.
15416 (set_frame_cursor_types): New function to set frame cursor types
15417 based on the frame parameters.
15418 (get_window_cursor_type): New function to calculate new cursor
15419 type and width for the specified window. Based on duplicated
15420 code consolidated here.
15421 Enhancements: cursor-in-non-selected-windows may be a cursor type,
15422 check buffer-local alternate-cursor-type and blink-cursor-alist
15423 before using built-in blink off methods.
15424
15425 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
15426
15427 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
15428 (get_specified_cursor_type, get_window_cursor_type)
15429 (set_frame_cursor_types): Added prototypes.
15430
15431 * macfns.c (x_specified_cursor_type): Removed.
15432 (x_set_cursor_type): Use set_frame_cursor_types.
15433 (Qbar, Qbox): Removed.
15434 (syms_of_macfns): Don't intern or staticpro them.
15435
15436 * macterm.c (x_specified_cursor_type): Remove prototype.
15437 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
15438 (x_display_and_set_cursor): Use get_window_cursor_type.
15439 Remove unused local variables cursor_non_selected, active_cursor.
15440 Redraw cursor if hbar cursor width changes.
15441 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
15442
15443 * macterm.h (enum text_cursor_kinds): Removed.
15444 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
15445 <blink_off_cursor, blink_off_cursor_width>: Members removed.
15446 (FRAME_DESIRED_CURSOR): Macro removed.
15447
15448 * w32fns.c (Vblink_cursor_alist): Removed.
15449 (Qbar, Qhbar, Qbox, Qhollow): Removed.
15450 (syms_of_w32fns): Don't intern, staticpro, or define them.
15451 (x_specified_cursor_type): Removed.
15452 (x_set_cursor_type): Use set_frame_cursor_types.
15453
15454 * w32term.c (x_specified_cursor_type): Remove prototype.
15455 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
15456 (x_display_and_set_cursor): Use get_window_cursor_type.
15457 Remove unused local variables cursor_off_state.
15458 Redraw cursor if hbar cursor width changes.
15459 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
15460
15461 * w32term.h (enum text_cursor_kinds): Removed.
15462 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
15463 <blink_off_cursor, blink_off_cursor_width>: Members removed.
15464 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
15465 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
15466 (struct w32_display_info) <x_highlight_frame>: Renamed member from
15467 w32_highlight_frame.
15468
15469 * xfns.c (Vblink_cursor_alist): Removed.
15470 (Qbar, Qhbar, Qbox, Qhollow): Removed.
15471 (syms_of_xfns): Don't intern, staticpro, or define them.
15472 (x_specified_cursor_type): Removed.
15473 (x_set_cursor_type): Use set_frame_cursor_types.
15474
15475 * xterm.c (x_specified_cursor_type): Remove prototype.
15476 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
15477 (x_display_and_set_cursor): Use get_window_cursor_type.
15478 Remove unused local variables cursor_off_state.
15479 Redraw cursor if hbar cursor width changes.
15480
15481 * xterm.h (enum text_cursor_kinds): Removed.
15482 (struct output_x) <current_cursor, desired_cursor, cursor_width>
15483 <blink_off_cursor, blink_off_cursor_width>: Members removed.
15484 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
15485 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
15486 (x_specified_cursor_type): Remove prototype.
15487
154882002-08-28 Richard M. Stallman <rms@gnu.org>
15489
15490 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
15491 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
15492 (Vblink_cursor_alist): New variable.
15493 (syms_of_w32fns): Initialize and defvar it.
15494 (x_specified_cursor_type): Recognize Qbox for filled box.
15495 Exceptions are hollow boxes.
15496 (Qbox, Qhollow): New variables.
15497 (syms_of_w32fns): Initialize and staticpro them.
15498
15499 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
15500 New macros.
15501 (struct w32_output): New fields blink_off_cursor,
15502 blink_off_cursor_width.
15503 (FRAME_CURSOR_WIDTH): New macro.
15504
15505 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
15506 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
15507
15508 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
15509 for bar cursor.
15510
15511 * w32term.c (expose_overlaps): New function.
15512 (expose_window): Use it to fix the display of overlapping rows.
15513
155142002-08-28 Simon Josefsson <jas@extundo.com>
15515
15516 * xfns.c (Fx_open_connection): Improve help when X connection
15517 fails, xhost is insecure and xauth is better.
15518
155192002-08-28 Juanma Barranquero <lektu@terra.es>
15520
15521 * makefile.w32-in: Add missing dependencies on w32term.h and
15522 composite.h.
15523
15524 * emacs.c (USAGE1): Add missing newline.
15525
155262002-08-27 Andrew Choi <akochoi@shaw.ca>
15527
15528 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
15529
155302002-08-27 Richard M. Stallman <rms@gnu.org>
15531
15532 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
15533 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
15534 (Vblink_cursor_alist): New variable.
15535 (syms_of_xfns): Initialize and defvar it.
15536 (x_specified_cursor_type): Recognize Qbox for filled box.
15537 Exceptions are hollow boxes.
15538 (Qbox, Qhollow): New variables.
15539 (syms_of_xfns): Initialize and staticpro them.
15540
15541 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
15542 New macros.
15543 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
15544
15545 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
15546 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
15547
15548 * emacs.c (main): Handle --script.
15549 (USAGE1): Mention --script.
15550 (standard_args): Define sort order for --script.
15551
155522002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
15553
15554 * xdisp.c (redisplay_updating_p): Variable removed.
15555 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
15556 New variables.
15557 (init_iterator): Don't free realized faces if
15558 inhibit_free_realized_faces is set.
15559 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
15560 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
15561 initialize Qinhibit_free_realized_faces.
15562
15563 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
15564 when iterator is adding glyphs to a glyph matrix.
15565
155662002-08-27 Kenichi Handa <handa@etl.go.jp>
15567
15568 * xdisp.c (get_next_display_element): In unibyte case, don't use
15569 octal form for such eight-bit characters that can be converted to
15570 multibyte char.
15571
155722002-08-26 Kim F. Storm <storm@cua.dk>
15573
15574 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize
15575 foreground and background colors. From Joe Buehler.
15576
155772002-08-26 Miles Bader <miles@gnu.org>
15578
15579 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
15580
155812002-08-25 Andrew Choi <akochoi@shaw.ca>
15582
15583 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
15584 defined instead of MAC_OSX.
15585
15586 * s/darwin.h (select): Define select to sys_select only if
15587 HAVE_CARBON is defined.
15588 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
15589 (DONT_REOPEN_PTY): #def it.
15590
15591 * macterm.c (XTread_socket): Remove code to call
15592 SendEventToEventTarget for keys with command modifiers when
15593 mac_command_key_is_meta is nil.
15594
155952002-08-24 Andreas Schwab <schwab@suse.de>
15596
15597 * eval.c (Fdefvar): Fix last change.
15598
155992002-08-23 Richard M. Stallman <rms@gnu.org>
15600
15601 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
15602 Record variables in load history as (defvar . VAR).
15603 (Fdefvar): Don't record in load history if no initial value.
15604 (Qdefvar): New variable.
15605 (syms_of_eval): Init and staticpro it.
15606
15607 * lread.c (syms_of_lread): Doc fix.
15608 (build_load_history): Use Fmember to see if a definition
15609 is already in the Vload_history element.
15610
15611 * process.c (Fstart_process): Remove /: from program name.
15612
15613 * emacs.c (decode_env_path): Don't add /: if file name handler
15614 has a `safe-magic' property.
15615
15616 * callproc.c (Fcall_process): Remove /: from program name.
15617
156182002-08-23 Stefan Monnier <monnier@cs.yale.edu>
15619
15620 * regex.c (PATFETCH): Remove the translating fetch.
15621 (PATFETCH_RAW): Rename to PATFETCH.
15622 (set_image_of_range): New fun.
15623 (SET_RANGE_TABLE_WORK_AREA): Use it.
15624 (regex_compile): Don't translate the pattern chars so eagerly.
15625 Only do it when inserting an `exactn' bytecode or when handling
15626 a char-range.
15627 (mutually_exclusive_p): Avoid empty statement.
15628
156292002-08-22 Kim F. Storm <storm@cua.dk>
15630
15631 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
15632 end up on a partially visible line; this reverts a specific part
15633 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
15634 display error which has been reported several times now.
15635 However it introduces the problem that changes was supposed to fix.
15636 See my comments in the source if you want to debug this further.
15637
156382002-08-20 Kenichi Handa <handa@etl.go.jp>
15639
15640 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
15641
156422002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
15643
15644 * msdos.c (croak): Add `void' to definition.
15645
15646 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
15647 Don't define them, they are defined in msdos.c.
15648
15649 * mem-limits.h [MSDOS]: Declare etext.
15650
15651 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
15652 `const' since CORRECT_DIR_SEPS modifies its target.
15653
156542002-08-19 Kim F. Storm <storm@cua.dk>
15655
15656 * keyboard.c (Fclear_this_command_keys): Add optional arg
15657 KEEP-RECORD to avoid clearing lossage when we just want to clear
15658 the current key sequence (kmacro needs this).
15659
156602002-08-19 Kenichi Handa <handa@localhost>
15661
15662 * composite.c (run_composition_function): Call FUNC if it is fboundp.
15663
15664 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
15665 cons, return Qnil.
15666
156672002-08-17 Richard M. Stallman <rms@gnu.org>
15668
15669 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
15670
15671 * sysdep.c [!VMS]: Include sys/files.h.
15672
15673 * editfns.c (save_restriction_restore): Defend from unchained marker.
15674
15675 * buffer.c (overlays_at): Handle extending vec uniformly.
15676 (overlays_in): Handle extending vec from length 0 as in overlays_at.
15677
156782002-08-15 Andrew Choi <akochoi@shaw.ca>
15679
15680 * mac.c (init_mac_osx_environment): New function.
15681
15682 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
15683
156842002-08-14 Kim F. Storm <storm@cua.dk>
15685
15686 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
15687 executing macro before appending to it (when used from Lisp).
15688 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
15689 which is called prior to each iteration of macro (for kmacro.el).
15690 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
15691
15692 * lisp.h (Fexecute_kbd_macro): Update prototype.
15693
15694 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
15695
156962002-08-14 Kenichi Handa <handa@etl.go.jp>
15697
15698 * xselect.c (QUTF8_STRING): New variable.
15699 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
15700 (x_atom_to_symbol): Likewise.
15701 (x_get_local_selection): New argument local_request. If it is
15702 nonzero, call handler_fn with the second arg nil.
15703 (x_handle_selection_request): Call x_get_local_selection with
15704 local_request 0.
15705 (lisp_data_to_selection_data): Don't encode the string here.
15706 (Fx_get_selection_internal): Call x_get_local_selection with
15707 local_request 1.
15708 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
15709
15710 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
15711
15712 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
15713
157142002-08-13 Richard M. Stallman <rms@gnu.org>
15715
15716 * minibuf.c (Fminibufferp): New function.
15717 (syms_of_minibuf): Defsubr it.
15718 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
15719
157202002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
15721
15722 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
15723
157242002-08-12 Richard M. Stallman <rms@gnu.org>
15725
15726 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
15727 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
15728 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
15729 already.
15730
15731 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
15732
157332002-08-11 Andrew Choi <akochoi@shaw.ca>
15734
15735 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
15736 (Vmac_pass_command_to_system): New variable.
15737 (Vmac_pass_control_to_system): New variable.
15738 (do_mouse_moved): Check wp with is_emacs_window.
15739 (XTread_socket): Check window_ptr with is_emacs_window.
15740 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
15741 events back to Mac Toolbox for processing, depending on values of
15742 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
15743 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
15744 Vmac_pass_control_to_system.
15745
157462002-08-10 Kenichi Handa <handa@etl.go.jp>
15747
15748 * coding.c (unencodable_char_position): New function.
15749 (Funencodable_char_position): New function.
15750 (syms_of_coding): Defsubr Funencodable_char_position.
15751
157522002-08-10 Andrew Choi <akochoi@shaw.ca>
15753
15754 * mac.c (sys_select) [MAC_OSX]: New function.
15755
15756 * macterm.c (MakeMeTheFrontProcess): New function.
15757 (mac_initialize): Call MakeMeTheFrontProcess.
15758
15759 * s/darwin.h: Define select to sys_select.
15760
157612002-08-09 Richard M. Stallman <rms@gnu.org>
15762
15763 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
15764
157652002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
15766
15767 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
15768 end of the buffer.
15769
157702002-08-08 Ken Raeburn <raeburn@mit.edu>
15771
15772 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
15773
15774 * puresize.h (BASE_PURESIZE): Increase to 910000.
15775
157762002-08-08 Kenichi Handa <handa@etl.go.jp>
15777
15778 * coding.c (Ffind_operation_coding_system): For write-region, if
15779 VISIT is a filename, make it the target.
15780
157812002-08-07 Richard M. Stallman <rms@gnu.org>
15782
15783 * alloc.c (mark_object): Detect long lists for debugging.
15784 (mark_object_loop_halt): New variable.
15785
15786 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
15787
15788 * data.c (Fmake_variable_frame_local): Doc fix.
15789
157902002-08-01 David Ponce <david@dponce.com>
15791
15792 * w32menu.c (local_heap, local_alloc, local_free): New macros.
15793 (malloc_widget_value, free_widget_value)
15794 (w32_free_submenu_strings): Use them.
15795
15796 (push_submenu_start, push_submenu_end, push_left_right_boundary)
15797 (push_menu_pane, push_menu_item, single_keymap_panes)
15798 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
15799 (single_submenu, set_frame_menubar)
15800 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
15801
15802 (Fx_popup_menu): Don't show pop up menu until preceding one is
15803 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
15804
15805 * w32menu.c: Changes adapted from xmenu.c
15806 (set_frame_menubar): First parse all submenus,
15807 then make widget_value trees from them.
15808 Don't allocate any widget_value objects
15809 until we are done with the parsing.
15810 (parse_single_submenu): New function.
15811 (digest_single_submenu): New function.
15812 (single_submenu): Function deleted, replaced by those two.
15813
158142002-08-04 Andrew Choi <akochoi@shaw.ca>
15815
15816 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
15817 returns a valid window pointer before proceeding for keyDown and
15818 autoKey events.
15819
158202002-08-03 Andrew Choi <akochoi@shaw.ca>
15821
15822 * macterm.c (USE_CARBON_EVENTS): New macro.
15823 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
15824 (x_iconify_frame): Call CollapseWindow.
15825 (Vmac_reverse_ctrl_meta): New variable.
15826 (Vmac_wheel_button_is_mouse_2): New variable.
15827 (init_mac_drag_n_drop): New function.
15828 (mac_do_receive_drag): New function.
15829 (mac_handle_service_event): New function.
15830 (init_service_handler): New function.
15831 (mac_to_emacs_modifiers): New function.
15832 (mac_event_to_emacs_modifiers): New function.
15833 (mac_get_mouse_btn): New function.
15834 (mac_convert_event_ref): New function.
15835 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
15836 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
15837 mac_get_mouse_btn.
15838 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
15839
15840 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
15841 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
15842 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
15843 TOOL_BAR_EVENT for MAC_OS as well.
15844 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
15845 as for WINDOWS_NT.
15846 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
15847
15848 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
15849
158502002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
15851
15852 * xdisp.c (forward_to_next_line_start): Fix a condition that
15853 lead to a newline being skipped.
15854
158552002-08-02 Andrew Choi <akochoi@shaw.ca>
15856
15857 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
15858
158592002-08-01 Richard M. Stallman <rms@gnu.org>
15860
15861 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
15862
158632002-07-31 Andrew Choi <akochoi@shaw.ca>
15864
15865 * macfns.c: #undef init_process before #define-ing it.
15866
15867 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
15868 HAVE_CARBON is defined.
15869
158702002-07-31 Richard M. Stallman <rms@gnu.org>
15871
15872 * xmenu.c (set_frame_menubar): First parse all submenus,
15873 then make widget_value trees from them.
15874 Don't allocate any widget_value objects
15875 until we are done with the parsing.
15876 (parse_single_submenu): New function.
15877 (digest_single_submenu): New function.
15878 (single_submenu): Function deleted, replaced by those two.
15879
158802002-07-30 Juanma Barranquero <lektu@terra.es>
15881
15882 * w32proc.c (syms_of_ntproc): Fix docstring of
15883 `w32-get-true-file-attributes'.
15884
158852002-07-28 Richard M. Stallman <rms@gnu.org>
15886
15887 * s/hpux8.h (HPUX8): Define this before including hpux.h.
15888 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
15889
15890 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
15891
15892 * keyboard.c (make_lispy_event):
15893 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
15894 Explicitly clear up_modifier in event->modifiers.
15895
158962002-07-27 Richard M. Stallman <rms@gnu.org>
15897
15898 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
15899
15900 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
15901 for bar cursor.
15902
159032002-07-26 Kenichi Handa <handa@etl.go.jp>
15904
15905 * coding.c (detect_coding_iso2022): While checking a byte sequence
15906 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
15907 it in the normal loop.
15908
159092002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
15910
15911 * xterm.c (expose_overlaps): New function.
15912 (expose_window): Use it to fix the display of overlapping rows.
15913
15914 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
15915
159162002-07-23 Ken Raeburn <raeburn@gnu.org>
15917
15918 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
15919 since it only depends on XUINT.
15920
15921 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
15922 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
15923 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
15924 Macros deleted.
15925
15926 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
15927 its value over other approaches.
15928 * sysdep.c (start_of_data): Don't define the function if a macro
15929 form has been defined.
15930
159312002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
15932
15933 * xdisp.c (redisplay_updating_p): New variable.
15934 (init_iterator): Don't free realized faces when
15935 redisplay_updating_p is set.
15936 (redisplay_internal): Set redisplay_updating_p while updating
15937 the display.
15938
159392002-07-23 Richard M. Stallman <rms@gnu.org>
15940
15941 * editfns.c (Fmessage): Treat "" like nil.
15942
159432002-07-23 Kenichi Handa <handa@etl.go.jp>
15944
15945 * xdisp.c (face_before_or_after_it_pos):
15946 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
15947
159482002-07-22 Juanma Barranquero <lektu@terra.es>
15949
15950 * callproc.c (init_callproc) [DOS_NT]:
15951 Initialize Vshared_game_score_directory to nil.
15952 (syms_of_callproc) [DOS_NT]: Likewise.
15953
159542002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
15955
15956 * xdisp.c (display_line): Replace an abort with xassert.
15957
159582002-07-21 Richard M. Stallman <rms@gnu.org>
15959
15960 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
15961 and END_UNCHANGED when setting buffer_unchanged_p.
15962 Use current_matrix_up_to_date_p to decide whether to use
15963 try_cursor_movement.
15964
15965 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
15966
15967 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
15968
15969 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
15970 Set to nil if dir does not exist.
15971 (syms_of_callproc): Init unconditionally and simply.
15972
15973 * buffer.c (Fbuffer_list): Doc fix.
15974
159752002-07-21 Ken Raeburn <raeburn@gnu.org>
15976
15977 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
15978
15979 * buffer.c (mmap_realloc): When shrinking, make sure number of
15980 pages to unmap is rounded towards zero.
15981
15982 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
15983 (XSETINT): Deleted.
15984
15985 * m/att3b.h (XINT): Don't define.
15986 (VALBITS, VALMASK, XTYPE): Deleted.
15987 (DATA_SEG_BITS): Define.
15988 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
15989 ARRAY_MARK_FLAG): Deleted.
15990 (DATA_SEG_BITS): Define.
15991 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
15992 (DATA_SEG_BITS): Define.
15993
159942002-07-20 Richard M. Stallman <rms@gnu.org>
15995
15996 * print.c (print_error_message): New args CONTEXT and CALLER.
15997 Calls changed.
15998
15999 * lisp.h (print_error_message): Declare new args.
16000
16001 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
16002 and CONTEXT to print_error_message, don't print them here.
16003 For a Quit, don't use Vsignaling_function.
16004 Call message_log_maybe_newline.
16005
16006 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
16007
160082002-07-20 Kim F. Storm <storm@cua.dk>
16009
16010 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
16011
160122002-07-19 Ken Raeburn <raeburn@gnu.org>
16013
16014 * bytecode.c (struct byte_stack): Pointers into byte string now
16015 point to const.
16016 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
16017 const.
16018 * charset.h (BCOPY_SHORT): Source pointer now points to const.
16019 * coding.c (encode_eol, detect_coding, detect_eol):
16020 (decode_coding, encode_coding, detect_coding_system):
16021 Source strings now treated as const.
16022 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
16023 modify Lisp string contents.
16024 * coding.h (decode_coding, encode_coding, detect_coding,
16025 detect_eol): Declarations updated.
16026 * composite.c (compose_chars_in_text): Treat Lisp string contents
16027 as const.
16028 * dispnew.c (safe_bcopy): Source pointer now points to const.
16029 * lisp.h (STRING_COPYIN): New macro.
16030 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
16031 (internal_with_output_to_temp_buffer): Declarations updated.
16032 * print.c (temp_output_buffer_setup):
16033 (internal_with_output_to_temp_buffer): Buffer name argument is now
16034 pointer to const.
16035 * sound.c (struct sound_device): Function pointer field "write"
16036 buffer argument now points to const.
16037 (vox_write): Buffer argument points to const.
16038 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
16039 contents as const.
16040 * sysdep.c (emacs_write): Buffer pointer now const.
16041 * term.c (encode_terminal_code): Buffer pointer now const.
16042 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
16043 (x_face_list_fonts, x_update_menu_appearance):
16044 (hash_string_case_insensitive): Treat Lisp string contents as const.
16045
160462002-07-19 Juanma Barranquero <lektu@terra.es>
16047
16048 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
16049
16050 * fileio.c (syms_of_fileio): Likewise.
16051 (Ffile_name_as_directory): Fix argument name in docstring.
16052 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
16053
160542002-07-18 Richard M. Stallman <rms@gnu.org>
16055
16056 * data.c (Fdefalias): Doc fix.
16057
160582002-07-17 Dave Love <fx@gnu.org>
16059
16060 * intervals.h (text_property_stickiness): Use P_.
16061
16062 * ccl.c: Remove `emacs' conditionals.
16063 (ccl_backtrace_table): Fix size spec.
16064 (ccl_driver): Fix type errors.
16065
160662002-07-16 Ken Raeburn <raeburn@gnu.org>
16067
16068 * alloc.c (xstrdup, make_string, make_unibyte_string)
16069 (make_multibyte_string, build_string): String pointer args now
16070 point to const.
16071 * charset.c (find_charset_in_text, c_string_width):
16072 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
16073 * fileio.c (report_file_error):
16074 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
16075 (count_combining_before, count_combining_after, insert_1_both):
16076 (insert, insert_and_inherit, insert_string):
16077 (insert_before_markers, insert_before_markers_and_inherit):
16078 * lread.c (intern, oblookup, hash_string):
16079 * minibuf.c (temp_echo_area_glyphs):
16080 * search.c (fast_c_string_match_ignore_case):
16081 * sysdep.c (emacs_open, set_file_times):
16082 * xfaces.c (xstricmp):
16083 * xdisp.c (store_frame_title, string_char_and_length):
16084 (message_dolog, message2, message2_nolog, set_message): Likewise.
16085 (set_message_1): Cast message string argument to const pointer.
16086 * editfns.c (general_insert_function): Insertion function now
16087 takes pointer to const for input data.
16088 * charset.h (find_charset_in_text, c_string_width):
16089 (parse_str_as_multibyte): Declarations updated.
16090 * dispextern.h (xstricmp): Declaration updated.
16091 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
16092 (count_size_as_multibyte, count_combining_before):
16093 (count_combining_after, insert_1, insert_1_both, message_dolog):
16094 (insert, insert_and_inherit, insert_before_markers)
16095 (insert_before_markers_and_inherit, set_message, message2):
16096 (message2_dolog, build_string, make_string, make_unibyte_string):
16097 (make_multibyte_string, intern, oblookup, report_file_error):
16098 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
16099 (emacs_open, xstrdup): Declarations updated.
16100 * systime.h (set_file_times): Declaration updated.
16101
16102 * charset.c (find_charset_in_text, lisp_string_width): Use const
16103 for pointer to lisp string data.
16104 * charset.h (FETCH_STRING_CHAR_ADVANCE):
16105 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
16106 * coding.c (Ffind_coding_systems_region_interval):
16107 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
16108 (Fmake_directory_internal, Fdelete_directory):
16109 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
16110 * fontset.c (font_family_registry, fs_query_fontset):
16111 (list_fontsets):
16112 * frame.c (Fframe_parameter):
16113 * keyboard.c (cmd_error_internal):
16114 * keymap.c (Fdescribe_buffer_bindings):
16115 * lread.c (complete_filename_p, openp):
16116 * minibuf.c (Fminibuffer_complete_word):
16117 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
16118 (face_before_or_after_it_pos, next_element_from_string):
16119 (get_overlay_arrow_glyph_row, display_mode_element):
16120 (decode_mode_spec_coding):
16121 * xterm.c (same_x_server): Likewise.
16122
16123 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
16124 settings of non-existent fields.
16125
16126 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
16127 copy a lisp value.
16128
16129 * lread.c (Fintern_soft): Use string macros instead of
16130 Lisp_String fields.
16131 * keyboard.c (echo_char, parse_modifiers_uncached):
16132 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
16133 * textprop.c (validate_interval_range, interval_of): Likewise.
16134
16135 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
16136
16137 * charset.h (FETCH_STRING_CHAR_ADVANCE)
16138 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
16139 XSTRING()->size_byte.
16140
16141 * lisp.h (SDATA, SREF): Produce rvalue.
16142 (SSET): New macro.
16143 * alloc.c (make_event_array): Use SSET for storing into a string.
16144 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
16145 a string.
16146 * casefiddle.c (casify_object): Use SSET.
16147 * charset.h (FETCH_STRING_CHAR_ADVANCE)
16148 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
16149 address of string contents.
16150 * data.c (Faref): Use SDATA.
16151 (Faset): Use SDATA, SSET.
16152 * dired.c (directory_files_internal): Use SSET.
16153 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
16154 (Fread_file_name): Use SREF, SSET.
16155 * fns.c (concat): Use SSET.
16156 (concat, Fdelete): Use SDATA.
16157 * insdel.c (insert_from_string_1): Use SDATA.
16158 * keyboard.c (Fevent_convert_list): Use SREF.
16159 * lread.c (Fload): Use SDATA, SSET.
16160 * macfns.c (validate_x_resource_name): Use SSET.
16161 * process.c (status_message): Use SSET.
16162 * search.c (wordify): Use SDATA.
16163 (Freplace_match): Use SREF.
16164 * w32fns.c (validate_x_resource_name): Use SSET.
16165 * xfns.c (validate_x_resource_name): Use SSET.
16166 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
16167
161682002-07-16 Richard M. Stallman <rms@gnu.org>
16169
16170 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
16171
16172 * xdisp.c (reconsider_clip_changes):
16173 Don't test prevent_redisplay_optimizations_p.
16174 (redisplay_internal): Test prevent_redisplay_optimizations_p
16175 along with clip_changed in some cases.
16176 (try_window_id): Likewise.
16177 (redisplay_window): New local var buffer_unchanged_p.
16178
16179 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
16180
16181 * process.c (create_process): Test USG_SUBTTY_WORKS.
16182 (process_send_signal): Clean up handling of GID.
16183 Detect errors in ioctls meant to set GID.
16184
16185 * window.c (temp_output_buffer_show):
16186 Don't set prevent_redisplay_optimizations_p.
16187
161882002-07-15 Juanma Barranquero <lektu@terra.es>
16189
16190 * eval.c (Fdefvaralias): Add docstring argument.
16191
161922002-07-15 Ken Raeburn <raeburn@gnu.org>
16193
16194 * lisp.h (STRING_INTERVALS): Produce rvalue.
16195 (STRING_SET_INTERVALS): New macro.
16196 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
16197 * fns.c (Fstring_as_multibyte): Likewise.
16198 * intervals.c (balance_possible_root_interval, delete_interval)
16199 (create_root_interval, copy_intervals_to_string): Likewise.
16200 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
16201 instead of 0.
16202
162032002-07-14 Ken Raeburn <raeburn@gnu.org>
16204
16205 * lisp.h (STRING_SET_CHARS): New macro.
16206 (SCHARS, SBYTES): Produce rvalues.
16207 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
16208 * fns.c (concat): Likewise.
16209 * lread.c (read_vector): Likewise.
16210
16211 * lisp.h (SMBP): Delete. All uses changed to STRING_MULTIBYTE.
16212 (STRING_SET_UNIBYTE): New macro.
16213 (SET_STRING_BYTES): Delete. Callers (all of which supplied a
16214 length of -1) changed to use STRING_SET_UNIBYTE.
16215 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
16216 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
16217 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
16218 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
16219 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
16220 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
16221 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
16222 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
16223 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
16224 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
16225 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
16226 STRING_BYTES or indirection changed to SCHARS, SBYTES,
16227 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
16228 unchanged for now.
16229
162302002-07-13 Kim F. Storm <storm@cua.dk>
16231
16232 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
16233
162342002-07-12 Richard M. Stallman <rms@gnu.org>
16235
16236 * fileio.c (Fwrite_region): Doc fix.
16237
16238 * print.c (print_error_message): Don't handle Vsignaling_function here.
16239
16240 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
16241 (command_loop_1): Avoid certain actions after memory-full error.
16242
16243 * eval.c (Fsignal): Don't call cancel_hourglass.
16244 For a memory-full error, don't call Vsignal_hook_function
16245 and don't set Vsignaling_function.
16246
16247 * process.c (process_send_signal): Add abort call.
16248
162492002-07-11 Markus Rost <rost@math.ohio-state.edu>
16250
16251 * keymap.c (Fkey_binding): Fix typo.
16252
162532002-07-11 Richard M. Stallman <rms@gnu.org>
16254
16255 * alloc.c (Vmemory_full): New variable.
16256 (Vmemory_signal_data): Rename from memory_signal_data.
16257 Uses changed.
16258 (syms_of_alloc): Defvar them.
16259 (memory_full, buffer_memory_full): Set Vmemory_full.
16260
16261 * lisp.h (Vmemory_full): Add declaration.
16262 (current_column, indented_beyond_p): Change declaration.
16263
16264 * indent.c (last_known_column): Declare as double, not float.
16265 (current_column, current_column_1, string_display_width)
16266 (position_indentation): Return `double'.
16267 (indented_beyond_p): Arg `column' is `double'. Callers changed.
16268
16269 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
16270 (back_to_previous_visible_line_start)
16271 (reseat_at_next_visible_line_start, next_element_from_buffer):
16272 Use `double', not `float', when calling indented_beyond_p.
16273
16274 * s/hpux11.h (BROKEN_SA_RESTART): Define.
16275
16276 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
16277
162782002-07-11 Juanma Barranquero <lektu@terra.es>
16279
16280 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
16281 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
16282 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
16283 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
16284 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
16285 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
16286
162872002-07-10 Juanma Barranquero <lektu@terra.es>
16288
16289 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
16290 All callers changed.
16291
162922002-07-09 Stefan Monnier <monnier@cs.yale.edu>
16293
16294 * data.c (Fdefalias): Add an optional `docstring' argument.
16295 (set_internal, Fsetq_default): Use XCAR/XCDR.
16296
16297 * composite.c (HASH_VALUE, HASH_KEY):
16298 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
16299
163002002-07-09 Kenichi Handa <handa@etl.go.jp>
16301
16302 * callproc.c (Fcall_process): Fix previous change.
16303
163042002-07-07 Stefan Monnier <monnier@cs.yale.edu>
16305
16306 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
16307 Add support for hash-tables.
16308 (Ftry_completion): Return t even if the string appears multiple times.
16309
16310 * fns.c (Fnconc): Use XCDR.
16311 (Fprovide): Use CONSP and XCDR.
16312 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
16313 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
16314 (Fmake_hash_table): Accept `:size nil'.
16315 (Fmakehash): Delete: moved to subr.el.
16316 (syms_of_fns): Don't defsubr makehash.
16317
16318 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
16319 (HASH_TABLE_SIZE): Move from fns.c.
16320
163212002-07-07 Richard M. Stallman <rms@gnu.org>
16322
16323 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
16324 Instead just return 0 when there is something to be done.
16325 (try_scrolling): If make_cursor_line_fully_visible returns 0,
16326 retry scrolling as if cursor were off the bottom.
16327 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
16328 return CURSOR_MOVEMENT_MUST_SCROLL.
16329 (redisplay_window): If make_cursor_line_fully_visible returns 0,
16330 go to try_to_scroll.
16331
16332 * buffer.c (Fbuffer_local_value): Store current value into its binding
16333 so we get the up-to-date value for the binding that is loaded.
16334
16335 * eval.c (Fdefmacro): Doc fix.
16336
163372002-07-05 Dave Love <fx@gnu.org>
16338
16339 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
16340 correctly.
16341
16342 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
16343 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
16344 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
16345 CCL_LookupCharConstTbl.
16346 (syms_of_ccl): Defvar translation-hash-table-vector.
16347
163482002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16349
16350 * xdisp.c: Remove unused variable `face'.
16351
163522002-07-04 Juanma Barranquero <lektu@terra.es>
16353
16354 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
16355 obsolescence information.
16356
163572002-07-03 Andrew Choi <akochoi@shaw.ca>
16358
16359 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
16360 pattern. Search cache first.
16361 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
16362 for Japanese font.
16363 (XLoadQueryFont): Use it.
16364
163652002-07-02 Richard M. Stallman <rms@gnu.org>
16366
16367 * keymap.c (Fdefine_key): Doc fix.
16368
16369 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
16370
163712002-07-02 Juanma Barranquero <lektu@terra.es>
16372
16373 * keymap.c (syms_of_keymap): Fix typo.
16374
163752002-07-01 Andrew Choi <akochoi@shaw.ca>
16376
16377 * s/darwin.h: Define POSIX_SIGNALS.
16378
16379 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
16380 and FSRefMakePath to convert FSSpec returned with Apple Event to
16381 Posix pathname.
16382 (mac_initialize) [TARGET_API_MAC_CARBON]:
16383 Call init_required_apple_events and disable the `Quit' menu item
16384 provided automatically by the Carbon Toolbox.
16385
163862002-07-01 Dave Love <fx@gnu.org>
16387
16388 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
16389 for K&R.
16390
16391 * xterm.c: Fix prototype for K&R.
16392
16393 * term.c (costs_set): Declare static, non-initialized for pcc.
16394
163952002-07-01 Richard M. Stallman <rms@gnu.org>
16396
16397 * keyboard.c (timer_last_idleness_start_time): New variable.
16398 (timer_start_idle): Set that.
16399 (read_key_sequence): Use that to reset timer_idleness_start_time
16400 to previous value.
16401
16402 * window.c (Frecenter): With arg, set optional_new_start.
16403
16404 * xdisp.c (redisplay_internal): Make optional_new_start really work.
16405
16406 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
16407 buffer for completion.
16408
164092002-06-29 Ken Raeburn <raeburn@gnu.org>
16410
16411 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
16412
164132002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16414
16415 * keyboard.c (readable_filtered_events): New function that filters
16416 FOCUS_IN_EVENT depending on parameter.
16417 (readable_events): Calls readable_filtered_events, not filtering
16418 FOCUS_IN_EVENT.
16419 (get_filtered_input_pending): New function, filtering parameter passed
16420 to readable_filtered_events.
16421 (get_input_pending): Calls get_filtered_input_pending, not filtering
16422 FOCUS_IN_EVENT.
16423 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
16424 FOCUS_IN_EVENT.
16425
16426 * xterm.h (struct x_output): Add focus_state.
16427
16428 * xterm.c (x_focus_changed): New function.
16429 (x_detect_focus_change): New function.
16430 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
16431 EnterNotify and LeaveNotify to track X focus changes.
16432
164332002-06-28 Andreas Schwab <schwab@suse.de>
16434
16435 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
16436
164372002-06-27 Kim F. Storm <storm@cua.dk>
16438
16439 * xdisp.c (mode_line_string_list, mode_line_string_face)
16440 (mode_line_string_face_prop): New variables.
16441 (store_mode_line_string): New function.
16442 (display_mode_element): Use store_mode_line_string to
16443 add mode-line string elements to mode_line_string_list
16444 when mode_line_string_list is non-nil.
16445 (Fformat_mode_line): Now returns propertized string by
16446 default. New arg NO-PROPS to ignore properties.
16447 (decode_mode_spec): Only add two dashes for %- in propertized
16448 mode-line string.
16449 (syms_of_xdisp): Init and staticpro mode_line_string_list.
16450
164512002-06-27 Stefan Monnier <monnier@cs.yale.edu>
16452
16453 * minibuf.c (minibuffer_completion_contents): Add return type.
16454
164552002-06-27 Juanma Barranquero <lektu@terra.es>
16456
16457 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
16458
164592002-06-26 Juanma Barranquero <lektu@terra.es>
16460
16461 * fileio.c (read_file_name_cleanup): Add missing return.
16462
164632002-06-26 Richard M. Stallman <rms@gnu.org>
16464
16465 * window.c (Frecenter): Don't set force_start flag.
16466
16467 * minibuf.c (do_completion, Fminibuffer_complete_word)
16468 (Fminibuffer_completion_help): Complete just the text before point.
16469 (minibuffer_completion_contents): New function.
16470
16471 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
16472
16473 * frame.c (frames_bury_buffer): Function deleted.
16474
164752002-06-25 Miles Bader <miles@gnu.org>
16476
16477 * callint.c (Fcall_interactively): When checking to see if doprnt hit
16478 the end of callint_message, allow for a terminating '\0'.
16479
164802002-06-24 Juanma Barranquero <lektu@terra.es>
16481
16482 * w32select.c: Include composite.h.
16483
16484 * w16select.c: Likewise.
16485
164862002-06-24 Kenichi Handa <handa@etl.go.jp>
16487
16488 * callproc.c (Fcall_process): If code detection is necessary,
16489 call detect_coding directly here.
16490
16491 * coding.c (detect_eol): Preserve coding->cmp_data.
16492
16493 * w16select.c (Fw16_get_clipboard_data):
16494 * w32fns.c (w32_to_x_font):
16495 * w32select.c (Fw32_get_clipboard_data):
16496 * xselect.c (selection_data_to_lisp_data):
16497 * xterm.c (XTread_socket): Disable composition handling.
16498
164992002-06-24 Stefan Monnier <monnier@cs.yale.edu>
16500
16501 * print.c (temp_output_buffer_setup): Kill all local variables.
16502
165032002-06-22 Stefan Monnier <monnier@cs.yale.edu>
16504
16505 * lread.c (Fread): Remove redundant and imprecise declaration.
16506
16507 * xfns.c (check_x_display_info): Use check_x_frame.
16508
16509 * .gdbinit (xprintsym): Use the new `xname' field.
16510 (xsymbol): Use it.
16511
165122002-06-22 Jason Rumney <jasonr@gnu.org>
16513
16514 * w32fns.c (file_dialog_callback): New function.
16515 (Fx_file_dialog): Allow selecting directories as well as files.
16516
165172002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16518
16519 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
16520 OpenBSD. Add support for mipseb-*-netbsd* machines.
16521
165222002-06-17 Andrew Choi <akochoi@shaw.ca>
16523
16524 * macterm.c (mac_scroll_area): Set foreground and backcolor to
16525 black and white before scrolling. Restore frame background and
16526 foreground color after scrolling.
16527 (do_window_update): Call XClearWindow before calling expose_frame.
16528 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
16529 FRAME_FOREGROUND_PIXEL of frame.
16530
16531 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
16532 test Mac command key as <ALT> key.
16533
165342002-06-17 Stefan Monnier <monnier@cs.yale.edu>
16535
16536 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
16537
16538 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
16539 Lookup keys in function-key-map immediately so that key-translation-map
16540 can be applied earlier.
16541 Remove function_key_possible and key_translation_possible, replaced
16542 by checking `keytran_start < t'.
16543
16544 * .gdbinit (xsymbol): Use the new `xname' field.
16545
165462002-06-17 Andrew Choi <akochoi@shaw.ca>
16547
16548 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
16549 test Mac command key as <ALT> key.
16550
16551 * mac.c (do_applescript): Call initialize_applescript if necessary
16552 when first called. Dispose of result_desc only when there is no error.
16553 (Fdo_applescript): Use %d format specifier instead of %ld.
16554
165552002-06-16 Andrew Choi <akochoi@shaw.ca>
16556
16557 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
16558 of FrontWindow for cases keyDown and autoKey.
16559
16560 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
16561 Vdefault_fontset to Monaco with mac-roman coding.
16562
16563 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
16564 init_process before and after inclusion of Carbon/Carbon.h, resp.
16565
16566 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
16567 cursor_gc.
16568 (add_font_name_table_entry): New function.
16569 (init_font_name_table): Use add_font_name_table_entry; add italic,
16570 bold, and bold-italic entries for truetype fonts.
16571
16572 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
16573 for Mac too.
16574 (try_font_list) [MAC_OS]: If no font matches given registry, try
16575 fonts with any registry matching face_family.
16576 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
16577
16578 * s/darwin.h: If autoconf detects the Ncurses library, define
16579 LIBS_TERMCAP to -lncurses to use it.
16580
165812002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
16582
16583 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
16584
165852002-06-15 Richard M. Stallman <rms@gnu.org>
16586
16587 * window.c (Fset_window_configuration): Explicitly preserve
16588 the point value that new_current_buffer had at the start.
16589
165902002-06-14 Juanma Barranquero <lektu@terra.es>
16591
16592 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
16593 Fix typos.
16594
165952002-06-14 Kim F. Storm <storm@cua.dk>
16596
16597 * insdel.c (insert_1_both, insert_from_string_1)
16598 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
16599 insert happened in the end_unchanged region. Otherwise, the
16600 redisplay may be confused and duplicate the last line in the
16601 buffer [seen after save-buffer when require-final-newline==t].
16602
166032002-06-13 Jason Rumney <jasonr@gnu.org>
16604
16605 * w32.c (init_environment): Remove EMACSLOCKDIR.
16606 (stat): Swap _S_IFDIR and _S_IFREG.
16607
166082002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16609
16610 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
16611 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
16612 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
16613 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
16614 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
16615 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
16616 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
16617 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
16618 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
16619 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
16620 SELECTION_REQUEST_EVENT, selection_clear_event to
16621 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
16622 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
16623 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
16624 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
16625 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
16626 no_event to NO_EVENT.
16627
166282002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16629
16630 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
16631
166322002-06-12 Stefan Monnier <monnier@cs.yale.edu>
16633
16634 * intervals.c (textget): Don't forget to `return'.
16635 (lookup_char_property): Use XCAR/XCDR.
16636
166372002-06-12 Juanma Barranquero <lektu@terra.es>
16638
16639 * xdisp.c (Fformat_mode_line): Fix typo.
16640
166412002-06-12 Kim F. Storm <storm@cua.dk>
16642
16643 * xdisp.c (Fformat_mode_line): New function.
16644 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
16645 (store_frame_title_char, store_frame_title): Use unconditionally.
16646 (init_xdisp): Defsubr Fformat_mode_line.
16647 Initialize frame_title_buf etc. unconditionally.
16648
166492002-06-11 Stefan Monnier <monnier@cs.yale.edu>
16650
16651 * keyboard.c (read_key_sequence):
16652 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
16653 things through those maps after downcasing events.
16654 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
16655 applies after function-key-map.
16656 Make sure that keytran can be done in the middle in the sequence.
16657 Be careful not to throw away events past the one we downcase.
16658
16659 * lread.c (read_integer): Remove unused var `tem'.
16660 (read1): Fix int/Lisp_Object mixup.
16661
16662 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
16663
166642002-06-11 Richard M. Stallman <rms@gnu.org>
16665
16666 * keyboard.c (readable_events): Ignore any number of
16667 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
16668
166692002-06-09 Miles Bader <miles@gnu.org>
16670
16671 * xfaces.c (Ftty_supports_face_attributes_p): New function.
16672 (parse_rgb_list, tty_lookup_color): New functions.
16673 (tty_defined_color): Use `tty_lookup_color' to do all the work.
16674 (color_distance, Fcolor_distance): New functions.
16675 (TTY_SAME_COLOR_THRESHOLD): New macro.
16676 (Qtty_color_standard_values): New variable.
16677 (syms_of_xfaces): Initialize new vars & functions.
16678
166792002-06-08 Colin Walters <walters@verbum.org>
16680
16681 * textprop.c (Vchar_property_alias_alist): New variable.
16682 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
16683
16684 * intervals.c (lookup_char_property): New function for looking up
16685 overlay and text properties, created from textget.
16686 (textget): Use it.
16687
16688 * intervals.h (lookup_char_property): Declare.
16689 (Vchar_property_alias_alist): Declare.
16690
16691 * buffer.c (Foverlay_get): Use lookup_char_property.
16692
166932002-06-07 Sam Steingold <sds@gnu.org>
16694
16695 * xselect.c (lisp_data_to_selection_data): Fix last change:
16696 *data_ret is not a Lisp string, while unibyte_string is.
16697
166982002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
16699
16700 * xselect.c (lisp_data_to_selection_data): Fix last change:
16701 set size_ret.
16702
167032002-06-07 Andreas Schwab <schwab@suse.de>
16704
16705 * m/amdx86-64.h: New file.
16706
167072002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
16708
16709 * fns.c (Fstring_make_unibyte): Doc fix.
16710
16711 * xselect.c (lisp_data_to_selection_data): If the requested type
16712 is STRING, call string_make_unibyte to encode the selected text
16713 as a string.
16714
16715 * window.c (Fset_window_hscroll): Doc fix.
16716
167172002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16718
16719 * fileio.c (choose_write_coding_system):
16720 Call select-safe-coding-system properly.
16721
167222002-06-03 Richard M. Stallman <rms@gnu.org>
16723
16724 * xdisp.c (message_with_string): Error if STRING is not a string.
16725
16726 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
16727
16728 * fileio.c (choose_write_coding_system): Pass FILE arg to
16729 Vselect_safe_coding_system_function.
16730
167312002-06-03 Ken Raeburn <raeburn@gnu.org>
16732
16733 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
16734
167352002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
16736
16737 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
16738 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
16739 * keymap.c (describe_command): Likewise.
16740 * minibuf.c (read_minibuf): Likewise.
16741
16742 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
16743 Cast `current_column' return value to int.
16744 (back_to_previous_visible_line_start)
16745 (reseat_at_next_visible_line_start, next_element_from_buffer):
16746 Cast `indented_beyond_p' 3rd arg to float.
16747
16748 * indent.c (last_known_column): Now a float.
16749 (current_column_1, position_indentation, current_column)
16750 (string_display_width): Return float.
16751 (Fcurrent_column): Cast `current_column' return value to int.
16752 (Fcurrent_indentation): Cast `position_indentation' retval to int.
16753 (indented_beyond_p): Third arg now a float.
16754 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
16755
16756 * lisp.h (current_column): Now returns float.
16757 (indented_beyond_p): 3rd arg now a float.
16758
167592002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
16760
16761 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
16762 is Qcompound_text_with_extensions.
16763
16764 * xselect.c (lisp_data_to_selection_data): Always set selection
16765 type as string if x_encode_text returns streingp non-NULL.
16766
16767 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
16768
167692002-05-30 Richard M. Stallman <rms@gnu.org>
16770
16771 * window.c (Fset_window_configuration): Correct the handling
16772 of point in current buffer, to work with multiple windows.
16773
167742002-05-29 Colin Walters <walters@verbum.org>
16775
16776 * lread.c (Fread_from_string): Don't depend on order of evaluation
16777 for C function parameters.
16778
167792002-05-28 Richard M. Stallman <rms@gnu.org>
16780
16781 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
16782 way for blinked-off state and for a nonselected window.
16783
16784 * window.c (window_scroll_pixel_based): Don't call Fbolp;
16785 instead, see if the new start pos is at beginning of line.
16786
16787 * fileio.c (Fwrite_region): If START is a string, don't
16788 make any annotations.
16789
16790 * eval.c (syms_of_eval): Doc fix.
16791
167922002-05-28 Colin Walters <walters@debian.org>
16793
16794 * emacs.c (USAGE1): Add --no-splash.
16795 (standard_args): Ditto.
16796
167972002-05-28 Colin Walters <walters@gnu.org>
16798
16799 * lread.c (readchar_count): New variable.
16800 (readchar): Increment it.
16801 (unreadchar): Decrement it.
16802 (read_multibyte): Decrement it.
16803 (Vread_with_symbol_positions): New variable.
16804 (Vread_symbol_positions_list): New variable.
16805 (read_internal_start): New function, created from Fread and
16806 Fread_from_string. Handle Vread_symbol_positions_list and
16807 Vread_with_symbol_positions.
16808 (readevalloop, Fread, Fread_from_string): Use it.
16809 (read1): Use readchar_count to add symbol positions to
16810 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
16811 (syms_of_lread): DEFVAR_LISP and initialize them.
16812
16813 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
16814 (substitute_object_recurse, substitute_object_in_subtree)
16815 (substitute_in_interval): Prototype.
16816 (read_multibyte): Return c if it's less than zero.
16817
168182002-05-28 Kim F. Storm <storm@cua.dk>
16819
16820 * fileio.c (Fread_file_name_internal): Added brute-force
16821 speed up for using predicate file-directory-p.
16822
168232002-05-28 Kim F. Storm <storm@cua.dk>
16824
16825 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
16826 New variables.
16827 (syms_of_fileio): DEFVAR_LISP them.
16828 (read_file_name_cleanup): New unwind function.
16829 (Fread_file_name_internal): Only return completions satifying
16830 Vread_file_name_predicate. Temporarily unwind protect and rebind
16831 default-directory while checking completions against the predicate.
16832 (Fread_file_name): Added PREDICATE argument. Specbind it to
16833 Vread_file_name_predicate during completion.
16834 Call Vread_file_name_function to read the file name if non-nil.
16835
16836 * lisp.h (Fread_file_name): Now has 6 args.
16837
16838 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
16839 predicate for Fread_file_name when reading directory name.
16840 Supply Qnil for predicate in other calls to Fread_file_name.
16841
168422002-05-26 Miles Bader <miles@gnu.org>
16843
16844 * term.c (tty_capable_p): New function.
16845 * dispextern.h (tty_capable_p): New function declaration.
16846 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
16847 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
16848
168492002-05-23 Stefan Monnier <monnier@cs.yale.edu>
16850
16851 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
16852 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
16853 (Vwrite_region_annotate_functions): Docstring fix.
16854
168552002-05-23 Kim F. Storm <storm@cua.dk>
16856
16857 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
16858 phys_cursor's hpos is overwritten. This is still not completely
16859 correct, as it doesn't really make sense to use hpos at all to
16860 get the cursor glyph (as that is relative to the width of the
16861 characters on the line, which may have changed during the update).
16862
168632002-05-22 Jason Rumney <jasonr@gnu.org>
16864
16865 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
16866 Lisp_Object.
16867 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
16868 Use modified enumfont_t struct.
16869
16870 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
16871
16872 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
16873 Handle the `hbar' cursor type.
16874 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
16875
16876 * w32fns.c (Qhbar): New variable.
16877 (x_specified_cursor_type): Use it.
16878
168792002-05-21 Ken Raeburn <raeburn@gnu.org>
16880
16881 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
16882 now, when the address is needed.
16883
168842002-05-21 Colin Walters <walters@gnu.org>
16885
16886 * Makefile.in (shortlisp): Add font-core.el.
16887
168882002-05-20 Richard M. Stallman <rms@gnu.org>
16889
16890 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
16891
16892 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
16893 equivalent key bindings here.
16894
168952002-05-20 Ken Raeburn <raeburn@gnu.org>
16896
16897 Change symbol structure to contain a lisp object for the symbol
16898 name:
16899 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
16900 object field named "xname".
16901 (SYMBOL_NAME): New macro.
16902 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
16903 name field.
16904 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
16905 (mark_object, gc_sweep): Use symbol xname field and XSTRING
16906 instead of name field.
16907 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
16908 SYMBOL_NAME instead of XSYMBOL and name field.
16909 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
16910 instead of XSYMBOL and name field.
16911 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
16912 and SYMBOL_NAME instead of XSYMBOL and name field.
16913 * coding.c (Fread_coding_system, code_convert_region1)
16914 (code_convert_string1, code_convert_string_norecord)
16915 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
16916 XSYMBOL and name field.
16917 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
16918 (Fmake_variable_buffer_local, Fmake_local_variable)
16919 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
16920 of XSYMBOL and name field.
16921 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
16922 XSYMBOL and name field.
16923 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
16924 instead of XSYMBOL and name field.
16925 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
16926 XSYMBOL and name field.
16927 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
16928 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
16929 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
16930 instead of XSYMBOL and name field.
16931 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
16932 (parse_modifiers, apply_modifiers, Fevent_convert_list)
16933 (parse_solitary_modifier, Fexecute_extended_command):
16934 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
16935 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
16936 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
16937 of XSYMBOL and name field.
16938 (describe_command, describe_translation): Use SYMBOL_NAME and
16939 assignment instead of XSYMBOL and name field and XSETSTRING.
16940 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
16941 instead of XSYMBOL and name field.
16942 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
16943 name field and XSETSTRING.
16944 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
16945 of XSYMBOL and name field.
16946 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
16947 assignment instead of XSYMBOL and name field and XSETSTRING.
16948 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
16949 XSTRING instead of XSYMBOL and name field.
16950 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
16951 and XSTRING instead of XSYMBOL and name field.
16952 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
16953 and XSTRING instead of XSYMBOL and name field.
16954 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
16955 XSTRING instead of XSYMBOL and name field.
16956 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
16957 of XSYMBOL and name field.
16958 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
16959 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
16960
169612002-05-19 Ken Raeburn <raeburn@gnu.org>
16962
16963 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
16964 and XCDR real rvalues in most configurations.
16965
16966 * buffer.c (fix_overlays_in_range, fix_overlays_before):
16967 Don't take the address of the cdr part of a cons cell; instead, track
16968 the parent cell and call XSETCDR, or set the variable for the head
16969 of the list if we haven't started down the list yet.
16970
169712002-05-19 Richard M. Stallman <rms@gnu.org>
16972
16973 * doc.c (reread_doc_file): Don't ask for confirmation.
16974
169752002-05-18 Jason Rumney <jasonr@gnu.org>
16976
16977 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
16978 (xbm_load_image): Use it.
16979 (xbm_load): Ditto.
16980 (xbm_read_bitmap_data): Reverted to xfns.c version.
16981 From David Ponce <david@dponce.com>.
16982
169832002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
16984
16985 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
16986 2.02 and later.
16987
169882002-05-16 Juanma Barranquero <lektu@terra.es>
16989
16990 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
16991
169922002-05-15 Stefan Monnier <monnier@cs.yale.edu>
16993
16994 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
16995 meaningful test.
16996 (read_char_minibuf_menu_prompt): Fix typo.
16997
169982002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
16999
17000 * eval.c (Fcommandp): Doc fix.
17001
170022002-05-13 Stefan Monnier <monnier@cs.yale.edu>
17003
17004 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
17005 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
17006 (Fset_keymap_parent): Gcpro a bit more.
17007 (access_keymap): Gcpro around meta_map call and around the main loop.
17008 (get_keyelt): Gcpro when following indirect references.
17009 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
17010 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
17011 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
17012 Remove useless ad-hoc remap code.
17013
170142002-05-13 Richard M. Stallman <rms@gnu.org>
17015
17016 * search.c (search_buffer): Give up boyer moore search if inverse
17017 translation change charset_base.
17018
170192002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
17020
17021 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
17022 characters is carried over from the previous block of text, adjust
17023 coding->produced to account for the extra character.
17024
170252002-05-11 Andreas Schwab <schwab@suse.de>
17026
17027 * coding.c (intersection): Keep the elements of the returned list
17028 in the same order as in the first list.
17029
170302002-05-11 Kim F. Storm <storm@cua.dk>
17031
17032 * keymap.c (current_minor_maps): Fix resizing of cmm_maps;
17033 only update cmm_size if realloc actually succeeds.
17034 Testing with initial size of 2 elements revealed that using
17035 realloc on GNU/Linux would cause a random trap in xmalloc
17036 later on, so I rewrote the code to use malloc/bcopy/free instead
17037 of realloc.
17038
170392002-05-10 Jason Rumney <jasonr@gnu.org>
17040
17041 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
17042
170432002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
17044
17045 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
17046 parens, to ensure correct evaluation order.
17047
170482002-05-10 Kim F. Storm <storm@cua.dk>
17049
17050 * keymap.c (Vemulation_mode_map_alists): New variable.
17051 (syms_of_keymap): DEFVAR_LISP it.
17052 (current_minor_maps): Process keymap alists in that list before
17053 minor-mode-overriding-map-alist and minor-mode-map-alist.
17054
170552002-05-09 Richard M. Stallman <rms@gnu.org>
17056
17057 * search.c (Freplace_match): Doc fix.
17058
170592002-05-09 Kim F. Storm <storm@cua.dk>
17060
17061 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
17062 Enlarge cursor rectangle drawn around image with non-zero relief.
17063
17064 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
17065 Enlarge cursor rectangle drawn around image with non-zero relief.
17066
17067 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
17068 Enlarge cursor rectangle drawn around image with non-zero relief.
17069
170702002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
17071
17072 * xselect.c (lisp_data_to_selection_data): Don't set selection
17073 type if comes from the Lisp object's car. If the selection
17074 contains a pure ASCII text, always return QSTRING as its type.
17075
170762002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17077
17078 * mac.c (mac-cut-function): Doc fix.
17079
170802002-05-05 Richard M. Stallman <rms@gnu.org>
17081
17082 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
17083
170842002-05-04 Jason Rumney <jasonr@gnu.org>
17085
17086 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
17087 for event-click-count.
17088
17089 * process.c (init_process): Only add server subfeature if we can
17090 use non-blocking I/O.
17091
170922002-05-04 Andrew Choi <akochoi@shaw.ca>
17093
17094 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
17095 repeatedly.
17096
170972002-05-03 Jason Rumney <jasonr@gnu.org>
17098
17099 * process.c (Fmake_network_process): Only support server sockets
17100 when we can make them non-blocking.
17101
17102 * s/ms-w32.h (HAVE_SELECT): Define.
17103
17104 * w32.h (FILE_NDELAY): New flag.
17105
17106 * w32.c (sys_getpeername, fcntl): New functions.
17107 (_sys_read_ahead): Temporarily block on non-blocking sockets.
17108
17109 * w32proc.c: Include sys/file.h.
17110
171112002-05-03 Colin Walters <walters@verbum.org>
17112
17113 * callproc.c (Vgame_score_directory): Renamed to
17114 Vshared_game_score_directory.
17115
171162002-04-30 Richard M. Stallman <rms@gnu.org>
17117
17118 * s/gnu.h [emacs]: Include stdio.h.
17119 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
17120
17121 * eval.c (do_autoload): Error if called while preparing to dump.
17122
17123 * fns.c (Frequire): Error if need to load while preparing to dump.
17124
171252002-04-28 Colin Walters <walters@verbum.org>
17126
17127 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
17128 Default to "~/.emacs.d/games".
17129
171302002-04-29 Stefan Monnier <monnier@cs.yale.edu>
17131
17132 * lread.c (openp): Change arg exec_only to predicate.
17133 (build_load_history): Use XCAR/XCDR.
17134 (Flocate_file_internal): New fun.
17135 (syms_of_lread): Defsubr it.
17136 (Fload): Update call to openp.
17137
17138 * lisp.h (openp): Update prototype.
17139
17140 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
17141 * w32proc.c (sys_spawnve):
17142 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
17143 * w32.c (check_windows_init_file):
17144 * sound.c (Fplay_sound_internal):
17145 * process.c (Fstart_process):
17146 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
17147 * mac.c (run_mac_command):
17148 * emacs.c (init_cmdargs):
17149 * callproc.c (Fcall_process): Update call to openp.
17150
17151 * textprop.c (remove_properties): Don't use XCAR without CONSP.
17152
17153 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
17154
171552002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17156
17157 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
17158 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
17159
171602002-04-28 Richard M. Stallman <rms@gnu.org>
17161
17162 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
17163
17164 * eval.c (Fcommandp): New arg for_call_interactively.
17165 * lisp.h (Fcommandp): Declare new arg.
17166
171672002-04-28 Jason Rumney <jasonr@gnu.org>
17168
17169 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
17170
17171 * w32.c (stat, fstat): Use file index information to generate
17172 inodes for directories where available.
17173
171742002-04-26 Andrew Choi <akochoi@shaw.ca>
17175
17176 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
17177 [HAVE_CARBON]: Include Mac object files.
17178
17179 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
17180 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
17181 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
17182 MAC_OSX, and MAC_OS instead of macintosh.
17183
17184 * editfns.c [MAC_OS8]: Include stdio.h.
17185
17186 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
17187
17188 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
17189 Apple Monaco.
17190
17191 * process.c (QCfamily, QCfilte): Declare extern.
17192 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
17193 calling select.
17194
17195 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
17196
17197 * tparam.c [MAC_OSX]: Don't define BC and UP.
17198
17199 * config.in [HAVE_CARBON]: Add.
17200
17201 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
17202 Move here from mac/src and mac/inc.
17203
17204 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
17205
172062002-04-26 Gerd Moellmann <gerd@gnu.org>
17207
17208 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
17209 Compute phys_cursor_width from the x position returned
17210 by x_draw_glyhs, which is cheaper.
17211 (x_display_and_set_cursor): Compute the buffer-local value
17212 of `cursor-in-non-selected-windows' only when needed.
17213
172142002-04-25 Gerd Moellmann <gerd@gnu.org>
17215
17216 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
17217 cursor on a stretch glyph has a width that depends on
17218 x_stretch_cursor_p.
17219
172202002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17221
17222 * abbrev.c (abbrev-start-location): Doc fix.
17223
17224 * indent.c (Fvertical_motion): Fix last change.
17225
172262002-04-25 Gerd Moellmann <gerd@gnu.org>
17227
17228 * indent.c (Fvertical_motion): Move to the start of the line
17229 containing PT before moving up or down.
17230
172312002-04-24 Gerd Moellmann <gerd@gnu.org>
17232
17233 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
17234 case of writing a whole row, more or less analogous to the case of
17235 writing only parts of a row.
17236
17237 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
17238 0 for NO_CURSOR.
17239
17240 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
17241
172422002-04-23 Colin Walters <walters@verbum.org>
17243
17244 * buffer.c (syms_of_buffer): Doc fix.
17245
172462002-04-23 Gerd Moellmann <gerd@gnu.org>
17247
17248 * xterm.c (notice_overwritten_cursor): Handle the special case
17249 of the cursor being in the first blank non-text line at the
17250 end of a window.
17251
17252 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
17253 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
17254 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
17255 bar cursors only, to make phys_cursor_width contain what its name
17256 suggests.
17257 (notice_overwritten_cursor): Consider the cursor image erased if
17258 the output area intersects the cursor image in y-direction.
17259
172602002-04-23 Simon Marshall <simon@gnu.org>
17261
17262 * xfns.c (x_set_mouse_color): Change default for cross_cursor
17263 to XC_hand2.
17264
172652002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17266
17267 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
17268
172692002-04-22 Kim F. Storm <storm@cua.dk>
17270
17271 * textprop.c (remove_properties): Fixed trap for malformed plist.
17272
172732002-04-22 Richard M. Stallman <rms@gnu.org>
17274
17275 * cmds.c (Fend_of_line): Handle intangible text in mid line.
17276
17277 * window.c (make_window): Initialize height_fixed_p,
17278 last_cursor_off_p, and p->cursor_off_p slots.
17279
172802002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17281
17282 * fns.c (use-dialog-box): Doc fix.
17283
172842002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17285
17286 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
17287 variables `row', `i' and `area'.
17288 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
17289 toolkit library.
17290
172912002-04-19 Stefan Monnier <monnier@cs.yale.edu>
17292
17293 * xfaces.c (clear_font_table): Don't free the default font of
17294 a frame even if it's on another display.
17295 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
17296 that could be Qt.
17297
172982002-04-19 Juanma Barranquero <lektu@terra.es>
17299
17300 * indent.c (Fmove_to_column): Remove unused local variable
17301 `next_boundary_byte'.
17302 (current_column_1): Likewise.
17303
173042002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
17305
17306 * msdos.c (Qhbar): New variable.
17307 (syms_of_msdos): Intern and staticpro it.
17308 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
17309 cursor type.
17310
173112002-04-19 Dave Lambert <dlambert@acm.org>
17312
17313 Theses change implement an underscore-like (`hbar') cursor.
17314
17315 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
17316
17317 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
17318 Handle the `hbar' cursor type.
17319 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
17320
17321 * xfns.c (Qhbar): New variable.
17322 (syms_of_xfns): Intern and staticpro it.
17323 (x_specified_cursor_type): Handle `hbar' cursor.
17324
17325 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
17326 not defined.
17327
173282002-04-18 Richard M. Stallman <rms@gnu.org>
17329
17330 * textprop.c (remove_properties): New arg LIST allows scanning
17331 either a list or a plist.
17332 (interval_has_some_properties_list): New function, like
17333 interval_has_some_properties using list instead of plist.
17334 All callers changed.
17335 (Fremove_list_of_text_properties): New function.
17336 (syms_of_textprop): Defsubr it.
17337
173382002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
17339
17340 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
17341
173422002-04-17 Juanma Barranquero <lektu@terra.es>
17343
17344 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
17345
173462002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
17347
17348 * window.c (coordinates_in_window): Don't report on margin area
17349 if its width is zero.
17350
173512002-04-16 Jason Rumney <jasonr@gnu.org>
17352
17353 * w32fns.c (Fx_file_dialog): Decode file name before using.
17354
17355 * w32term.c (construct_drag_n_drop): Likewise.
17356
173572002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
17358
17359 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
17360 store load-history in pure space.
17361
17362 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
17363
173642002-04-16 Stefan Monnier <monnier@cs.yale.edu>
17365
17366 * xterm.c (Qlatin_1, Qutf_8): New vars.
17367 (syms_of_xterm): Initialize them.
17368 (XTread_socket): Eliminate incorrect optimization that tried to avoid
17369 decoding the output of X*LookupString.
17370 Always use latin-1 to decode the output of XLookupString.
17371 Try Xutf8LookupString if XmbLookupString failed.
17372
17373 * region-cache.c (new_region_cache): Use BEG.
17374
173752002-04-16 Gerd Moellmann <gerd@gnu.org>
17376
17377 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
17378 configuration files.
17379 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
17380 returns 0.
17381
173822002-04-15 Andreas Schwab <schwab@suse.de>
17383
17384 * config.in: Regenerated using autoheader.
17385
17386 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
17387 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
17388 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
17389 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
17390 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
17391 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
17392 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
17393 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
17394 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
17395 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
17396 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
17397 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
17398 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
17399 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
17400 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
17401 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
17402 STACK_DIRECTION, now set by autoconf.
17403
174042002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17405
17406 * dispnew.c (marginal_area_string): Sort arguments.
17407
17408 * dispextern.h (marginal_area_string): Add prototype.
17409
174102002-04-13 Richard M. Stallman <rms@gnu.org>
17411
17412 * fileio.c (Finsert_file_contents):
17413 Don't call temp_output_buffer_setup--do just part, by hand.
17414
17415 * coding.c (run_pre_post_conversion_on_str):
17416 Don't call temp_output_buffer_setup--do just part, by hand.
17417
17418 * keyboard.c (command_loop_1): Don't call start_hourglass
17419 or cancel_hourglass when executing a macro.
17420
17421 * marker.c (count_markers): New function.
17422
17423 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
17424 grow without limit. Move recently used elements to the front.
17425
174262002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
17427
17428 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
17429
174302002-04-12 Gerd Moellmann <gerd@gnu.org>
17431
17432 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
17433 rows marginal areas.
17434 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
17435 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
17436
17437 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
17438
174392002-04-12 Dave Love <fx@gnu.org>
17440
17441 * dispnew.c (marginal_area_string): New.
17442
17443 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
17444 (Qleft_margin, Qright_margin): Declare.
17445 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
17446
17447 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
17448 note_mode_line_highlight and extended.
17449
17450 * keyboard.c (Qleft_margin, Qright_margin): Declare.
17451 (make_lispy_event): Deal with mouse events in margins.
17452
174532002-04-12 Stefan Monnier <monnier@cs.yale.edu>
17454
17455 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
17456
17457 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
17458 than deactivating the mark if tmm is set to `lambda'.
17459 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
17460 Use a single event for HELP_EVENT.
17461 (Fexecute_extended_command): Save last_point_position.
17462
174632002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17464
17465 * lisp.h (Fpropertize): Add prototype.
17466
17467 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
17468
174692002-04-10 Colin Walters <walters@verbum.org>
17470
17471 * config.in: Add HAVE_SHARED_GAME_DIR.
17472
17473 * callproc.c (Vgame_score_directory): New variable.
17474 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
17475
174762002-04-10 Richard M. Stallman <rms@gnu.org>
17477
17478 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
17479
174802002-04-09 Stefan Monnier <monnier@cs.yale.edu>
17481
17482 * minibuf.c (read_minibuf): Use empty_string.
17483 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
17484 Short-circuit the search as soon as it "failed".
17485 (Fall_completions): Allow lambda forms and lists of strings for alist.
17486 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
17487 when require_match is nil.
17488 (Ftest_completion): Rename from `test_completion' and export to elisp.
17489 Call the predicate also when alist is a list.
17490 Obey Vcompletion_regexp_list.
17491 (do_completion, Fminibuffer_complete_and_exit): Use it.
17492 (Fassoc_string): Rename from `assoc_for_completion'.
17493 Allow list of strings as well and export to elisp.
17494
174952002-04-08 Stefan Monnier <monnier@cs.yale.edu>
17496
17497 * puresize.h (BASE_PURESIZE): Increase to 900KB.
17498
174992002-04-08 Juanma Barranquero <lektu@terra.es>
17500
17501 * w32.c (sys_accept): Don't hide variable `s'.
17502
175032002-04-05 Gerd Moellmann <gerd@gnu.org>
17504
17505 * callint.c (Fcall_interactively): Use INTEGERP instead of
17506 NUMBERP for checking Vhistory_length.
17507
175082002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17509
17510 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
17511 Doc fix to reflect it.
17512
175132002-04-04 Richard M. Stallman <rms@gnu.org>
17514
17515 * xdisp.c (display_mode_element): New arg RISKY.
17516 Disregard text props found or specified within a variable
17517 that isn't marked risky-local-variable.
17518 (Qrisky_local_variable): New variable.
17519 (syms_of_xdisp): Init and staticpro it.
17520
175212002-04-04 Stefan Monnier <monnier@cs.yale.edu>
17522
17523 * undo.c (record_point): New fun.
17524 (record_delete, record_insert): Use it.
17525
175262002-04-03 Juanma Barranquero <lektu@terra.es>
17527
17528 * doc.c (Fdocumentation): Add missing parentheses.
17529 (Fdocumentation_property): Likewise.
17530
175312002-04-03 Stefan Monnier <monnier@cs.yale.edu>
17532
17533 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
17534 data is 0, just return nil.
17535
175362002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
17537
17538 * msdos.c (syms_of_msdos): Fix last change with
17539 mouse_autoselect_window.
17540
175412002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17542
17543 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
17544 mouse_autoselect_window.
17545
175462002-04-02 Stefan Monnier <monnier@cs.yale.edu>
17547
17548 * keyboard.c (make_lispy_event): Handle unknown keysyms together
17549 with system-specific keysyms. Use it also for unknown function keys.
17550
17551 * doc.c (reread_doc_file): Return whether reload was attempted.
17552 (Fdocumentation, Fdocumentation_property): Don't try to reload
17553 if the doc is 0 and only ask once.
17554
17555 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
17556
175572002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
17558
17559 * keyboard.c (read_char): If the event was Qselect_window,
17560 restore timer_idleness_start_time to its previous value.
17561
17562 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
17563
175642002-04-01 Stefan Monnier <monnier@cs.yale.edu>
17565
17566 * region-cache.c (new_region_cache): Use BEG.
17567
17568 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
17569 Use BEG and BEG_BYTE.
17570
17571 * doc.c (get_doc_string): Return nil if the location is wrong.
17572 (reread_doc_file): New fun.
17573 (Fdocumentation, Fdocumentation_property):
17574 Call it if get_doc_string fails.
17575 (Fsnarf_documentation): Make it work for a dumped Emacs.
17576
17577 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
17578 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
17579
17580 * charset.c (Fstring): Allow 0 arguments.
17581
17582 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
17583
17584 * process.c (DATAGRAM_CONN_P, list_processes_1)
17585 (Fprocess_datagram_address, Fset_process_datagram_address)
17586 (Fset_network_process_options, server_accept_connection):
17587 Fix some int/Lisp_Object confusions (thank you union types).
17588
175892002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17590
17591 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
17592
17593 * w32term.c: Likewise.
17594 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
17595
17596 * keyboard.c (Qselect_window): New symbol.
17597 (head_table): Use it.
17598 (keys_of_keyboard): Bound select-window event to handle-select-window.
17599 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
17600
17601 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
17602 (last_window): New variable.
17603 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
17604 (note_mouse_movement): Remove reimplemented code in #if 0.
17605 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
17606 Emacs windows.
17607
17608 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
17609
176102002-03-31 Gerd Moellmann <gerd@gnu.org>
17611
17612 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
17613 Callers changed.
17614
176152002-03-30 Richard M. Stallman <rms@gnu.org>
17616
17617 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
17618 loop whenever it stops making progress.
17619
17620 * widget.c (set_frame_size): Don't call change_frame_size.
17621
176222002-03-30 Gerd Moellmann <gerd@gnu.org>
17623
17624 * dispnew.c (direct_output_for_insert):
17625 Call mark_window_display_accurate.
17626
176272002-03-29 Jason Rumney <jasonr@gnu.org>
17628
17629 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
17630
176312002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
17632
17633 * Makefile.in (lread.o): Depend on coding.h.
17634
17635 * lread.c (openp, Fload): Encode the file name before passing it
17636 to `stat', `access', and `emacs_open'.
17637 (openp): GCPRO the encoded file name. Don't recompute Lisp
17638 strings unnecessarily.
17639
176402002-03-29 Kim F. Storm <storm@cua.dk>
17641
17642 * fns.c (Flax_plist_put): Doc fix.
17643
176442002-03-28 Miles Bader <miles@gnu.org>
17645
17646 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
17647
176482002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17649
17650 * process.c (set-network-process-options): Add usage.
17651 (make-network-process): Doc fix.
17652
176532002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
17654
17655 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
17656
176572002-03-26 Richard M. Stallman <rms@gnu.org>
17658
17659 * fns.c (Fsubstring_no_properties): New function.
17660 (Flax_plist_get, Flax_plist_put): New functions.
17661 (syms_of_fns): defsubr them.
17662
17663 * xdisp.c (update_menu_bar): Test only update_mode_lines;
17664 don't test or alter w->update_mode_line.
17665
17666 * window.c (Fdisplay_buffer): Doc fix.
17667
176682002-03-24 Richard M. Stallman <rms@gnu.org>
17669
17670 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
17671
176722002-03-24 Gerd Moellmann <gerd@gnu.org>
17673
17674 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
17675 (Fdefmacro): Handle `(declare ...)'.
17676 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
17677 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
17678
176792002-03-24 Jason Rumney <jasonr@gnu.org>
17680
17681 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
17682 (xbm_file_p): Add prototypes.
17683 (xbm_format, xbm_image_p): Sync with xfns.c.
17684 (reflect_byte): New function.
17685 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
17686 (xbm_load_image): Create bitmaps with a depth of 1.
17687 (init_xfns): Enable XBM images.
17688
176892002-03-23 Jason Rumney <jasonr@gnu.org>
17690
17691 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
17692 correctly. Do not pass up_modifier to keyboard buffer.
17693
17694 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
17695
176962002-03-22 Stefan Monnier <monnier@cs.yale.edu>
17697
17698 * Makefile.in (bootstrapclean): New target.
17699 (bootstrap-temacs, bootstrap-doc): Remove.
17700 (bootstrap-emacs): Use a bog-standard `temacs'.
17701 Don't bother to build a DOC file.
17702
17703 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
17704
17705 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
17706 in temacs even if !CANNOT_DUMP.
17707 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
17708
17709 * alloc.c (check_pure_size): Only output a warning.
17710
177112002-03-22 Jason Rumney <jasonr@gnu.org>
17712
17713 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
17714 supported.
17715
17716 * w32term.c (zv_bits): Declare as short, for word alignment.
17717 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
17718 (syms_of_w32term): Define x-use-underline-position-properties.
17719
17720 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
17721 (clear_image_cache): Block input, fix logic, clear matrices in
17722 all frames that share this cache.
17723
177242002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
17725
17726 * emacs.c (main): Update the Copyright year in the blurb printed
17727 by "emacs --version".
17728
17729 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
17730
17731 * xterm.c (XTread_socket): If XK_ISO_Lock and
17732 XK_ISO_Last_Group_Lock are defined, handle keysyms between
17733 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
17734
177352002-03-21 Kim F. Storm <storm@cua.dk>
17736
17737 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
17738 menu-bar bindings in keymap and local-map properties _are_ used.
17739 But try keymap property first in accordance with 2002-01-03 patch.
17740 Added comment describing why this is not always reliable.
17741 (tool_bar_items): Ditto for tool-bar.
17742
177432002-03-21 Jason Rumney <jasonr@gnu.org>
17744
17745 * w32fns.c (x_clear_image_1): Disable color table code.
17746
177472002-03-21 Kim F. Storm <storm@cua.dk>
17748
17749 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
17750 removed the wrong version of the DEFUN macro; fixed it.
17751
17752 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
17753 Fmember rather than Fmemq).
17754 (Fprovide): Check that subfeatures is a list.
17755
17756 * process.c (QCfeature, QCdatagram): Removed variables.
17757 (QCtype, Qdatagram): New variables.
17758 (network_process_featurep): Removed function.
17759 (Fmake_network_process): Removed :feature check.
17760 Use :type 'datagram instead of :datagram t to create a datagram
17761 socket. This allows us to add other connection types (e.g. raw
17762 sockets) later in a consistent manner.
17763 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
17764 supported subfeatures for feature make-network-process.
17765 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
17766 Intern and staticpro QCtype and Qdatagram.
17767 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
17768
17769 * xfns.c: (QCtype): Remove duplicate declaration and
17770 initialization (is now declared in process.c).
17771
17772 * w32fns.c: (QCtype): Remove duplicate declaration and
17773 initialization (is now declared in process.c).
17774
177752002-03-21 Richard M. Stallman <rms@gnu.org>
17776
17777 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
17778 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
17779 when jumping to `fail' to avoid undoing reg changes in the
17780 last iteration of the loop.
17781 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
17782
17783 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
17784 Depend on process.h.
17785
177862002-03-20 Jason Rumney <jasonr@gnu.org>
17787
17788 Most of the following changes are still conditional on HAVE_IMAGES
17789 which is not set by default on Windows.
17790
17791 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
17792
17793 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
17794 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
17795 (four_corners_best, x_clear_image_1, x_clear_image)
17796 (x_alloc_image_color, postprocess_image)
17797 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
17798 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
17799 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
17800
17801 * w32gui.h (struct XImage): Define.
17802
17803 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
17804 extract mouse co-ordinates.
17805
178062002-03-20 Jason Rumney <jasonr@gnu.org>
17807
17808 * w32.c (init_winsock): Dynamically load new server and UDP
17809 socket functions.
17810 (socket_to_fd): New function.
17811 (sys_socket): Use it.
17812 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
17813 (sys_recvfrom, sys_sendto): New wrapper functions.
17814
17815 * process.c (QCfamily, QCfilter): Remove duplicate declaration
17816 and initialization.
17817
17818 * makefile.w32-in (LIBS): Remove $(WSOCK32).
17819
178202002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
17821
17822 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
17823 Don't use "sun" as a variable, it's a predefined constant on Sun
17824 machines.
17825
178262002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17827
17828 * bytecode.c (Fbyte_code): Revert last change.
17829
178302002-03-19 Kim F. Storm <storm@cua.dk>
17831
17832 * makefile.w32-in (LIBS): Add $(WSOCK32).
17833 From David Ponce <dponce@voila.fr>.
17834
178352002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17836
17837 * process.c (wait_reading_process_input): Move variables `pname'
17838 and `pnamelen' down where they are used.
17839
17840 * bytecode.c (Fbyte_code): Discard unused computed value to
17841 prevent gcc warning.
17842
17843 * lisp.h (Fplist_member): Add prototype.
17844
178452002-03-18 Kim F. Storm <storm@cua.dk>
17846
17847 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
17848 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
17849
17850 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
17851 Remove explicit GNU_LINUX settings for datagram support.
17852
178532002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17854
17855 * process.c (Fmake_network_process): Remove unused variable `sa'.
17856 Doc fix. Add usage:.
17857 (set_socket_options): Remove unused variables `optnum' and `opttype'.
17858
178592002-03-17 Richard M. Stallman <rms@gnu.org>
17860
17861 * xdisp.c (cursor_type_changed): New variable.
17862 (redisplay_internal): Redisplay all windows if cursor_type_changed.
17863 Clear it when clearing windows_or_buffers_changed.
17864 (try_cursor_movement, redisplay_window, try_window_id)
17865 (try_window_reusing_current_matrix): Test cursor_type_changed
17866 along with windows_or_buffers_changed.
17867
17868 * window.h (cursor_type_changed): New variable.
17869
17870 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
17871 not update_mode_lines, and always set it to 1.
17872
17873 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
17874 if no frames needed redrawing.
17875
178762002-03-17 Kim F. Storm <storm@cua.dk>
17877
17878 The following changes add support for network server processes,
17879 datagram connections, and local (unix) sockets.
17880
17881 * process.h (struct Lisp_Process): New member log.
17882 Doc fix: Member command used to indicate stopped network process.
17883 Doc fix: Member childp contains plist for network process.
17884 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
17885
17886 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
17887 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
17888 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
17889 New variables.
17890 (NETCONN1_P): New macro.
17891 (DATAGRAM_SOCKETS): New conditional symbol.
17892 (datagram_address): New array.
17893 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
17894 (status_message): Use concat3.
17895 (Fprocess_status): Add `listen' status to doc string. Return `stop'
17896 for a stopped network process.
17897 (Fset_process_buffer): Update contact plist for network process.
17898 (Fset_process_filter): Ditto. Don't enable input for stopped
17899 network processes. Server must listen, even if filter is t.
17900 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
17901 New functions.
17902 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
17903 (Fprocess_contact): Added KEY argument. Handle datagrams.
17904 (list_processes_1): Optionally show only processes with the query
17905 on exit flag set. Dynamically adjust column widths. Omit tty
17906 column if not needed. Report stopped network processes.
17907 Identify server and datagram network processes.
17908 (Flist_processes): New optional arg `query-only'.
17909 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
17910 (conv_lisp_to_sockaddr, set_socket_options)
17911 (network_process_featurep, unwind_request_sigio): New helper functions.
17912 (Fprocess_datagram_address, Fset_process_datagram_address):
17913 (Fset_network_process_options): New lisp functions.
17914 (Fopen_network_stream): Removed. Now defined in simple.el.
17915 (Fmake_network_process): New lisp function. Code is based on previous
17916 Fopen_network_stream, but heavily reworked with new property list based
17917 argument list, support for datagrams, server processes, and local
17918 sockets in addition to old client-only functionality.
17919 (server_accept_connection): New function.
17920 (wait_reading_process_input): Use it to handle incoming connects.
17921 Do not enable input on a new connection if process is stopped.
17922 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
17923 (send_process): Handle datagram sockets.
17924 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
17925 network process is indicated by setting command field to t .
17926 (Fprocess_send_eof): No-op if datagram connection.
17927 (Fstatus_notify): Don't read input for a stream server socket or a
17928 stopped network process.
17929 (init_process): Initialize datagram_address array.
17930 (syms_of_process): Intern and staticpro new variables, defsubr new
17931 functions.
17932
179332002-03-16 Jason Rumney <jasonr@gnu.org>
17934
17935 * w32fns.c (w32_to_all_x_charsets): Return correct type in
17936 startup case.
17937
179382002-03-16 Richard M. Stallman <rms@gnu.org>
17939
17940 * xdisp.c (redisplay_internal, redisplay_windows):
17941 Use list_of_error to call internal_condition_case_1.
17942 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
17943 so as to catch all errors with no possibility of debugger redisplay.
17944 (list_of_error): New variable.
17945 (syms_of_xdisp): Init and staticpro it.
17946
17947 * print.c (print_object): Delete `\ ' from printed rep of frame.
17948
179492002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
17950
17951 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
17952 until its implementation is fixed.
17953
179542002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17955
17956 * xfns.c (png_load): Remove unused variable `gamma_str'.
17957
179582002-03-14 Richard M. Stallman <rms@gnu.org>
17959
17960 * xfns.c (x_real_positions): Handle failure in XQueryTree.
17961
179622002-03-14 Miles Bader <miles@gnu.org>
17963
17964 * intervals.c (adjust_for_invis_intang): New function.
17965 (set_point_both): Use `adjust_for_invis_intang' to do most of the
17966 work for dealing with invisible+intangible regions. Do so before
17967 and after both forward and backward movements, to handle both
17968 front-sticky and rear-sticky cases.
17969 * textprop.c (text_property_stickiness): Function moved here from
17970 `editfns.c'.
17971 * intervals.h (text_property_stickiness): New declaration.
17972 * editfns.c (char_property_eq): Function removed.
17973 (text_property_stickiness): Function moved to `textprop.c'.
17974
179752002-03-13 Jason Rumney <jasonr@gnu.org>
17976
17977 * config.in: Add STRFTIME_NO_POSIX2.
17978
17979 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
17980 and %OX when underlying strftime does not.
17981
179822002-03-13 Stefan Monnier <monnier@cs.yale.edu>
17983
17984 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
17985 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
17986 line) to avoid annoying flicker.
17987 (xm_scroll_callback): Get rid of the now unnecessary kludge.
17988 (XTread_socket): Mark it static.
17989
17990 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
17991
179922002-03-13 Kim F. Storm <storm@cua.dk>
17993
17994 * puresize.h (BASE_PURESIZE): Increase to 775000.
17995
179962002-03-12 Juanma Barranquero <lektu@terra.es>
17997
17998 * editfns.c (syms_of_editfns): Fix typo.
17999
180002002-03-12 Gerd Moellmann <gerd@gnu.org>
18001
18002 * xsmfns.c: Include stdio.h because termhooks.h needs it.
18003 Include termopt.h for interrupt_input.
18004
180052002-03-11 Andreas Schwab <schwab@suse.de>
18006
18007 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
18008
180092002-03-11 Gerd Moellmann <gerd@gnu.org>
18010
18011 * xterm.c (note_mouse_movement): Put code for
18012 x_autoselect_window_p in #if 0.
18013
18014 * lread.c (Fload): Don't assume that message_with_string uses the
18015 string it is given like a C string.
18016
180172002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
18018
18019 * xterm.h (x_session_check_input, x_session_initialize): Declare.
18020
18021 * xterm.c (XTread_socket): Add call to x_session_check_input and
18022 x_session_have_connection.
18023 (x_initialize): Add call to x_session_initialize.
18024
18025 * termhooks.h (enum event_kind): Add save_session_event.
18026
18027 * keyboard.c: Add Emacs event save_session_event.
18028
18029 * emacs.c (main): Add call to syms_of_xsmfns.
18030
18031 * lisp.h (syms_of_xsmfns): Declare extern.
18032
18033 * config.in: Add HAVE_X_SM.
18034
18035 * Makefile.in (LIBXT): Add -lSM -lICE
18036 if HAVE_X_SM and not USE_X_TOOLKIT.
18037 (XOBJ): New file xsmfns.c added.
18038
18039 * xsmfns.c: New file for X session management.
18040
180412002-03-09 Jason Rumney <jasonr@gnu.org>
18042
18043 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
18044 read-only when setting modified time.
18045
180462002-03-08 Gerd Moellmann <gerd@gnu.org>
18047
18048 * xdisp.c (move_it_vertically_backward): At the end of the function,
18049 when moving forward by lines, treat terminal frames specially.
18050
18051 * keyboard.c (echo_char): Make sure to add a separator between
18052 keys even if echo_dash hasn't been called.
18053
18054 * xdisp.c: Use new string macros.
18055 (update_echo_area): Pass number of bytes to message3 instead of
18056 number of chars.
18057 (set_message_1): Don't access a string's size_byte directly.
18058 (decode_mode_spec_coding): Use number of bytes of eoltype string
18059 instead number of chars.
18060
18061 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
18062
180632002-03-08 Juanma Barranquero <lektu@terra.es>
18064
18065 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
18066 24-bit.
18067
180682002-03-06 Jason Rumney <jasonr@gnu.org>
18069
18070 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
18071
180722002-03-06 Gerd Moellmann <gerd@gnu.org>
18073
18074 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
18075 (cancel_echoing, echo_length, echo_truncate): Changed to
18076 work with new kboard definition.
18077 (echo_now): Use message3_nolog instead of message2_nolog.
18078
18079 * alloc.c (mark_kboards): Mark echo_string.
18080
18081 * keyboard.h (ECHOBUFSIZE): Removed.
18082 (struct kboard): Member echoptr removed, member echobuf renamed
18083 to echo_string.
18084
18085 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
18086 message3 instead of message2 to display the message using STRING's
18087 text properties.
18088
180892002-03-05 Andreas Schwab <schwab@suse.de>
18090
18091 * xdisp.c (hscroll_margin): Change to EMACS_INT.
18092
180932002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
18094
18095 * frame.c (default-frame-alist): Explain that setting it doesn't
18096 affect existing frames.
18097
180982002-03-05 Stefan Monnier <monnier@cs.yale.edu>
18099
18100 * indent.c (skip_invisible): Fix my brain fart.
18101
18102 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
18103
181042002-03-04 Stefan Monnier <monnier@cs.yale.edu>
18105
18106 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
18107 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
18108 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
18109 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
18110 and variables to use EMACS_INT instead of just int.
18111
18112 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
18113
181142002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
18115
18116 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
18117 environment, pass it down with corrected value.
18118
181192002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18120
18121 * lread.c (read_filtered_event): Do not call start_hourglass
18122 before returning.
18123
181242002-03-04 Juanma Barranquero <lektu@terra.es>
18125
18126 * w32term.c (x_display_and_set_cursor): Fix typo.
18127
181282002-03-03 Richard M. Stallman <rms@gnu.org>
18129
18130 * fileio.c (Fmake_temp_name): Doc fix.
18131
181322002-03-03 Gary Wong <gtw@gnu.org>
18133
18134 * termcap.c [!emacs]: Replace ospeed for building standalone
18135 libtermcap, for binary compatibility.
18136
18137 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
18138
181392002-03-03 Richard M. Stallman <rms@gnu.org>
18140
18141 * xrdb.c (file_p): Rename arg `path' to `filename'.
18142
18143 * abbrev.c (Fexpand_abbrev): Increment plist as use count
18144 only if it is an integer.
18145
18146 * xfns.c (png_load): Set screen_gamma based on f->gamma.
18147 If png_get_sRGB gives an answer, call png_set_gamma
18148 using the default image gamma value.
18149
18150 * lread.c (read1): When reading from a file, default string to
18151 multibyte only if it has some multibyte characters.
18152
18153 * print.c (print_object): Output multibyte chars 128...255
18154 using \x even if ! print_escape_multibyte.
18155
18156 * xdisp.c (display_mode_element): Move the places where
18157 bytepos, charpos, this, and lisp_string are set.
18158 Use lisp_string to set bytepos.
18159
18160 * xdisp.c (redisplay_internal):
18161 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
18162
18163 * xdisp.c (display_mode_element): Merge properties specified with
18164 :propertize onto those that come with the string.
18165
181662002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
18167
18168 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
18169 automatic-hscrolling. Users changed.
18170 <hscroll-margin>: Renamed from automatic-hscroll-margin.
18171 Users changed.
18172 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
18173
181742002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
18175
18176 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
18177
181782002-03-02 Kim F. Storm <storm@cua.dk>
18179
18180 * window.c (Fminibuffer_selected_window): New function.
18181 (syms_of_window): Defsubr it.
18182
181832002-03-01 Kim F. Storm <storm@cua.dk>
18184
18185 * window.h (struct window): New member phys_cursor_width.
18186
18187 * window.c (make_window, replace_window): Init phys_cursor_width.
18188
18189 * xterm.c (x_display_and_set_cursor): Blink box cursor using
18190 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
18191
18192 * w32term.c (x_display_and_set_cursor): Blink box cursor using
18193 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
18194
18195 * lisp.h (GCPRO6): New macro.
18196
18197 * process.c (Fopen_network_stream): Use GCPRO6.
18198
181992002-03-01 Kim F. Storm <storm@cua.dk>
18200
18201 * process.c (Qconnect, Qfailed): New variables.
18202 (syms_of_process): Intern and staticpro them.
18203 (Fprocess_status): Document connect and failed return values.
18204 [NON_BLOCKING_CONNECT]: New conditional.
18205 (connect_wait_mask, num_pending_connects): New variables.
18206 (status_message): Convert Qfailed status.
18207 (Fopen_network_stream): Added support for non-blocking connect.
18208 New optional args: filter, sentinel, non_blocking. Doc updated.
18209 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
18210 (deactivate_process): Handle pending non-blocking connect.
18211 (wait_reading_process_input): Poll for status of non-blocking
18212 connects. Exec sentinel directly when connect succeeds.
18213 (status_notify): Don't read process output if not yet connected.
18214
182152002-02-28 Kim F. Storm <storm@cua.dk>
18216
18217 * window.c: (minibuf_selected_window): Renamed from
18218 Vminibuf_selected_window. Users changed.
18219 (syms_of_window): Staticpro it.
18220
182212002-02-26 Kim F. Storm <storm@cua.dk>
18222
18223 The following changes add a new Vminibuf_selected_window variable
18224 which is similar to Vminibuf_scroll_window, but which is only set
18225 on entry to the minibuffer (from a non-minibuffer window):
18226
18227 * window.c: (Vminibuf_selected_window): New variable.
18228 (struct save_window_data): New member minibuf_selected_window.
18229 (Fset_window_configuration): Restore Vminibuf_selected_window.
18230 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
18231 Set minibuf_scroll_window member to nil if minibuf_level is 0.
18232 (compare_window_configurations): Compare minibuf_selected_window.
18233
18234 * window.h: (Vminibuf_selected_window): Declare extern.
18235
18236 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
18237 entry to minibuffer or on entry from a non-minibuffer window.
18238
18239 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
18240 Vminibuf_selected_window instead of Vminibuf_scroll_window.
18241
18242 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
18243 instead of Vminibuf_scroll_window when deciding in which window
18244 the region should be highlighted. Consequently, the region remains
18245 highlighteded even when a completion buffer is also displayed.
18246
182472002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
18248
18249 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
18250
18251 * xselect.c (Qcompound_text_with_extensions): Renamed from
18252 Qcompound_text_no_extensions.
18253 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
18254
182552002-02-26 Juanma Barranquero <lektu@terra.es>
18256
18257 * w32proc.c (syms_of_ntproc): Doc fix.
18258
182592002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18260
18261 * intervals.h: Include "dispextern.h" unconditionally.
18262
182632002-02-24 Jason Rumney <jasonr@gnu.org>
18264
18265 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
18266 and disp-table.elc.
18267 (lisp): Add emacs-lisp/backquote.elc.
18268
182692002-02-24 Kim F. Storm <storm@cua.dk>
18270
18271 * keymap.c (Flookup_key): Fix problem in 2001-12-28 patch:
18272 The validation of the event type was too strict as it didn't
18273 allow string events; buffer names are used in bindings for
18274 menu-bar-select-buffer (see `menu-bar-update-buffers').
18275
182762002-02-23 Kim F. Storm <storm@cua.dk>
18277
18278 The following changes rework my patch of 2002-02-06 which
18279 added command remapping by entering the commands directly into
18280 the keymaps. Now, command remapping uses an explicit `remap'
18281 prefix in the keymaps, i.e. [remap COMMAND].
18282
18283 * keymap.c (Qremap, remap_command_vector): New variables.
18284 (is_command_symbol): Remove function.
18285 (Fdefine_key): No longer accept a symbol for KEY.
18286 Added validation of [remap COMMAND] argument for KEY.
18287 The DEF is no longer required to be a symbol when remapping a command.
18288 (Fremap_command): New function to remap command through keymaps.
18289 (Flookup_key): Perform command remapping initiated by
18290 Fremap_command directly for speed.
18291 (Fkey_binding): Use Fremap_command for command remapping.
18292 (where_is_internal): Handle new command remapping representation.
18293 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
18294 staticpro them. Defsubr Fremap_command.
18295
18296 * keymap.h (Fremap_command): Declare extern.
18297 (is_command_symbol): Remove extern.
18298
18299 * keyboard.c (command_loop_1): Use Fremap_command for command
18300 remapping; now try command remapping for all symbols.
18301
183022002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
18303
18304 * coding.h (run_pre_post_conversion_on_str): Add prototype.
18305
183062002-02-23 Jason Rumney <jasonr@gnu.org>
18307
18308 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
18309 on the string before encoding it.
18310 (Fw32_get_clipboard_data): Run post-read-conversion on the string
18311 after decoding it.
18312
18313 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
18314
183152002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18316
18317 * w32term.c (enter_timestamp): Remove unused static variable to
18318 prevent warning.
18319
18320 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
18321
183222002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
18323
18324 * w16select.c (Fw16_get_clipboard_data): Fix last change.
18325
18326 * xselect.c (selection_data_to_lisp_data): Fix last change.
18327
183282002-02-22 Jason Rumney <jasonr@gnu.org>
18329
18330 * w32term.h (struct w32_output): New member menu_command_in_progress.
18331
18332 * w32menu.c (menubar_selection_callback): Free the menu and
18333 clear the menu_command_in_progress flag.
18334
18335 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
18336 (menu_free_timer): New variable.
18337 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
18338 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
18339 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
18340 menu command is in progress.
18341 <WM_COMMAND>: Set the menu_command_in_progress flag.
18342 Kill any menu_free_timer that is running.
18343
18344 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
18345 Call ExtTextOutA rather than ExtTextOut.
18346
183472002-02-22 Eli Zaretskii <eliz@gnu.org>
18348
18349 * puresize.h (BASE_PURESIZE): Increase to 755000.
18350
183512002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
18352
18353 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
18354 on the string before encoding it.
18355 (Fw16_get_clipboard_data): Run post-read-conversion on the string
18356 after decoding it.
18357
183582002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
18359
18360 Support for ICCCM Extended Segments in X selections:
18361
18362 * xselect.c <Qcompound_text_no_extensions>: New variable.
18363 (syms_of_xselect): Intern and staticpro it.
18364 (selection_data_to_lisp_data): Run post-read-conversion on decoded
18365 selection text.
18366 (lisp_data_to_selection_data): If next-selection-coding-system is
18367 compound-text-no-extensions, set the type of selection to be
18368 compound-text.
18369
18370 * xterm.h (x_encode_text): Update prototype.
18371
18372 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
18373 callers changed. If SELECTIONP is non-zero, run the
18374 pre-write-conversion function before encoding the selection text.
18375
183762002-02-21 Kim F. Storm <storm@cua.dk>
18377
18378 * frame.c (syms_of_frame): Change mouse-highlight default to t.
18379
18380 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
18381 Correct composing of language-change event.
18382
183832002-02-20 Kim F. Storm <storm@cua.dk>
18384
18385 * keyboard.c (menu_bar_items): Don't include keymap or local-map
18386 bindings at PT when building menu (the menu is not updated often
18387 enough for this to work reliable).
18388 (tool_bar_items): Likewise.
18389 (current_active_maps): Removed unused (and buggy) function.
18390
183912002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18392
18393 * xfns.c (gif_load): Use correct width and height for GIF images.
18394
183952002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
18396
18397 * floatfns.c (Fatan): Accept an optional second arg and call
18398 atan2 if passed 2 args.
18399
184002002-02-18 Jason Rumney <jasonr@gnu.org>
18401
18402 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
18403
184042002-02-17 Jason Rumney <jasonr@gnu.org>
18405
18406 * w32term.c (x_autoselect_window_p): New variable.
18407 (syms_of_w32term): DEFVAR_BOOL and initialize it.
18408 (note_mouse_movement): Use it.
18409
18410 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
18411
18412 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
18413
18414 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
18415 New variables.
18416 (syms_of_w32fns): Intern and staticpro them.
18417 (x_frame_parms) <"fullscreen">: New parameter.
18418 (x_fullscreen_move, x_set_fullscreen): New functions.
18419 (x_set_frame_parameters): Support Qfullscreen.
18420 (x_real_positions): Save x/y_pixels_diff frame params.
18421 (x_figure_window_size): Support full-screen frames.
18422 (Fx_create_frame): Default the fullscreen parameter.
18423
18424 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
18425 (x_fullscreen_adjust): New functions.
18426 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
18427 fullscreen. Call x_check_fullscreen_move, and set the
18428 want_fullscreen member of output_data.w32
18429 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
18430
18431 * w32term.h: New enum for FULLSCREEN_* constants.
18432 (struct w32_output): New members want_fullscreen, x_pixels_diff,
18433 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
18434 (x-fullscreen-adjust): New prototype.
18435
184362002-02-17 Kim F. Storm <storm@cua.dk>
18437
18438 * frame.c (Vmouse_highlight): New variable.
18439 (syms_of_frame): DEFVAR_LISP it.
18440
18441 * frame.h (Vmouse_highlight): Declare extern.
18442
18443 * xterm.h (struct x_display_info): Add mouse_face_hidden.
18444
18445 * xterm.c (disable_mouse_highlight): Removed variable.
18446 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
18447 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
18448 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
18449 and on after keyboard input.
18450 (x_term_init): Initialize mouse_face_hidden.
18451
18452 * msdos.h (struct display_info): Add mouse_face_hidden.
18453
18454 * msdos.c (disable_mouse_highlight): Removed variable.
18455 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
18456 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
18457 (internal_terminal_init): Initialize mouse_face_hidden.
18458 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
18459 and on after keyboard input.
18460
18461 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
18462
18463 * w32term.c (disable_mouse_highlight): Removed variable.
18464 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
18465 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
18466 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
18467 and on after keyboard input.
18468 (w32_initialize_display_info): Initialize mouse_face_hidden.
18469
184702002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
18471
18472 * msdos.c (last_mouse_window): New variable.
18473 (dos_rawgetc): Fix last change--if the mouse is in the same window
18474 as recorded in last_mouse_window, don't select this window.
18475
18476 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
18477
18478 * msdos.c (x_autoselect_window_p): New variable.
18479 (syms_of_msdos): Defvar it.
18480 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
18481 which the last mouse movement occured, unless it is already selected.
18482
18483 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
18484 New variables.
18485 (syms_of_xdisp): DEVFAR them.
18486 (hscroll_window_tree): Use automatic_hscroll_margin and
18487 Vautomatic_hscroll_step to compute the amount of window scrolling.
18488
184892002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18490
18491 * xterm.c (x-autoselect-window): New variable.
18492 (note_mouse_movement): Use it.
18493
18494 * keyboard.c: Do not include "systime.h" twice.
18495
184962002-02-15 Andreas Schwab <schwab@suse.de>
18497
18498 * puresize.h (PURESIZE_RATIO): Increase to 9/5.
18499
18500 * alloc.c (NSTATICS): Increase to 1280.
18501
185022002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
18503
18504 * alloc.c (NSTATICS): Bump to 1026.
18505
18506 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
18507 (Vx_super_keysym): New variables.
18508 (syms_of_xterm): DEFVAR_LISP them.
18509 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
18510 variables to determine which keys to use for the various modifiers.
18511
185122002-02-13 Kim F. Storm <storm@cua.dk>
18513
18514 * window.c: (Vmode_line_in_non_selected_windows): Removed.
18515 (mode_line_in_non_selected_windows): New variable.
18516 (syms_of_window): DEFVAR_BOOL it.
18517
18518 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
18519 Use mode_line_in_non_selected_windows.
18520 (mode_line_in_non_selected_windows): Declare extern.
18521 (Vmode_line_in_non_selected_windows): Removed extern.
18522
185232002-02-13 Richard M. Stallman <rms@gnu.org>
18524
18525 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
18526 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
18527 (Fclear_this_command_keys): Doc fixes.
18528
18529 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
18530 (update_face_from_frame_parameter): Increment face_change_count
18531 and windows_or_buffers_changed to force redisplay using changed faces.
18532
18533 * xdisp.c (QCpropertize): New variable.
18534 (mode_line_proptrans_alist): New variable.
18535 (display_mode_element): New arg PROPS; all calls changed.
18536 Implement this, for strings.
18537 Handle literal output of strings by sharing the
18538 main-line code for strings, using local var `literal'.
18539 Handle :propertize feature.
18540 (syms_of_xdisp): Initialze and staticpro QCpropertize and
18541 mode_line_proptrans_alist.
18542
185432002-02-11 Kim F. Storm <storm@cua.dk>
18544
18545 * window.c: (Vmode_line_in_non_selected_windows): New variable.
18546 (syms_of_window): DEFVAR_LISP it.
18547
18548 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
18549 (CURRENT_MODE_LINE_FACE_ID): Use it.
18550 (Vmode_line_in_non_selected_windows): Declare extern.
18551
18552 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
18553 to get mode line face.
18554
185552002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
18556
18557 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
18558 variables; cus-start.el doesn't need them anymore.
18559
185602002-02-09 Kim F. Storm <storm@cua.dk>
18561
18562 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
18563 reduction. This fixes a display problem where stray newlines were
18564 inserted in the window (corrected by C-l). Clarified code (IMHO).
18565
185662002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
18567
18568 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
18569
18570 * xdisp.c (display_mode_lines): Fix last change.
18571
185722002-02-09 Jason Rumney <jasonr@gnu.org>
18573
18574 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
18575 match each other.
18576 (w32_load_system_font): Prevent Cleartype fonts from loading.
18577 (Fx_show_tip): Ensure tip frames are above other topmost windows.
18578
185792002-02-09 Kim F. Storm <storm@cua.dk>
18580
18581 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
18582 (CURRENT_MODE_LINE_HEIGHT): Use it.
18583 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
18584
18585 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
18586 (pos_visible_p, handle_face_prop): Likewise.
18587 (display_mode_lines): Likewise, but for the real selected window.
18588 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
18589
18590 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
18591 in non-selected windows.
18592 (realize_basic_faces): Realize it.
18593 (syms_of_term): Intern and staticpro it.
18594
185952002-02-08 Kim F. Storm <storm@cua.dk>
18596
18597 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
18598 Changed mail addresses to emacs-devel@gnu.org.
18599
186002002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
18601
18602 * fileio.c (Fsubstitute_in_file_name): If the file name includes
18603 ~user, and there's no such user, don't discard everything before ~user.
18604
18605 * floatfns.c (Fround): Doc fix.
18606
186072002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18608
18609 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
18610
186112002-02-07 Stefan Monnier <monnier@cs.yale.edu>
18612
18613 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
18614
186152002-02-07 Kim F. Storm <storm@cua.dk>
18616
18617 * keymap.c (where_is_internal): Only check whether definition is
18618 remapped if it fulfills is_command_symbol.
18619
186202002-02-07 Andreas Schwab <schwab@suse.de>
18621
18622 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
18623
18624 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
18625
186262002-02-06 Kim F. Storm <storm@cua.dk>
18627
18628 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
18629 defining command remapping. Doc updated.
18630 (Flookup_key): Remap command through keymap if KEY is a symbol.
18631 (is_command_symbol): New function.
18632 (Fkey_binding): Use it. New optional argument NO-REMAP.
18633 Doc updated. Callers changed. Perform command remapping via
18634 recursive call unless that arg is non-nil.
18635 (where_is_internal): New argument no_remap. Callers changed.
18636 Call recursively to find original key bindings for a remapped
18637 comand unless that arg is non-nil.
18638 (Fwhere_is_internal): New optional argument NO-REMAP.
18639 Doc updated. Callers changed. Pass arg to where_is_internal.
18640
18641 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
18642 (is_command_symbol): Add prototype.
18643
18644 * keyboard.c (Vthis_original_command): New variable.
18645 (syms_of_keyboard): DEFVAR_LISP it.
18646 (command_loop_1): Set it, and perform command remapping.
18647
186482002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18649
18650 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
18651
186522002-02-06 Jason Rumney <jasonr@gnu.org>
18653
18654 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
18655
186562002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
18657
18658 * charset.c (get_charset_id): Use if-else instead of ?:.
18659
186602002-02-06 Richard M. Stallman <rms@gnu.org>
18661
18662 * filelock.c (S_ISLNK): Define if not defined.
18663
186642002-02-03 Richard M. Stallman <rms@gnu.org>
18665
18666 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
18667
18668 * lread.c (read1): Redesign strategy for force_multibyte and
18669 force_singlebyte. Now is_multibyte records whether read_buffer
18670 is multibyte. Encountering any multibyte character makes it so.
18671
186722002-02-02 Stefan Monnier <monnier@cs.yale.edu>
18673
18674 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
18675 with the same sequence, map that sequence to f10 rather than f0.
18676
186772002-02-03 Andreas Schwab <schwab@suse.de>
18678
18679 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
18680 latter never being defined on GNU/Linux.
18681
186822002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
18683
18684 * xfaces.c (realize_default_face): Don't set the weight and slant of
18685 the default face to Qnormal, unless these attributes are unspecified.
18686
186872002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18688
18689 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
18690 Call cancel_hourglass unconditionally.
18691
18692 * eval.c (Fsignal): Remove duplicated declaration of
18693 the variable `display_hourglass_p'.
18694
186952002-01-31 Richard M. Stallman <rms@gnu.org>
18696
18697 * editfns.c (region_limit): Nicer error message.
18698
18699 * coding.c (decode_composition_emacs_mule):
18700 Give up if NCOMPONENT gets too large to index `component'.
18701
18702 * callint.c (check_mark): New arg to specify clearer error message.
18703 Callers changed.
18704
187052002-01-27 Richard M. Stallman <rms@gnu.org>
18706
18707 * minibuf.c (Fcompleting_read): Doc fix.
18708
187092002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18710
18711 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
18712 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
18713 Fix doc-strings.
18714
187152002-01-26 Richard M. Stallman <rms@gnu.org>
18716
18717 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
18718
18719 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
18720 and scroll_up_aggressively.
18721
187222002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18723
18724 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
18725
187262002-01-25 Stefan Monnier <monnier@cs.yale.edu>
18727
18728 * textprop.c (Fnext_property_change, Fnext_single_property_change)
18729 (Fprevious_property_change, Fprevious_single_property_change):
18730 Stay within the narrowed-buffer boundaries.
18731
187322002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
18733
18734 * term.c (Ftty_display_color_cells): New function.
18735 (syms_of_term): Defsubr it.
18736 (Ftty_display_color_cells, Ftty_display_color_p): Change the
18737 argument name to DISPLAY. Doc fix.
18738
18739 * dispextern.h: Add prototype for set_tty_color_mode and
18740 tty_setup_colors.
18741
187422002-01-24 Jason Rumney <jasonr@gnu.org>
18743
18744 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
18745 If region left to draw is not what was expected, mark the frame as
18746 garbaged.
18747
18748 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
18749 Combine the regions returned by BeginPaint and GetUpdateRect.
18750
187512002-01-23 Jason Rumney <jasonr@gnu.org>
18752
18753 * w32term.c (x_update_window_begin): Only hide caret if
18754 w32_use_visible_system_caret is set.
18755 (x_update_window_end): Only show caret if
18756 w32_use_visible_system_caret is set.
18757 (syms_of_w32term): Handle SystemParametersInfo call failing.
18758
18759 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
18760
187612002-01-22 Richard M. Stallman <rms@gnu.org>
18762
18763 * unexelf.c (unexec): Define n so as to cause compilation error
18764 for the code where people have often written n instead of nn.
18765
18766 * .gdbinit (hookpost-run): Defined.
18767
187682002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
18769
18770 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
18771
187722002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
18773
18774 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
18775 if fullscreen is being set.
18776
187772002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18778
18779 * minibuf.c (Fminibuffer_contents)
18780 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
18781 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
18782
187832002-01-21 Richard M. Stallman <rms@gnu.org>
18784
18785 * window.c (check_frame_size): Fix minimum height calculation.
18786
187872002-01-20 Ken Raeburn <raeburn@gnu.org>
18788
18789 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
18790 height before comparison.
18791 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
18792
187932002-01-20 Jason Rumney <jasonr@gnu.org>
18794
18795 * w32term.c (w32_system_caret_width): Remove.
18796 (w32_use_visible_system_caret): New user flag.
18797 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
18798 Windows reports a screen reader running.
18799 (x_update_window_begin): Hide the system caret.
18800 (x_update_window_end): Show the system caret.
18801 (x_display_and_set_cursor): Don't draw a cursor when
18802 w32_use_visible_system_caret is set. Do not adjust width.
18803
18804 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
18805 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
18806 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
18807 the user requests it. Use system default width when creating.
18808 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
18809
18810 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
18811 New window messages.
18812
188132002-01-20 Richard M. Stallman <rms@gnu.org>
18814
18815 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
18816
188172002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18818
18819 * doprnt.c (doprnt1): Fix typos in error call.
18820
188212002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
18822
18823 * unexelf.c (unexec) [__sgi]: Support the .got sections.
18824
188252002-01-20 Jason Rumney <jasonr@gnu.org>
18826
18827 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
18828 that Windows returns. If a double check fails, try to guess how
18829 ExtTextOut is going to act.
18830
18831 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
18832 in place of stricmp.
18833 (w32_list_synthesized_fonts): Removed.
18834 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
18835 (struct enumfont_t): New element; list.
18836 (enum_font_cb2): List all style and charset variations of a font.
18837 (Fw32_select_font): New optional argument; include_proportional.
18838 Exclude vertical fonts. Exclude proportional fonts unless
18839 include_proportional is non-nil.
18840 (w32_enable_synthesized_fonts): Change to a boolean.
18841 (Fw32_send_sys_command): Doc fix.
18842
188432002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18844
18845 * dispnew.c (update_frame): Move the variable `tem' to the block
18846 where it is used.
18847
188482002-01-19 Jason Rumney <jasonr@gnu.org>
18849
18850 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
18851 call to face-set-after-frame-default.
18852
188532002-01-18 Richard M. Stallman <rms@gnu.org>
18854
18855 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
18856 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
18857
188582002-01-17 Richard M. Stallman <rms@gnu.org>
18859
18860 * window.c (enlarge_window): When exceeding size of parent,
18861 directly delete all the siblings instead of trying to resize it.
18862
188632002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18864
18865 * term.c (set_tty_color_mode): Remove unused variable `tem'.
18866
188672002-01-16 Henrik Enberg <henrik@enberg.org>
18868
18869 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
18870
188712002-01-16 Kim F. Storm <storm@cua.dk>
18872
18873 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
18874 is invisible. This can happen if cursor is on top line of a
18875 window, and we switch to a buffer with a header line.
18876
18877 * w32term.c (x_erase_phys_cursor): Ditto.
18878
188792002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18880
18881 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
18882 `dont_resize' only when used.
18883
18884 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
18885
188862002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
18887
18888 * xdisp.c (display_mode_element): When computing charpos, depend
18889 on multibyteness of elt, not the text in field.
18890
188912002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18892
18893 * buffer.c (Fkill_all_local_variables):
18894 Increment `update_mode_lines' only once.
18895
188962002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18897
18898 * lisp.h (adjust_after_replace_noundo)
18899 (Fupdate_coding_systems_internal): Add prototypes.
18900
18901 * sound.c (Fplay_sound): Initialize header_size also for :data case.
18902
189032002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
18904
18905 Support for the --color command-line argument and tty-color-mode
18906 frame parameter:
18907
18908 * term.c (tty_default_color_capabilities, tty_setup_colors)
18909 (set_tty_color_mode): New functions.
18910 (term_init): Call tty_default_color_capabilities.
18911 (Qtty_color_mode_alist): New variable.
18912 (syms_of_term): Intern and staticpro it.
18913
18914 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
18915 frames.
18916 (do_switch_frame): For termcap frames, switch the tty
18917 color mode as specified by the frame's parameters.
18918 (Qtty_color_mode): New variable.
18919 (syms_of_frame): Intern and staticpro it.
18920
18921 * emacs.c (USAGE2): Add the --color option.
18922 (standard_args): Ditto.
18923
189242002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
18925
18926 * xterm.h (struct x_output): New members want_fullscreen,
18927 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
18928 y_pixels_outer_diff.
18929 New enum for FULLSCREEN_* constants.
18930 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
18931 is NULL.
18932 (x_fullscreen_adjust): Add prototype.
18933
18934 * emacs.c (USAGE2): Add the new full-screen arguments.
18935 (standard_args): Ditto.
18936
18937 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
18938 New variables.
18939 (syms_of_xfns): Intern and staticpro them.
18940 (x_frame_parms) <"fullscreen">: New parameter.
18941 (x_fullscreen_move, x_set_fullscreen): New functions.
18942 (x_set_frame_parameters): Support for Qfullscreen.
18943 (x_real_positions): More accurate computation of the frame position.
18944 (x_figure_window_size): Support full-screen frames.
18945 (Fx_create_frame): Default the fullscreen parameter.
18946
18947 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
18948 (XTread_socket) <Expose>: Call x_check_fullscreen.
18949 <ConfigureNotify>: Don't resize to fullscreen.
18950 Call x_check_fullscreen_move, and set the want_fullscreen member of
18951 output_data.x.
18952
189532002-01-13 Jason Rumney <jasonr@gnu.org>
18954
18955 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
18956 for mice with more than 3 buttons.
18957
18958 * w32term.c (parse_button): New parameter xbutton. Callers changed.
18959 (w32_read_socket): Handle new "XBUTTON" messages.
18960
18961 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
18962 (syms_of_w32fns): DEFVAR_BOOL it.
18963 (w32_wnd_proc): Handle new "XBUTTON" messages.
18964
189652002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18966
18967 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
18968
189692002-01-13 Andreas Schwab <schwab@suse.de>
18970
18971 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
18972
189732002-01-12 Andreas Schwab <schwab@suse.de>
18974
18975 * .gdbinit (xbuffer): Remove address operator since data is now a
18976 pointer.
18977
189782002-01-11 Richard M. Stallman <rms@gnu.org>
18979
18980 * insdel.c (adjust_after_replace_noundo): New function.
18981
18982 * coding.c (code_convert_region): Don't copy old text if undo disabled.
18983
189842002-01-09 Jason Rumney <jasonr@gnu.org>
18985
18986 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
18987 when checking for multiple frames.
18988
189892002-01-08 Richard M. Stallman <rms@gnu.org>
18990
18991 * window.c (delete_window): Rewrite the code for changing the
18992 selected window to handle the case where WINDOW is not a leaf.
18993
189942002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
18995
18996 * process.c (send_process): Set src_multibyte to 1 after the call
18997 top setup_coding_system, not before the call.
18998
189992002-01-07 Jason Rumney <jasonr@gnu.org>
19000
19001 * xmenu.c (set_frame_menubar, xmenu_show):
19002 (xdialog_show): Initialize wv->help to Qnil.
19003
19004 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
19005 (w32_dialog_show): Initialize wv->help to Qnil.
19006
190072002-01-06 Jason Rumney <jasonr@gnu.org>
19008
19009 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
19010
19011 * w32menu.c (w32_menu_display_help): Revert last change.
19012
19013 * xmenu.c (menu_highlight_callback): Revert last change.
19014
190152002-01-06 Andreas Schwab <schwab@suse.de>
19016
19017 * insdel.c (make_gap_larger): Make sure buffer size does not
19018 overflow range of int.
19019
190202002-01-05 Jason Rumney <jasonr@gnu.org>
19021
19022 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
19023 OVERLAPS_P.
19024
19025 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
19026
19027 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
19028 to the left or to the right of the pointer, put it against
19029 the left screen edge.
19030 (x_frame_parms): Add missing braces around initializer.
19031
19032 * w32term.c (x_setup_relief_colors): Don't compute an image's
19033 background color if it doesn't have a Pixmap.
19034 (notice_overwritten_cursor): Don't depend on
19035 output_cursor and updated_area. Compare pixel coordinates with
19036 window's cursor pixel coordinates.
19037 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
19038 Call notice_overwritten_cursor with new arg list.
19039 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
19040 unconditionally.
19041 (x_draw_image_relief): Use predefined macro instead of
19042 constant when the value of `tool_bar_button_relief' is negative.
19043
19044 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
19045
190462002-01-04 Richard M. Stallman <rms@gnu.org>
19047
19048 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
19049
190502002-01-03 Richard M. Stallman <rms@gnu.org>
19051
19052 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
19053 (Fkey_binding): Try the `keymap' property map first.
19054 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
19055 minor mode bindings.
19056
190572002-01-03 Kim F. Storm <storm@cua.dk>
19058
19059 * keyboard.c (read_key_sequence): Fix cast of submaps arg to bcopy.
19060
190612002-01-02 Richard M. Stallman <rms@gnu.org>
19062
19063 * keyboard.c (read_key_sequence): Handle the keymap property
19064 before minor mode maps.
19065
19066 * editfns.c (Fformat): Update thissize from field_width
19067 based on the actual width, in the string case.
19068
190692002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19070
19071 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
19072 when used as truth value to prevent gcc warnings.
19073
19074 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
19075 * w32proc.c: Include <config.h>.
19076
190772002-01-01 Andreas Schwab <schwab@suse.de>
19078
19079 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
19080 not EMACS_INT, to make them compatible with DEFVAR_INT.
19081 * lisp.h (max_specpdl_size): Adjust declaration.
19082
190832002-01-01 Richard M. Stallman <rms@gnu.org>
19084
19085 * print.c (print_object): Test print_escape_nonascii only for
19086 unibyte strings.
19087 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
19088 when outputting to a multibyte buffer.
19089
190902001-12-29 Richard M. Stallman <rms@gnu.org>
19091
19092 * print.c (print_object): In multibyte string, use hex escapes.
19093 Use octal only for unibyte strings.
19094 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
19095
19096 * lread.c (read_escape): New arg BYTEREP for reporting whether
19097 escape forces unibyte or multibyte.
19098 (read1): When reading a string, take note of that info.
19099
191002001-12-29 Ken Raeburn <raeburn@gnu.org>
19101
19102 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
19103 comparison to test lisp value returned by Fget.
19104
191052001-12-29 Richard M. Stallman <rms@gnu.org>
19106
19107 * lisp.h (max_specpdl_size): Add declaration.
19108
19109 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
19110
19111 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
19112 Handle modifier bits. Correct typo in error message.
19113
191142001-12-28 Richard M. Stallman <rms@gnu.org>
19115
19116 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
19117 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
19118 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
19119 Update calls to Fdefine_abbrev.
19120 (write_abbrev): Update for changed data format.
19121 Don't list "system" abbrevs.
19122 (Fexpand_abbrev): Update use count with new data format.
19123 (describe_abbrev): Update for changed data format.
19124 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
19125
19126 * config.in (HAVE_MBSINIT): Add #undef.
19127
19128 * strftime.c (mbsinit): Define as no-op if not available.
19129
19130 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
19131 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
19132
19133 * keymap.c (Flookup_key): Error message if key has wrong data type.
19134 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
19135 (exclude_key): New variable.
19136
191372001-12-28 Gerd Moellmann <gerd@gnu.org>
19138
19139 * xterm.c (x_setup_relief_colors): Don't compute an image's
19140 background color if it doesn't have a Pixmap.
19141
19142 * xterm.c (notice_overwritten_cursor): Don't depend on
19143 output_cursor and updated_area. Compare pixel coordinates with
19144 window's cursor pixel coordinates.
19145 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
19146 Call notice_overwritten_cursor with new arg list.
19147 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
19148 unconditionally.
19149
19150 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
19151 height of the cursor line to the amount to scroll.
19152
191532001-12-27 Richard M. Stallman <rms@gnu.org>
19154
19155 * intervals.c (set_point_both): The position after an invisible,
19156 intangible character is not an acceptable stopping point.
19157
191582001-12-27 Ken Raeburn <raeburn@gnu.org>
19159
19160 * window.c (enlarge_window): In new preserve_before code, convert
19161 CURBEG from lisp object to integer before doing arithmetic.
19162
191632001-12-27 Richard M. Stallman <rms@gnu.org>
19164
19165 * bytecode.c (Fbyte_code): Undo previous change.
19166
191672001-12-26 Kim F. Storm <storm@cua.dk>
19168
19169 * keyboard.c (record_char): Ignore duplicate help-echo events only
19170 separated by mouse-movement. When tracking mouse, only record
19171 first and last mouse-movement event in same window.
19172 Don't record mouse-movement events in keyboard macros.
19173
191742001-12-25 Richard M. Stallman <rms@gnu.org>
19175
19176 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
19177 (Fenlarge_window): New arg PRESERVE_BEFORE.
19178
19179 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
19180 instead of Fstring_as_unibyte.
19181
191822001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19183
19184 The following changes remove mocklisp support:
19185
19186 * mocklisp.h, mocklisp.c: Files removed.
19187
19188 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
19189 `Qmocklisp' and `Qmocklisp_arguments'.
19190 Remove prototype of syms_of_mocklisp.
19191
19192 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
19193
19194 * callint.c: Do not include mocklisp.h.
19195 (Fcall_interactively): Do not test for mocklisp case.
19196
19197 * eval.c: Remove variables `Qmocklisp_arguments',
19198 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
19199 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
19200 Do not test for mocklisp case.
19201 (Fwhile): Remove unused variable `tem'.
19202 (syms_of_eval): Remove variable `moclisp-arguments'.
19203
19204 * data.c (wrong_type_argument): Remove mocklisp case.
19205
19206 * doc.c (Fdocumentation): Remove mocklisp case.
19207
19208 * emacs.c (main): Do not call syms_of_mocklisp.
19209
192102001-12-21 Richard M. Stallman <rms@gnu.org>
19211
19212 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
19213 to the left or to the right of the pointer, put it against
19214 the left screen edge.
19215
192162001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
19217
19218 * Makefile.in (distclean): Remove .gdbinit if we are building
19219 outside the source tree.
19220
192212001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
19222
19223 * w32.c (emacs_root_dir): New function.
19224
19225 * msdos.c (emacs_root_dir): New function.
19226
19227 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
19228 of the current drive as the fallback for default_directory.
19229
19230 * dired.c (file_name_completion): Run the elements of
19231 completion-ignored-extensions through ENCODE_FILE.
19232
19233 * lisp.h (scmp): Remove prototype, since it's now a static
19234 function private to dired.c.
19235
192362001-12-18 Richard M. Stallman <rms@gnu.org>
19237
19238 * dired.c (scmp): Function moved from minibuf.c.
19239 Delete multibyte handling--used only on encoded strings.
19240
19241 * minibuf.c (scmp): Function moved to dired.c.
19242
19243 * fns.c (merge): Add QUIT call.
19244
192452001-12-18 Dave Love <fx@gnu.org>
19246
19247 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
19248 language/georgian.el.
19249
192502001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
19251
19252 * Makefile.in (lisp, shortlisp): Synchronize with changes to
19253 lisp/Makefile.in:DONTCOMPILE.
19254
192552001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19256
19257 * xdisp.c (window_box_height): Do not return negative values.
19258 From Gerd Moellmann <gerd@gnu.org>.
19259
19260 * keyboard.c (head_table): Add missing braces around initializer.
19261
19262 * term.c (keys): Likewise.
19263
19264 * xfns.c (x_frame_parms, visual_classes): Likewise.
19265
192662001-12-17 Sam Steingold <sds@gnu.org>
19267
19268 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
19269 patch (COMPOSING_P, not COMPOSING).
19270
192712001-12-17 Richard M. Stallman <rms@gnu.org>
19272
19273 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
19274
19275 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
19276 before calling decode_coding.
19277
19278 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
19279
19280 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
19281 instead of only for COMPOSITION_DISABLED.
19282
192832001-12-16 Richard M. Stallman <rms@gnu.org>
19284
19285 * alloc.c (pure_alloc): After overflow, allocate just a small block.
19286
19287 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
19288
19289 * buffer.h (struct buffer): New field `display_error_modiff'.
19290 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
19291
19292 * window.c (Frecenter): Clear display_error_modiff field.
19293
19294 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
19295 Call redisplay_window, but not if display_error_modiff field says no.
19296 (redisplay_window_error): New function.
19297 (displayed_buffer): New variable.
19298 (redisplay_internal, redisplay_windows): Call the new functions
19299 instead of redisplay_window directly.
19300
193012001-12-15 Richard M. Stallman <rms@gnu.org>
19302
19303 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
19304
193052001-12-14 Andrew Innes <andrewi@gnu.org>
19306
19307 * makefile.w32-in (EMACSLOADPATH): Define.
19308 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
19309 (bootstrap-temacs): Remove dependency on bootstrap-clean.
19310
193112001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
19312
19313 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
19314 parameter have a numeric value all the time.
19315
19316 * w32fns.c (x_report_frame_params): Likewise.
19317
193182001-12-12 Richard M. Stallman <rms@gnu.org>
19319
19320 * fileio.c (Fwrite_region): Doc fix.
19321
19322 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
19323 (redisplay_internal): Call clear_image_cache only for window terminals.
19324
193252001-12-12 Gerd Moellmann <gerd@gnu.org>
19326
19327 * xdisp.c (move_it_vertically_backward): Change heuristic
19328 for the case that we didn't move far enough initially.
19329
19330 * window.c (Frecenter): Simplify computation in the case of window
19331 system frames and ARG < 0; use window_box_height.
19332
193332001-12-11 Richard M. Stallman <rms@gnu.org>
19334
19335 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
19336 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
19337
193382001-12-11 Andrew Innes <andrewi@gnu.org>
19339
19340 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
19341 arg is negative.
19342
193432001-12-11 Richard M. Stallman <rms@gnu.org>
19344
19345 * m/hp800.h: Split the __hpux conditional into the parts
19346 that are right for GNU/Linux too and the parts that are not.
19347 Use the former if GNU_LINUX.
19348 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
19349
19350 * s/gnu-linux.h (GNU_LINUX): Defined.
19351
193522001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19353
19354 * macros.c, msdos.c, w16select.c: Change doc-string comments to
19355 `new style' [w/`doc:' keyword].
19356
193572001-12-10 Jason Rumney <jasonr@gnu.org>
19358
19359 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
19360 before using.
19361
193622001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19363
19364 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
19365 keyword].
19366
193672001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
19368
19369 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
19370
19371 * s/hpux10.h (srand48): Don't undefine.
19372
193732001-12-09 Jason Rumney <jasonr@gnu.org>
19374
19375 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
19376 Add comment to explain where the struct came from.
19377 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
19378 (add_menu_item): Process pop-up menus first to avoid memory leak.
19379 (add_menu_item, w32_menu_display_help): Use `help' field as
19380 Lisp_Object.
19381 (w32_free_submenu_strings): Only free owner-drawn strings.
19382
193832001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19384
19385 * COPYING: Moved back.
19386
19387 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
19388 Add parentheses around && within ||.
19389
19390 * indent.c (compute_motion): Likewise.
19391
19392 * intervals.c (merge_properties_sticky): Likewise.
19393
19394 * coding.c (setup_coding_system, shrink_encoding_region)
19395 (Fdecode_sjis_char): Likewise.
19396
193972001-12-07 Andreas Schwab <schwab@suse.de>
19398
19399 * xdisp.c (display_mode_element): Don't read past end of string if
19400 it ends with '%'.
19401
19402 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
19403 can hold.
19404
19405 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
19406 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
19407 type changed to Lisp_Object.
19408 (syms_of_data): DEFVAR_LISP them.
19409
194102001-12-07 Richard M. Stallman <rms@gnu.org>
19411
19412 * callproc.c (init_callproc): Set Vdata_directory based on the source
19413 location whenever Emacs was run uninstalled.
19414
194152001-12-06 Paul Eggert <eggert@twinsun.com>
19416
19417 * config.in (HAVE_WORKING_VFORK): New #undefs.
19418 * process.c (create_process):
19419 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
19420 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
19421 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
19422 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
19423 * m/intel386.h (HAVE_VFORK): Likewise.
19424 * m/mips-siemens.h (HAVE_VFORK): Likewise.
19425 * m/mips.h (HAVE_VFORK): Likewise.
19426 * s/freebsd.h (vfork): Remove #define.
19427 * s/lynxos.h (HAVE_VFORK): Remove #undef.
19428 * s/usg5-4-2.h: Fix comment about vfork.
19429
194302001-12-06 Richard M. Stallman <rms@gnu.org>
19431
19432 * s/hpux10.h (random): Add undef.
19433 (HAVE_RANDOM): Define it just once.
19434
194352001-12-06 Stefan Monnier <monnier@cs.yale.edu>
19436
19437 * eval.c: Undo last change: the standard syntax is not wanted.
19438
194392001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
19440
19441 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
19442 scroll bars of the frame before deleting the frame itself. If the
19443 frame has a widget, delete the frame with XtDestroyWidget, and do
19444 not call XDestroyWindow before that.
19445
194462001-12-06 Kim F. Storm <storm@cua.dk>
19447
19448 * xfns.c (x_report_frame_params): Return actual fringe widths.
19449
19450 * w32fns.c (x_report_frame_params): Return actual fringe widths.
19451
194522001-12-05 Andrew Innes <andrewi@gnu.org>
19453
19454 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
19455 excessively large.
19456
19457 * insdel.c (make_gap_larger): New function.
19458 (make_gap_smaller): New function.
19459 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
19460 Call make_gap_smaller if arg is negative.
19461
194622001-12-04 Stefan Monnier <monnier@cs.yale.edu>
19463
19464 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
19465 Pass a dummy argument when calling interrupt_signal.
19466 (parse_menu_item): Mark disabled items before checking for empty def.
19467 (read_char_minibuf_menu_prompt): Make safety more visible.
19468 (read_key_sequence): Add a `first_unbound' variable.
19469 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
19470 unbound prefix as soon as we can detect it.
19471
19472 * doc.c (Fsnarf_documentation): Add prototype.
19473 (get_doc_string): Handle negative arguments.
19474 (Fdocumentation): Use AREF and ASIZE.
19475 Move the calls to get_doc_string to a single place.
19476 Don't confuse an interactive-spec for a docstring reference.
19477 (Fdocumentation_property): Take advantage of the fact that
19478 get_doc_string now ignores the sign of the docstring position.
19479
19480 * eval.c: Use standard syntax for usage in docstrings.
19481
194822001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19483
19484 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
19485
194862001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19487
19488 * xterm.c (x_draw_image_relief): Use predefined macro instead of
19489 constant when the value of `tool_bar_button_relief' is negative.
19490
194912001-12-02 Richard M. Stallman <rms@gnu.org>
19492
19493 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
19494 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
19495
19496 * fileio.c (read_non_regular): Delete Fsignal call.
19497
194982001-12-01 Stefan Monnier <monnier@cs.yale.edu>
19499
19500 * lisp.h (run_hook_list_with_args): Undo last change.
19501
195022001-12-01 Gerd Moellmann <gerd@gnu.org>
19503
19504 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
19505
195062001-12-01 Jason Rumney <jasonr@gnu.org>
19507
19508 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
19509
19510 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
19511 [!WM_MOUSELEAVE]: Define.
19512
19513 * w32menu.c (current_popup_menu, get_menu_item_info):
19514 (set_menu_item_info): New vars.
19515 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
19516 (w32_menu_show): Set current_popup_menu.
19517 (add_menu_item): Allocate new strings for owner-drawn menu items
19518 and help strings.
19519 Use owner-draw for disabled menu items again.
19520 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
19521 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
19522
19523 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
19524 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
19525 <WM_EXITMENULOOP>: Free menu strings.
19526 <WM_MOUSELEAVE>: Stop tracking mouse.
19527 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
19528
19529 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
19530 and mouse face.
19531
195322001-12-01 Kim F. Storm <storm@cua.dk>
19533
19534 The following changes add left-fringe and right-fringe
19535 frame parameters to adjust fringe widths, or remove one or
19536 both fringes.
19537
19538 * frame.h (struct frame): Remove trunc_area_pixel_width and
19539 trunc_area_cols fields.
19540 (Qleft_fringe, Qright_fringe): Declare.
19541 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
19542
19543 * frame.c (Qleft_fringe, Qright_fringe): New vars.
19544 (syms_of_frame): Initialize them.
19545
19546 * window.c (coordinates_in_window): Handle separate left and right
19547 fringe widths.
19548
19549 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
19550 and fringe_cols fields.
19551 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
19552 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
19553 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
19554 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
19555 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
19556 (x_compute_fringe_widths): Add prototype.
19557
19558 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
19559 fill fringe evenly with small dashes.
19560 (x_draw_fringe_bitmap): Clear background if necessary. Align and
19561 clip the new ZV bitmap to avoid jitter between rows.
19562 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
19563 background. Don't draw fringe bitmaps if fringe width is zero.
19564 (x_compute_fringe_widths): New function.
19565 (x_new_font, x_set_window_size_1): Use it.
19566
19567 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
19568 (x_set_frame_parameters): Process `font' parameter before other
19569 parameters as fringe widths depend on it.
19570 (x_set_fringe_width): New function.
19571 (x_figure_window_size): Use x_compute_fringe_widths.
19572 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
19573 parameters.
19574
19575 * widget.c (set_frame_size): Use x_compute_fringe_widths.
19576 (EmacsFrameSetCharSize): Ditto.
19577
19578 * w32term.h: Merged changes from xterm.h.
19579 * w32term.c: Merged changes from xterm.c.
19580 * w32fns.c: Merged changes from xfns.c.
19581
195822001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19583
19584 * COPYING: Removed.
19585
195862001-11-29 Dave Love <fx@gnu.org>
19587
19588 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
19589 extra extra slot.
19590 (detect_coding_mask): Fix call of detect_coding_iso2022.
19591
195922001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19593
19594 * fileio.c (file-name-coding-system)
19595 (default-file-name-coding-system): Doc fix (links to referenced
19596 variables added).
19597
195982001-11-28 Stefan Monnier <monnier@cs.yale.edu>
19599
19600 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
19601 Add dummy uses of gcproN variables.
19602
19603 * category.c (describe_category, describe_category_1)
19604 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
19605 (syms_of_category): Don't defsubr Sdescribe_categories.
19606
196072001-11-28 Richard M. Stallman <rms@gnu.org>
19608
19609 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
19610
19611 * Makefile.in (lispdir): New variable, referring to build dir.
19612 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
19613
196142001-11-28 Andrew Innes <andrewi@gnu.org>
19615
19616 * w32menu.c (w32_menu_display_help): Actually add the new argument
19617 OWNER.
19618
196192001-11-28 Jason Rumney <jasonr@gnu.org>
19620
19621 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
19622 menu items. From David Ponce <dponce@wanadoo.fr>.
19623 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
19624 conditionally.
19625 (w32_menu_display_help): New argument OWNER. Rewritten to store a
19626 help event in the owner frame's keyboard buffer.
19627
19628 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
19629 (Fx_show_tip): Don't subtract last width from row width.
19630
19631 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
19632 (w32_read_socket): Use EQ to compare frames.
19633
196342001-11-28 Gerd Moellmann <gerd@gnu.org>
19635
19636 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
19637 OVERLAPS_P.
19638
196392001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19640
19641 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
19642 `gcpro3' and `gcpro4'.
19643
19644 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
19645
196462001-11-28 Stefan Monnier <monnier@cs.yale.edu>
19647
19648 * ccl.c: Use AREF and ASIZE.
19649
196502001-11-27 Stefan Monnier <monnier@cs.yale.edu>
19651
19652 * lisp.h (run_hook_list_with_args): Remove.
19653 (LIST_END_P): Fix call to wrong_type_argument.
19654 (make_fixnum_or_float): Use EMACS_INT rather than int.
19655
196562001-11-26 Stefan Monnier <monnier@cs.yale.edu>
19657
19658 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
19659 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
19660
19661 * eval.c: Use AREF and ASIZE.
19662 (Ffetch_bytecode): Add the file name to the error message.
19663
19664 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
19665 which match the end of the file-name.
19666 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
19667 is not a valid env var, but leave it as is instead.
19668
19669 * keymap.c (access_keymap): Handle t bindings like nil bindings.
19670 Make nil bindings in char-tables transparent.
19671 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
19672
196732001-11-26 Richard M. Stallman <rms@gnu.org>
19674
19675 * textprop.c (set_text_properties_1): Allow START, END in either order.
19676 Do nothing if range is empty.
19677
19678 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
19679
19680 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
19681 (clean): Not here.
19682
196832001-11-25 Stefan Monnier <monnier@cs.yale.edu>
19684
19685 * textprop.c (set_text_properties_1): Clearly mark that the
19686 interval should not be empty.
19687
19688 * intervals.c (graft_intervals_into_buffer):
19689 Don't call set_text_properties_1 on an empty interval.
19690
196912001-11-25 Richard M. Stallman <rms@gnu.org>
19692
19693 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
19694
19695 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
19696 don't lose the data in it.
19697
196982001-11-25 Juanma Barranquero <lektu@terra.es>
19699
19700 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
19701
19702 * buffer.c (Fkill_buffer): Likewise.
19703
19704 * print.c (temp_output_buffer_setup): Likewise.
19705
197062001-11-25 Stefan Monnier <monnier@cs.yale.edu>
19707
19708 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
19709
197102001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
19711
19712 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
19713 Niemitalo <kon@iki.fi>.
19714
197152001-11-25 Jason Rumney <jasonr@gnu.org>
19716
19717 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
19718
19719 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
19720 (Fx_show_tip): Block input during frame creation.
19721 (Fx_show_tip, Fx_hide_tip): Enable.
19722
197232001-11-24 Richard M. Stallman <rms@gnu.org>
19724
19725 * lread.c (Fload): Detect recursive load error for more than 3
19726 nestings of the same file.
19727 (Vrecursive_load_depth_limit): Variable deleted.
19728 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
19729
197302001-11-24 Jason Rumney <jasonr@gnu.org>
19731
19732 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
19733 mouse position if either left or top is not specified.
19734
19735 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
19736 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
19737 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
19738 (my_create_tip_window): Assign tip_window.
19739 (x_create_tip_frame): Use same defaults as X.
19740 (compute_tip_xy): Remove unused variable. Use full screen width.
19741 (Fx_show_tip): Do not double height. Call ShowWindow directly.
19742
19743 * w32term.c (x_after_update_window_line): Doc fix.
19744 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
19745 frames.
19746 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
19747
19748 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
19749 for all Windowed systems.
19750
197512001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
19752
19753 * msdos.c (IT_clear_screen): If the frame's faces are not yet
19754 realized, use the initial screen colors to clear the screen.
19755
197562001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19757
19758 * textprop.c (Fset_text_properties): Remove unused variables
19759 `unchanged', `prev_changed', `s' and `len'.
19760
19761 * search.c (Freplace_match): Remove unused variable `inslen'.
19762
19763 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
19764
197652001-11-22 Jason Rumney <jasonr@gnu.org>
19766
19767 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
19768 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
19769 (my_create_tip_window): New function.
19770 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
19771 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
19772
197732001-11-20 Jason Rumney <jasonr@gnu.org>
19774
19775 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
19776 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
19777
19778 * w32fns.c (Vw32_system_coding_system): Remove.
19779 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
19780
197812001-11-19 Stefan Monnier <monnier@cs.yale.edu>
19782
19783 * fileio.c (Fwrite_region): Move choose_write_coding_system to
19784 after build_annotations.
19785
19786 * syntax.c (describe_syntax): Add dummy arg.
19787 (describe_syntax_1): Update call to describe_vector.
19788
19789 * category.c (describe_category): Add dummy arg.
19790 (describe_category_1): Update call to describe_vector.
19791
19792 * keymap.c (Fdescribe_vector): Add `describer' parameter.
19793 (describe_command, describe_translation): Add dummy second param.
19794 (describe_map): Call elt_describer with two arguments.
19795 (describe_vector_princ): Add `fun' parameter.
19796 Call it instead of the hardcoded `princ'.
19797 (describe_vector): Add arg `args'.
19798 Pass it as a new second argument to elt_describer.
19799
19800 * keymap.h (describe_vector): Update prototype.
19801
19802 * frame.c: Don't include keymap.h any more.
19803 (keys_of_frame): Remove.
19804
19805 * lisp.h (keys_of_frame): Remove declaration.
19806
19807 * emacs.c (main): Don't call `keys_of_frame' any more.
19808
198092001-11-14 Andreas Schwab <schwab@suse.de>
19810
19811 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
19812 if defined, 0 otherwise.
19813 (MAP_FAILED): Define if not defined and use it to test mmap failure.
19814 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
19815
198162001-11-19 Richard M. Stallman <rms@gnu.org>
19817
19818 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
19819
198202001-11-18 Jason Rumney <jasonr@gnu.org>
19821
19822 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
19823 (x_draw_bar_cursor): If the background color of the glyph under
19824 the cursor equals the frame's cursor color, use the glyph's
19825 foreground color for drawing the bar cursor.
19826 (x_after_update_window_line): Clear internal border in different
19827 circumstances.
19828 (w32_set_vertical_scroll_bar): Check for width and height > 0.
19829 (w32_draw_relief_rect): Correct relief by 1 pixel.
19830 (x_set_glyph_string_background_width):
19831 Set extends_to_end_of_line_p if the row's fill_line_p is set and
19832 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
19833 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
19834 if cursor_in_non_selected_windows is false.
19835 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
19836 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
19837 Notice if cursor gets overwritten.
19838 (notice_overwritten_cursor): Renamed from
19839 note_overwritten_text_cursor. Rewritten to take glyph widths
19840 into account, and to take X positions as parameters.
19841 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
19842 around call to x_draw_glyphs.
19843 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
19844 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
19845 color to use for image glyph reliefs.
19846 (x_draw_image_relief): Accept zero tool_bar_button_relief.
19847 (glyph_rect): Remove unused variable `area'.
19848
19849 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
19850 some items.
19851 (x_set_internal_border_width): Set frame garbaged when window
19852 doesn't exist yet.
19853 (Fx_create_frame): Accept zero tool_bar_button_relief.
19854 (x_clear_image_1, four_corners_best, image_background)
19855 (image_background_transparent): New functions.
19856 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
19857 (gs_format): Add `:background' entry.
19858 (lookup_image): Set IMG's background color if specified.
19859 (pbm_load, xbm_load_image, png_load): Set IMG's background field
19860 when appropriate.
19861 (x_clear_image_1): Reset `background_valid' and
19862 `background_transparent_valid' fields.
19863 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
19864 calculating it here. Set IMG's background_transparent field.
19865 (enum xpm_keyword_index): Add XPM_BACKGROUND.
19866 (enum png_keyword_index): Add PNG_BACKGROUND.
19867 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
19868 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
19869 (enum gif_keyword_index): Add GIF_BACKGROUND.
19870 (enum gs_keyword_index): Add GS_BACKGROUND.
19871 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
19872 Pre-calculate image background color where necessary.
19873 (x_create_x_image_and_pixmap, xbm_load, gs_load):
19874 Use display info's n_cbits entry for screen depth.
19875 (Fx_show_tip): Remove unused variables `buffer', `top',
19876 `left', `max_width' and `max_height'.
19877
19878 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
19879
198802001-11-18 Gerd Moellmann <gerd@gnu.org>
19881
19882 * puresize.h (BASE_PURESIZE): Increase to 750000.
19883
198842001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19885
19886 * frame.c (Fframe_live_p): Doc fix.
19887
198882001-11-18 Richard M. Stallman <rms@gnu.org>
19889
19890 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
19891 (message_dolog_marker3): New static variables hold three markers.
19892 (syms_of_xdisp): Initialize and staticpro them.
19893 (message_dolog): Use message_dolog_marker1..3 instead of
19894 allocating markers each time. Unchain them when done.
19895
198962001-11-17 Richard M. Stallman <rms@gnu.org>
19897
19898 * doc.c (Fsnarf_documentation): Doc fix.
19899
199002001-11-17 Andreas Schwab <schwab@suse.de>
19901
19902 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
19903
199042001-11-17 Richard M. Stallman <rms@gnu.org>
19905
19906 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
19907
199082001-11-17 Jason Rumney <jasonr@gnu.org>
19909
19910 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
19911
199122001-11-17 Gerd Moellmann <gerd@gnu.org>
19913
19914 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
19915 with invalid position.
19916
199172001-11-16 Richard M. Stallman <rms@gnu.org>
19918
19919 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
19920
19921 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
19922 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
19923 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
19924
19925 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
19926
199272001-11-16 Stefan Monnier <monnier@cs.yale.edu>
19928
19929 * fileio.c (build_annotations): Split off the tail.
19930 (build_annotations_2): New fun. Extracted from build_annotations.
19931 (Fwrite_region): Split the call to build_annotations into two
19932 calls to build_annotations and build_annotations_2.
19933
199342001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19935
19936 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
19937 clear_waiting_for_input with argument.
19938
19939 * xterm.h (x_update_cursor): Remove duplicated prototype.
19940
19941 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
19942
19943 * xterm.c (waiting_for_input): Remove unnecessary declaration.
19944
19945 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
19946
199472001-11-16 Stefan Monnier <monnier@cs.yale.edu>
19948
19949 * fileio.c (choose_write_coding_system): New fun, extracted
19950 from Fwrite_region.
19951 (Fwrite_region): Use it.
19952
19953 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
19954 (funcall_lambda, run_hook_with_args): Make static and add prototype.
19955 (ml_apply, find_handler_clause): Add prototype.
19956
199572001-11-16 Eli Zaretskii <eliz@gnu.org>
19958
19959 * config.in: Add #undef HAVE_COFF_H.
19960
19961 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
19962 Required for ISC 4.1.
19963
199642001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
19965
19966 * syswait.h (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
19967 Andrew Wiseman <a.wiseman@btclick.com>.
19968
199692001-11-16 Kim F. Storm <storm@cua.dk>
19970
19971 The following changes are made to clean up the various internal
19972 references to the fringes to actually use the term `fringe' for
19973 them. Previously, they were called `flags areas', `bitmap areas',
19974 `left/right side of windows', or implicitly as `flags' or
19975 `bitmaps':
19976
19977 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
19978 Comments fixed. Use renamed symbols.
19979
19980 * dispnew.c: Comment fix. Use renamed symbols.
19981
19982 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
19983 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
19984 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
19985
19986 * msdos.c: Comment fix.
19987
19988 * w32fns.c: Use renamed symbols.
19989
19990 * w32term.c: Comment fixes. Use renamed symbols.
19991 (fringe_bitmap_type): Renamed from bitmap_type.
19992 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
19993 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
19994 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
19995
19996 * w32term.h: Comment fixes. Use renamed symbols.
19997 (fringes_extra): Renamed from flags_areas_extra.
19998 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
19999 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
20000 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
20001 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
20002 (FRAME_X_LEFT_FRINGE_WIDTH):
20003 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
20004 (FRAME_X_RIGHT_FRINGE_WIDTH):
20005 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
20006
20007 * widget.c: Use renamed symbols.
20008
20009 * window.c: Comment fixes. Use renamed symbols.
20010 (coordinates-in-window-p): Doc fix.
20011
20012 * xdisp.c: Comment fixes. Use renamed symbols.
20013
20014 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
20015
20016 * xfns.c: Use renamed symbols.
20017
20018 * xterm.c: Comment fixes. Use renamed symbols.
20019 (fringe_bitmap_type): Renamed from bitmap_type.
20020 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
20021 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
20022 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
20023
20024 * xterm.h: Comment fixes. Use renamed symbols.
20025 (fringes_extra): Renamed from flags_areas_extra.
20026 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
20027 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
20028 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
20029 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
20030 (FRAME_X_LEFT_FRINGE_WIDTH):
20031 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
20032 (FRAME_X_RIGHT_FRINGE_WIDTH):
20033 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
20034
200352001-11-15 Jason Rumney <jasonr@gnu.org>
20036
20037 * w32menu.c (add-menu-item): Make help_echo and radio buttons
20038 work for most menu items. From David Ponce
20039 <david.ponce@wanadoo.fr>.
20040
200412001-11-15 Gerd Moellmann <gerd@gnu.org>
20042
20043 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
20044 Some x_set_* function expect to be called even if old and new
20045 value are equal.
20046
20047 * xdisp.c (build_desired_tool_bar_string): Accept zero
20048 tool_bar_button_relief.
20049
20050 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
20051
20052 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
20053
20054 * xterm.c (x_draw_bar_cursor): If the background color of the
20055 glyph under the cursor equals the frame's cursor color, use
20056 the glyph's foreground color for drawing the bar cursor.
20057
20058 * dispnew.c (direct_output_forward_char): Fix character/byte
20059 position comparison.
20060
200612001-11-15 Miles Bader <miles@gnu.org>
20062
20063 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
20064 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
20065 Update arguments to find_field.
20066 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
20067 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
20068 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
20069 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
20070
200712001-11-14 Richard M. Stallman <rms@gnu.org>
20072
20073 * editfns.c (Fpropertize): Allow call with 1 arg.
20074
20075 * dispextern.h (image_background, image_background_transparent):
20076 Conditionalize on HAVE_X_WINDOWS.
20077
200782001-11-13 Richard M. Stallman <rms@gnu.org>
20079
20080 * print.c (Fprin1_to_string): Doc fix.
20081
20082 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
20083
20084 * floatfns.c (Fceiling, Ffloor): Doc fixes.
20085
20086 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
20087
20088 * fileio.c (Ffile_accessible_directory_p): Doc fix.
20089
20090 * eval.c (syms_of_eval): Doc fix.
20091
20092 * coding.c (syms_of_coding): Doc fix.
20093
20094 * doc.c (Fsnarf_documentation): Doc fix.
20095
20096 * dispnew.c (syms_of_display): Doc fix.
20097
20098 * category.c (Fget_unused_category): Doc fix.
20099
20100 * buffer.c (syms_of_buffer): Doc fixes.
20101
201022001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
20103
20104 * print.c (prin1, print): Doc fix.
20105
201062001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20107
20108 * fontset.h: Remove declarations of variables
20109 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
20110
20111 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
20112 `Vclip_large_size_font'.
20113
201142001-11-13 Jason Rumney <jasonr@gnu.org>
20115
20116 * w32fns.c: Doc fix.
20117
201182001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20119
20120 * xfaces.c (Fface_attributes_as_vector): Doc fix.
20121
20122 * fns.c: Doc fix.
20123
20124 * emacs.c: Doc fix.
20125
20126 * coding.c: Doc fix.
20127
20128 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
20129 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
20130 `new style' [w/`doc:' keyword].
20131
201322001-11-12 Richard M. Stallman <rms@gnu.org>
20133
20134 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
20135 LeaveNotify events. Only FocusIn and FocusOut do that now.
20136 (x_display_and_set_cursor): Do display hollow cursors in active
20137 minibuffer windows when they are not selected.
20138
201392001-11-12 Jason Rumney <jasonr@gnu.org>
20140
20141 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
20142 * w32term.c: Change doc-string comments to `new style'
20143 [w/`doc:' keyword]. Doc fixes.
20144
20145 * w32fns.c: Don't define max.
20146 (Fx_open_connection): Only execute once.
20147
201482001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20149
20150 * ccl.c: Change macros to use do-while block instead of if-else.
20151 Use braces to follow GNU Coding Standards.
20152
201532001-11-11 Richard M. Stallman <rms@gnu.org>
20154
20155 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
20156
20157 * lread.c (read_escape): Use end_of_file_error for reporting eof.
20158
20159 * insdel.c (replace_range): Use adjust_markers_for_replace
20160 instead of adjust_markers_for_delete and adjust_markers_for_insert.
20161
20162 * intervals.h (set_text_properties, set_text_properties_1): Declare.
20163
20164 * textprop.c (set_text_properties_1): New subroutine
20165 broken out of set_text_properties.
20166 (set_text_properties): Use set_text_properties_1.
20167
20168 * intervals.c (graft_intervals_into_buffer):
20169 Use set_text_properties_1 to clear out properties.
20170
20171 * search.c (Freplace_match): Use replace_range to insert
20172 and delete. Don't request property inheritance from
20173 surrounding text.
20174
201752001-11-10 Jason Rumney <jasonr@gnu.org>
20176
20177 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
20178 vertical fonts. Allow them if face name is explicitly specified.
20179 Do not give up if we find a font that cannot be converted to an xlfd.
20180
201812001-11-10 Gerd Moellmann <gerd@gnu.org>
20182
20183 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
20184 instead of malloc/free.
20185
201862001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20187
20188 * xfaces.c (merge_face_vectors): Use braces to follow GNU
20189 Coding Standards.
20190 (Finternal_set_lisp_face_attribute): Likewise.
20191
20192 * buffer.c (Fbury_buffer): Likewise.
20193
20194 * indent.c (current_column_1): Remove unused variable `prev_col'.
20195
20196 * coding.c (encode_coding): Use precomputed value of `src'.
20197 (encode_coding): Remove unused variable `src_end'.
20198 (code_convert_region): Remove unused variables `count'.
20199
202002001-11-07 Jason Rumney <jasonr@gnu.org>
20201
20202 * w32term.c (x_display_and_set_cursor): Do not move system caret
20203 if cursor_glyph is NULL.
20204
202052001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20206
20207 * keymap.c (access_keymap): Fix compilation error.
20208
202092001-11-07 Miles Bader <miles@gnu.org>
20210
20211 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
20212
202132001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20214
20215 * intervals.c (graft_intervals_into_buffer):
20216 Remove #ifdef'd-out code.
20217 (graft_intervals_into_buffer): Remove unused variable `middle'.
20218
20219 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
20220 code (eval-current-buffer).
20221 Change doc-string comments to `new style' [w/`doc:' keyword].
20222
202232001-11-06 Richard M. Stallman <rms@gnu.org>
20224
20225 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
20226
202272001-11-06 Stefan Monnier <monnier@cs.yale.edu>
20228
20229 * lread.c (read1): Fix behavior with nested backquoting.
20230
20231 * keyboard.c (make_lispy_event): Check integerness and fix
20232 Lisp_Object/int mixup.
20233
202342001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20235
20236 * fns.c (copy_hash_table): Remove unused variable `v'.
20237
20238 * fontset.c (fontset_font_pattern): Remove unused variable
20239 `family_registry'.
20240
20241 * indent.c (current_column_1): Remove unused variable `prev_col'.
20242
202432001-11-05 Richard M. Stallman <rms@gnu.org>
20244
20245 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
20246
20247 * buffer.c (Fkill_buffer): Don't delete auto save file
20248 if buffer is modified.
20249
202502001-11-05 Andrew Innes <andrewi@gnu.org>
20251
20252 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
20253 CHECK_NUMBER_CDR.
20254
202552001-11-05 Richard M. Stallman <rms@gnu.org>
20256
20257 * unexelf.c (unexec): Minor changes; clean up comments.
20258
202592001-11-05 Sam Steingold <sds@gnu.org>
20260
20261 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
20262
202632001-11-05 Andreas Schwab <schwab@suse.de>
20264
20265 * sound.c (sound_perror): Save errno from being clobbered.
20266
202672001-11-05 Dale Hagglund <rdh@yottayotta.com>
20268
20269 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
20270 the program image directly.
20271
202722001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20273
20274 * buffer.h (Fbuffer_local_value): Add prototype.
20275
202762001-11-04 Richard M. Stallman <rms@gnu.org>
20277
20278 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
20279 and CHECK_BUFFER.
20280
20281 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
20282 (record_char): Likewise.
20283
20284 * keyboard.c (make_lispy_event): Don't insist a drag event must
20285 move to a different buffer position. Instead, check for moving at
20286 least double_click_fuzz.
20287
20288 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
20289
20290 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
20291
20292 * indent.c (current_column_1, Fmove_to_column): Separate the code
20293 for display-table glyphs from the code for buffer text, to fix
20294 bugs in the former.
20295
202962001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
20297
20298 * buffer.c (Fbuffer_local_value): New function.
20299 (syms_of_buffer): Defsubr it.
20300
20301 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
20302 value of `cursor-in-non-selected-windows'.
20303
20304 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
20305 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
20306 (syms_of_xdisp): Initialize it.
20307
203082001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20309
20310 * xfns.c (Fx_create_frame): Doc fix.
20311
20312 * coding.c: Change doc-string comments to `new style' [w/`doc:'
20313 keyword].
20314
20315 * eval.c (top_level_value, top_level_set): Remove commented and
20316 #ifdef'd-out code.
20317 (Fdefvar): Fix usage in doc-string.
20318
203192001-11-03 Richard M. Stallman <rms@gnu.org>
20320
20321 * xfns.c: Include unistd.h, if it exists.
20322
20323 * editfns.c: Move the include of ctype.h after unistd.h.
20324
20325 * gmalloc.c: Test BROKEN_PROTOTYPES.
20326
203272001-11-03 Ken Raeburn <raeburn@gnu.org>
20328
20329 * lisp.h (CHECK_STRING_CAR): New macro.
20330 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
20331 treating XCAR and XCDR as lvalues.
20332 (openp): Use CHECK_STRING_CAR.
20333 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
20334
203352001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
20336
20337 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
20338 (SIGMASKTYPE): Define.
20339
20340 * syssignal.h (sigunblock): Don't define if already defined.
20341
203422001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20343
20344 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
20345 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
20346 Fix typos in comments.
20347
20348 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
20349 and #ifdef'd-out code.
20350 Fix and reindent comments.
20351
20352 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
20353
20354 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
20355 argument `i' in macros.
20356
20357 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
20358 `i' in macros.
20359
20360 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
20361 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
20362 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
20363 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
20364 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
20365 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
20366 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
20367 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
20368 in macros.
20369
20370 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
20371 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
20372 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
20373 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
20374 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
20375 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
20376 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
20377 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
20378 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
20379 (remove unused second argument).
20380
203812001-11-02 Stefan Monnier <monnier@cs.yale.edu>
20382
20383 * syntax.c (describe_syntax): New wrapper.
20384 (Finternal_describe_syntax_value): Rename from describe_syntax.
20385 Don't insert space at front and \n at the end.
20386 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
20387
20388 * regex.c (re_wctype): Try to fix some warnings.
20389 (regcomp, regexec): Don't forget the __restrict.
20390
203912001-11-02 Richard M. Stallman <rms@gnu.org>
20392
20393 * textprop.c (Fget_char_property): Doc fix.
20394
203952001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20396
20397 * process.c (Fstart_process): Add usage to doc-string.
20398
20399 * data.c (Fsetq_default): Ditto.
20400
20401 * callint.c (Finteractive): Ditto.
20402
204032001-11-01 Stefan Monnier <monnier@cs.yale.edu>
20404
20405 * macros.c: Don't include keymap.h any more.
20406
204072001-11-01 Richard M. Stallman <rms@gnu.org>
20408
20409 * data.c (Fmake_local_variable): Doc fix.
20410
20411 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
20412 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
20413
20414 * keymap.c (Fdescribe_buffer_bindings): Print character property
20415 bindings along with or instead of the buffer local map.
20416 Make the overriding maps override what they should.
20417
204182001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20419
20420 * window.c (grow_mini_window): Fix typo in comment.
20421
204222001-11-01 Gerd Moellmann <gerd@gnu.org>
20423
20424 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
20425 (XTset_vertical_scroll_bar): Likewise.
20426
20427 * xfns.c (x_build_heuristic_mask): Use four_corners_best
20428 instead of IMAGE_BACKGROUND.
20429
20430 * xfns.c (four_corners_best): Reindent.
20431
20432 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
20433 Handle :box so that it is possible to specify sexprs.
20434
204352001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
20436
20437 * s/hpux11.h: New file.
20438
204392001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20440
20441 * emacs.c (USAGE1): Show command line option --no-window-system
20442 instead of --no-windows in usage.
20443 (standard_args): Rename --no-windows to --no-window-system.
20444 (bug_reporting_address): Follow Emacs coding conventions.
20445
20446 * eval.c (Fcommandp): Doc fix.
20447 Change doc-string comments to `new style' [w/`doc:' keyword].
20448
20449 * frame.c (Fframe_live_p): Doc fix.
20450
20451 * buffer.c (selective-display-ellipses): Doc fix.
20452
204532001-10-31 Gerd Moellmann <gerd@gnu.org>
20454
20455 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
20456
20457 * xfaces.c (realize_x_face): If C is not a single-byte character,
20458 set the face's colors_copied_bitwise_p instead of the defaulted_p
20459 members which have a different meaning.
20460 (free_face_colors): Do nothing for a face whose colors have been
20461 copied bitwise.
20462
20463 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
20464
204652001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20466
20467 * marker.c, mocklisp.c: Change doc-string comments to `new style'
20468 [w/`doc:' keyword].
20469
204702001-10-31 Gerd Moellmann <gerd@gnu.org>
20471
20472 * fns.c (require_unwind): Return Lisp_Object.
20473
204742001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20475
20476 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
20477 (last-input-char): Revert doc-string to be the same as the
20478 doc-string of `last-input-event'.
20479
20480 * xdisp.c: Fix typos in comments.
20481
204822001-10-31 Gerd Moellmann <gerd@gnu.org>
20483
20484 * window.c (grow_mini_window): Handle case that the root
20485 window is already smaller than the nominal mininum height.
20486
204872001-10-30 Stefan Monnier <monnier@cs.yale.edu>
20488
20489 * emacs.c (main): Don't call keys_of_macros any more.
20490
20491 * lisp.h (keys_of_macros): Remove.
20492
20493 * macros.c (keys_of_macros): Remove.
20494
20495 * xfaces.c (Fface_attribute_relative_p): Declare args.
20496
204972001-10-30 Jason Rumney <jasonr@gnu.org>
20498
20499 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
20500 (enum_font_cb2): Ignore fonts with vertical orientation.
20501
205022001-10-30 Richard M. Stallman <rms@gnu.org>
20503
20504 * keyboard.c (Finput_pending_p): Doc fix.
20505
205062001-10-30 Gerd Moellmann <gerd@gnu.org>
20507
20508 * xterm.c (x_after_update_window_line): Don't run the code
20509 clearing in borders for rows whose visible height is 0.
20510
20511 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
20512 resized_p flag is set. If not set, use the much less flickering
20513 method previously used.
20514
20515 * dispnew.c (change_frame_size_1): Set frame's resized_p.
20516
20517 * frame.h (struct frame) <resized_p>: New member.
20518
20519 * lread.c (to_multibyte): Ensure read_buffer is at least twice
20520 as large as the number of bytes to convert.
20521
20522 * lread.c (to_multibyte): New function.
20523 (read1): Use it.
20524
205252001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
20526
20527 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
20528
205292001-10-30 Gerd Moellmann <gerd@gnu.org>
20530
20531 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
20532 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
20533 if the row's fill_line_p is set and drawing the last glyph with
20534 DRAW_IMAGE_{RAISED,SUNKEN}.
20535
20536 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
20537
205382001-10-29 Stefan Monnier <monnier@cs.yale.edu>
20539
20540 * xmenu.c: Include coding.h and charset.h.
20541 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
20542 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
20543 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
20544 Explicitly set wv->help. Use `TRUE' rather than `True'.
20545 (menu_help_callback): Use empty_string.
20546
20547 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
20548 (Fx_popup_dialog): Explicitly init f.
20549 (w32_menu_display_help): Use empty_string.
20550
205512001-10-29 Richard M. Stallman <rms@gnu.org>
20552
20553 * fns.c (Frequire): Detect recursive try to require the same
20554 feature 3 or more levels deep, and get error.
20555 (require_unwind): New subroutine.
20556 (require_nesting_list): New variable.
20557 (syms_of_fns): Init and staticpro it.
20558
20559 * print.c (print_object): Clarify indication of insertion type.
20560
205612001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
20562
20563 * coding.c (syms_of_coding): Document that locale-coding-system is
20564 used for decoding input on X.
20565
20566 * window.c (Fscroll_left, Fscroll_right): Doc fix.
20567
205682001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20569
20570 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
20571 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
20572
205732001-10-29 Gerd Moellmann <gerd@gnu.org>
20574
20575 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
20576 use NO_CURSOR if cursor_in_non_selected_windows is false.
20577
20578 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
20579 the slant attribute if FRAME is t.
20580
20581 * xfns.c (x_set_internal_border_width): Set frame garbaged
20582 when X window doesn't exist yet.
20583
20584 * xterm.c (x_after_update_window_line): Clear internal border
20585 in different circumstances.
20586
20587 * xterm.c (XTread_socket) <KeyPress>: Don't use
20588 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
20589 <handa@etl.go.jp>.
20590
205912001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
20592
20593 * m/ibms390.h: New file. From Adam Thornton
20594 <athornton@sinenomine.net>.
20595
205962001-10-28 Gerd Moellmann <gerd@gnu.org>
20597
20598 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
20599
20600 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
20601 a loop counter.
20602
206032001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20604
20605 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
20606
20607 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
20608 keyword].
20609 Fix typos in comments.
20610
20611 * emacs.c (bug_reporting_address): New function.
20612 Use it when displaying usage message.
20613
20614 * minibuf.c (read_minibuf): Remove unused external declaration of
20615 variable `Qread_only'.
20616
20617 * keymap.c (access_keymap): Remove unused variable `charset'.
20618
206192001-10-28 Miles Bader <miles@gnu.org>
20620
20621 * xfaces.c (merge_face_heights): Handle TO being relative as well.
20622 Remove #ifdef'd-out code.
20623 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
20624 (syms_of_xfaces): Initialize them.
20625
206262001-10-27 Jason Rumney <jasonr@gnu.org>
20627
20628 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
20629 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
20630 position using the system caret.
20631
20632 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
20633 (w32_system_caret_height, w32_system_caret_x)
20634 (w32_system_caret_y): New variables for tracking system caret.
20635 (w32_initialize): Initialize them.
20636 (x_display_and_set_cursor): Make system caret follow the active cursor.
20637
20638 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
20639 New messages types.
20640
20641 * w32term.c (note_mouse_highlight): Clear old help_echo.
20642
206432001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20644
20645 * xterm.c: Fix typo in a comment.
20646
20647 * emacs.c: Fix typos in comments.
20648 Remove unnecessary spaces.
20649 Change doc-string comments to `new style' [w/`doc:' keyword].
20650 (USAGE2): Fix typos in usage string.
20651
20652 * xterm.c: Fix typo in a comment.
20653
20654 * lisp.h (gdb_lisp_params): Remove code in #if 0 which is now in
20655 emacs.c.
20656
206572001-10-27 Gerd Moellmann <gerd@gnu.org>
20658
20659 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
20660 instead of 1/2 line_height in the heuristic for skipping
20661 farther backward when target_y was not reached.
20662
20663 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
20664 Display errno only if non-zero.
20665 (sound_warning): New function.
20666 (vox_configure): Don't treat failing to set sample rate as error.
20667 (various places): Improve error messages.
20668
206692001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
20670
20671 * fileio.c (Faccess_file): Run the argument filename through
20672 Fexpand_file_name, before using it.
20673
20674 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
20675 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
20676
206772001-10-26 Gerd Moellmann <gerd@gnu.org>
20678
20679 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
20680
20681 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
20682 Fix clearing in the case of scroll bars on the right.
20683
206842001-10-26 Juanma Barranquero <lektu@terra.es>
20685
20686 * w32gui.h (XImage): Add a dummy typedef.
20687
206882001-10-26 Gerd Moellmann <gerd@gnu.org>
20689
20690 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
20691
206922001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
20693
20694 * frame.c (Fframe_parameter): Fix last change.
20695
20696 * fileio.c: Revert last change (which removed old commented-out
20697 version of expand-file-name). Add a comment that explains why
20698 this old version should not be removed.
20699
207002001-10-25 Gerd Moellmann <gerd@gnu.org>
20701
20702 * frame.c (Fframe_parameter): Fix a bug whereby some
20703 ``artificial'' frame parameters, like `minibuffer' were not
20704 obtained by calling Fframe_parameters.
20705
20706 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
20707 cursor differently.
20708
20709 * xdisp.c (move_it_vertically_backward): Compute line height
20710 differently. Add heuristic to try to be more compatible to 20.x.
20711
207122001-10-25 Stefan Monnier <monnier@cs.yale.edu>
20713
20714 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
20715
20716 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
20717 boolean.
20718
207192001-10-25 Miles Bader <miles@gnu.org>
20720
20721 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
20722 BG is a pointer to a structure, not a structure.
20723 (gif_format, png_format): Add missing commas.
20724
207252001-10-24 Richard M. Stallman <rms@gnu.org>
20726
20727 * xfaces.c (Fface_attributes_as_vector): New function.
20728 (syms_of_xfaces): Defsubr it.
20729
207302001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20731
20732 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
20733 variable `area'.
20734
207352001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20736
20737 * search.c (scan_newline): Remove unused variable `selective_display'.
20738
207392001-10-25 Miles Bader <miles@gnu.org>
20740
20741 * dispextern.h (struct image): Add `background',
20742 `background_valid', and `background_transparent' fields.
20743 (image_background, image_background_transparent): New declarations.
20744 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
20745 * xfns.c (image_background, image_background_transparent)
20746 (four_corners_best): New functions.
20747 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
20748 (gs_format): Add `:background' entry.
20749 (lookup_image): Set IMG's background color if specified.
20750 (pbm_load, xbm_load_image, png_load): Set IMG's background field
20751 when appropriate.
20752 (x_clear_image_1): Reset `background_valid' and
20753 `background_transparent_valid' fields.
20754 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
20755 calculating it here. Set IMG's background_transparent field.
20756 (enum xpm_keyword_index): Add XPM_BACKGROUND.
20757 (enum png_keyword_index): Add PNG_BACKGROUND.
20758 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
20759 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
20760 (enum gif_keyword_index): Add GIF_BACKGROUND.
20761 (enum gs_keyword_index): Add GS_BACKGROUND.
20762 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
20763 Pre-calculate image background color where necessary.
20764 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
20765 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
20766 color to use for image glyph reliefs.
20767
207682001-10-24 Gerd Moellmann <gerd@gnu.org>
20769
20770 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
20771 in full-width rows.
20772
20773 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
20774 Fix clearing of area not covered by scroll bar.
20775
207762001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20777
20778 * xterm.c (x_insert_glyphs): Remove unused variables `real_end'
20779 and `real_start'.
20780 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
20781 (glyph_rect): Remove unused variable `area'.
20782
207832001-10-24 Gerd Moellmann <gerd@gnu.org>
20784
20785 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
20786
20787 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
20788 (row_containing_pos): Take additional argument DY.
20789 Treat rows ending in middle of char differently.
20790 (display_line): Handle tabs on window systems differently.
20791
20792 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
20793 with additional argument.
20794
20795 * dispextern.h (row_containing_pos): Adjust prototype.
20796
20797 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
20798 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
20799 (try_window_id, try_window_reusing_current_matrix)
20800 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
20801 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
20802
208032001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20804
20805 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
20806 gnuemacs).
20807 (HAVE_BOXES): Fix typo in comment.
20808 (push_menu_pane): Fix typo in comment.
20809
20810 * xdisp.c (display_prop_string_p): Remove unused local declaration
20811 of `Qwhen'.
20812 (single_display_prop_string_p): Remove unused local declarations
20813 of `Qwhen' and `Qmargin'.
20814 (string_buffer_position): Remove unused variable `around'.
20815 (store_frame_title): Remove unused variable `width'.
20816
20817 * window.c: Don't define max.
20818 (coordinates_in_window): Remove unused variable `uy'.
20819
20820 * widget.c: Don't define max.
20821
20822 * process.c: Don't define max.
20823 (create_process): Remove unused variable `buffer'.
20824
208252001-10-23 Gerd Moellmann <gerd@gnu.org>
20826
20827 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
20828
208292001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
20830
20831 * xfaces.c (Finternal_set_lisp_face_attribute)
20832 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
20833 frame is on a windowed display.
20834
208352001-10-23 Gerd Moellmann <gerd@gnu.org>
20836
20837 * dispnew.c (sync_window_with_frame_matrix_rows):
20838 Fix handling of windows which aren't full-width, fix handling
20839 of marginal areas.
20840
20841 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
20842
208432001-10-23 Andreas Schwab <schwab@suse.de>
20844
20845 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
20846 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
20847
208482001-10-23 Gerd Moellmann <gerd@gnu.org>
20849
20850 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
20851 REAL_END. Notice if cursor gets overwritten.
20852 (notice_overwritten_cursor): Take X positions as parameters.
20853 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
20854 around call to x_draw_glyphs.
20855
208562001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20857
20858 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
20859 instead of C) and usage.
20860
20861 * editfns.c (char-to-string): Fix argument names (use CHAR instead
20862 of C) and usage.
20863
20864 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
20865 `left', `max_width' and `max_height'.
20866
208672001-10-23 Gerd Moellmann <gerd@gnu.org>
20868
20869 * xdisp.c (display_line): For a tab continued to the next line,
20870 set row's ends_in_middle_of_char_p.
20871
208722001-10-22 Gerd Moellmann <gerd@gnu.org>
20873
20874 * xdisp.c (display_line): Fix computation of continuation lines
20875 width for TABs.
20876
208772001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20878
20879 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
20880 `Qlaplace'.
20881
20882 * fileio.c: Remove unused code.
20883
208842001-10-22 Miles Bader <miles@gnu.org>
20885
20886 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
20887 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
20888 Remove `DOC_STRINGS_IN_COMMENTS' cases.
20889
208902001-10-21 Jason Rumney <jasonr@gnu.org>
20891
20892 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
20893
208942001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
20895
20896 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
20897 (Finsert_string): Avoid the multi-line string literals warning.
20898
208992001-10-22 Miles Bader <miles@gnu.org>
20900
20901 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
20902 (Fdocumentation): Don't use it.
20903 (syms_of_doc): Don't initialize it.
20904
20905 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
20906 * print.c (Fwith_output_to_temp_buffer): Likewise.
20907 * window.c (Fsave_window_excursion): Likewise.
20908 * editfns.c (Fsave_excursion, Fsave_current_buffer)
20909 (Fsave_restriction): Likewise.
20910 * eval.c (Frun_hooks, Frun_hook_with_args)
20911 (Frun_hook_with_args_until_failure)
20912 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
20913 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
20914 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
20915 (Funwind_protect, Fcondition_case): Likewise.
20916 * coding.c (Ffind_operation_coding_system): Likewise.
20917 * keyboard.c (Ftrack_mouse): Likewise.
20918
209192001-10-21 Miles Bader <miles@gnu.org>
20920
20921 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
20922 (Fmake_hash_table): Add usage: string to doc string.
20923 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
20924 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
20925 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
20926 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
20927 (Fml_prefix_argument_loop): Likewise.
20928
209292001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20930
20931 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
20932
20933 * sysdep.c (init_sys_modes): Change doc-string comments to `new
20934 style' [w/`doc:' keyword].
20935
20936 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
20937 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
20938 comments to `new style' [w/`doc:' keyword].
20939
209402001-10-21 Jason Rumney <jasonr@gnu.org>
20941
20942 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
20943
20944 * w32term.c (remember_mouse_glyph): New function.
20945 (w32_mouse_position): Use it.
20946 (note_mouse_movement): If the mouse moved off the glyph, remember
20947 its new position.
20948
20949 * w32term.h (struct w32_output): Correct spelling of x_compatible.
20950 (w32_display_info): Add mouse_face_overlay.
20951
20952 * w32term.c (notice_overwritten_cursor): Renamed from
20953 note_overwritten_text_cursor. Rewritten to take glyph widths into
20954 account.
20955 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
20956 (fast_find_string_pos): New function.
20957 (fast_find_position): Return the correct vpos. Add parameter
20958 STOP. In the final row, stop before glyphs having STOP as object.
20959 Don't consider glyphs that are not from a buffer.
20960 (fast_find_position) [0]: Add a presumably more correct version
20961 for after 21.1.
20962 (expose_window_tree, expose_frame): Don't compute intersections here.
20963 (expose_window): Do it here instead.
20964 (expose_window_tree, expose_window, expose_line): Return 1 when
20965 overwriting mouse-face.
20966 (expose_window): If W is the window currently being updated, mark
20967 the frame garbaged.
20968 (expose_frame): If mouse-face was overwritten, redo it.
20969 (x_use_underline_position_properties): New variable.
20970 (syms_of_xterm): DEFVAR_BOOL it.
20971 (x_draw_glyph_string): Add comment to use it in future.
20972 (x_draw_glyph_string): Restore clipping after drawing box.
20973 Fix a computation of the underline position.
20974 (w32_get_glyph_string_clip_rect): Minor cleanup.
20975 (x_fill_stretch_glyph_string): Remove an assertion.
20976 (x_produce_glyphs): Don't convert multibyte characters
20977 to unibyte characters in unibyte buffers.
20978 (cursor_in_mouse_face_p): New function.
20979 (x_draw_stretch_glyph_string): Use it to choose a different GC
20980 when drawing a cursor within highlighted text. Don't draw
20981 background again if it has already been drawn.
20982 (x_draw_glyph_string_box): Don't draw a full-width
20983 box just because the glyph row's full_width_p flag is set.
20984 (x_draw_glyphs): Fix computation of rightmost x for
20985 full-width rows.
20986 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
20987 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
20988 change bottom shadow accordingly. Some cleanup.
20989 (x_update_window_end): Handle overwritten mouse face
20990 also for tool bar windows.
20991 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
20992 DRAW is DRAW_IMAGE_RAISED.
20993 (clear_mouse_face): Return 1 if text with mouse face was
20994 actually redrawn. Make the function static.
20995 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
20996 optimize away highlighting if we pass over that same overlay again.
20997 (note_mouse_highlight): Call mouse_face_overlay_overlaps
20998 to detect a case where we have to highlight a different region
20999 despite not having left the currently highlighted region.
21000 Set mouse_face_overlay in the x_display_info. Avoid changing the
21001 mouse pointer shape when show_mouse_face has already done it, or
21002 there is no need. Handle mouse-face and help-echo in strings.
21003 (glyph_rect): New function.
21004 (w32_mouse_position): Use it to raise the threshold for mouse
21005 movement event generation.
21006 (w32_initialize_display_info): Initialize the x_display_info's
21007 mouse_face_overlay.
21008 (w32_set_vertical_scroll_bar): Don't clear a zero height
21009 or width area.
21010 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
21011 a widget to zero height.
21012
21013 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
21014 Protect unibyte strings created by replacing their multibyte
21015 equivalents in menu_items.
21016 (w32_menu_show): Don't overwrite an item's name with its key
21017 description in case the description is a multibyte string.
21018 (single_submenu): Some cleanup.
21019
21020 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
21021 (postprocess_image): New function.
21022 (lookup_image): Call it for all image types except PostScript.
21023 (x_kill_gs_process): Call postprocess_image.
21024 (tiff_error_handler, tiff_warning_handler): New functions.
21025 (tiff_load): Install them as handlers.
21026 (x_kill_gs_process): Recognize if someone has cleared the image
21027 cache under us.
21028 (valid_image_p): Protect better against invalid image
21029 specifications. Previous code could signal an error.
21030 (Fx_hide_tip, Fshow_tip): Doc fix.
21031 (Fv_max_tooltip_size): New variable.
21032 (syns_of_xfns): DEFVAR_LISP it.
21033 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
21034 window buffer to *tip* right after creating the frame. Set frame's
21035 window_width. Use a maximum tooltip size specified by
21036 Vx_max_tooltip_size, if that has valid contents.
21037 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
21038 Make sure the tooltip is completely visible.
21039 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
21040 (Fx_create_frame): Adjust the frame's height for presence
21041 of the tool bar before calling x_figure_window_size.
21042 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
21043 when the window gets smaller.
21044 (x_set_foreground_color): Set frame's cursor_pixel.
21045 (x_set_foreground_color, x_set_background_color): Cleaned up.
21046 (x_set_font): Handle case of x_new_fontset returning the same name
21047 as before, although there was a change in fontsets.
21048
210492001-10-21 Miles Bader <miles@gnu.org>
21050
21051 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
21052 (Flogxor): Add usage: string to doc string.
21053 * charset.c (Fstring): Likewise.
21054 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
21055 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
21056
210572001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21058
21059 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
21060
21061 * alloc.c: Reindent DEFUNs with doc: keywords.
21062
21063 * abbrev.c (Finsert_abbrev_table_description): Reindent.
21064
21065 * frame.c: Change doc-string comments to `new style' [w/`doc:'
21066 keyword].
21067
21068See ChangeLog.9 for earlier changes.
21069
21070;; Local Variables:
21071;; coding: iso-2022-7bit
21072;; End:
21073
21074 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
21075 Copying and distribution of this file, with or without modification,
21076 are permitted provided the copyright notice and this notice are preserved.
21077
21078;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4